diff options
author | Tomas Kukosa <tomas.kukosa@siemens.com> | 2007-06-05 12:00:57 +0000 |
---|---|---|
committer | Tomas Kukosa <tomas.kukosa@siemens.com> | 2007-06-05 12:00:57 +0000 |
commit | 31e45c7a2130ada609c53cef7fb6e630bfb0ae45 (patch) | |
tree | a1f6be33237edf23b9b6bdb87a1014d78b96736f | |
parent | 368528502eff6bb908da692f67b025ca95e05d26 (diff) |
not allow #.FN_HDR/FTR for Wireshark types but only for ASN.1 types
it makes interconnection between .cnf file and ASN.1 source more readable
(changes for #.FN_BODY will follow)
svn path=/trunk/; revision=22043
-rw-r--r-- | asn1/cdt/cdt.cnf | 12 | ||||
-rw-r--r-- | asn1/cms/cms.cnf | 2 | ||||
-rw-r--r-- | asn1/dap/dap.cnf | 8 | ||||
-rw-r--r-- | asn1/disp/disp.cnf | 6 | ||||
-rw-r--r-- | asn1/ftbp/ftbp.cnf | 4 | ||||
-rw-r--r-- | asn1/gsmmap/gsmmap.cnf | 2 | ||||
-rw-r--r-- | asn1/ldap/ldap.cnf | 4 | ||||
-rw-r--r-- | asn1/logotype-cert-extn/logotype-cert-extn.cnf | 7 | ||||
-rw-r--r-- | asn1/pkcs12/packet-pkcs12-template.c | 8 | ||||
-rw-r--r-- | asn1/pkcs12/pkcs12.cnf | 40 | ||||
-rw-r--r-- | asn1/rtse/rtse.cnf | 4 | ||||
-rw-r--r-- | asn1/s4406/s4406.cnf | 2 | ||||
-rw-r--r-- | asn1/x411/x411.cnf | 16 | ||||
-rw-r--r-- | asn1/x420/x420.cnf | 2 | ||||
-rw-r--r-- | asn1/x509ce/x509ce.cnf | 4 | ||||
-rw-r--r-- | epan/dissectors/packet-cdt.c | 57 | ||||
-rw-r--r-- | epan/dissectors/packet-gsm_map.c | 21 | ||||
-rw-r--r-- | epan/dissectors/packet-logotypecertextn.c | 56 | ||||
-rw-r--r-- | epan/dissectors/packet-pkcs12.c | 127 | ||||
-rw-r--r-- | epan/dissectors/packet-x411.c | 55 | ||||
-rw-r--r-- | epan/dissectors/packet-x509ce.c | 31 | ||||
-rwxr-xr-x | tools/asn2wrs.py | 14 |
22 files changed, 313 insertions, 169 deletions
diff --git a/asn1/cdt/cdt.cnf b/asn1/cdt/cdt.cnf index aeb7abe2a0..3ec13ff8ce 100644 --- a/asn1/cdt/cdt.cnf +++ b/asn1/cdt/cdt.cnf @@ -9,10 +9,10 @@ CompressedData #.REGISTER CompressedData B "1.3.26.0.4406.0.4.2" "cdt" -#.FN_PARS AlgorithmID_ShortForm +#.FN_PARS AlgorithmID-ShortForm VAL_PTR = &value -#.FN_BODY AlgorithmID_ShortForm +#.FN_BODY AlgorithmID-ShortForm guint32 value; %(DEFAULT_BODY)s @@ -25,10 +25,10 @@ CompressedData B "1.3.26.0.4406.0.4.2" "cdt" val_to_str (value, cdt_AlgorithmID_ShortForm_vals, "unknown")); -#.FN_PARS ContentType_ShortForm +#.FN_PARS ContentType-ShortForm VAL_PTR = &value -#.FN_BODY ContentType_ShortForm +#.FN_BODY ContentType-ShortForm guint32 value; %(DEFAULT_BODY)s @@ -41,10 +41,10 @@ CompressedData B "1.3.26.0.4406.0.4.2" "cdt" val_to_str (value, cdt_ContentType_ShortForm_vals, "unknown")); -#.FN_PARS OBJECT_IDENTIFIER +#.FN_PARS CompressedContentInfo/contentType/contentType-OID FN_VARIANT = _str VAL_PTR = &obj_id -#.FN_BODY OBJECT_IDENTIFIER +#.FN_BODY CompressedContentInfo/contentType/contentType-OID const char *obj_id = NULL; %(DEFAULT_BODY)s diff --git a/asn1/cms/cms.cnf b/asn1/cms/cms.cnf index d6d36a16a9..b6f7e98b4e 100644 --- a/asn1/cms/cms.cnf +++ b/asn1/cms/cms.cnf @@ -154,7 +154,7 @@ EncryptedContentInfo/contentType encryptedContentType cap_tree = tree; } -#.FN_BODY T_parameters +#.FN_BODY SMIMECapability/parameters offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); diff --git a/asn1/dap/dap.cnf b/asn1/dap/dap.cnf index 65b2f3418e..0fdc31663b 100644 --- a/asn1/dap/dap.cnf +++ b/asn1/dap/dap.cnf @@ -236,10 +236,10 @@ TokenData/time utctime col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, dap_LimitProblem_vals, "LimitProblem(%%d)")); } -#.FN_PARS T_subset - VAL_PTR = &subset +#.END -#.FN_BODY T_subset + +#.FN_BODY SearchArgumentData/subset VAL_PTR=&subset guint32 subset; %(DEFAULT_BODY)s @@ -259,7 +259,7 @@ TokenData/time utctime col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", (dn && *dn) ? dn : "(root)"); } -#.FN_BODY T_subordinates_item +#.FN_BODY ListResultData/listInfo/subordinates/_item proto_item *sub_item; %(DEFAULT_BODY)s diff --git a/asn1/disp/disp.cnf b/asn1/disp/disp.cnf index a135dc5820..8d2ce538ea 100644 --- a/asn1/disp/disp.cnf +++ b/asn1/disp/disp.cnf @@ -32,10 +32,10 @@ EstablishParameter B "dop.establish.roleb.2.5.19.1" "shadow-establish-roleb" ModificationParameter B "dop.modify.rolea.2.5.19.1" "shadow-modify-rolea" ModificationParameter B "dop.modify.roleb.2.5.19.1" "shadow-modify-roleb" -#.FN_PARS T_standard - VAL_PTR = &update -#.FN_BODY T_standard + + +#.FN_BODY RequestShadowUpdateArgumentData/requestedStrategy/standard VAL_PTR=&update guint32 update; %(DEFAULT_BODY)s diff --git a/asn1/ftbp/ftbp.cnf b/asn1/ftbp/ftbp.cnf index 3cf87213a1..455dcbafd4 100644 --- a/asn1/ftbp/ftbp.cnf +++ b/asn1/ftbp/ftbp.cnf @@ -19,8 +19,8 @@ FileTransferParameters FileTransferParameters B "2.6.1.11.12" "id-ep-file-transfer" FileTransferData B "2.6.1.4.12" "id-et-file-transfer" -#.FN_BODY T_parameter +#.FN_BODY Contents-Type-Attribute/document-type/parameter /* XXX: Not implemented yet */ -#.FN_BODY T_compression_algorithm_param +#.FN_BODY CompressionParameter/compression-algorithm-param /* XXX: Not implemented yet */
\ No newline at end of file diff --git a/asn1/gsmmap/gsmmap.cnf b/asn1/gsmmap/gsmmap.cnf index 3ed8a05781..77036c496e 100644 --- a/asn1/gsmmap/gsmmap.cnf +++ b/asn1/gsmmap/gsmmap.cnf @@ -662,7 +662,7 @@ Component subtree = proto_item_add_subtree(item, ett_gsm_map_LAIFixedLength); dissect_e212_mcc_mnc(parameter_tvb, subtree, 0); -#.FN_PARS OBJECT_IDENTIFIER +#.FN_PARS PrivateExtension/extId FN_VARIANT = _str VAL_PTR = &obj_id #.FN_BODY RadioResourceInformation VAL_PTR = ¶meter_tvb diff --git a/asn1/ldap/ldap.cnf b/asn1/ldap/ldap.cnf index cb7e142d90..af625f61b7 100644 --- a/asn1/ldap/ldap.cnf +++ b/asn1/ldap/ldap.cnf @@ -328,7 +328,7 @@ ldap_conv_info_t *ldap_info; } -#.FN_BODY T_scope VAL_PTR = &scope +#.FN_BODY SearchRequest/scope VAL_PTR = &scope gint scope; const gchar *valstr; @@ -345,7 +345,7 @@ ldap_conv_info_t *ldap_info; if(ldm_tree) proto_item_append_text(ldm_tree, " %%s", valstr); -#.FN_BODY T_resultCode VAL_PTR = &result +#.FN_BODY LDAPResult/resultCode VAL_PTR = &result const gchar *valstr; diff --git a/asn1/logotype-cert-extn/logotype-cert-extn.cnf b/asn1/logotype-cert-extn/logotype-cert-extn.cnf index 95040d06a0..4f579a0ac2 100644 --- a/asn1/logotype-cert-extn/logotype-cert-extn.cnf +++ b/asn1/logotype-cert-extn/logotype-cert-extn.cnf @@ -14,9 +14,10 @@ LogotypeExtn B "1.3.6.1.5.5.7.1.12" "id-pe-logotype" LogotypeExtn B "1.3.6.1.5.5.7.20.1" "id-pe-logo-loyalty" LogotypeExtn B "1.3.6.1.5.5.7.20.2" "id-pe-logo-background" -#.FN_FTR IA5String - if((hf_index == hf_logotypecertextn_logotypeURI_item) || - (hf_index == hf_logotypecertextn_refStructURI_item)) +#.FN_FTR LogotypeDetails/logotypeURI/_item + PROTO_ITEM_SET_URL(get_ber_last_created_item()); + +#.FN_FTR LogotypeReference/refStructURI/_item PROTO_ITEM_SET_URL(get_ber_last_created_item()); #.NO_EMIT diff --git a/asn1/pkcs12/packet-pkcs12-template.c b/asn1/pkcs12/packet-pkcs12-template.c index 8d4ac23e48..2df5f2df33 100644 --- a/asn1/pkcs12/packet-pkcs12-template.c +++ b/asn1/pkcs12/packet-pkcs12-template.c @@ -60,6 +60,14 @@ static void dissect_SafeContents_OCTETSTRING_PDU(tvbuff_t *tvb, packet_info *pin /* Initialize the subtree pointers */ #include "packet-pkcs12-ett.c" +static void append_oid(proto_tree *tree, const char *oid) +{ + const char *name = NULL; + + name = get_oid_str_name(oid); + proto_item_append_text(tree, " (%%s)", name ? name : oid); +} + #include "packet-pkcs12-fn.c" static int strip_octet_string(tvbuff_t *tvb, proto_tree *tree) diff --git a/asn1/pkcs12/pkcs12.cnf b/asn1/pkcs12/pkcs12.cnf index 6e60b9bc3a..562c9027eb 100644 --- a/asn1/pkcs12/pkcs12.cnf +++ b/asn1/pkcs12/pkcs12.cnf @@ -81,34 +81,48 @@ AuthenticatedSafe /* restore the original dissector */ dissector_reset_string("ber.oid", "1.2.840.113549.1.7.1"); -#.FN_PARS OBJECT_IDENTIFIER - FN_VARIANT = _str VAL_PTR = &object_identifier_id +#.FN_PARS SafeBag/bagId FN_VARIANT = _str VAL_PTR = &object_identifier_id +#.FN_FTR SafeBag/bagId + append_oid(tree, object_identifier_id); +#.END -#.FN_BODY OBJECT_IDENTIFIER - const char *name = NULL; +#.FN_PARS CertBag/certId FN_VARIANT = _str VAL_PTR = &object_identifier_id +#.FN_FTR CertBag/certId + append_oid(tree, object_identifier_id); +#.END - %(DEFAULT_BODY)s - - name = get_oid_str_name(object_identifier_id); - proto_item_append_text(tree, " (%%s)", name ? name : object_identifier_id); +#.FN_PARS CRLBag/crlId FN_VARIANT = _str VAL_PTR = &object_identifier_id +#.FN_FTR CRLBag/crlId + append_oid(tree, object_identifier_id); +#.END + +#.FN_PARS SecretBag/secretId FN_VARIANT = _str VAL_PTR = &object_identifier_id +#.FN_FTR SecretBag/secretId + append_oid(tree, object_identifier_id); +#.END + +#.FN_PARS PKCS12Attribute/attrId FN_VARIANT = _str VAL_PTR = &object_identifier_id +#.FN_FTR PKCS12Attribute/attrId + append_oid(tree, object_identifier_id); +#.END -#.FN_BODY T_bagValue +#.FN_BODY SafeBag/bagValue if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); -#.FN_BODY T_attrValues_item +#.FN_BODY PKCS12Attribute/attrValues/_item if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); -#.FN_BODY T_certValue +#.FN_BODY CertBag/certValue if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); -#.FN_BODY T_crlValue +#.FN_BODY CRLBag/crlValue if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); -#.FN_BODY T_secretValue +#.FN_BODY SecretBag/secretValue if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); diff --git a/asn1/rtse/rtse.cnf b/asn1/rtse/rtse.cnf index e1048292f3..929adb1e67 100644 --- a/asn1/rtse/rtse.cnf +++ b/asn1/rtse/rtse.cnf @@ -49,7 +49,7 @@ EXTERNALt %(DEFAULT_BODY)s -#.FN_BODY T_open +#.FN_BODY ConnectionData/open char *oid = NULL; @@ -128,7 +128,7 @@ EXTERNALt offset=call_rtse_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, top_tree); -#.FN_BODY T_applicationProtocol +#.FN_BODY RTORQapdu/applicationProtocol offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index, &app_proto); diff --git a/asn1/s4406/s4406.cnf b/asn1/s4406/s4406.cnf index 0eb1a238ad..92c09c1f9e 100644 --- a/asn1/s4406/s4406.cnf +++ b/asn1/s4406/s4406.cnf @@ -61,7 +61,7 @@ MMMessageParameters B "1.3.26.0.4406.0.7.10" "mm-message-parameters" InformationObject B "2.6.1.4.17.1.3.26.0.4406.0.4.1" "id-et-content-p772" -#.FN_BODY T_dist_value +#.FN_BODY DistributionExtensionField/dist-value /* XXX: not implemented */ #.FN_PARS PrimaryPrecedence diff --git a/asn1/x411/x411.cnf b/asn1/x411/x411.cnf index 4337cef508..d232d40612 100644 --- a/asn1/x411/x411.cnf +++ b/asn1/x411/x411.cnf @@ -244,7 +244,7 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses" #.FN_BODY RegistrationTypes/extensions/_item /*XXX not implemented yet */ -#.FN_BODY ExtensionValue +#.FN_BODY ExtensionField/value const char *name; if(extension_id != -1) @@ -256,7 +256,7 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses" } -#.FN_BODY CategoryValue +#.FN_BODY SecurityCategory/value offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree); @@ -329,13 +329,13 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses" NULL); -#.FN_PARS INTEGER +#.FN_PARS ExtensionType/standard-extension VAL_PTR = &extension_id -#.FN_PARS OBJECT_IDENTIFIER - FN_VARIANT = _str VAL_PTR = &object_identifier_id -#.FN_BODY OBJECT_IDENTIFIER + + +#.FN_BODY ExtensionType/private-extension FN_VARIANT = _str VAL_PTR = &object_identifier_id %(DEFAULT_BODY)s extension_id = -1; @@ -706,11 +706,11 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses" col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(credentials, x411_Credentials_vals, "Credentials(%%d)")); } -#.FN_BODY T_value +#.FN_BODY TokenData/value offset=call_x411_oid_callback("x411.tokendata", tvb, offset, actx->pinfo, tree); -#.FN_BODY T_bilateral_information +#.FN_BODY PerDomainBilateralInformation/bilateral-information proto_item *item = NULL; int loffset = 0; guint32 len = 0; diff --git a/asn1/x420/x420.cnf b/asn1/x420/x420.cnf index f40cd9f917..913a8460c5 100644 --- a/asn1/x420/x420.cnf +++ b/asn1/x420/x420.cnf @@ -119,7 +119,7 @@ ForwardedContentParameters B "2.6.1.11.17.1.3.26.0.4406.0.4.1" "id-ep-content- name = get_oid_str_name(object_identifier_id); proto_item_append_text(tree, " (%%s)", name ? name : object_identifier_id); -#.FN_BODY T_value +#.FN_BODY IPMSExtension/value offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); diff --git a/asn1/x509ce/x509ce.cnf b/asn1/x509ce/x509ce.cnf index 555a8c2ab5..9d4b6039c1 100644 --- a/asn1/x509ce/x509ce.cnf +++ b/asn1/x509ce/x509ce.cnf @@ -123,8 +123,8 @@ CertificatePairExactAssertion/issuedByThisCAAssertion cpea_issuedByThisCAAsserti #.FN_BODY OtherNameValue offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); -#.FN_FTR IA5String - if(hf_index == hf_x509ce_uniformResourceIdentifier) +#.FN_FTR GeneralName/uniformResourceIdentifier + PROTO_ITEM_SET_URL(get_ber_last_created_item()); #.END diff --git a/epan/dissectors/packet-cdt.c b/epan/dissectors/packet-cdt.c index 166e251d7d..92f25f9096 100644 --- a/epan/dissectors/packet-cdt.c +++ b/epan/dissectors/packet-cdt.c @@ -68,7 +68,7 @@ static int hf_cdt_algorithmID_ShortForm = -1; /* AlgorithmID_ShortForm */ static int hf_cdt_algorithmID_OID = -1; /* OBJECT_IDENTIFIER */ static int hf_cdt_contentType = -1; /* T_contentType */ static int hf_cdt_contentType_ShortForm = -1; /* ContentType_ShortForm */ -static int hf_cdt_contentType_OID = -1; /* OBJECT_IDENTIFIER */ +static int hf_cdt_contentType_OID = -1; /* T_contentType_OID */ static int hf_cdt_compressedContent = -1; /* CompressedContent */ /*--- End of included file: packet-cdt-hf.c ---*/ @@ -128,34 +128,13 @@ static int dissect_algorithmID_ShortForm_impl(proto_tree *tree _U_, tvbuff_t *tv static int dissect_cdt_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 48 "cdt.cnf" - const char *obj_id = NULL; - - offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &obj_id); - - if (obj_id) { - const char *name = get_oid_str_name (obj_id); - - if (!name) { - name = obj_id; - } - - proto_item_append_text (cdt_item, ", %s", name); - - if (check_col (actx->pinfo->cinfo, COL_INFO)) - col_append_fstr (actx->pinfo->cinfo, COL_INFO, "%s ", name); - } - - + offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); return offset; } static int dissect_algorithmID_OID_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_cdt_OBJECT_IDENTIFIER(TRUE, tvb, offset, actx, tree, hf_cdt_algorithmID_OID); } -static int dissect_contentType_OID_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_cdt_OBJECT_IDENTIFIER(TRUE, tvb, offset, actx, tree, hf_cdt_contentType_OID); -} static const value_string cdt_CompressionAlgorithmIdentifier_vals[] = { @@ -219,6 +198,36 @@ static int dissect_contentType_ShortForm_impl(proto_tree *tree _U_, tvbuff_t *tv } + +static int +dissect_cdt_T_contentType_OID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 48 "cdt.cnf" + const char *obj_id = NULL; + + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &obj_id); + + if (obj_id) { + const char *name = get_oid_str_name (obj_id); + + if (!name) { + name = obj_id; + } + + proto_item_append_text (cdt_item, ", %s", name); + + if (check_col (actx->pinfo->cinfo, COL_INFO)) + col_append_fstr (actx->pinfo->cinfo, COL_INFO, "%s ", name); + } + + + + return offset; +} +static int dissect_contentType_OID_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_cdt_T_contentType_OID(TRUE, tvb, offset, actx, tree, hf_cdt_contentType_OID); +} + + static const value_string cdt_T_contentType_vals[] = { { 0, "contentType-ShortForm" }, { 1, "contentType-OID" }, @@ -401,7 +410,7 @@ void proto_register_cdt (void) { { &hf_cdt_contentType_OID, { "contentType-OID", "cdt.contentType_OID", FT_OID, BASE_NONE, NULL, 0, - "cdt.OBJECT_IDENTIFIER", HFILL }}, + "cdt.T_contentType_OID", HFILL }}, { &hf_cdt_compressedContent, { "compressedContent", "cdt.compressedContent", FT_BYTES, BASE_HEX, NULL, 0, diff --git a/epan/dissectors/packet-gsm_map.c b/epan/dissectors/packet-gsm_map.c index 43a35cbf36..26edd39770 100644 --- a/epan/dissectors/packet-gsm_map.c +++ b/epan/dissectors/packet-gsm_map.c @@ -190,7 +190,7 @@ static int hf_gsm_map_subscriberDataStored = -1; /* AgeIndicator */ static int hf_gsm_map_imeisv = -1; /* IMEI */ static int hf_gsm_map_skipSubscriberDataUpdate = -1; /* NULL */ static int hf_gsm_map_PrivateExtensionList_item = -1; /* PrivateExtension */ -static int hf_gsm_map_extId = -1; /* OBJECT_IDENTIFIER */ +static int hf_gsm_map_extId = -1; /* T_extId */ static int hf_gsm_map_extType = -1; /* T_extType */ static int hf_gsm_map_privateExtensionList = -1; /* PrivateExtensionList */ static int hf_gsm_map_slr_Arg_PCS_Extensions = -1; /* SLR_Arg_PCS_Extensions */ @@ -2085,16 +2085,13 @@ static int dissect_operationLocalvalue(proto_tree *tree _U_, tvbuff_t *tvb _U_, static int dissect_gsm_map_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &obj_id); + offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); return offset; } static int dissect_globalValue(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_gsm_map_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_gsm_map_globalValue); } -static int dissect_extId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_gsm_map_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_gsm_map_extId); -} static const value_string gsm_map_OPERATION_vals[] = { @@ -2996,6 +2993,18 @@ static int dissect_diagnosticInfo(proto_tree *tree _U_, tvbuff_t *tvb _U_, int o static int +dissect_gsm_map_T_extId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &obj_id); + + return offset; +} +static int dissect_extId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_gsm_map_T_extId(FALSE, tvb, offset, actx, tree, hf_gsm_map_extId); +} + + + +static int dissect_gsm_map_T_extType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 520 "gsmmap.cnf" @@ -17615,7 +17624,7 @@ void proto_register_gsm_map(void) { { &hf_gsm_map_extId, { "extId", "gsm_map.extId", FT_OID, BASE_NONE, NULL, 0, - "gsm_map.OBJECT_IDENTIFIER", HFILL }}, + "gsm_map.T_extId", HFILL }}, { &hf_gsm_map_extType, { "extType", "gsm_map.extType", FT_NONE, BASE_NONE, NULL, 0, diff --git a/epan/dissectors/packet-logotypecertextn.c b/epan/dissectors/packet-logotypecertextn.c index b3fc18f2c0..729911d9f5 100644 --- a/epan/dissectors/packet-logotypecertextn.c +++ b/epan/dissectors/packet-logotypecertextn.c @@ -75,7 +75,7 @@ static int hf_logotypecertextn_mediaType = -1; /* IA5String */ static int hf_logotypecertextn_logotypeHash = -1; /* SEQUENCE_SIZE_1_MAX_OF_HashAlgAndValue */ static int hf_logotypecertextn_logotypeHash_item = -1; /* HashAlgAndValue */ static int hf_logotypecertextn_logotypeURI = -1; /* T_logotypeURI */ -static int hf_logotypecertextn_logotypeURI_item = -1; /* IA5String */ +static int hf_logotypecertextn_logotypeURI_item = -1; /* T_logotypeURI_item */ static int hf_logotypecertextn_type = -1; /* LogotypeImageType */ static int hf_logotypecertextn_fileSize = -1; /* INTEGER */ static int hf_logotypecertextn_xSize = -1; /* INTEGER */ @@ -92,7 +92,7 @@ static int hf_logotypecertextn_info = -1; /* LogotypeInfo */ static int hf_logotypecertextn_refStructHash = -1; /* SEQUENCE_SIZE_1_MAX_OF_HashAlgAndValue */ static int hf_logotypecertextn_refStructHash_item = -1; /* HashAlgAndValue */ static int hf_logotypecertextn_refStructURI = -1; /* T_refStructURI */ -static int hf_logotypecertextn_refStructURI_item = -1; /* IA5String */ +static int hf_logotypecertextn_refStructURI_item = -1; /* T_refStructURI_item */ static int hf_logotypecertextn_hashAlg = -1; /* AlgorithmIdentifier */ static int hf_logotypecertextn_hashValue = -1; /* OCTET_STRING */ @@ -144,26 +144,14 @@ dissect_logotypecertextn_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, actx, tree, tvb, offset, hf_index, NULL); -#line 18 "logotype-cert-extn.cnf" - if((hf_index == hf_logotypecertextn_logotypeURI_item) || - (hf_index == hf_logotypecertextn_refStructURI_item)) - PROTO_ITEM_SET_URL(get_ber_last_created_item()); - - return offset; } static int dissect_mediaType(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_logotypecertextn_IA5String(FALSE, tvb, offset, actx, tree, hf_logotypecertextn_mediaType); } -static int dissect_logotypeURI_item(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_logotypecertextn_IA5String(FALSE, tvb, offset, actx, tree, hf_logotypecertextn_logotypeURI_item); -} static int dissect_language_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_logotypecertextn_IA5String(TRUE, tvb, offset, actx, tree, hf_logotypecertextn_language); } -static int dissect_refStructURI_item(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_logotypecertextn_IA5String(FALSE, tvb, offset, actx, tree, hf_logotypecertextn_refStructURI_item); -} @@ -219,6 +207,24 @@ static int dissect_refStructHash(proto_tree *tree _U_, tvbuff_t *tvb _U_, int of } + +static int +dissect_logotypecertextn_T_logotypeURI_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, + actx, tree, tvb, offset, hf_index, + NULL); + +#line 18 "logotype-cert-extn.cnf" + PROTO_ITEM_SET_URL(get_ber_last_created_item()); + + + return offset; +} +static int dissect_logotypeURI_item(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_logotypecertextn_T_logotypeURI_item(FALSE, tvb, offset, actx, tree, hf_logotypecertextn_logotypeURI_item); +} + + static const ber_old_sequence_t T_logotypeURI_sequence_of[1] = { { BER_CLASS_UNI, BER_UNI_TAG_IA5String, BER_FLAGS_NOOWNTAG, dissect_logotypeURI_item }, }; @@ -464,6 +470,24 @@ static int dissect_direct_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offs } + +static int +dissect_logotypecertextn_T_refStructURI_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, + actx, tree, tvb, offset, hf_index, + NULL); + +#line 21 "logotype-cert-extn.cnf" + PROTO_ITEM_SET_URL(get_ber_last_created_item()); + + + return offset; +} +static int dissect_refStructURI_item(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_logotypecertextn_T_refStructURI_item(FALSE, tvb, offset, actx, tree, hf_logotypecertextn_refStructURI_item); +} + + static const ber_old_sequence_t T_refStructURI_sequence_of[1] = { { BER_CLASS_UNI, BER_UNI_TAG_IA5String, BER_FLAGS_NOOWNTAG, dissect_refStructURI_item }, }; @@ -718,7 +742,7 @@ void proto_register_logotypecertextn(void) { { &hf_logotypecertextn_logotypeURI_item, { "Item", "logotypecertextn.logotypeURI_item", FT_STRING, BASE_NONE, NULL, 0, - "logotypecertextn.IA5String", HFILL }}, + "logotypecertextn.T_logotypeURI_item", HFILL }}, { &hf_logotypecertextn_type, { "type", "logotypecertextn.type", FT_INT32, BASE_DEC, VALS(logotypecertextn_LogotypeImageType_vals), 0, @@ -786,7 +810,7 @@ void proto_register_logotypecertextn(void) { { &hf_logotypecertextn_refStructURI_item, { "Item", "logotypecertextn.refStructURI_item", FT_STRING, BASE_NONE, NULL, 0, - "logotypecertextn.IA5String", HFILL }}, + "logotypecertextn.T_refStructURI_item", HFILL }}, { &hf_logotypecertextn_hashAlg, { "hashAlg", "logotypecertextn.hashAlg", FT_NONE, BASE_NONE, NULL, 0, diff --git a/epan/dissectors/packet-pkcs12.c b/epan/dissectors/packet-pkcs12.c index 6a25341508..9a90b7b3b3 100644 --- a/epan/dissectors/packet-pkcs12.c +++ b/epan/dissectors/packet-pkcs12.c @@ -89,17 +89,17 @@ static int hf_pkcs12_digestAlgorithm = -1; /* DigestAlgorithmIdentifier * static int hf_pkcs12_digest = -1; /* Digest */ static int hf_pkcs12_AuthenticatedSafe_item = -1; /* ContentInfo */ static int hf_pkcs12_SafeContents_item = -1; /* SafeBag */ -static int hf_pkcs12_bagId = -1; /* OBJECT_IDENTIFIER */ +static int hf_pkcs12_bagId = -1; /* T_bagId */ static int hf_pkcs12_bagValue = -1; /* T_bagValue */ static int hf_pkcs12_bagAttributes = -1; /* SET_OF_PKCS12Attribute */ static int hf_pkcs12_bagAttributes_item = -1; /* PKCS12Attribute */ -static int hf_pkcs12_certId = -1; /* OBJECT_IDENTIFIER */ +static int hf_pkcs12_certId = -1; /* T_certId */ static int hf_pkcs12_certValue = -1; /* T_certValue */ -static int hf_pkcs12_crlId = -1; /* OBJECT_IDENTIFIER */ +static int hf_pkcs12_crlId = -1; /* T_crlId */ static int hf_pkcs12_crlValue = -1; /* T_crlValue */ static int hf_pkcs12_secretTypeId = -1; /* OBJECT_IDENTIFIER */ static int hf_pkcs12_secretValue = -1; /* T_secretValue */ -static int hf_pkcs12_attrId = -1; /* OBJECT_IDENTIFIER */ +static int hf_pkcs12_attrId = -1; /* T_attrId */ static int hf_pkcs12_attrValues = -1; /* T_attrValues */ static int hf_pkcs12_attrValues_item = -1; /* T_attrValues_item */ static int hf_pkcs12_privateKeyVersion = -1; /* Version */ @@ -151,6 +151,14 @@ static gint ett_pkcs12_PBMAC1Params = -1; /*--- End of included file: packet-pkcs12-ett.c ---*/ #line 62 "packet-pkcs12-template.c" +static void append_oid(proto_tree *tree, const char *oid) +{ + const char *name = NULL; + + name = get_oid_str_name(oid); + proto_item_append_text(tree, " (%%s)", name ? name : oid); +} + /*--- Included file: packet-pkcs12-fn.c ---*/ #line 1 "packet-pkcs12-fn.c" @@ -342,41 +350,23 @@ dissect_pkcs12_AuthenticatedSafe(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i static int -dissect_pkcs12_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 88 "pkcs12.cnf" - const char *name = NULL; - - offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); - - - name = get_oid_str_name(object_identifier_id); - proto_item_append_text(tree, " (%s)", name ? name : object_identifier_id); - +dissect_pkcs12_T_bagId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); +#line 86 "pkcs12.cnf" + append_oid(tree, object_identifier_id); return offset; } static int dissect_bagId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_pkcs12_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_pkcs12_bagId); -} -static int dissect_certId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_pkcs12_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_pkcs12_certId); -} -static int dissect_crlId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_pkcs12_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_pkcs12_crlId); -} -static int dissect_secretTypeId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_pkcs12_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_pkcs12_secretTypeId); -} -static int dissect_attrId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_pkcs12_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_pkcs12_attrId); + return dissect_pkcs12_T_bagId(FALSE, tvb, offset, actx, tree, hf_pkcs12_bagId); } static int dissect_pkcs12_T_bagValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 96 "pkcs12.cnf" +#line 110 "pkcs12.cnf" if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); @@ -391,8 +381,23 @@ static int dissect_bagValue(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset static int +dissect_pkcs12_T_attrId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); + +#line 106 "pkcs12.cnf" + append_oid(tree, object_identifier_id); + + return offset; +} +static int dissect_attrId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_pkcs12_T_attrId(FALSE, tvb, offset, actx, tree, hf_pkcs12_attrId); +} + + + +static int dissect_pkcs12_T_attrValues_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 100 "pkcs12.cnf" +#line 114 "pkcs12.cnf" if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); @@ -599,8 +604,23 @@ dissect_pkcs12_PKCS8ShroudedKeyBag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int +dissect_pkcs12_T_certId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); + +#line 91 "pkcs12.cnf" + append_oid(tree, object_identifier_id); + + return offset; +} +static int dissect_certId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_pkcs12_T_certId(FALSE, tvb, offset, actx, tree, hf_pkcs12_certId); +} + + + +static int dissect_pkcs12_T_certValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 104 "pkcs12.cnf" +#line 118 "pkcs12.cnf" if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); @@ -630,8 +650,23 @@ dissect_pkcs12_CertBag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset static int +dissect_pkcs12_T_crlId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); + +#line 96 "pkcs12.cnf" + append_oid(tree, object_identifier_id); + + return offset; +} +static int dissect_crlId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_pkcs12_T_crlId(FALSE, tvb, offset, actx, tree, hf_pkcs12_crlId); +} + + + +static int dissect_pkcs12_T_crlValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 108 "pkcs12.cnf" +#line 122 "pkcs12.cnf" if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); @@ -661,8 +696,20 @@ dissect_pkcs12_CRLBag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _ static int +dissect_pkcs12_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} +static int dissect_secretTypeId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_pkcs12_OBJECT_IDENTIFIER(FALSE, tvb, offset, actx, tree, hf_pkcs12_secretTypeId); +} + + + +static int dissect_pkcs12_T_secretValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 112 "pkcs12.cnf" +#line 126 "pkcs12.cnf" if(object_identifier_id) offset = call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); @@ -859,7 +906,7 @@ static void dissect_PBMAC1Params_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, /*--- End of included file: packet-pkcs12-fn.c ---*/ -#line 64 "packet-pkcs12-template.c" +#line 72 "packet-pkcs12-template.c" static int strip_octet_string(tvbuff_t *tvb, proto_tree *tree) { @@ -1031,7 +1078,7 @@ void proto_register_pkcs12(void) { { &hf_pkcs12_bagId, { "bagId", "pkcs12.bagId", FT_OID, BASE_NONE, NULL, 0, - "pkcs12.OBJECT_IDENTIFIER", HFILL }}, + "pkcs12.T_bagId", HFILL }}, { &hf_pkcs12_bagValue, { "bagValue", "pkcs12.bagValue", FT_NONE, BASE_NONE, NULL, 0, @@ -1047,7 +1094,7 @@ void proto_register_pkcs12(void) { { &hf_pkcs12_certId, { "certId", "pkcs12.certId", FT_OID, BASE_NONE, NULL, 0, - "pkcs12.OBJECT_IDENTIFIER", HFILL }}, + "pkcs12.T_certId", HFILL }}, { &hf_pkcs12_certValue, { "certValue", "pkcs12.certValue", FT_NONE, BASE_NONE, NULL, 0, @@ -1055,7 +1102,7 @@ void proto_register_pkcs12(void) { { &hf_pkcs12_crlId, { "crlId", "pkcs12.crlId", FT_OID, BASE_NONE, NULL, 0, - "pkcs12.OBJECT_IDENTIFIER", HFILL }}, + "pkcs12.T_crlId", HFILL }}, { &hf_pkcs12_crlValue, { "crlValue", "pkcs12.crlValue", FT_NONE, BASE_NONE, NULL, 0, @@ -1071,7 +1118,7 @@ void proto_register_pkcs12(void) { { &hf_pkcs12_attrId, { "attrId", "pkcs12.attrId", FT_OID, BASE_NONE, NULL, 0, - "pkcs12.OBJECT_IDENTIFIER", HFILL }}, + "pkcs12.T_attrId", HFILL }}, { &hf_pkcs12_attrValues, { "attrValues", "pkcs12.attrValues", FT_UINT32, BASE_DEC, NULL, 0, @@ -1150,7 +1197,7 @@ void proto_register_pkcs12(void) { "x509af.AlgorithmIdentifier", HFILL }}, /*--- End of included file: packet-pkcs12-hfarr.c ---*/ -#line 138 "packet-pkcs12-template.c" +#line 146 "packet-pkcs12-template.c" }; /* List of subtrees */ @@ -1180,7 +1227,7 @@ void proto_register_pkcs12(void) { &ett_pkcs12_PBMAC1Params, /*--- End of included file: packet-pkcs12-ettarr.c ---*/ -#line 143 "packet-pkcs12-template.c" +#line 151 "packet-pkcs12-template.c" }; /* Register protocol */ @@ -1227,7 +1274,7 @@ void proto_reg_handoff_pkcs12(void) { /*--- End of included file: packet-pkcs12-dis-tab.c ---*/ -#line 161 "packet-pkcs12-template.c" +#line 169 "packet-pkcs12-template.c" } diff --git a/epan/dissectors/packet-x411.c b/epan/dissectors/packet-x411.c index 3c1d8fceb4..7f4803990a 100644 --- a/epan/dissectors/packet-x411.c +++ b/epan/dissectors/packet-x411.c @@ -349,8 +349,8 @@ static int hf_x411_ContentTypes_item = -1; /* ContentType */ static int hf_x411_built_in = -1; /* BuiltInContentType */ static int hf_x411_extended = -1; /* ExtendedContentType */ static int hf_x411_OtherRecipientNames_item = -1; /* OtherRecipientName */ -static int hf_x411_standard_extension = -1; /* INTEGER */ -static int hf_x411_private_extension = -1; /* OBJECT_IDENTIFIER */ +static int hf_x411_standard_extension = -1; /* T_standard_extension */ +static int hf_x411_private_extension = -1; /* T_private_extension */ static int hf_x411_extension_type = -1; /* ExtensionType */ static int hf_x411_criticality = -1; /* Criticality */ static int hf_x411_extension_value = -1; /* ExtensionValue */ @@ -1169,19 +1169,10 @@ static int dissect_privacy_mark(proto_tree *tree _U_, tvbuff_t *tvb _U_, int off static int dissect_x411_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 339 "x411.cnf" - - offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); - - extension_id = -1; - - + offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); return offset; } -static int dissect_private_extension_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_x411_OBJECT_IDENTIFIER(TRUE, tvb, offset, actx, tree, hf_x411_private_extension); -} static int dissect_category_type_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_x411_OBJECT_IDENTIFIER(TRUE, tvb, offset, actx, tree, hf_x411_category_type); } @@ -2000,7 +1991,7 @@ static int dissect_built_in_domain_defined_attributes(proto_tree *tree _U_, tvbu static int dissect_x411_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, - &extension_id); + NULL); return offset; } @@ -2010,9 +2001,6 @@ static int dissect_messages_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int of static int dissect_delivery_queue_octets_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_x411_INTEGER(TRUE, tvb, offset, actx, tree, hf_x411_delivery_queue_octets); } -static int dissect_standard_extension_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_x411_INTEGER(TRUE, tvb, offset, actx, tree, hf_x411_standard_extension); -} static int dissect_extension_attribute_type_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_x411_INTEGER(TRUE, tvb, offset, actx, tree, hf_x411_extension_attribute_type); } @@ -2855,6 +2843,37 @@ static int dissect_trace_information(proto_tree *tree _U_, tvbuff_t *tvb _U_, in } + +static int +dissect_x411_T_standard_extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + &extension_id); + + return offset; +} +static int dissect_standard_extension_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_x411_T_standard_extension(TRUE, tvb, offset, actx, tree, hf_x411_standard_extension); +} + + + +static int +dissect_x411_T_private_extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 339 "x411.cnf" + + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); + + extension_id = -1; + + + + return offset; +} +static int dissect_private_extension_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_x411_T_private_extension(TRUE, tvb, offset, actx, tree, hf_x411_private_extension); +} + + static const value_string x411_ExtensionType_vals[] = { { 0, "standard-extension" }, { 3, "private-extension" }, @@ -8778,11 +8797,11 @@ void proto_register_x411(void) { { &hf_x411_standard_extension, { "standard-extension", "x411.standard_extension", FT_INT32, BASE_DEC, NULL, 0, - "x411.INTEGER", HFILL }}, + "x411.T_standard_extension", HFILL }}, { &hf_x411_private_extension, { "private-extension", "x411.private_extension", FT_OID, BASE_NONE, NULL, 0, - "x411.OBJECT_IDENTIFIER", HFILL }}, + "x411.T_private_extension", HFILL }}, { &hf_x411_extension_type, { "type", "x411.type", FT_UINT32, BASE_DEC, VALS(x411_ExtensionType_vals), 0, diff --git a/epan/dissectors/packet-x509ce.c b/epan/dissectors/packet-x509ce.c index b617815157..0ff1c526cc 100644 --- a/epan/dissectors/packet-x509ce.c +++ b/epan/dissectors/packet-x509ce.c @@ -110,7 +110,7 @@ static int hf_x509ce_dNSName = -1; /* IA5String */ static int hf_x509ce_x400Address = -1; /* ORAddress */ static int hf_x509ce_directoryName = -1; /* Name */ static int hf_x509ce_ediPartyName = -1; /* EDIPartyName */ -static int hf_x509ce_uniformResourceIdentifier = -1; /* IA5String */ +static int hf_x509ce_uniformResourceIdentifier = -1; /* T_uniformResourceIdentifier */ static int hf_x509ce_iPAddress = -1; /* T_iPAddress */ static int hf_x509ce_registeredID = -1; /* OBJECT_IDENTIFIER */ static int hf_x509ce_type_id = -1; /* OtherNameType */ @@ -392,11 +392,6 @@ dissect_x509ce_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse actx, tree, tvb, offset, hf_index, NULL); -#line 127 "x509ce.cnf" - if(hf_index == hf_x509ce_uniformResourceIdentifier) - PROTO_ITEM_SET_URL(get_ber_last_created_item()); - - return offset; } static int dissect_rfc822Name_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { @@ -405,9 +400,6 @@ static int dissect_rfc822Name_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int static int dissect_dNSName_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { return dissect_x509ce_IA5String(TRUE, tvb, offset, actx, tree, hf_x509ce_dNSName); } -static int dissect_uniformResourceIdentifier_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { - return dissect_x509ce_IA5String(TRUE, tvb, offset, actx, tree, hf_x509ce_uniformResourceIdentifier); -} static const ber_old_sequence_t EDIPartyName_sequence[] = { @@ -430,6 +422,25 @@ static int dissect_ediPartyName_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, in static int +dissect_x509ce_T_uniformResourceIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, + actx, tree, tvb, offset, hf_index, + NULL); + +#line 127 "x509ce.cnf" + + PROTO_ITEM_SET_URL(get_ber_last_created_item()); + + + return offset; +} +static int dissect_uniformResourceIdentifier_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) { + return dissect_x509ce_T_uniformResourceIdentifier(TRUE, tvb, offset, actx, tree, hf_x509ce_uniformResourceIdentifier); +} + + + +static int dissect_x509ce_T_iPAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 117 "x509ce.cnf" proto_tree_add_item(tree, hf_x509ce_IPAddress, tvb, offset, 4, FALSE); @@ -1980,7 +1991,7 @@ void proto_register_x509ce(void) { { &hf_x509ce_uniformResourceIdentifier, { "uniformResourceIdentifier", "x509ce.uniformResourceIdentifier", FT_STRING, BASE_NONE, NULL, 0, - "x509ce.IA5String", HFILL }}, + "x509ce.T_uniformResourceIdentifier", HFILL }}, { &hf_x509ce_iPAddress, { "iPAddress", "x509ce.iPAddress", FT_BYTES, BASE_HEX, NULL, 0, diff --git a/tools/asn2wrs.py b/tools/asn2wrs.py index 266c4c64fb..fee798d33a 100755 --- a/tools/asn2wrs.py +++ b/tools/asn2wrs.py @@ -1314,18 +1314,20 @@ class EthCtx: out += "dissect_%s_%s(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {\n" % (self.eth_type[tname]['proto'], tname) elif (self.Per()): out += "dissect_%s_%s(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {\n" % (self.eth_type[tname]['proto'], tname) - if self.conform.get_fn_presence(tname): - out += self.conform.get_fn_text(tname, 'FN_HDR') - elif self.conform.get_fn_presence(self.eth_type[tname]['ref'][0]): + #if self.conform.get_fn_presence(tname): + # out += self.conform.get_fn_text(tname, 'FN_HDR') + #el + if self.conform.get_fn_presence(self.eth_type[tname]['ref'][0]): out += self.conform.get_fn_text(self.eth_type[tname]['ref'][0], 'FN_HDR') return out #--- eth_type_fn_ftr -------------------------------------------------------- def eth_type_fn_ftr(self, tname): out = '\n' - if self.conform.get_fn_presence(tname): - out += self.conform.get_fn_text(tname, 'FN_FTR') - elif self.conform.get_fn_presence(self.eth_type[tname]['ref'][0]): + #if self.conform.get_fn_presence(tname): + # out += self.conform.get_fn_text(tname, 'FN_FTR') + #el + if self.conform.get_fn_presence(self.eth_type[tname]['ref'][0]): out += self.conform.get_fn_text(self.eth_type[tname]['ref'][0], 'FN_FTR') out += " return offset;\n" out += "}\n" |