forked from osmocom/wireshark
Add support for the dhpublicnumber OID.
svn path=/trunk/; revision=12465
This commit is contained in:
parent
2e8853d825
commit
5d0468963b
|
@ -329,20 +329,20 @@ CertificateSerialNumber ::= INTEGER
|
|||
-- r INTEGER,
|
||||
-- s INTEGER }
|
||||
--
|
||||
--dhpublicnumber OBJECT IDENTIFIER ::= {
|
||||
-- iso(1) member-body(2) us(840) ansi-x942(10046) number-type(2) 1 }
|
||||
--
|
||||
--DomainParameters ::= SEQUENCE {
|
||||
-- p INTEGER,
|
||||
-- g INTEGER,
|
||||
-- q INTEGER,
|
||||
-- j INTEGER OPTIONAL,
|
||||
-- validationParms ValidationParms OPTIONAL }
|
||||
--
|
||||
--ValidationParms ::= SEQUENCE {
|
||||
-- seed BIT STRING,
|
||||
-- pgenCounter INTEGER }
|
||||
--
|
||||
dhpublicnumber OBJECT IDENTIFIER ::= {
|
||||
iso(1) member-body(2) us(840) ansi-x942(10046) number-type(2) 1 }
|
||||
|
||||
DomainParameters ::= SEQUENCE {
|
||||
p INTEGER,
|
||||
g INTEGER,
|
||||
q INTEGER,
|
||||
j INTEGER OPTIONAL,
|
||||
validationParms ValidationParms OPTIONAL }
|
||||
|
||||
ValidationParms ::= SEQUENCE {
|
||||
seed BIT STRING,
|
||||
pgenCounter INTEGER }
|
||||
|
||||
--id-dsa OBJECT IDENTIFIER ::= {
|
||||
-- iso(1) member-body(2) us(840) x9-57(10040) x9algorithm(4) 1 }
|
||||
--
|
||||
|
|
|
@ -109,5 +109,6 @@ void proto_register_pkix1explicit(void) {
|
|||
|
||||
/*--- proto_reg_handoff_pkix1explicit -------------------------------------------*/
|
||||
void proto_reg_handoff_pkix1explicit(void) {
|
||||
#include "packet-pkix1explicit-dis-tab.c"
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
TeletexDomainDefinedAttribute
|
||||
TerminalType
|
||||
|
||||
#.REGISTER
|
||||
DomainParameters B "1.2.840.10046.2.1" "dhpublicnumber"
|
||||
|
||||
#.PDU
|
||||
|
||||
#.NO_EMIT
|
||||
|
|
|
@ -56,6 +56,14 @@ static int proto_pkix1explicit = -1;
|
|||
|
||||
/*--- Included file: packet-pkix1explicit-hf.c ---*/
|
||||
|
||||
static int hf_pkix1explicit_DomainParameters_PDU = -1; /* DomainParameters */
|
||||
static int hf_pkix1explicit_p = -1; /* INTEGER */
|
||||
static int hf_pkix1explicit_g = -1; /* INTEGER */
|
||||
static int hf_pkix1explicit_q = -1; /* INTEGER */
|
||||
static int hf_pkix1explicit_j = -1; /* INTEGER */
|
||||
static int hf_pkix1explicit_validationParms = -1; /* ValidationParms */
|
||||
static int hf_pkix1explicit_seed = -1; /* BIT_STRING */
|
||||
static int hf_pkix1explicit_pgenCounter = -1; /* INTEGER */
|
||||
static int hf_pkix1explicit_type = -1; /* TeletexString */
|
||||
static int hf_pkix1explicit_value = -1; /* TeletexString */
|
||||
|
||||
|
@ -66,6 +74,8 @@ static int hf_pkix1explicit_value = -1; /* TeletexString */
|
|||
|
||||
/*--- Included file: packet-pkix1explicit-ett.c ---*/
|
||||
|
||||
static gint ett_pkix1explicit_DomainParameters = -1;
|
||||
static gint ett_pkix1explicit_ValidationParms = -1;
|
||||
static gint ett_pkix1explicit_TeletexDomainDefinedAttribute = -1;
|
||||
|
||||
/*--- End of included file: packet-pkix1explicit-ett.c ---*/
|
||||
|
@ -109,6 +119,77 @@ dissect_pkix1explicit_SubjectPublicKeyInfo(gboolean implicit_tag, tvbuff_t *tvb,
|
|||
|
||||
|
||||
|
||||
|
||||
static int
|
||||
dissect_pkix1explicit_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
|
||||
offset = dissect_ber_integer(pinfo, tree, tvb, offset, hf_index, NULL);
|
||||
|
||||
return offset;
|
||||
}
|
||||
static int dissect_p(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_p);
|
||||
}
|
||||
static int dissect_g(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_g);
|
||||
}
|
||||
static int dissect_q(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_q);
|
||||
}
|
||||
static int dissect_j(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_j);
|
||||
}
|
||||
static int dissect_pgenCounter(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_pgenCounter);
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
dissect_pkix1explicit_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
|
||||
offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
|
||||
NULL, hf_index, -1,
|
||||
NULL);
|
||||
|
||||
return offset;
|
||||
}
|
||||
static int dissect_seed(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_seed);
|
||||
}
|
||||
|
||||
static const ber_sequence ValidationParms_sequence[] = {
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_seed },
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_pgenCounter },
|
||||
{ 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
static int
|
||||
dissect_pkix1explicit_ValidationParms(gboolean implicit_tag _U_, 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,
|
||||
ValidationParms_sequence, hf_index, ett_pkix1explicit_ValidationParms);
|
||||
|
||||
return offset;
|
||||
}
|
||||
static int dissect_validationParms(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
|
||||
return dissect_pkix1explicit_ValidationParms(FALSE, tvb, offset, pinfo, tree, hf_pkix1explicit_validationParms);
|
||||
}
|
||||
|
||||
static const ber_sequence DomainParameters_sequence[] = {
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_p },
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_g },
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_q },
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_j },
|
||||
{ BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_validationParms },
|
||||
{ 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
static int
|
||||
dissect_pkix1explicit_DomainParameters(gboolean implicit_tag _U_, 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,
|
||||
DomainParameters_sequence, hf_index, ett_pkix1explicit_DomainParameters);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
const value_string TerminalType_vals[] = {
|
||||
{ 3, "telex" },
|
||||
{ 4, "teletex" },
|
||||
|
@ -157,6 +238,12 @@ dissect_pkix1explicit_TeletexDomainDefinedAttribute(gboolean implicit_tag _U_, t
|
|||
return offset;
|
||||
}
|
||||
|
||||
/*--- PDUs ---*/
|
||||
|
||||
static void dissect_DomainParameters_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
|
||||
dissect_pkix1explicit_DomainParameters(FALSE, tvb, 0, pinfo, tree, hf_pkix1explicit_DomainParameters_PDU);
|
||||
}
|
||||
|
||||
|
||||
/*--- End of included file: packet-pkix1explicit-fn.c ---*/
|
||||
|
||||
|
@ -170,6 +257,38 @@ void proto_register_pkix1explicit(void) {
|
|||
|
||||
/*--- Included file: packet-pkix1explicit-hfarr.c ---*/
|
||||
|
||||
{ &hf_pkix1explicit_DomainParameters_PDU,
|
||||
{ "DomainParameters", "pkix1explicit.DomainParameters",
|
||||
FT_NONE, BASE_NONE, NULL, 0,
|
||||
"DomainParameters", HFILL }},
|
||||
{ &hf_pkix1explicit_p,
|
||||
{ "p", "pkix1explicit.p",
|
||||
FT_INT32, BASE_DEC, NULL, 0,
|
||||
"DomainParameters/p", HFILL }},
|
||||
{ &hf_pkix1explicit_g,
|
||||
{ "g", "pkix1explicit.g",
|
||||
FT_INT32, BASE_DEC, NULL, 0,
|
||||
"DomainParameters/g", HFILL }},
|
||||
{ &hf_pkix1explicit_q,
|
||||
{ "q", "pkix1explicit.q",
|
||||
FT_INT32, BASE_DEC, NULL, 0,
|
||||
"DomainParameters/q", HFILL }},
|
||||
{ &hf_pkix1explicit_j,
|
||||
{ "j", "pkix1explicit.j",
|
||||
FT_INT32, BASE_DEC, NULL, 0,
|
||||
"DomainParameters/j", HFILL }},
|
||||
{ &hf_pkix1explicit_validationParms,
|
||||
{ "validationParms", "pkix1explicit.validationParms",
|
||||
FT_NONE, BASE_NONE, NULL, 0,
|
||||
"DomainParameters/validationParms", HFILL }},
|
||||
{ &hf_pkix1explicit_seed,
|
||||
{ "seed", "pkix1explicit.seed",
|
||||
FT_BYTES, BASE_HEX, NULL, 0,
|
||||
"ValidationParms/seed", HFILL }},
|
||||
{ &hf_pkix1explicit_pgenCounter,
|
||||
{ "pgenCounter", "pkix1explicit.pgenCounter",
|
||||
FT_INT32, BASE_DEC, NULL, 0,
|
||||
"ValidationParms/pgenCounter", HFILL }},
|
||||
{ &hf_pkix1explicit_type,
|
||||
{ "type", "pkix1explicit.type",
|
||||
FT_STRING, BASE_NONE, NULL, 0,
|
||||
|
@ -188,6 +307,8 @@ void proto_register_pkix1explicit(void) {
|
|||
|
||||
/*--- Included file: packet-pkix1explicit-ettarr.c ---*/
|
||||
|
||||
&ett_pkix1explicit_DomainParameters,
|
||||
&ett_pkix1explicit_ValidationParms,
|
||||
&ett_pkix1explicit_TeletexDomainDefinedAttribute,
|
||||
|
||||
/*--- End of included file: packet-pkix1explicit-ettarr.c ---*/
|
||||
|
@ -206,5 +327,13 @@ void proto_register_pkix1explicit(void) {
|
|||
|
||||
/*--- proto_reg_handoff_pkix1explicit -------------------------------------------*/
|
||||
void proto_reg_handoff_pkix1explicit(void) {
|
||||
|
||||
/*--- Included file: packet-pkix1explicit-dis-tab.c ---*/
|
||||
|
||||
register_ber_oid_dissector("1.2.840.10046.2.1", dissect_DomainParameters_PDU, proto_pkix1explicit, "dhpublicnumber");
|
||||
|
||||
|
||||
/*--- End of included file: packet-pkix1explicit-dis-tab.c ---*/
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue