diff options
author | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2004-12-12 22:59:43 +0000 |
---|---|---|
committer | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2004-12-12 22:59:43 +0000 |
commit | 97f465c157c4566095a96e04ee6e7b18c5ef5205 (patch) | |
tree | f80db0c98bb4c73a31d9cc0c49741896e16ba480 /epan | |
parent | 896737c467cb848e51a9b55b123637c37f8e92a1 (diff) |
make the unknown_ber helper try to dissect NumericString and ENUMERATED when it encounters them
svn path=/trunk/; revision=12733
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-ber.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/epan/dissectors/packet-ber.c b/epan/dissectors/packet-ber.c index 289b93c4e0..a243d4a194 100644 --- a/epan/dissectors/packet-ber.c +++ b/epan/dissectors/packet-ber.c @@ -60,9 +60,11 @@ static gint hf_ber_length = -1; static gint hf_ber_bitstring_padding = -1; static gint hf_ber_unknown_OID = -1; static gint hf_ber_unknown_OCTETSTRING = -1; +static gint hf_ber_unknown_NumericString = -1; static gint hf_ber_unknown_PrintableString = -1; static gint hf_ber_unknown_IA5String = -1; static gint hf_ber_unknown_INTEGER = -1; +static gint hf_ber_unknown_ENUMERATED = -1; static gint ett_ber_octet_string = -1; static gint ett_ber_unknown = -1; @@ -195,6 +197,9 @@ dissect_unknown_ber(packet_info *pinfo, tvbuff_t *tvb, int offset, proto_tree *t case BER_UNI_TAG_INTEGER: offset = dissect_ber_integer(FALSE, pinfo, tree, tvb, start_offset, hf_ber_unknown_INTEGER, NULL); break; + case BER_UNI_TAG_ENUMERATED: + offset = dissect_ber_integer(FALSE, pinfo, tree, tvb, start_offset, hf_ber_unknown_ENUMERATED, NULL); + break; case BER_UNI_TAG_OCTETSTRING: offset = dissect_ber_octet_string(FALSE, pinfo, tree, tvb, start_offset, hf_ber_unknown_OCTETSTRING, NULL); break; @@ -208,6 +213,9 @@ dissect_unknown_ber(packet_info *pinfo, tvbuff_t *tvb, int offset, proto_tree *t } offset=dissect_unknown_ber(pinfo, tvb, offset, next_tree); break; + case BER_UNI_TAG_NumericString: + offset = dissect_ber_octet_string(FALSE, pinfo, tree, tvb, start_offset, hf_ber_unknown_NumericString, NULL); + break; case BER_UNI_TAG_PrintableString: offset = dissect_ber_octet_string(FALSE, pinfo, tree, tvb, start_offset, hf_ber_unknown_PrintableString, NULL); break; @@ -1589,6 +1597,9 @@ proto_register_ber(void) { &hf_ber_unknown_OID, { "OID", "ber.unknown.OID", FT_STRING, BASE_NONE, NULL, 0, "This is an unknown Object Identifier", HFILL }}, + { &hf_ber_unknown_NumericString, { + "NumericString", "ber.unknown.NumericString", FT_STRING, BASE_NONE, + NULL, 0, "This is an unknown NumericString", HFILL }}, { &hf_ber_unknown_PrintableString, { "PrintableString", "ber.unknown.PrintableString", FT_STRING, BASE_NONE, NULL, 0, "This is an unknown PrintableString", HFILL }}, @@ -1598,6 +1609,9 @@ proto_register_ber(void) { &hf_ber_unknown_INTEGER, { "INTEGER", "ber.unknown.INTEGER", FT_UINT32, BASE_DEC, NULL, 0, "This is an unknown INTEGER", HFILL }}, + { &hf_ber_unknown_ENUMERATED, { + "ENUMERATED", "ber.unknown.ENUMERATED", FT_UINT32, BASE_DEC, + NULL, 0, "This is an unknown ENUMERATED", HFILL }}, }; |