aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-x509sat.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-x509sat.c')
-rw-r--r--epan/dissectors/packet-x509sat.c110
1 files changed, 110 insertions, 0 deletions
diff --git a/epan/dissectors/packet-x509sat.c b/epan/dissectors/packet-x509sat.c
index b429bf19be..d006eba868 100644
--- a/epan/dissectors/packet-x509sat.c
+++ b/epan/dissectors/packet-x509sat.c
@@ -81,6 +81,10 @@ int hf_x509sat_collectivePostOfficeBox = -1;
int hf_x509sat_physicalDeliveryOfficeName = -1;
int hf_x509sat_collectivePhysicalDeliveryOfficeName = -1;
int hf_x509sat_dmdName = -1;
+int hf_x509sat_id_at_telexNumber = -1;
+int hf_x509sat_id_at_collectiveTelexNumber = -1;
+int hf_x509sat_id_at_telephoneNumber = -1;
+int hf_x509sat_id_at_collectiveTelephoneNumber = -1;
/*aaa*/
/*--- Included file: packet-x509sat-hf.c ---*/
@@ -95,6 +99,9 @@ static int hf_x509sat_substrings = -1; /* AttributeType */
static int hf_x509sat_greaterOrEqual = -1; /* AttributeType */
static int hf_x509sat_lessOrEqual = -1; /* AttributeType */
static int hf_x509sat_approximateMatch = -1; /* AttributeType */
+static int hf_x509sat_telexNumber = -1; /* PrintableString */
+static int hf_x509sat_countryCode = -1; /* PrintableString */
+static int hf_x509sat_answerback = -1; /* PrintableString */
/*--- End of included file: packet-x509sat-hf.c ---*/
@@ -110,6 +117,7 @@ static gint ett_x509sat_DirectoryString = -1;
/* ../../tools/asn2eth.py -X -b -p x509sat -c x509sat.cnf -s packet-x509sat-template SelectedAttributeTypes.asn */
static gint ett_x509sat_CriteriaItem = -1;
+static gint ett_x509sat_TelexNumber = -1;
/*--- End of included file: packet-x509sat-ett.c ---*/
@@ -185,6 +193,50 @@ dissect_x509sat_CriteriaItem(gboolean implicit_tag, tvbuff_t *tvb, int offset, p
}
+static int
+dissect_x509sat_TelephoneNumber(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+
+
+static int
+dissect_x509sat_PrintableString(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
+ pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_telexNumber(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_x509sat_PrintableString(FALSE, tvb, offset, pinfo, tree, hf_x509sat_telexNumber);
+}
+static int dissect_countryCode(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_x509sat_PrintableString(FALSE, tvb, offset, pinfo, tree, hf_x509sat_countryCode);
+}
+static int dissect_answerback(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_x509sat_PrintableString(FALSE, tvb, offset, pinfo, tree, hf_x509sat_answerback);
+}
+
+static ber_sequence TelexNumber_sequence[] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_telexNumber },
+ { BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_countryCode },
+ { BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_answerback },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_x509sat_TelexNumber(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ TelexNumber_sequence, hf_index, ett_x509sat_TelexNumber);
+
+ return offset;
+}
+
+
/*--- End of included file: packet-x509sat-fn.c ---*/
@@ -422,6 +474,31 @@ dissect_x509sat_dmdName_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
{
dissect_x509sat_DirectoryString(FALSE, tvb, 0, pinfo, tree, hf_x509sat_dmdName);
}
+
+
+static void
+dissect_x509sat_telexNumber_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ dissect_x509sat_TelexNumber(FALSE, tvb, 0, pinfo, tree, hf_x509sat_id_at_telexNumber);
+}
+
+static void
+dissect_x509sat_collectiveTelexNumber_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ dissect_x509sat_TelexNumber(FALSE, tvb, 0, pinfo, tree, hf_x509sat_id_at_collectiveTelexNumber);
+}
+
+static void
+dissect_x509sat_telephoneNumber_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ dissect_x509sat_TelephoneNumber(FALSE, tvb, 0, pinfo, tree, hf_x509sat_id_at_telephoneNumber);
+}
+
+static void
+dissect_x509sat_collectiveTelephoneNumber_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ dissect_x509sat_TelephoneNumber(FALSE, tvb, 0, pinfo, tree, hf_x509sat_id_at_collectiveTelephoneNumber);
+}
/*bbb*/
/*--- proto_register_x509sat ----------------------------------------------*/
@@ -549,6 +626,22 @@ void proto_register_x509sat(void) {
{ "dmdName", "x509sat.dmdName",
FT_STRING, BASE_NONE, NULL, 0,
"dmdName", HFILL }},
+ { &hf_x509sat_id_at_telexNumber,
+ { "telexNumber", "x509sat.id_at_telexNumber",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "telexNumber", HFILL }},
+ { &hf_x509sat_id_at_collectiveTelexNumber,
+ { "collectiveTelexNumber", "x509sat.id_at_collectiveTelexNumber",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "collectiveTelexNumber", HFILL }},
+ { &hf_x509sat_id_at_telephoneNumber,
+ { "telephoneNumber", "x509sat.id_at_telephoneNumber",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "telephoneNumber", HFILL }},
+ { &hf_x509sat_id_at_collectiveTelephoneNumber,
+ { "collectiveTelephoneNumber", "x509sat.id_at_collectiveTelephoneNumber",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "collectiveTelephoneNumber", HFILL }},
/*ccc*/
/*--- Included file: packet-x509sat-hfarr.c ---*/
@@ -578,6 +671,18 @@ void proto_register_x509sat(void) {
{ "approximateMatch", "x509sat.approximateMatch",
FT_NONE, BASE_NONE, NULL, 0,
"CriteriaItem/approximateMatch", HFILL }},
+ { &hf_x509sat_telexNumber,
+ { "telexNumber", "x509sat.telexNumber",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "TelexNumber/telexNumber", HFILL }},
+ { &hf_x509sat_countryCode,
+ { "countryCode", "x509sat.countryCode",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "TelexNumber/countryCode", HFILL }},
+ { &hf_x509sat_answerback,
+ { "answerback", "x509sat.answerback",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "TelexNumber/answerback", HFILL }},
/*--- End of included file: packet-x509sat-hfarr.c ---*/
@@ -595,6 +700,7 @@ void proto_register_x509sat(void) {
/* ../../tools/asn2eth.py -X -b -p x509sat -c x509sat.cnf -s packet-x509sat-template SelectedAttributeTypes.asn */
&ett_x509sat_CriteriaItem,
+ &ett_x509sat_TelexNumber,
/*--- End of included file: packet-x509sat-ettarr.c ---*/
@@ -635,6 +741,10 @@ void proto_reg_handoff_x509sat(void) {
register_ber_oid_dissector("2.5.4.18.1", dissect_x509sat_collectivePostOfficeBox_callback, proto_x509sat, "id-at-collectivePostOfficeBox");
register_ber_oid_dissector("2.5.4.19", dissect_x509sat_physicalDeliveryOfficeName_callback, proto_x509sat, "id-at-physicalDeliveryOfficeName");
register_ber_oid_dissector("2.5.4.19.1", dissect_x509sat_collectivePhysicalDeliveryOfficeName_callback, proto_x509sat, "id-at-collectivePhysicalDeliveryOfficeName");
+ register_ber_oid_dissector("2.5.4.20", dissect_x509sat_telephoneNumber_callback, proto_x509sat, "id-at-telephoneNumber");
+ register_ber_oid_dissector("2.5.4.20.1", dissect_x509sat_collectiveTelephoneNumber_callback, proto_x509sat, "id-at-collectiveTelephoneNumber");
+ register_ber_oid_dissector("2.5.4.21", dissect_x509sat_telexNumber_callback, proto_x509sat, "id-at-telexNumber");
+ register_ber_oid_dissector("2.5.4.21.1", dissect_x509sat_collectiveTelexNumber_callback, proto_x509sat, "id-at-collectiveTelexNumber");
register_ber_oid_dissector("2.5.4.41", dissect_x509sat_name_callback, proto_x509sat, "id-at-name");
register_ber_oid_dissector("2.5.4.42", dissect_x509sat_givenName_callback, proto_x509sat, "id-at-givenName");
register_ber_oid_dissector("2.5.4.43", dissect_x509sat_initials_callback, proto_x509sat, "id-at-initials");