aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/acse
diff options
context:
space:
mode:
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2005-10-03 05:14:39 +0000
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2005-10-03 05:14:39 +0000
commit045ce601a7d3432cdde5cb5c9192391c1e6f78e5 (patch)
treed5afa930a44614f254fd62fb931d7e1a92ea43ac /asn1/acse
parentec536b5ddf52378c0715403787cd13ce80054485 (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.cnf21
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