summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asn1/dap/dap.cnf20
-rw-r--r--asn1/disp/disp.cnf6
-rw-r--r--asn1/dop/dop.cnf22
-rw-r--r--asn1/h245/h245.cnf2
-rw-r--r--asn1/ldap/ldap.cnf10
-rw-r--r--asn1/pres/pres.cnf10
-rw-r--r--asn1/ranap/ranap.cnf4
-rw-r--r--asn1/ros/ros.cnf20
-rw-r--r--asn1/rtse/rtse.cnf12
-rw-r--r--asn1/tcap/tcap.cnf2
-rw-r--r--asn1/x411/x411.cnf71
-rw-r--r--asn1/x420/x420.cnf2
-rw-r--r--epan/dissectors/packet-dap.c43
-rw-r--r--epan/dissectors/packet-ldap.c35
-rw-r--r--epan/dissectors/packet-ros.c30
-rw-r--r--epan/dissectors/packet-rtse.c32
-rw-r--r--epan/dissectors/packet-x411.c400
-rwxr-xr-xtools/asn2wrs.py7
18 files changed, 468 insertions, 260 deletions
diff --git a/asn1/dap/dap.cnf b/asn1/dap/dap.cnf
index 0fdc31663b..f0280d3679 100644
--- a/asn1/dap/dap.cnf
+++ b/asn1/dap/dap.cnf
@@ -110,27 +110,27 @@ TokenData/name distinguished-name
TokenData/time utctime
-#.FN_BODY T_initial
+#.FN_BODY FilterItem/substrings/strings/_item/initial
proto_item *it;
it = proto_tree_add_item(tree, hf_index, tvb, offset, -1, FALSE);
proto_item_append_text(it," XXX: Not yet implemented!");
-#.FN_BODY T_any
+#.FN_BODY FilterItem/substrings/strings/_item/any
/* XXX: not yet implemented */
-#.FN_BODY T_final
+#.FN_BODY FilterItem/substrings/strings/_item/final
/* XXX: not yet implemented */
-#.FN_BODY T_matchValue
+#.FN_BODY MatchingRuleAssertion/matchValue
/* XXX: not yet implemented */
-#.FN_BODY T_req
+#.FN_BODY SpkmCredentials/req
/* XXX: not yet implemented */
-#.FN_BODY T_rep
+#.FN_BODY SpkmCredentials/rep
/* XXX: not yet implemented */
-#.FN_BODY T_spkmInfo
+#.FN_BODY SecurityErrorData/spkmInfo
/* XXX: not yet implemented */
#.FN_BODY DirectoryBindArgument
@@ -159,10 +159,10 @@ TokenData/time utctime
if(check_col(actx->pinfo->cinfo, COL_INFO))
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", x509if_get_last_dn());
-#.FN_PARS OCTET_STRING
- VAL_PTR=&out_tvb
+
+
-#.FN_BODY OCTET_STRING
+#.FN_BODY PagedResultsRequest/queryReference VAL_PTR=&out_tvb
tvbuff_t *out_tvb;
int i;
int len;
diff --git a/asn1/disp/disp.cnf b/asn1/disp/disp.cnf
index 8d2ce538ea..60f1839262 100644
--- a/asn1/disp/disp.cnf
+++ b/asn1/disp/disp.cnf
@@ -56,10 +56,10 @@ ModificationParameter B "dop.modify.roleb.2.5.19.1" "shadow-modify-roleb"
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(update, disp_RefreshInformation_vals, "unknown(%%d)"));
}
-#.FN_PARS StandardUpdate
- VAL_PTR = &update
+#.END
+
-#.FN_BODY StandardUpdate
+#.FN_BODY CoordinateShadowUpdateArgumentData/updateStrategy/standard VAL_PTR = &update
guint32 update;
%(DEFAULT_BODY)s
diff --git a/asn1/dop/dop.cnf b/asn1/dop/dop.cnf
index f80260d218..77a84c3474 100644
--- a/asn1/dop/dop.cnf
+++ b/asn1/dop/dop.cnf
@@ -104,39 +104,39 @@ OpBindingErrorParam/bindingType BindingType
append_oid(actx->pinfo, binding_type);
#.END
-#.FN_BODY EstablishSymmetric
+#.FN_BODY EstablishOperationalBindingArgumentData/initiator/symmetric
offset = call_dop_oid_callback("dop.establish.symmetric", tvb, offset, actx->pinfo, tree, "symmetric");
-#.FN_BODY EstablishRoleAInitiates
+#.FN_BODY EstablishOperationalBindingArgumentData/initiator/roleA-initiates
offset = call_dop_oid_callback("dop.establish.rolea", tvb, offset, actx->pinfo, tree, "roleA");
-#.FN_BODY EstablishRoleBInitiates
+#.FN_BODY EstablishOperationalBindingArgumentData/initiator/roleB-initiates
offset = call_dop_oid_callback("dop.establish.roleb", tvb, offset, actx->pinfo, tree, "roleB");
-#.FN_BODY ModifySymmetric
+#.FN_BODY ModifyOperationalBindingArgumentData/initiator/symmetric
offset = call_dop_oid_callback("dop.modify.symmetric", tvb, offset, actx->pinfo, tree, "symmetric");
-#.FN_BODY ModifyRoleAInitiates
+#.FN_BODY ModifyOperationalBindingArgumentData/initiator/roleA-initiates
offset = call_dop_oid_callback("dop.modify.rolea", tvb, offset, actx->pinfo, tree, "roleA");
-#.FN_BODY ModifyRoleBInitiates
+#.FN_BODY ModifyOperationalBindingArgumentData/initiator/roleB-initiates
offset = call_dop_oid_callback("dop.modify.roleb", tvb, offset, actx->pinfo, tree, "roleB");
-#.FN_BODY TerminateSymmetric
+#.FN_BODY TerminateOperationalBindingArgumentData/initiator/symmetric
offset = call_dop_oid_callback("dop.terminate.symmetric", tvb, offset, actx->pinfo, tree, "symmetric");
-#.FN_BODY TerminateRoleAInitiates
+#.FN_BODY TerminateOperationalBindingArgumentData/initiator/roleA-initiates
offset = call_dop_oid_callback("dop.terminate.rolea", tvb, offset, actx->pinfo, tree, "roleA");
-#.FN_BODY TerminateRoleBInitiates
+#.FN_BODY TerminateOperationalBindingArgumentData/initiator/roleB-initiates
offset = call_dop_oid_callback("dop.terminate.roleb", tvb, offset, actx->pinfo, tree, "roleB");
@@ -160,11 +160,11 @@ OpBindingErrorParam/bindingType BindingType
offset = call_dop_oid_callback("dop.agreement", tvb, offset, actx->pinfo, tree, NULL);
-#.FN_BODY ResultNewAgreement
+#.FN_BODY ModifyOperationalBindingResultData/newAgreement
offset = call_dop_oid_callback("dop.agreement", tvb, offset, actx->pinfo, tree, NULL);
-#.FN_BODY ArgumentNewAgreement
+#.FN_BODY ModifyOperationalBindingArgumentData/newAgreement
offset = call_dop_oid_callback("dop.agreement", tvb, offset, actx->pinfo, tree, NULL);
diff --git a/asn1/h245/h245.cnf b/asn1/h245/h245.cnf
index 64b30e4af1..7b0c01db79 100644
--- a/asn1/h245/h245.cnf
+++ b/asn1/h245/h245.cnf
@@ -433,7 +433,7 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
g_snprintf(h245_pi->frame_label, 50, "%%s %%s", h245_pi->frame_label, val_to_str(value, h245_VideoMode_vals, "ukn"));
#.END
#----------------------------------------------------------------------------------------
-#.FN_BODY DataModeApplication VAL_PTR = &value
+#.FN_BODY DataMode/application VAL_PTR = &value
guint32 value;
%(DEFAULT_BODY)s
diff --git a/asn1/ldap/ldap.cnf b/asn1/ldap/ldap.cnf
index af625f61b7..7888895d68 100644
--- a/asn1/ldap/ldap.cnf
+++ b/asn1/ldap/ldap.cnf
@@ -365,7 +365,7 @@ ldap_conv_info_t *ldap_info;
}
-#.FN_BODY BindResponse_resultCode VAL_PTR = &result
+#.FN_BODY BindResponse/resultCode VAL_PTR = &result
const gchar *valstr;
@@ -532,14 +532,14 @@ ldap_conv_info_t *ldap_info;
#.FN_FTR Filter/not
Filter_string=ep_strdup_printf("(!%s)",Filter_string);
-#.FN_BODY BOOLEAN
+#.FN_BODY MatchingRuleAssertion/dnAttributes
gboolean val;
- offset = dissect_ber_boolean_value(implicit_tag, actx, tree, tvb, offset, hf_index, &val);
+offset = dissect_ber_boolean_value(implicit_tag, actx, tree, tvb, offset, hf_index, &val);
+
- if (hf_index == hf_ldap_dnAttributes) {
matching_rule_dnattr = val;
- }
+
#.FN_HDR Filter/extensibleMatch
attr_type=NULL;
diff --git a/asn1/pres/pres.cnf b/asn1/pres/pres.cnf
index 96180d59ce..2ad84caaeb 100644
--- a/asn1/pres/pres.cnf
+++ b/asn1/pres/pres.cnf
@@ -28,8 +28,8 @@ CPA-PPDU/x410-mode-parameters cPR_PPDU_x400_mode_parameters
ARP-PPDU/provider-reason aRU_PPDU_provider-reason
CPR-PPDU/normal-mode-parameters/provider-reason cPR_PPDU__provider-reason
-#.FN_BODY OPEN
-/* FIX ME*/
+
+
#.FN_BODY PDV-list/presentation-data-values/single-ASN1-type
@@ -59,13 +59,13 @@ CPR-PPDU/normal-mode-parameters/provider-reason cPR_PPDU__provider-reason
}
-#.FN_PARS Abstract_syntax_name
+#.FN_PARS Abstract-syntax-name
FN_VARIANT = _str VAL_PTR = &abstract_syntax_name_oid
-#.FN_PARS Presentation_context_identifier
+#.FN_PARS Presentation-context-identifier
VAL_PTR = &presentation_context_identifier
-#.FN_BODY Presentation_context_identifier
+#.FN_BODY Presentation-context-identifier
%(DEFAULT_BODY)s
diff --git a/asn1/ranap/ranap.cnf b/asn1/ranap/ranap.cnf
index ee72587f1a..e110082e98 100644
--- a/asn1/ranap/ranap.cnf
+++ b/asn1/ranap/ranap.cnf
@@ -67,7 +67,7 @@ VAL_PTR = &ProtocolIE_ID
offset = dissect_ranap_messages(tvb, offset, %(ACTX)s, tree);
-#.FN_BODY RANAP_PROTOCOL_IES_Value
+#.FN_BODY RANAP-PROTOCOL-IES-Value
offset = dissect_ranap_ies(tvb, offset, %(ACTX)s, tree);
@@ -90,7 +90,7 @@ tvbuff_t *nas_pdu_tvb=NULL;
offset = dissect_ranap_ies(tvb, offset, %(ACTX)s, tree);
-#.FN_BODY RANAP_PRIVATE_IES_Value
+#.FN_BODY RANAP-PRIVATE-IES-Value
/* FIX ME */
#.FN_BODY PLMNidentity VAL_PTR = &parameter_tvb
diff --git a/asn1/ros/ros.cnf b/asn1/ros/ros.cnf
index 462a7c9c3d..5623c55cf1 100644
--- a/asn1/ros/ros.cnf
+++ b/asn1/ros/ros.cnf
@@ -15,9 +15,9 @@ Reject/problem/returnResult rejectResult
#.FN_PARS ErrorCode VAL_PTR = &opcode
-#.FN_PARS INTEGER VAL_PTR = &invokeid
+#.FN_PARS InvokeId/present VAL_PTR = &invokeid
-#.FN_BODY T_argument
+#.FN_BODY Invoke/argument
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "invoke argument");
@@ -32,7 +32,7 @@ Reject/problem/returnResult rejectResult
offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree);
}
-#.FN_BODY OperationResult
+#.FN_BODY ReturnResult/result/result
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "return result");
@@ -47,7 +47,7 @@ Reject/problem/returnResult rejectResult
offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree);
}
-#.FN_BODY T_parameter
+#.FN_BODY ReturnError/parameter
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "return result");
@@ -63,7 +63,7 @@ Reject/problem/returnResult rejectResult
}
-#.FN_BODY T_bind_invoke
+#.FN_BODY ROS/bind-invoke
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "bind-invoke");
@@ -74,7 +74,7 @@ Reject/problem/returnResult rejectResult
offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree);
}
-#.FN_BODY T_bind_result
+#.FN_BODY ROS/bind-result
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "bind-result");
@@ -85,7 +85,7 @@ Reject/problem/returnResult rejectResult
offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree);
}
-#.FN_BODY T_bind_error
+#.FN_BODY ROS/bind-error
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "bind-error");
@@ -97,7 +97,7 @@ Reject/problem/returnResult rejectResult
}
-#.FN_BODY T_unbind_invoke
+#.FN_BODY ROS/unbind-invoke
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "unbind-invoke");
@@ -109,7 +109,7 @@ Reject/problem/returnResult rejectResult
}
-#.FN_BODY T_unbind_result
+#.FN_BODY ROS/unbind-result
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "unbind-result");
@@ -120,7 +120,7 @@ Reject/problem/returnResult rejectResult
offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree);
}
-#.FN_BODY T_unbind_error
+#.FN_BODY ROS/unbind-error
char *oid;
/* not sure what the length should be - -1 for now */
proto_tree_add_text(tree, tvb, offset,-1, "unbind-error");
diff --git a/asn1/rtse/rtse.cnf b/asn1/rtse/rtse.cnf
index 929adb1e67..6a8543ee37 100644
--- a/asn1/rtse/rtse.cnf
+++ b/asn1/rtse/rtse.cnf
@@ -137,9 +137,9 @@ EXTERNALt
col_append_fstr(actx->pinfo->cinfo, COL_INFO, "Recover");
%(DEFAULT_BODY)s
-#.FN_PARS T61String
- VAL_PTR=&string
-#.FN_BODY T61String
+#.END
+
+#.FN_BODY CallingSSuserReference/t61String VAL_PTR=&string
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
if(open_request && string && check_col(actx->pinfo->cinfo, COL_INFO))
@@ -153,9 +153,9 @@ EXTERNALt
if(open_request && string && check_col(actx->pinfo->cinfo, COL_INFO))
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", tvb_format_text(string, 0, tvb_length(string)));
-#.FN_PARS OCTET_STRING
- VAL_PTR=&string
-#.FN_BODY OCTET_STRING
+#.END
+
+#.FN_BODY CallingSSuserReference/octetString VAL_PTR=&string
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
if(open_request && string && check_col(actx->pinfo->cinfo, COL_INFO))
diff --git a/asn1/tcap/tcap.cnf b/asn1/tcap/tcap.cnf
index 90cbe7ab05..1ba3fff0ee 100644
--- a/asn1/tcap/tcap.cnf
+++ b/asn1/tcap/tcap.cnf
@@ -91,7 +91,7 @@ if (!next_tvb)
offset += len;
return offset;
-#.FN_BODY User_information
+#.FN_BODY User-information
tvbuff_t *next_tvb;
gint8 class;
gboolean pc;
diff --git a/asn1/x411/x411.cnf b/asn1/x411/x411.cnf
index d232d40612..11d2ac36d5 100644
--- a/asn1/x411/x411.cnf
+++ b/asn1/x411/x411.cnf
@@ -485,12 +485,10 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses"
g_strlcat(oraddress, tvb_format_text(string, 0, tvb_length(string)), MAX_ORA_STR_LEN);
}
+#.VIRTUAL_ASSGN
+AddrNumericString UserAddress/x121/x121-address CountryName/x121-dcc-code PhysicalDeliveryCountryName/x121-dcc-code PostalCode/numeric-code
-
-#.FN_PARS NumericString
- VAL_PTR=&nstring
-
-#.FN_BODY NumericString
+#.FN_BODY AddrNumericString VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
@@ -498,9 +496,10 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses"
if(doing_address && nstring)
g_strlcat(oraddress, tvb_format_text(nstring, 0, tvb_length(nstring)), MAX_ORA_STR_LEN);
-#.FN_PARS TeletexString
+#.VIRTUAL_ASSGN
+AddrTeletexString TeletexPersonalName/surname TeletexPersonalName/given-name TeletexPersonalName/initials TeletexPersonalName/generation-qualifier TeletexDomainDefinedAttribute/type TeletexDomainDefinedAttribute/value
-#.FN_BODY TeletexString
+#.FN_BODY AddrTeletexString VAL_PTR=&tstring
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
@@ -509,28 +508,60 @@ ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses"
g_strlcat(oraddress, tvb_format_text(tstring, 0, tvb_length(tstring)), MAX_ORA_STR_LEN);
-#.FN_PARS PrintableString
- VAL_PTR=&pstring
+#.FN_BODY PersonalName/surname VAL_PTR=&pstring
+ tvbuff_t *pstring = NULL;
+
+ %(DEFAULT_BODY)s
-#.FN_BODY PrintableString
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/S=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+#.FN_BODY PersonalName/given-name VAL_PTR=&pstring
tvbuff_t *pstring = NULL;
- char *fmt = NULL;
%(DEFAULT_BODY)s
if(doing_address && pstring) {
- if(hf_index == hf_x411_printable_surname) fmt = "/S=";
- else if(hf_index == hf_x411_printable_given_name) fmt = "/G=";
- else if(hf_index == hf_x411_printable_initials) fmt = "/I=";
- else if(hf_index == hf_x411_printable_generation_qualifier) fmt = "/GQ=";
- else if(hf_index == hf_x411_printable_type) fmt = "/DD.";
- else if(hf_index == hf_x411_printable_value) fmt = "=";
-
- if(fmt)
- g_strlcat(oraddress, fmt, MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, "/G=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+#.FN_BODY PersonalName/initials VAL_PTR=&pstring
+ tvbuff_t *pstring = NULL;
+
+ %(DEFAULT_BODY)s
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/I=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+#.FN_BODY PersonalName/generation-qualifier VAL_PTR=&pstring
+ tvbuff_t *pstring = NULL;
+
+ %(DEFAULT_BODY)s
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/GQ=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+#.FN_BODY BuiltInDomainDefinedAttribute/type VAL_PTR=&pstring
+ tvbuff_t *pstring = NULL;
+ %(DEFAULT_BODY)s
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/DD.", MAX_ORA_STR_LEN);
g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+#.FN_BODY BuiltInDomainDefinedAttribute/value VAL_PTR=&pstring
+ tvbuff_t *pstring = NULL;
+ %(DEFAULT_BODY)s
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
}
#.FN_BODY ORAddress
diff --git a/asn1/x420/x420.cnf b/asn1/x420/x420.cnf
index 913a8460c5..71a1962708 100644
--- a/asn1/x420/x420.cnf
+++ b/asn1/x420/x420.cnf
@@ -160,7 +160,7 @@ ForwardedContentParameters B "2.6.1.11.17.1.3.26.0.4406.0.4.1" "id-ep-content-
if((pi = get_ber_last_created_item()))
proto_item_append_text(pi, " (%%s)", val_to_str(crs, charsetreg_vals, "unknown"));
-#.FN_BODY Interchange_Data_Element
+#.FN_BODY Interchange-Data-Element
/* XXX Not implemented yet */
#.FN_BODY NationallyDefinedBodyPart
diff --git a/epan/dissectors/packet-dap.c b/epan/dissectors/packet-dap.c
index 8a6b18f960..95983416d0 100644
--- a/epan/dissectors/packet-dap.c
+++ b/epan/dissectors/packet-dap.c
@@ -164,7 +164,7 @@ static int hf_dap_sortKeys = -1; /* SEQUENCE_OF_SortKey */
static int hf_dap_sortKeys_item = -1; /* SortKey */
static int hf_dap_reverse = -1; /* BOOLEAN */
static int hf_dap_unmerged = -1; /* BOOLEAN */
-static int hf_dap_queryReference = -1; /* OCTET_STRING */
+static int hf_dap_queryReference = -1; /* T_queryReference */
static int hf_dap_orderingRule = -1; /* OBJECT_IDENTIFIER */
static int hf_dap_certification_path = -1; /* CertificationPath */
static int hf_dap_distinguished_name = -1; /* DistinguishedName */
@@ -283,6 +283,7 @@ static int hf_dap_unexplored_item = -1; /* ContinuationReference */
static int hf_dap_unavailableCriticalExtensions = -1; /* BOOLEAN */
static int hf_dap_unknownErrors = -1; /* T_unknownErrors */
static int hf_dap_unknownErrors_item = -1; /* OBJECT_IDENTIFIER */
+static int hf_dap_queryReference_01 = -1; /* OCTET_STRING */
static int hf_dap_overspecFilter = -1; /* Filter */
static int hf_dap_entryCount = -1; /* T_entryCount */
static int hf_dap_bestEstimate = -1; /* INTEGER */
@@ -2138,7 +2139,7 @@ static int dissect_newRequest(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offse
static int
-dissect_dap_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_dap_T_queryReference(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 166 "dap.cnf"
tvbuff_t *out_tvb;
int i;
@@ -2172,13 +2173,7 @@ dissect_dap_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
return offset;
}
static int dissect_queryReference(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_dap_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_dap_queryReference);
-}
-static int dissect_unprotected(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_dap_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_dap_unprotected);
-}
-static int dissect_protectedPassword(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_dap_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_dap_protectedPassword);
+ return dissect_dap_T_queryReference(FALSE, tvb, offset, actx, tree, hf_dap_queryReference);
}
@@ -2277,6 +2272,25 @@ static int dissect_validity(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset
}
+
+static int
+dissect_dap_OCTET_STRING(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_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_unprotected(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_dap_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_dap_unprotected);
+}
+static int dissect_protectedPassword(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_dap_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_dap_protectedPassword);
+}
+static int dissect_queryReference_01(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_dap_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_dap_queryReference_01);
+}
+
+
static const ber_old_sequence_t T_protected_sequence[] = {
{ BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_protectedPassword },
{ BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
@@ -2340,6 +2354,9 @@ dissect_dap_SimpleCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", x509if_get_last_dn());
+
+
+
return offset;
}
@@ -3493,7 +3510,7 @@ static const ber_old_sequence_t PartialOutcomeQualifier_set[] = {
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_unexplored },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_unavailableCriticalExtensions },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_unknownErrors },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_queryReference },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_queryReference_01 },
{ BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_overspecFilter },
{ BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_notification },
{ BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_entryCount },
@@ -6008,7 +6025,7 @@ void proto_register_dap(void) {
{ &hf_dap_queryReference,
{ "queryReference", "dap.queryReference",
FT_BYTES, BASE_HEX, NULL, 0,
- "dap.OCTET_STRING", HFILL }},
+ "dap.T_queryReference", HFILL }},
{ &hf_dap_orderingRule,
{ "orderingRule", "dap.orderingRule",
FT_OID, BASE_NONE, NULL, 0,
@@ -6481,6 +6498,10 @@ void proto_register_dap(void) {
{ "Item", "dap.unknownErrors_item",
FT_OID, BASE_NONE, NULL, 0,
"dap.OBJECT_IDENTIFIER", HFILL }},
+ { &hf_dap_queryReference_01,
+ { "queryReference", "dap.queryReference",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "dap.OCTET_STRING", HFILL }},
{ &hf_dap_overspecFilter,
{ "overspecFilter", "dap.overspecFilter",
FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
diff --git a/epan/dissectors/packet-ldap.c b/epan/dissectors/packet-ldap.c
index 06ed3d8da2..8eef19840f 100644
--- a/epan/dissectors/packet-ldap.c
+++ b/epan/dissectors/packet-ldap.c
@@ -239,7 +239,7 @@ static int hf_ldap_any = -1; /* LDAPString */
static int hf_ldap_final = -1; /* LDAPString */
static int hf_ldap_matchingRule = -1; /* MatchingRuleId */
static int hf_ldap_matchValue = -1; /* AssertionValue */
-static int hf_ldap_dnAttributes = -1; /* BOOLEAN */
+static int hf_ldap_dnAttributes = -1; /* T_dnAttributes */
static int hf_ldap_objectName = -1; /* LDAPDN */
static int hf_ldap_searchResultEntry_attributes = -1; /* PartialAttributeList */
static int hf_ldap_PartialAttributeList_item = -1; /* PartialAttributeList_item */
@@ -1384,16 +1384,7 @@ dissect_ldap_INTEGER_0_maxInt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
static int
dissect_ldap_BOOLEAN(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 536 "ldap.cnf"
- gboolean val;
-
- offset = dissect_ber_boolean_value(implicit_tag, actx, tree, tvb, offset, hf_index, &val);
-
- if (hf_index == hf_ldap_dnAttributes) {
- matching_rule_dnattr = val;
- }
-
-
+ offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index);
return offset;
}
@@ -1698,11 +1689,29 @@ dissect_ldap_MatchingRuleId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
}
+
+static int
+dissect_ldap_T_dnAttributes(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 536 "ldap.cnf"
+ gboolean val;
+
+offset = dissect_ber_boolean_value(implicit_tag, actx, tree, tvb, offset, hf_index, &val);
+
+
+ matching_rule_dnattr = val;
+
+
+
+
+ return offset;
+}
+
+
static const ber_sequence_t MatchingRuleAssertion_sequence[] = {
{ &hf_ldap_matchingRule , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ldap_MatchingRuleId },
{ &hf_ldap_type , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ldap_AttributeDescription },
{ &hf_ldap_matchValue , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ldap_AssertionValue },
- { &hf_ldap_dnAttributes , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ldap_BOOLEAN },
+ { &hf_ldap_dnAttributes , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ldap_T_dnAttributes },
{ NULL, 0, 0, 0, NULL }
};
@@ -4148,7 +4157,7 @@ void proto_register_ldap(void) {
{ &hf_ldap_dnAttributes,
{ "dnAttributes", "ldap.dnAttributes",
FT_BOOLEAN, 8, NULL, 0,
- "ldap.BOOLEAN", HFILL }},
+ "ldap.T_dnAttributes", HFILL }},
{ &hf_ldap_objectName,
{ "objectName", "ldap.objectName",
FT_STRING, BASE_NONE, NULL, 0,
diff --git a/epan/dissectors/packet-ros.c b/epan/dissectors/packet-ros.c
index 147b01ef85..86d6632bc3 100644
--- a/epan/dissectors/packet-ros.c
+++ b/epan/dissectors/packet-ros.c
@@ -110,7 +110,7 @@ static int hf_ros_general = -1; /* GeneralProblem */
static int hf_ros_invokeProblem = -1; /* InvokeProblem */
static int hf_ros_rejectResult = -1; /* ReturnResultProblem */
static int hf_ros_rejectError = -1; /* ReturnErrorProblem */
-static int hf_ros_present = -1; /* INTEGER */
+static int hf_ros_present = -1; /* T_present */
static int hf_ros_absent = -1; /* NULL */
static int hf_ros_local = -1; /* INTEGER */
static int hf_ros_global = -1; /* OBJECT_IDENTIFIER */
@@ -319,20 +319,14 @@ ros_match_call_response(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gui
static int
-dissect_ros_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_) {
+dissect_ros_T_present(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,
&invokeid);
return offset;
}
-static int dissect_linkedId_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_ros_INTEGER(TRUE, tvb, offset, actx, tree, hf_ros_linkedId);
-}
static int dissect_present(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_ros_INTEGER(FALSE, tvb, offset, actx, tree, hf_ros_present);
-}
-static int dissect_local(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_ros_INTEGER(FALSE, tvb, offset, actx, tree, hf_ros_local);
+ return dissect_ros_T_present(FALSE, tvb, offset, actx, tree, hf_ros_present);
}
@@ -375,6 +369,22 @@ static int dissect_invokeId(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset
static int
+dissect_ros_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,
+ NULL);
+
+ return offset;
+}
+static int dissect_linkedId_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_ros_INTEGER(TRUE, tvb, offset, actx, tree, hf_ros_linkedId);
+}
+static int dissect_local(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_ros_INTEGER(FALSE, tvb, offset, actx, tree, hf_ros_local);
+}
+
+
+
+static int
dissect_ros_OperationCode(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,
&opcode);
@@ -1122,7 +1132,7 @@ void proto_register_ros(void) {
{ &hf_ros_present,
{ "present", "ros.present",
FT_INT32, BASE_DEC, NULL, 0,
- "ros.INTEGER", HFILL }},
+ "ros.T_present", HFILL }},
{ &hf_ros_absent,
{ "absent", "ros.absent",
FT_NONE, BASE_NONE, NULL, 0,
diff --git a/epan/dissectors/packet-rtse.c b/epan/dissectors/packet-rtse.c
index 066a4f7f95..e25fd9435a 100644
--- a/epan/dissectors/packet-rtse.c
+++ b/epan/dissectors/packet-rtse.c
@@ -95,8 +95,8 @@ static int hf_rtse_recover = -1; /* SessionConnectionIdentifier
static int hf_rtse_callingSSuserReference = -1; /* CallingSSuserReference */
static int hf_rtse_commonReference = -1; /* CommonReference */
static int hf_rtse_additionalReferenceInformation = -1; /* AdditionalReferenceInformation */
-static int hf_rtse_t61String = -1; /* T61String */
-static int hf_rtse_octetString = -1; /* OCTET_STRING */
+static int hf_rtse_t61String = -1; /* T_t61String */
+static int hf_rtse_octetString = -1; /* T_octetString */
static int hf_rtse_direct_reference = -1; /* OBJECT_IDENTIFIER */
static int hf_rtse_indirect_reference = -1; /* T_indirect_reference */
static int hf_rtse_data_value_descriptor = -1; /* ObjectDescriptor */
@@ -264,7 +264,7 @@ static int dissect_open(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_,
static int
-dissect_rtse_T61String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_rtse_T_t61String(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 143 "rtse.cnf"
tvbuff_t *string = NULL;
offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString,
@@ -279,13 +279,13 @@ dissect_rtse_T61String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
return offset;
}
static int dissect_t61String(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_rtse_T61String(FALSE, tvb, offset, actx, tree, hf_rtse_t61String);
+ return dissect_rtse_T_t61String(FALSE, tvb, offset, actx, tree, hf_rtse_t61String);
}
static int
-dissect_rtse_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_rtse_T_octetString(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 159 "rtse.cnf"
tvbuff_t *string = NULL;
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
@@ -299,10 +299,7 @@ dissect_rtse_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
return offset;
}
static int dissect_octetString(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_rtse_OCTET_STRING(FALSE, tvb, offset, actx, tree, hf_rtse_octetString);
-}
-static int dissect_octet_aligned_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_rtse_OCTET_STRING(TRUE, tvb, offset, actx, tree, hf_rtse_octet_aligned);
+ return dissect_rtse_T_octetString(FALSE, tvb, offset, actx, tree, hf_rtse_octetString);
}
@@ -790,6 +787,19 @@ static int dissect_single_ASN1_type(proto_tree *tree _U_, tvbuff_t *tvb _U_, int
}
+
+static int
+dissect_rtse_OCTET_STRING(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_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_octet_aligned_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_rtse_OCTET_STRING(TRUE, tvb, offset, actx, tree, hf_rtse_octet_aligned);
+}
+
+
static const value_string rtse_T_encoding_vals[] = {
{ 0, "single-ASN1-type" },
{ 1, "octet-aligned" },
@@ -1005,11 +1015,11 @@ void proto_register_rtse(void) {
{ &hf_rtse_t61String,
{ "t61String", "rtse.t61String",
FT_STRING, BASE_NONE, NULL, 0,
- "rtse.T61String", HFILL }},
+ "rtse.T_t61String", HFILL }},
{ &hf_rtse_octetString,
{ "octetString", "rtse.octetString",
FT_BYTES, BASE_HEX, NULL, 0,
- "rtse.OCTET_STRING", HFILL }},
+ "rtse.T_octetString", HFILL }},
{ &hf_rtse_direct_reference,
{ "direct-reference", "rtse.direct_reference",
FT_OID, BASE_NONE, NULL, 0,
diff --git a/epan/dissectors/packet-x411.c b/epan/dissectors/packet-x411.c
index 7f4803990a..81cee60c41 100644
--- a/epan/dissectors/packet-x411.c
+++ b/epan/dissectors/packet-x411.c
@@ -296,7 +296,7 @@ static int hf_x411_registered_information = -1; /* RegisterArgument */
static int hf_x411_old_credentials = -1; /* Credentials */
static int hf_x411_new_credentials = -1; /* Credentials */
static int hf_x411_x121 = -1; /* T_x121 */
-static int hf_x411_x121_address = -1; /* NumericString */
+static int hf_x411_x121_address = -1; /* AddrNumericString */
static int hf_x411_tsap_id = -1; /* PrintableString */
static int hf_x411_presentation = -1; /* PSAPAddress */
static int hf_x411_Redirections_item = -1; /* RecipientRedirection */
@@ -394,23 +394,23 @@ static int hf_x411_organization_name = -1; /* OrganizationName */
static int hf_x411_numeric_user_identifier = -1; /* NumericUserIdentifier */
static int hf_x411_personal_name = -1; /* PersonalName */
static int hf_x411_organizational_unit_names = -1; /* OrganizationalUnitNames */
-static int hf_x411_x121_dcc_code = -1; /* NumericString */
+static int hf_x411_x121_dcc_code = -1; /* AddrNumericString */
static int hf_x411_iso_3166_alpha2_code = -1; /* PrintableString */
-static int hf_x411_printable_surname = -1; /* PrintableString */
-static int hf_x411_printable_given_name = -1; /* PrintableString */
-static int hf_x411_printable_initials = -1; /* PrintableString */
-static int hf_x411_printable_generation_qualifier = -1; /* PrintableString */
+static int hf_x411_printable_surname = -1; /* T_printable_surname */
+static int hf_x411_printable_given_name = -1; /* T_printable_given_name */
+static int hf_x411_printable_initials = -1; /* T_printable_initials */
+static int hf_x411_printable_generation_qualifier = -1; /* T_printable_generation_qualifier */
static int hf_x411_OrganizationalUnitNames_item = -1; /* OrganizationalUnitName */
static int hf_x411_BuiltInDomainDefinedAttributes_item = -1; /* BuiltInDomainDefinedAttribute */
-static int hf_x411_printable_type = -1; /* PrintableString */
-static int hf_x411_printable_value = -1; /* PrintableString */
+static int hf_x411_printable_type = -1; /* T_printable_type */
+static int hf_x411_printable_value = -1; /* T_printable_value */
static int hf_x411_ExtensionAttributes_item = -1; /* ExtensionAttribute */
static int hf_x411_extension_attribute_type = -1; /* INTEGER */
static int hf_x411_extension_attribute_value = -1; /* T_extension_attribute_value */
-static int hf_x411_teletex_surname = -1; /* TeletexString */
-static int hf_x411_teletex_given_name = -1; /* TeletexString */
-static int hf_x411_teletex_initials = -1; /* TeletexString */
-static int hf_x411_teletex_generation_qualifier = -1; /* TeletexString */
+static int hf_x411_teletex_surname = -1; /* AddrTeletexString */
+static int hf_x411_teletex_given_name = -1; /* AddrTeletexString */
+static int hf_x411_teletex_initials = -1; /* AddrTeletexString */
+static int hf_x411_teletex_generation_qualifier = -1; /* AddrTeletexString */
static int hf_x411_universal_surname = -1; /* UniversalOrBMPString */
static int hf_x411_universal_given_name = -1; /* UniversalOrBMPString */
static int hf_x411_universal_initials = -1; /* UniversalOrBMPString */
@@ -421,7 +421,7 @@ static int hf_x411_character_encoding = -1; /* T_character_encoding */
static int hf_x411_two_octets = -1; /* BMPString */
static int hf_x411_four_octets = -1; /* UniversalString */
static int hf_x411_iso_639_language_code = -1; /* PrintableString */
-static int hf_x411_numeric_code = -1; /* NumericString */
+static int hf_x411_numeric_code = -1; /* AddrNumericString */
static int hf_x411_printable_code = -1; /* PrintableString */
static int hf_x411_printable_address = -1; /* T_printable_address */
static int hf_x411_printable_address_item = -1; /* PrintableString */
@@ -432,8 +432,8 @@ static int hf_x411_number = -1; /* NumericString */
static int hf_x411_sub_address = -1; /* NumericString */
static int hf_x411_psap_address = -1; /* PresentationAddress */
static int hf_x411_TeletexDomainDefinedAttributes_item = -1; /* TeletexDomainDefinedAttribute */
-static int hf_x411_type = -1; /* TeletexString */
-static int hf_x411_teletex_value = -1; /* TeletexString */
+static int hf_x411_type = -1; /* AddrTeletexString */
+static int hf_x411_teletex_value = -1; /* AddrTeletexString */
static int hf_x411_UniversalDomainDefinedAttributes_item = -1; /* UniversalDomainDefinedAttribute */
static int hf_x411_universal_type = -1; /* UniversalOrBMPString */
static int hf_x411_universal_value = -1; /* UniversalOrBMPString */
@@ -934,7 +934,7 @@ static int dissect_token_type_identifier_impl(proto_tree *tree _U_, tvbuff_t *tv
static int
dissect_x411_TokenTypeData(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 692 "x411.cnf"
+#line 723 "x411.cnf"
if(object_identifier_id)
call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
@@ -1080,7 +1080,7 @@ static const ber_old_choice_t Credentials_choice[] = {
static int
dissect_x411_Credentials(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 700 "x411.cnf"
+#line 731 "x411.cnf"
guint32 credentials;
offset = dissect_ber_old_choice(actx, tree, tvb, offset,
@@ -1375,7 +1375,7 @@ static const value_string x411_MTABindError_vals[] = {
static int
dissect_x411_MTABindError(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 683 "x411.cnf"
+#line 714 "x411.cnf"
int error = -1;
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
&error);
@@ -1391,8 +1391,8 @@ dissect_x411_MTABindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
static int
-dissect_x411_NumericString(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 494 "x411.cnf"
+dissect_x411_AddrNumericString(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 492 "x411.cnf"
tvbuff_t *nstring = NULL;
offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString,
@@ -1408,53 +1408,22 @@ dissect_x411_NumericString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
return offset;
}
static int dissect_x121_address(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_NumericString(FALSE, tvb, offset, actx, tree, hf_x411_x121_address);
-}
-static int dissect_numeric(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_NumericString(FALSE, tvb, offset, actx, tree, hf_x411_numeric);
+ return dissect_x411_AddrNumericString(FALSE, tvb, offset, actx, tree, hf_x411_x121_address);
}
static int dissect_x121_dcc_code(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_NumericString(FALSE, tvb, offset, actx, tree, hf_x411_x121_dcc_code);
+ return dissect_x411_AddrNumericString(FALSE, tvb, offset, actx, tree, hf_x411_x121_dcc_code);
}
static int dissect_numeric_code(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_NumericString(FALSE, tvb, offset, actx, tree, hf_x411_numeric_code);
-}
-static int dissect_number_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_NumericString(TRUE, tvb, offset, actx, tree, hf_x411_number);
-}
-static int dissect_sub_address_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_NumericString(TRUE, tvb, offset, actx, tree, hf_x411_sub_address);
+ return dissect_x411_AddrNumericString(FALSE, tvb, offset, actx, tree, hf_x411_numeric_code);
}
static int
dissect_x411_PrintableString(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 516 "x411.cnf"
- tvbuff_t *pstring = NULL;
- char *fmt = NULL;
-
- offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
actx, tree, tvb, offset, hf_index,
- &pstring);
-
-
- if(doing_address && pstring) {
- if(hf_index == hf_x411_printable_surname) fmt = "/S=";
- else if(hf_index == hf_x411_printable_given_name) fmt = "/G=";
- else if(hf_index == hf_x411_printable_initials) fmt = "/I=";
- else if(hf_index == hf_x411_printable_generation_qualifier) fmt = "/GQ=";
- else if(hf_index == hf_x411_printable_type) fmt = "/DD.";
- else if(hf_index == hf_x411_printable_value) fmt = "=";
-
- if(fmt)
- g_strlcat(oraddress, fmt, MAX_ORA_STR_LEN);
-
- g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
-
- }
-
-
+ NULL);
return offset;
}
@@ -1467,24 +1436,6 @@ static int dissect_printable(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset
static int dissect_iso_3166_alpha2_code(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
return dissect_x411_PrintableString(FALSE, tvb, offset, actx, tree, hf_x411_iso_3166_alpha2_code);
}
-static int dissect_printable_surname_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_PrintableString(TRUE, tvb, offset, actx, tree, hf_x411_printable_surname);
-}
-static int dissect_printable_given_name_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_PrintableString(TRUE, tvb, offset, actx, tree, hf_x411_printable_given_name);
-}
-static int dissect_printable_initials_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_PrintableString(TRUE, tvb, offset, actx, tree, hf_x411_printable_initials);
-}
-static int dissect_printable_generation_qualifier_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_PrintableString(TRUE, tvb, offset, actx, tree, hf_x411_printable_generation_qualifier);
-}
-static int dissect_printable_type(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_PrintableString(FALSE, tvb, offset, actx, tree, hf_x411_printable_type);
-}
-static int dissect_printable_value(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_PrintableString(FALSE, tvb, offset, actx, tree, hf_x411_printable_value);
-}
static int dissect_iso_639_language_code(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
return dissect_x411_PrintableString(FALSE, tvb, offset, actx, tree, hf_x411_iso_639_language_code);
}
@@ -1544,6 +1495,26 @@ static int dissect_country_name(proto_tree *tree _U_, tvbuff_t *tvb _U_, int off
}
+
+static int
+dissect_x411_NumericString(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_NumericString,
+ actx, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_numeric(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_NumericString(FALSE, tvb, offset, actx, tree, hf_x411_numeric);
+}
+static int dissect_number_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_NumericString(TRUE, tvb, offset, actx, tree, hf_x411_number);
+}
+static int dissect_sub_address_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_NumericString(TRUE, tvb, offset, actx, tree, hf_x411_sub_address);
+}
+
+
static const value_string x411_AdministrationDomainName_vals[] = {
{ 0, "numeric" },
{ 1, "printable" },
@@ -1635,7 +1606,7 @@ static const ber_old_sequence_t GlobalDomainIdentifier_sequence[] = {
static int
dissect_x411_GlobalDomainIdentifier(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 563 "x411.cnf"
+#line 594 "x411.cnf"
oraddress = ep_alloc(MAX_ORA_STR_LEN); oraddress[0] = '\0';
address_item = tree;
@@ -1671,7 +1642,7 @@ static int dissect_attempted_domain(proto_tree *tree _U_, tvbuff_t *tvb _U_, int
static int
dissect_x411_LocalIdentifier(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 582 "x411.cnf"
+#line 613 "x411.cnf"
tvbuff_t *id = NULL;
offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
@@ -1704,7 +1675,7 @@ static const ber_old_sequence_t MTSIdentifier_sequence[] = {
static int
dissect_x411_MTSIdentifier(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 595 "x411.cnf"
+#line 626 "x411.cnf"
doing_address = TRUE;
@@ -1871,6 +1842,103 @@ static int dissect_numeric_user_identifier_impl(proto_tree *tree _U_, tvbuff_t *
}
+
+static int
+dissect_x411_T_printable_surname(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 512 "x411.cnf"
+ tvbuff_t *pstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ actx, tree, tvb, offset, hf_index,
+ &pstring);
+
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/S=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+
+ return offset;
+}
+static int dissect_printable_surname_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_T_printable_surname(TRUE, tvb, offset, actx, tree, hf_x411_printable_surname);
+}
+
+
+
+static int
+dissect_x411_T_printable_given_name(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 521 "x411.cnf"
+ tvbuff_t *pstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ actx, tree, tvb, offset, hf_index,
+ &pstring);
+
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/G=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+
+ return offset;
+}
+static int dissect_printable_given_name_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_T_printable_given_name(TRUE, tvb, offset, actx, tree, hf_x411_printable_given_name);
+}
+
+
+
+static int
+dissect_x411_T_printable_initials(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 530 "x411.cnf"
+ tvbuff_t *pstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ actx, tree, tvb, offset, hf_index,
+ &pstring);
+
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/I=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+
+ return offset;
+}
+static int dissect_printable_initials_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_T_printable_initials(TRUE, tvb, offset, actx, tree, hf_x411_printable_initials);
+}
+
+
+
+static int
+dissect_x411_T_printable_generation_qualifier(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 539 "x411.cnf"
+ tvbuff_t *pstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ actx, tree, tvb, offset, hf_index,
+ &pstring);
+
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/GQ=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+
+
+ return offset;
+}
+static int dissect_printable_generation_qualifier_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_T_printable_generation_qualifier(TRUE, tvb, offset, actx, tree, hf_x411_printable_generation_qualifier);
+}
+
+
static const ber_old_sequence_t PersonalName_set[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_printable_surname_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_printable_given_name_impl },
@@ -1936,7 +2004,7 @@ static const ber_old_sequence_t BuiltInStandardAttributes_sequence[] = {
static int
dissect_x411_BuiltInStandardAttributes(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 619 "x411.cnf"
+#line 650 "x411.cnf"
address_item = tree;
@@ -1953,6 +2021,55 @@ static int dissect_built_in_standard_attributes(proto_tree *tree _U_, tvbuff_t *
}
+
+static int
+dissect_x411_T_printable_type(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 549 "x411.cnf"
+ tvbuff_t *pstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ actx, tree, tvb, offset, hf_index,
+ &pstring);
+
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "/DD.", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+
+ return offset;
+}
+static int dissect_printable_type(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_T_printable_type(FALSE, tvb, offset, actx, tree, hf_x411_printable_type);
+}
+
+
+
+static int
+dissect_x411_T_printable_value(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 558 "x411.cnf"
+ tvbuff_t *pstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ actx, tree, tvb, offset, hf_index,
+ &pstring);
+
+
+ if(doing_address && pstring) {
+ g_strlcat(oraddress, "=", MAX_ORA_STR_LEN);
+ g_strlcat(oraddress, tvb_format_text(pstring, 0, tvb_length(pstring)), MAX_ORA_STR_LEN);
+ }
+
+
+
+ return offset;
+}
+static int dissect_printable_value(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_T_printable_value(FALSE, tvb, offset, actx, tree, hf_x411_printable_value);
+}
+
+
static const ber_old_sequence_t BuiltInDomainDefinedAttribute_sequence[] = {
{ BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_printable_type },
{ BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_printable_value },
@@ -2072,7 +2189,7 @@ static const ber_old_sequence_t ORName_sequence[] = {
int
dissect_x411_ORName(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 550 "x411.cnf"
+#line 581 "x411.cnf"
oraddress = ep_alloc(MAX_ORA_STR_LEN); oraddress[0] = '\0';
address_item = NULL;
@@ -2205,43 +2322,15 @@ static int dissect_g3_facsimile_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, in
static int
dissect_x411_TeletexString(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 504 "x411.cnf"
- tvbuff_t *tstring = NULL;
-
- offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString,
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString,
actx, tree, tvb, offset, hf_index,
NULL);
-
- if(doing_address && tstring)
- g_strlcat(oraddress, tvb_format_text(tstring, 0, tvb_length(tstring)), MAX_ORA_STR_LEN);
-
-
-
-
return offset;
}
-static int dissect_teletex_surname_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_TeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_surname);
-}
-static int dissect_teletex_given_name_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_TeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_given_name);
-}
-static int dissect_teletex_initials_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_TeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_initials);
-}
-static int dissect_teletex_generation_qualifier_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_TeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_generation_qualifier);
-}
static int dissect_teletex_string(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
return dissect_x411_TeletexString(FALSE, tvb, offset, actx, tree, hf_x411_teletex_string);
}
-static int dissect_type(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_TeletexString(FALSE, tvb, offset, actx, tree, hf_x411_type);
-}
-static int dissect_teletex_value(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
- return dissect_x411_TeletexString(FALSE, tvb, offset, actx, tree, hf_x411_teletex_value);
-}
static int dissect_graphic_character_sets_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
return dissect_x411_TeletexString(TRUE, tvb, offset, actx, tree, hf_x411_graphic_character_sets);
}
@@ -2537,7 +2626,7 @@ static int dissect_per_message_indicators(proto_tree *tree _U_, tvbuff_t *tvb _U
static int
dissect_x411_Time(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 662 "x411.cnf"
+#line 693 "x411.cnf"
tvbuff_t *arrival = NULL;
offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTCTime,
@@ -2624,7 +2713,7 @@ static int dissect_bilateral_domain(proto_tree *tree _U_, tvbuff_t *tvb _U_, int
static int
dissect_x411_T_bilateral_information(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 714 "x411.cnf"
+#line 745 "x411.cnf"
proto_item *item = NULL;
int loffset = 0;
guint32 len = 0;
@@ -2704,7 +2793,7 @@ static const value_string x411_RoutingAction_vals[] = {
static int
dissect_x411_RoutingAction(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 673 "x411.cnf"
+#line 704 "x411.cnf"
int action = 0;
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
@@ -2780,7 +2869,7 @@ static const ber_old_sequence_t DomainSuppliedInformation_set[] = {
static int
dissect_x411_DomainSuppliedInformation(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 641 "x411.cnf"
+#line 672 "x411.cnf"
doing_address = FALSE;
@@ -2808,7 +2897,7 @@ static const ber_old_sequence_t TraceInformationElement_sequence[] = {
static int
dissect_x411_TraceInformationElement(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 625 "x411.cnf"
+#line 656 "x411.cnf"
doing_address = TRUE;
@@ -3513,7 +3602,7 @@ static const ber_old_choice_t ReportType_choice[] = {
static int
dissect_x411_ReportType(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 744 "x411.cnf"
+#line 775 "x411.cnf"
int report = -1;
offset = dissect_ber_old_choice(actx, tree, tvb, offset,
@@ -3784,7 +3873,7 @@ static const ber_old_choice_t MTS_APDU_choice[] = {
static int
dissect_x411_MTS_APDU(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 732 "x411.cnf"
+#line 763 "x411.cnf"
int apdu = -1;
offset = dissect_ber_old_choice(actx, tree, tvb, offset,
@@ -3848,7 +3937,7 @@ static const ber_old_sequence_t MTASuppliedInformation_set[] = {
static int
dissect_x411_MTASuppliedInformation(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 650 "x411.cnf"
+#line 681 "x411.cnf"
doing_address = FALSE;
@@ -3877,7 +3966,7 @@ static const ber_old_sequence_t InternalTraceInformationElement_sequence[] = {
static int
dissect_x411_InternalTraceInformationElement(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 633 "x411.cnf"
+#line 664 "x411.cnf"
doing_address = TRUE;
@@ -5800,7 +5889,7 @@ static const ber_old_sequence_t ORAddress_sequence[] = {
int
dissect_x411_ORAddress(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 537 "x411.cnf"
+#line 568 "x411.cnf"
oraddress = ep_alloc(MAX_ORA_STR_LEN); oraddress[0] = '\0';
doing_address = TRUE;
@@ -6381,8 +6470,6 @@ dissect_x411_CommonName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
-
-
return offset;
}
@@ -6513,6 +6600,45 @@ dissect_x411_UniversalOrganizationName(gboolean implicit_tag _U_, tvbuff_t *tvb
}
+
+static int
+dissect_x411_AddrTeletexString(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 503 "x411.cnf"
+ tvbuff_t *tstring = NULL;
+
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString,
+ actx, tree, tvb, offset, hf_index,
+ &tstring);
+
+
+ if(doing_address && tstring)
+ g_strlcat(oraddress, tvb_format_text(tstring, 0, tvb_length(tstring)), MAX_ORA_STR_LEN);
+
+
+
+
+ return offset;
+}
+static int dissect_teletex_surname_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_AddrTeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_surname);
+}
+static int dissect_teletex_given_name_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_AddrTeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_given_name);
+}
+static int dissect_teletex_initials_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_AddrTeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_initials);
+}
+static int dissect_teletex_generation_qualifier_impl(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_AddrTeletexString(TRUE, tvb, offset, actx, tree, hf_x411_teletex_generation_qualifier);
+}
+static int dissect_type(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_AddrTeletexString(FALSE, tvb, offset, actx, tree, hf_x411_type);
+}
+static int dissect_teletex_value(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
+ return dissect_x411_AddrTeletexString(FALSE, tvb, offset, actx, tree, hf_x411_teletex_value);
+}
+
+
static const ber_old_sequence_t TeletexPersonalName_set[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_teletex_surname_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_teletex_given_name_impl },
@@ -7052,7 +7178,7 @@ static const ber_old_sequence_t MTANameAndOptionalGDI_sequence[] = {
static int
dissect_x411_MTANameAndOptionalGDI(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 610 "x411.cnf"
+#line 641 "x411.cnf"
doing_address = TRUE;
@@ -7100,7 +7226,7 @@ static int dissect_name(proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_,
static int
dissect_x411_T_value(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 710 "x411.cnf"
+#line 741 "x411.cnf"
offset=call_x411_oid_callback("x411.tokendata", tvb, offset, actx->pinfo, tree);
@@ -8585,7 +8711,7 @@ void proto_register_x411(void) {
{ &hf_x411_x121_address,
{ "x121-address", "x411.x121_address",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.NumericString", HFILL }},
+ "x411.AddrNumericString", HFILL }},
{ &hf_x411_tsap_id,
{ "tsap-id", "x411.tsap_id",
FT_STRING, BASE_NONE, NULL, 0,
@@ -8977,7 +9103,7 @@ void proto_register_x411(void) {
{ &hf_x411_x121_dcc_code,
{ "x121-dcc-code", "x411.x121_dcc_code",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.NumericString", HFILL }},
+ "x411.AddrNumericString", HFILL }},
{ &hf_x411_iso_3166_alpha2_code,
{ "iso-3166-alpha2-code", "x411.iso_3166_alpha2_code",
FT_STRING, BASE_NONE, NULL, 0,
@@ -8985,19 +9111,19 @@ void proto_register_x411(void) {
{ &hf_x411_printable_surname,
{ "surname", "x411.surname",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.PrintableString", HFILL }},
+ "x411.T_printable_surname", HFILL }},
{ &hf_x411_printable_given_name,
{ "given-name", "x411.given_name",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.PrintableString", HFILL }},
+ "x411.T_printable_given_name", HFILL }},
{ &hf_x411_printable_initials,
{ "initials", "x411.initials",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.PrintableString", HFILL }},
+ "x411.T_printable_initials", HFILL }},
{ &hf_x411_printable_generation_qualifier,
{ "generation-qualifier", "x411.generation_qualifier",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.PrintableString", HFILL }},
+ "x411.T_printable_generation_qualifier", HFILL }},
{ &hf_x411_OrganizationalUnitNames_item,
{ "Item", "x411.OrganizationalUnitNames_item",
FT_STRING, BASE_NONE, NULL, 0,
@@ -9009,11 +9135,11 @@ void proto_register_x411(void) {
{ &hf_x411_printable_type,
{ "type", "x411.type",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.PrintableString", HFILL }},
+ "x411.T_printable_type", HFILL }},
{ &hf_x411_printable_value,
{ "value", "x411.value",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.PrintableString", HFILL }},
+ "x411.T_printable_value", HFILL }},
{ &hf_x411_ExtensionAttributes_item,
{ "Item", "x411.ExtensionAttributes_item",
FT_NONE, BASE_NONE, NULL, 0,
@@ -9029,19 +9155,19 @@ void proto_register_x411(void) {
{ &hf_x411_teletex_surname,
{ "surname", "x411.surname",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.TeletexString", HFILL }},
+ "x411.AddrTeletexString", HFILL }},
{ &hf_x411_teletex_given_name,
{ "given-name", "x411.given_name",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.TeletexString", HFILL }},
+ "x411.AddrTeletexString", HFILL }},
{ &hf_x411_teletex_initials,
{ "initials", "x411.initials",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.TeletexString", HFILL }},
+ "x411.AddrTeletexString", HFILL }},
{ &hf_x411_teletex_generation_qualifier,
{ "generation-qualifier", "x411.generation_qualifier",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.TeletexString", HFILL }},
+ "x411.AddrTeletexString", HFILL }},
{ &hf_x411_universal_surname,
{ "surname", "x411.surname",
FT_NONE, BASE_NONE, NULL, 0,
@@ -9085,7 +9211,7 @@ void proto_register_x411(void) {
{ &hf_x411_numeric_code,
{ "numeric-code", "x411.numeric_code",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.NumericString", HFILL }},
+ "x411.AddrNumericString", HFILL }},
{ &hf_x411_printable_code,
{ "printable-code", "x411.printable_code",
FT_STRING, BASE_NONE, NULL, 0,
@@ -9129,11 +9255,11 @@ void proto_register_x411(void) {
{ &hf_x411_type,
{ "type", "x411.type",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.TeletexString", HFILL }},
+ "x411.AddrTeletexString", HFILL }},
{ &hf_x411_teletex_value,
{ "value", "x411.value",
FT_STRING, BASE_NONE, NULL, 0,
- "x411.TeletexString", HFILL }},
+ "x411.AddrTeletexString", HFILL }},
{ &hf_x411_UniversalDomainDefinedAttributes_item,
{ "Item", "x411.UniversalDomainDefinedAttributes_item",
FT_NONE, BASE_NONE, NULL, 0,
diff --git a/tools/asn2wrs.py b/tools/asn2wrs.py
index d67d6744a9..1f6b5f7496 100755
--- a/tools/asn2wrs.py
+++ b/tools/asn2wrs.py
@@ -1336,9 +1336,10 @@ class EthCtx:
#--- eth_type_fn_body -------------------------------------------------------
def eth_type_fn_body(self, tname, body, pars=None):
out = body
- if self.conform.get_fn_body_presence(tname):
- out = self.conform.get_fn_text(tname, 'FN_BODY')
- elif self.conform.get_fn_body_presence(self.eth_type[tname]['ref'][0]):
+ #if self.conform.get_fn_body_presence(tname):
+ # out = self.conform.get_fn_text(tname, 'FN_BODY')
+ #el
+ if self.conform.get_fn_body_presence(self.eth_type[tname]['ref'][0]):
out = self.conform.get_fn_text(self.eth_type[tname]['ref'][0], 'FN_BODY')
if pars:
try: