diff options
author | etxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-10-03 05:14:39 +0000 |
---|---|---|
committer | etxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-10-03 05:14:39 +0000 |
commit | 045ce601a7d3432cdde5cb5c9192391c1e6f78e5 (patch) | |
tree | d5afa930a44614f254fd62fb931d7e1a92ea43ac /asn1/acse | |
parent | ec536b5ddf52378c0715403787cd13ce80054485 (diff) |
From Graeme Lunt
X420 - incorrect ExtendedBodyPart handling
ACSE - support for implicitly tagged EXTERNALs and dissection based upon direct-reference RTSE - same change for RTSE EXTERNAL handling as above CMS - support for ContentType, MessageDigest, SigningTime and CounterSignature attributes ESS - support for ESSSecurityLabel and EquivalentLabels attributes
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@16070 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'asn1/acse')
-rw-r--r-- | asn1/acse/acse.cnf | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/asn1/acse/acse.cnf b/asn1/acse/acse.cnf index 592f53f792..e3d012711a 100644 --- a/asn1/acse/acse.cnf +++ b/asn1/acse/acse.cnf @@ -40,12 +40,14 @@ ACRQ-apdu/aSO-context-name aCRQ_aSO_context_name gint32 tag; guint32 len1; - /* XXX asn2eth can not yet handle tagged assignment so for the - * time being just remove this tag manually inside the EXTERNAL - * dissector. - */ - offset = get_ber_identifier(tvb, offset, &class, &pc, &tag); - offset = get_ber_length(tree, tvb, offset, &len1, &ind_field); + if(!implicit_tag) { + /* XXX asn2eth can not yet handle tagged assignment so for the + * time being just remove this tag manually inside the EXTERNAL + * dissector. + */ + offset = get_ber_identifier(tvb, offset, &class, &pc, &tag); + offset = get_ber_length(tree, tvb, offset, &len1, &ind_field); + } offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset, EXTERNAL_sequence, hf_index, ett_acse_EXTERNAL); @@ -89,7 +91,12 @@ ACRQ-apdu/aSO-context-name aCRQ_aSO_context_name if(session) session->pres_ctx_id = indir_ref; +#.FN_BODY EXTERNAL/direct-reference + + offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset, hf_index, object_identifier_id); + + #.FN_BODY EXTERNAL/encoding/single-ASN1-type - offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, top_tree); + offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree); #.END |