More ASN.1...

Bruce Fitzsimons <>
Sun Nov 24 10:57:57 CET 2002


I have a few more questions about the Erlang ASN.1 compiler/runtime.

Given an H.323 TransportAddress definition (used for addressing
packets'n'stuff, definition below) I can get packets decoded with items such
as:

{ipAddress,
    {'TransportAddress_ipAddress',
        [10,151,33,220],
        2634}},

However there doesn't seem to be any way of decoding/interpreting this
directly, inasmuch as there is no auto-generated record definition
'TransportAddress_ipAddress' (or for any of the other choices). This is
contrary to what I would have expected given that other choices do end up
with records for their sub-sequences (such as, for example, the RasMessage
choice - gives 'GatekeeperRequest' etc).

I feel I must be missing something fundamental. I can of course define a
record for myself, but I thought I should ask the question.

Thanks in advance

/Bruce

H323 ASN.1 definition:

TransportAddress ::= CHOICE
{
 ipAddress SEQUENCE
 {
  ip   OCTET STRING (SIZE(4)),
  port   INTEGER(0..65535)
 },
 ipSourceRoute SEQUENCE
 {
  ip   OCTET STRING (SIZE(4)),
  port   INTEGER(0..65535),
  route   SEQUENCE OF OCTET STRING (SIZE(4)),
  routing   CHOICE
  {
   strict NULL,
   loose NULL,
   ...
  },
  ...
 },
 ipxAddress SEQUENCE
 {
  node  OCTET STRING (SIZE(6)),
  netnum  OCTET STRING (SIZE(4)),
  port  OCTET STRING (SIZE(2))
 },
 ip6Address SEQUENCE
 {
  ip  OCTET STRING (SIZE(16)),
  port  INTEGER(0..65535),
  ...
 },
 netBios   OCTET STRING (SIZE(16)),
 nsap   OCTET STRING (SIZE(1..20)),
 nonStandardAddress NonStandardParameter,
 ...
}





More information about the erlang-questions mailing list