Subject: [Megaco] Encoding packageIDs in ASN.1 messages.

From: Jason Walton <[email-masked]>
Date: Thu, 16 Mar 2006 12:42:47 -0500

II was looking at the example messages provided from the H.248 Erlang
encoding/decoding performance comparison
(http://www.erlang.org/project/megaco/encoding_comparison-v4/encoded_messages). 

Specifically, I was looking at ber/msg08a.bin.  The text version of the
message (pretty/msg08a.txt) contains an events descriptor, containing
events "al/on" and "dd/ce", and a signals descriptor, containing the
signal "cg/rt".

When I look at the BER encoded message (with a program using asn1c, an
open source C-based ASN.1 compiler), however, I'm seeing events with
pkgdName 0x0009/0x0004, 0x0004/0x0004, and a signal with pkgdName
0x0005/0x0031.  In all cases, the second half of the pkgdName is what I
would expect it to be, but the (with the exception of al/on) the
pacakgeID looks wrong to me.

Take the "dd/ce" to start with.  The packageID for dd is 0x0006.  The
packageID in the BER encoded message is 0x0004, which is tonedet (dd
extends tonedet).  According to RFC 3525 6.2.3, I should be able to
refer to events in a base package using the extended package name (so I
should be able to reference dd/tl or tonedet/tl, for example), but it
makes no reference of doing the reverse; accessing an event defined in
one package using the name of the base package.

The Signal "cg/rt" is right out; 0x0005 is the package ID for dg, not
cg, and dg doesn't define an event 0x0031.  The only common link I can
find between these two packages is that they both extend tonegen.

What's going on here?  Is the Erlang Megaco stack horribly broken, or
(more likely) am I just completely missing something here?

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

---

From: "Kevin Boyle" <[email-masked]>
Date: Thu, 16 Mar 2006 14:23:41 -0500

The package IDs recorded by IANA at
http://www.iana.org/assignments/megaco-h248 are definitive.  Anything
else that says otherwise is in error.

You are correct that extension packages can refer to base package
elements, but not the other way around.  It appears that the Erlang
stack was miscoded.

Kevin 

-----Original Message-----
From: Jason Walton [mailto:[email-masked]] 
Sent: Thursday, March 16, 2006 12:43 PM
To: [email-masked]
Subject: [Megaco] Encoding packageIDs in ASN.1 messages.

II was looking at the example messages provided from the H.248 Erlang
encoding/decoding performance comparison
(http://www.erlang.org/project/megaco/encoding_comparison-v4/encoded_mes
sages).