It might be possible to create a ANS.1/BER description that is compatible with both encodings.
FooBar ::= SEQUENCE OF { kludge KludgeFooBar } KludgeFooBar ::= CHOICE { item1 [0] IA5String item2 [1] INTEGER } I think this might work and should be able to decode both types of encoding. It is less than optimal from a maintenance perspective since you would now have a "third" encoding to maintain. :-( ronnie s On Wed, Sep 2, 2009 at 8:46 AM, Alex Lindberg<alind...@yahoo.com> wrote: > I am working on an ASN1 based dissector where there where major changes > between V1 and V2 of the protocol. As such I must select in the proto.cnf > file the correct branch of the ASN1 tree to use. As an example: > > Both v1 and v2: > FirstFoo ::= SEQUENCE > { > version [0] INTEGER > dataMessasge [1] FooBar > } > > v1: > FooBar ::= SEQUENCE > { > item1 [0] IA5String > item2 [1] INTEGER > } > > v2: > FooBar ::= CHOICE > { > item1 [0] IA5String > item2 [1] INTEGER > } > > I am using an IF statement based on version to call the dissector of either > the v1 or v2 construction of FooBar. I have added the v1 version of FooBar > to the end of the ASN1 definition so v1 Foobar becomes: > > FooBarV1 ::= SEQUENCE > { > item1 [0] IA5String > item2 [1] INTEGER > } > > and the dissector is dissector_xxx_FooBarV1. When the v1 dissector is > called, wireshark complains that with a "DISSECTOR_ASSERT_NOT_REACHED" error > which indicates that the type and value don't match correctly during > decoding. > > I suppect that I should pass the correct ASN1 definitions to the v1 > dissector, but don't see how that is to be done. asn2ws created the > necessary data structures. > > Any help would, as always, be greatly appreciated. > > Alex Lindberg > > > ___________________________________________________________________________ > Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> > Archives: http://www.wireshark.org/lists/wireshark-dev > Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev > mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe > ___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> Archives: http://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe