1 /* Do not modify this file. */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler */
4 /* ../../tools/asn2wrs.py -b -e -p x509ce -c ./x509ce.cnf -s ./packet-x509ce-template -D . CertificateExtensions.asn */
6 /* Input file: packet-x509ce-template.c */
8 #line 1 "packet-x509ce-template.c"
10 * Routines for X.509 Certificate Extensions packet dissection
11 * Ronnie Sahlberg 2004
15 * Wireshark - Network traffic analyzer
16 * By Gerald Combs <gerald@wireshark.org>
17 * Copyright 1998 Gerald Combs
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
29 * You should have received a copy of the GNU General Public License
30 * along with this program; if not, write to the Free Software
31 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
39 #include <epan/packet.h>
40 #include <epan/asn1.h>
44 #include "packet-ber.h"
45 #include "packet-x509ce.h"
46 #include "packet-x509af.h"
47 #include "packet-x509if.h"
48 #include "packet-x509sat.h"
49 #include "packet-x411.h"
51 #define PNAME "X.509 Certificate Extensions"
52 #define PSNAME "X509CE"
53 #define PFNAME "x509ce"
55 /* Initialize the protocol and registered fields */
56 static int proto_x509ce = -1;
57 static int hf_x509ce_id_ce_invalidityDate = -1;
58 static int hf_x509ce_id_ce_baseUpdateTime = -1;
59 static int hf_x509ce_object_identifier_id = -1;
60 static int hf_x509ce_IPAddress = -1;
62 /*--- Included file: packet-x509ce-hf.c ---*/
63 #line 1 "packet-x509ce-hf.c"
64 static int hf_x509ce_AuthorityKeyIdentifier_PDU = -1; /* AuthorityKeyIdentifier */
65 static int hf_x509ce_SubjectKeyIdentifier_PDU = -1; /* SubjectKeyIdentifier */
66 static int hf_x509ce_KeyUsage_PDU = -1; /* KeyUsage */
67 static int hf_x509ce_KeyPurposeIDs_PDU = -1; /* KeyPurposeIDs */
68 static int hf_x509ce_PrivateKeyUsagePeriod_PDU = -1; /* PrivateKeyUsagePeriod */
69 static int hf_x509ce_CertificatePoliciesSyntax_PDU = -1; /* CertificatePoliciesSyntax */
70 static int hf_x509ce_PolicyMappingsSyntax_PDU = -1; /* PolicyMappingsSyntax */
71 static int hf_x509ce_GeneralNames_PDU = -1; /* GeneralNames */
72 static int hf_x509ce_AttributesSyntax_PDU = -1; /* AttributesSyntax */
73 static int hf_x509ce_BasicConstraintsSyntax_PDU = -1; /* BasicConstraintsSyntax */
74 static int hf_x509ce_NameConstraintsSyntax_PDU = -1; /* NameConstraintsSyntax */
75 static int hf_x509ce_PolicyConstraintsSyntax_PDU = -1; /* PolicyConstraintsSyntax */
76 static int hf_x509ce_SkipCerts_PDU = -1; /* SkipCerts */
77 static int hf_x509ce_CRLNumber_PDU = -1; /* CRLNumber */
78 static int hf_x509ce_CRLReason_PDU = -1; /* CRLReason */
79 static int hf_x509ce_HoldInstruction_PDU = -1; /* HoldInstruction */
80 static int hf_x509ce_CRLScopeSyntax_PDU = -1; /* CRLScopeSyntax */
81 static int hf_x509ce_StatusReferrals_PDU = -1; /* StatusReferrals */
82 static int hf_x509ce_CRLStreamIdentifier_PDU = -1; /* CRLStreamIdentifier */
83 static int hf_x509ce_OrderedListSyntax_PDU = -1; /* OrderedListSyntax */
84 static int hf_x509ce_DeltaInformation_PDU = -1; /* DeltaInformation */
85 static int hf_x509ce_CRLDistPointsSyntax_PDU = -1; /* CRLDistPointsSyntax */
86 static int hf_x509ce_IssuingDistPointSyntax_PDU = -1; /* IssuingDistPointSyntax */
87 static int hf_x509ce_BaseCRLNumber_PDU = -1; /* BaseCRLNumber */
88 static int hf_x509ce_ToBeRevokedSyntax_PDU = -1; /* ToBeRevokedSyntax */
89 static int hf_x509ce_RevokedGroupsSyntax_PDU = -1; /* RevokedGroupsSyntax */
90 static int hf_x509ce_ExpiredCertsOnCRL_PDU = -1; /* ExpiredCertsOnCRL */
91 static int hf_x509ce_AAIssuingDistPointSyntax_PDU = -1; /* AAIssuingDistPointSyntax */
92 static int hf_x509ce_CertificateAssertion_PDU = -1; /* CertificateAssertion */
93 static int hf_x509ce_CertificatePairExactAssertion_PDU = -1; /* CertificatePairExactAssertion */
94 static int hf_x509ce_CertificatePairAssertion_PDU = -1; /* CertificatePairAssertion */
95 static int hf_x509ce_CertificateListExactAssertion_PDU = -1; /* CertificateListExactAssertion */
96 static int hf_x509ce_CertificateListAssertion_PDU = -1; /* CertificateListAssertion */
97 static int hf_x509ce_PkiPathMatchSyntax_PDU = -1; /* PkiPathMatchSyntax */
98 static int hf_x509ce_EnhancedCertificateAssertion_PDU = -1; /* EnhancedCertificateAssertion */
99 static int hf_x509ce_CertificateTemplate_PDU = -1; /* CertificateTemplate */
100 static int hf_x509ce_EntrustVersionInfo_PDU = -1; /* EntrustVersionInfo */
101 static int hf_x509ce_keyIdentifier = -1; /* KeyIdentifier */
102 static int hf_x509ce_authorityCertIssuer = -1; /* GeneralNames */
103 static int hf_x509ce_authorityCertSerialNumber = -1; /* CertificateSerialNumber */
104 static int hf_x509ce_KeyPurposeIDs_item = -1; /* KeyPurposeId */
105 static int hf_x509ce_notBefore = -1; /* GeneralizedTime */
106 static int hf_x509ce_notAfter = -1; /* GeneralizedTime */
107 static int hf_x509ce_CertificatePoliciesSyntax_item = -1; /* PolicyInformation */
108 static int hf_x509ce_policyIdentifier = -1; /* CertPolicyId */
109 static int hf_x509ce_policyQualifiers = -1; /* SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo */
110 static int hf_x509ce_policyQualifiers_item = -1; /* PolicyQualifierInfo */
111 static int hf_x509ce_policyQualifierId = -1; /* T_policyQualifierId */
112 static int hf_x509ce_qualifier = -1; /* T_qualifier */
113 static int hf_x509ce_PolicyMappingsSyntax_item = -1; /* PolicyMappingsSyntax_item */
114 static int hf_x509ce_issuerDomainPolicy = -1; /* CertPolicyId */
115 static int hf_x509ce_subjectDomainPolicy = -1; /* CertPolicyId */
116 static int hf_x509ce_GeneralNames_item = -1; /* GeneralName */
117 static int hf_x509ce_otherName = -1; /* OtherName */
118 static int hf_x509ce_rfc822Name = -1; /* IA5String */
119 static int hf_x509ce_dNSName = -1; /* IA5String */
120 static int hf_x509ce_x400Address = -1; /* ORAddress */
121 static int hf_x509ce_directoryName = -1; /* Name */
122 static int hf_x509ce_ediPartyName = -1; /* EDIPartyName */
123 static int hf_x509ce_uniformResourceIdentifier = -1; /* T_uniformResourceIdentifier */
124 static int hf_x509ce_iPAddress = -1; /* T_iPAddress */
125 static int hf_x509ce_registeredID = -1; /* OBJECT_IDENTIFIER */
126 static int hf_x509ce_type_id = -1; /* OtherNameType */
127 static int hf_x509ce_value = -1; /* OtherNameValue */
128 static int hf_x509ce_nameAssigner = -1; /* DirectoryString */
129 static int hf_x509ce_partyName = -1; /* DirectoryString */
130 static int hf_x509ce_AttributesSyntax_item = -1; /* Attribute */
131 static int hf_x509ce_cA = -1; /* BOOLEAN */
132 static int hf_x509ce_pathLenConstraint = -1; /* INTEGER_0_MAX */
133 static int hf_x509ce_permittedSubtrees = -1; /* GeneralSubtrees */
134 static int hf_x509ce_excludedSubtrees = -1; /* GeneralSubtrees */
135 static int hf_x509ce_GeneralSubtrees_item = -1; /* GeneralSubtree */
136 static int hf_x509ce_base = -1; /* GeneralName */
137 static int hf_x509ce_minimum = -1; /* BaseDistance */
138 static int hf_x509ce_maximum = -1; /* BaseDistance */
139 static int hf_x509ce_requireExplicitPolicy = -1; /* SkipCerts */
140 static int hf_x509ce_inhibitPolicyMapping = -1; /* SkipCerts */
141 static int hf_x509ce_CRLScopeSyntax_item = -1; /* PerAuthorityScope */
142 static int hf_x509ce_authorityName = -1; /* GeneralName */
143 static int hf_x509ce_distributionPoint = -1; /* DistributionPointName */
144 static int hf_x509ce_onlyContains = -1; /* OnlyCertificateTypes */
145 static int hf_x509ce_onlySomeReasons = -1; /* ReasonFlags */
146 static int hf_x509ce_serialNumberRange = -1; /* NumberRange */
147 static int hf_x509ce_subjectKeyIdRange = -1; /* NumberRange */
148 static int hf_x509ce_nameSubtrees = -1; /* GeneralNames */
149 static int hf_x509ce_baseRevocationInfo = -1; /* BaseRevocationInfo */
150 static int hf_x509ce_startingNumber = -1; /* INTEGER */
151 static int hf_x509ce_endingNumber = -1; /* INTEGER */
152 static int hf_x509ce_modulus = -1; /* INTEGER */
153 static int hf_x509ce_cRLStreamIdentifier = -1; /* CRLStreamIdentifier */
154 static int hf_x509ce_cRLNumber = -1; /* CRLNumber */
155 static int hf_x509ce_baseThisUpdate = -1; /* GeneralizedTime */
156 static int hf_x509ce_StatusReferrals_item = -1; /* StatusReferral */
157 static int hf_x509ce_cRLReferral = -1; /* CRLReferral */
158 static int hf_x509ce_crlr_issuer = -1; /* GeneralName */
159 static int hf_x509ce_location = -1; /* GeneralName */
160 static int hf_x509ce_deltaRefInfo = -1; /* DeltaRefInfo */
161 static int hf_x509ce_cRLScope = -1; /* CRLScopeSyntax */
162 static int hf_x509ce_lastUpdate = -1; /* GeneralizedTime */
163 static int hf_x509ce_lastChangedCRL = -1; /* GeneralizedTime */
164 static int hf_x509ce_deltaLocation = -1; /* GeneralName */
165 static int hf_x509ce_lastDelta = -1; /* GeneralizedTime */
166 static int hf_x509ce_nextDelta = -1; /* GeneralizedTime */
167 static int hf_x509ce_CRLDistPointsSyntax_item = -1; /* DistributionPoint */
168 static int hf_x509ce_reasons = -1; /* ReasonFlags */
169 static int hf_x509ce_cRLIssuer = -1; /* GeneralNames */
170 static int hf_x509ce_fullName = -1; /* GeneralNames */
171 static int hf_x509ce_nameRelativeToCRLIssuer = -1; /* RelativeDistinguishedName */
172 static int hf_x509ce_onlyContainsUserPublicKeyCerts = -1; /* BOOLEAN */
173 static int hf_x509ce_onlyContainsCACerts = -1; /* BOOLEAN */
174 static int hf_x509ce_indirectCRL = -1; /* BOOLEAN */
175 static int hf_x509ce_ToBeRevokedSyntax_item = -1; /* ToBeRevokedGroup */
176 static int hf_x509ce_certificateIssuer = -1; /* GeneralName */
177 static int hf_x509ce_reasonInfo = -1; /* ReasonInfo */
178 static int hf_x509ce_revocationTime = -1; /* GeneralizedTime */
179 static int hf_x509ce_certificateGroup = -1; /* CertificateGroup */
180 static int hf_x509ce_reasonCode = -1; /* CRLReason */
181 static int hf_x509ce_holdInstructionCode = -1; /* HoldInstruction */
182 static int hf_x509ce_serialNumbers = -1; /* CertificateSerialNumbers */
183 static int hf_x509ce_serialNumberRange_01 = -1; /* CertificateGroupNumberRange */
184 static int hf_x509ce_nameSubtree = -1; /* GeneralName */
185 static int hf_x509ce_CertificateSerialNumbers_item = -1; /* CertificateSerialNumber */
186 static int hf_x509ce_RevokedGroupsSyntax_item = -1; /* RevokedGroup */
187 static int hf_x509ce_invalidityDate = -1; /* GeneralizedTime */
188 static int hf_x509ce_revokedcertificateGroup = -1; /* RevokedCertificateGroup */
189 static int hf_x509ce_containsUserAttributeCerts = -1; /* BOOLEAN */
190 static int hf_x509ce_containsAACerts = -1; /* BOOLEAN */
191 static int hf_x509ce_containsSOAPublicKeyCerts = -1; /* BOOLEAN */
192 static int hf_x509ce_serialNumber = -1; /* CertificateSerialNumber */
193 static int hf_x509ce_issuer = -1; /* Name */
194 static int hf_x509ce_subjectKeyIdentifier = -1; /* SubjectKeyIdentifier */
195 static int hf_x509ce_authorityKeyIdentifier = -1; /* AuthorityKeyIdentifier */
196 static int hf_x509ce_certificateValid = -1; /* Time */
197 static int hf_x509ce_privateKeyValid = -1; /* GeneralizedTime */
198 static int hf_x509ce_subjectPublicKeyAlgID = -1; /* OBJECT_IDENTIFIER */
199 static int hf_x509ce_keyUsage = -1; /* KeyUsage */
200 static int hf_x509ce_subjectAltName = -1; /* AltNameType */
201 static int hf_x509ce_policy = -1; /* CertPolicySet */
202 static int hf_x509ce_pathToName = -1; /* Name */
203 static int hf_x509ce_subject = -1; /* Name */
204 static int hf_x509ce_nameConstraints = -1; /* NameConstraintsSyntax */
205 static int hf_x509ce_builtinNameForm = -1; /* T_builtinNameForm */
206 static int hf_x509ce_otherNameForm = -1; /* OBJECT_IDENTIFIER */
207 static int hf_x509ce_CertPolicySet_item = -1; /* CertPolicyId */
208 static int hf_x509ce_cpea_issuedToThisCAAssertion = -1; /* CertificateExactAssertion */
209 static int hf_x509ce_cpea_issuedByThisCAAssertion = -1; /* CertificateExactAssertion */
210 static int hf_x509ce_issuedToThisCAAssertion = -1; /* CertificateAssertion */
211 static int hf_x509ce_issuedByThisCAAssertion = -1; /* CertificateAssertion */
212 static int hf_x509ce_thisUpdate = -1; /* Time */
213 static int hf_x509ce_minCRLNumber = -1; /* CRLNumber */
214 static int hf_x509ce_maxCRLNumber = -1; /* CRLNumber */
215 static int hf_x509ce_reasonFlags = -1; /* ReasonFlags */
216 static int hf_x509ce_dateAndTime = -1; /* Time */
217 static int hf_x509ce_firstIssuer = -1; /* Name */
218 static int hf_x509ce_lastSubject = -1; /* Name */
219 static int hf_x509ce_subjectAltName_01 = -1; /* AltName */
220 static int hf_x509ce_pathToName_01 = -1; /* GeneralNames */
221 static int hf_x509ce_altnameType = -1; /* AltNameType */
222 static int hf_x509ce_altNameValue = -1; /* GeneralName */
223 static int hf_x509ce_templateID = -1; /* OBJECT_IDENTIFIER */
224 static int hf_x509ce_templateMajorVersion = -1; /* INTEGER */
225 static int hf_x509ce_templateMinorVersion = -1; /* INTEGER */
226 static int hf_x509ce_entrustVers = -1; /* GeneralString */
227 static int hf_x509ce_entrustVersInfoFlags = -1; /* EntrustInfoFlags */
229 static int hf_x509ce_KeyUsage_digitalSignature = -1;
230 static int hf_x509ce_KeyUsage_contentCommitment = -1;
231 static int hf_x509ce_KeyUsage_keyEncipherment = -1;
232 static int hf_x509ce_KeyUsage_dataEncipherment = -1;
233 static int hf_x509ce_KeyUsage_keyAgreement = -1;
234 static int hf_x509ce_KeyUsage_keyCertSign = -1;
235 static int hf_x509ce_KeyUsage_cRLSign = -1;
236 static int hf_x509ce_KeyUsage_encipherOnly = -1;
237 static int hf_x509ce_KeyUsage_decipherOnly = -1;
238 static int hf_x509ce_OnlyCertificateTypes_user = -1;
239 static int hf_x509ce_OnlyCertificateTypes_authority = -1;
240 static int hf_x509ce_OnlyCertificateTypes_attribute = -1;
241 static int hf_x509ce_ReasonFlags_unused = -1;
242 static int hf_x509ce_ReasonFlags_keyCompromise = -1;
243 static int hf_x509ce_ReasonFlags_cACompromise = -1;
244 static int hf_x509ce_ReasonFlags_affiliationChanged = -1;
245 static int hf_x509ce_ReasonFlags_superseded = -1;
246 static int hf_x509ce_ReasonFlags_cessationOfOperation = -1;
247 static int hf_x509ce_ReasonFlags_certificateHold = -1;
248 static int hf_x509ce_ReasonFlags_privilegeWithdrawn = -1;
249 static int hf_x509ce_ReasonFlags_aACompromise = -1;
250 static int hf_x509ce_EntrustInfoFlags_keyUpdateAllowed = -1;
251 static int hf_x509ce_EntrustInfoFlags_newExtensions = -1;
252 static int hf_x509ce_EntrustInfoFlags_pKIXCertificate = -1;
253 static int hf_x509ce_EntrustInfoFlags_enterpriseCategory = -1;
254 static int hf_x509ce_EntrustInfoFlags_webCategory = -1;
255 static int hf_x509ce_EntrustInfoFlags_sETCategory = -1;
257 /*--- End of included file: packet-x509ce-hf.c ---*/
258 #line 54 "packet-x509ce-template.c"
260 /* Initialize the subtree pointers */
262 /*--- Included file: packet-x509ce-ett.c ---*/
263 #line 1 "packet-x509ce-ett.c"
264 static gint ett_x509ce_AuthorityKeyIdentifier = -1;
265 static gint ett_x509ce_KeyUsage = -1;
266 static gint ett_x509ce_KeyPurposeIDs = -1;
267 static gint ett_x509ce_PrivateKeyUsagePeriod = -1;
268 static gint ett_x509ce_CertificatePoliciesSyntax = -1;
269 static gint ett_x509ce_PolicyInformation = -1;
270 static gint ett_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo = -1;
271 static gint ett_x509ce_PolicyQualifierInfo = -1;
272 static gint ett_x509ce_PolicyMappingsSyntax = -1;
273 static gint ett_x509ce_PolicyMappingsSyntax_item = -1;
274 static gint ett_x509ce_GeneralNames = -1;
275 static gint ett_x509ce_GeneralName = -1;
276 static gint ett_x509ce_OtherName = -1;
277 static gint ett_x509ce_EDIPartyName = -1;
278 static gint ett_x509ce_AttributesSyntax = -1;
279 static gint ett_x509ce_BasicConstraintsSyntax = -1;
280 static gint ett_x509ce_NameConstraintsSyntax = -1;
281 static gint ett_x509ce_GeneralSubtrees = -1;
282 static gint ett_x509ce_GeneralSubtree = -1;
283 static gint ett_x509ce_PolicyConstraintsSyntax = -1;
284 static gint ett_x509ce_CRLScopeSyntax = -1;
285 static gint ett_x509ce_PerAuthorityScope = -1;
286 static gint ett_x509ce_OnlyCertificateTypes = -1;
287 static gint ett_x509ce_NumberRange = -1;
288 static gint ett_x509ce_BaseRevocationInfo = -1;
289 static gint ett_x509ce_StatusReferrals = -1;
290 static gint ett_x509ce_StatusReferral = -1;
291 static gint ett_x509ce_CRLReferral = -1;
292 static gint ett_x509ce_DeltaRefInfo = -1;
293 static gint ett_x509ce_DeltaInformation = -1;
294 static gint ett_x509ce_CRLDistPointsSyntax = -1;
295 static gint ett_x509ce_DistributionPoint = -1;
296 static gint ett_x509ce_DistributionPointName = -1;
297 static gint ett_x509ce_ReasonFlags = -1;
298 static gint ett_x509ce_IssuingDistPointSyntax = -1;
299 static gint ett_x509ce_ToBeRevokedSyntax = -1;
300 static gint ett_x509ce_ToBeRevokedGroup = -1;
301 static gint ett_x509ce_ReasonInfo = -1;
302 static gint ett_x509ce_CertificateGroup = -1;
303 static gint ett_x509ce_CertificateGroupNumberRange = -1;
304 static gint ett_x509ce_CertificateSerialNumbers = -1;
305 static gint ett_x509ce_RevokedGroupsSyntax = -1;
306 static gint ett_x509ce_RevokedGroup = -1;
307 static gint ett_x509ce_RevokedCertificateGroup = -1;
308 static gint ett_x509ce_AAIssuingDistPointSyntax = -1;
309 static gint ett_x509ce_CertificateExactAssertion = -1;
310 static gint ett_x509ce_CertificateAssertion = -1;
311 static gint ett_x509ce_AltNameType = -1;
312 static gint ett_x509ce_CertPolicySet = -1;
313 static gint ett_x509ce_CertificatePairExactAssertion = -1;
314 static gint ett_x509ce_CertificatePairAssertion = -1;
315 static gint ett_x509ce_CertificateListExactAssertion = -1;
316 static gint ett_x509ce_CertificateListAssertion = -1;
317 static gint ett_x509ce_PkiPathMatchSyntax = -1;
318 static gint ett_x509ce_EnhancedCertificateAssertion = -1;
319 static gint ett_x509ce_AltName = -1;
320 static gint ett_x509ce_CertificateTemplate = -1;
321 static gint ett_x509ce_EntrustVersionInfo = -1;
322 static gint ett_x509ce_EntrustInfoFlags = -1;
324 /*--- End of included file: packet-x509ce-ett.c ---*/
325 #line 57 "packet-x509ce-template.c"
327 static const char *object_identifier_id;
330 /*--- Included file: packet-x509ce-fn.c ---*/
331 #line 1 "packet-x509ce-fn.c"
335 dissect_x509ce_KeyIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
336 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
345 dissect_x509ce_OtherNameType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
346 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
354 dissect_x509ce_OtherNameValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
355 #line 171 "x509ce.cnf"
356 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
364 static const ber_sequence_t OtherName_sequence[] = {
365 { &hf_x509ce_type_id , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_OtherNameType },
366 { &hf_x509ce_value , BER_CLASS_CON, 0, 0, dissect_x509ce_OtherNameValue },
367 { NULL, 0, 0, 0, NULL }
371 dissect_x509ce_OtherName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
372 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
373 OtherName_sequence, hf_index, ett_x509ce_OtherName);
381 dissect_x509ce_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
382 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
383 actx, tree, tvb, offset, hf_index,
390 static const ber_sequence_t EDIPartyName_sequence[] = {
391 { &hf_x509ce_nameAssigner , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509sat_DirectoryString },
392 { &hf_x509ce_partyName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509sat_DirectoryString },
393 { NULL, 0, 0, 0, NULL }
397 dissect_x509ce_EDIPartyName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
398 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
399 EDIPartyName_sequence, hf_index, ett_x509ce_EDIPartyName);
407 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_) {
408 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
409 actx, tree, tvb, offset, hf_index,
412 #line 174 "x509ce.cnf"
414 PROTO_ITEM_SET_URL(actx->created_item);
423 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_) {
424 #line 164 "x509ce.cnf"
425 proto_tree_add_item(tree, hf_x509ce_IPAddress, tvb, offset, 4, FALSE);
436 dissect_x509ce_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_) {
437 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
443 const value_string x509ce_GeneralName_vals[] = {
447 { 3, "x400Address" },
448 { 4, "directoryName" },
449 { 5, "ediPartyName" },
450 { 6, "uniformResourceIdentifier" },
452 { 8, "registeredID" },
456 static const ber_choice_t GeneralName_choice[] = {
457 { 0, &hf_x509ce_otherName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_OtherName },
458 { 1, &hf_x509ce_rfc822Name , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_IA5String },
459 { 2, &hf_x509ce_dNSName , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x509ce_IA5String },
460 { 3, &hf_x509ce_x400Address , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_x411_ORAddress },
461 { 4, &hf_x509ce_directoryName, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_x509if_Name },
462 { 5, &hf_x509ce_ediPartyName , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_x509ce_EDIPartyName },
463 { 6, &hf_x509ce_uniformResourceIdentifier, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_x509ce_T_uniformResourceIdentifier },
464 { 7, &hf_x509ce_iPAddress , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_x509ce_T_iPAddress },
465 { 8, &hf_x509ce_registeredID , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_x509ce_OBJECT_IDENTIFIER },
466 { 0, NULL, 0, 0, 0, NULL }
470 dissect_x509ce_GeneralName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
471 offset = dissect_ber_choice(actx, tree, tvb, offset,
472 GeneralName_choice, hf_index, ett_x509ce_GeneralName,
479 static const ber_sequence_t GeneralNames_sequence_of[1] = {
480 { &hf_x509ce_GeneralNames_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
484 dissect_x509ce_GeneralNames(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
485 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
486 GeneralNames_sequence_of, hf_index, ett_x509ce_GeneralNames);
492 static const ber_sequence_t AuthorityKeyIdentifier_sequence[] = {
493 { &hf_x509ce_keyIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_KeyIdentifier },
494 { &hf_x509ce_authorityCertIssuer, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
495 { &hf_x509ce_authorityCertSerialNumber, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_CertificateSerialNumber },
496 { NULL, 0, 0, 0, NULL }
500 dissect_x509ce_AuthorityKeyIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
501 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
502 AuthorityKeyIdentifier_sequence, hf_index, ett_x509ce_AuthorityKeyIdentifier);
510 dissect_x509ce_SubjectKeyIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
511 offset = dissect_x509ce_KeyIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index);
517 static const asn_namedbit KeyUsage_bits[] = {
518 { 0, &hf_x509ce_KeyUsage_digitalSignature, -1, -1, "digitalSignature", NULL },
519 { 1, &hf_x509ce_KeyUsage_contentCommitment, -1, -1, "contentCommitment", NULL },
520 { 2, &hf_x509ce_KeyUsage_keyEncipherment, -1, -1, "keyEncipherment", NULL },
521 { 3, &hf_x509ce_KeyUsage_dataEncipherment, -1, -1, "dataEncipherment", NULL },
522 { 4, &hf_x509ce_KeyUsage_keyAgreement, -1, -1, "keyAgreement", NULL },
523 { 5, &hf_x509ce_KeyUsage_keyCertSign, -1, -1, "keyCertSign", NULL },
524 { 6, &hf_x509ce_KeyUsage_cRLSign, -1, -1, "cRLSign", NULL },
525 { 7, &hf_x509ce_KeyUsage_encipherOnly, -1, -1, "encipherOnly", NULL },
526 { 8, &hf_x509ce_KeyUsage_decipherOnly, -1, -1, "decipherOnly", NULL },
527 { 0, NULL, 0, 0, NULL, NULL }
531 dissect_x509ce_KeyUsage(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
532 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
533 KeyUsage_bits, hf_index, ett_x509ce_KeyUsage,
542 dissect_x509ce_KeyPurposeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
543 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
549 static const ber_sequence_t KeyPurposeIDs_sequence_of[1] = {
550 { &hf_x509ce_KeyPurposeIDs_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_KeyPurposeId },
554 dissect_x509ce_KeyPurposeIDs(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
555 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
556 KeyPurposeIDs_sequence_of, hf_index, ett_x509ce_KeyPurposeIDs);
564 dissect_x509ce_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
565 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
571 static const ber_sequence_t PrivateKeyUsagePeriod_sequence[] = {
572 { &hf_x509ce_notBefore , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
573 { &hf_x509ce_notAfter , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
574 { NULL, 0, 0, 0, NULL }
578 dissect_x509ce_PrivateKeyUsagePeriod(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
579 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
580 PrivateKeyUsagePeriod_sequence, hf_index, ett_x509ce_PrivateKeyUsagePeriod);
588 dissect_x509ce_CertPolicyId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
589 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
597 dissect_x509ce_T_policyQualifierId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
598 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_x509ce_object_identifier_id, &object_identifier_id);
606 dissect_x509ce_T_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_) {
607 #line 161 "x509ce.cnf"
608 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
616 static const ber_sequence_t PolicyQualifierInfo_sequence[] = {
617 { &hf_x509ce_policyQualifierId, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_T_policyQualifierId },
618 { &hf_x509ce_qualifier , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_T_qualifier },
619 { NULL, 0, 0, 0, NULL }
623 dissect_x509ce_PolicyQualifierInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
624 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
625 PolicyQualifierInfo_sequence, hf_index, ett_x509ce_PolicyQualifierInfo);
631 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo_sequence_of[1] = {
632 { &hf_x509ce_policyQualifiers_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyQualifierInfo },
636 dissect_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
637 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
638 SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo_sequence_of, hf_index, ett_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo);
644 static const ber_sequence_t PolicyInformation_sequence[] = {
645 { &hf_x509ce_policyIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
646 { &hf_x509ce_policyQualifiers, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo },
647 { NULL, 0, 0, 0, NULL }
651 dissect_x509ce_PolicyInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
652 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
653 PolicyInformation_sequence, hf_index, ett_x509ce_PolicyInformation);
659 static const ber_sequence_t CertificatePoliciesSyntax_sequence_of[1] = {
660 { &hf_x509ce_CertificatePoliciesSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyInformation },
664 dissect_x509ce_CertificatePoliciesSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
665 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
666 CertificatePoliciesSyntax_sequence_of, hf_index, ett_x509ce_CertificatePoliciesSyntax);
672 static const ber_sequence_t PolicyMappingsSyntax_item_sequence[] = {
673 { &hf_x509ce_issuerDomainPolicy, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
674 { &hf_x509ce_subjectDomainPolicy, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
675 { NULL, 0, 0, 0, NULL }
679 dissect_x509ce_PolicyMappingsSyntax_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_) {
680 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
681 PolicyMappingsSyntax_item_sequence, hf_index, ett_x509ce_PolicyMappingsSyntax_item);
687 static const ber_sequence_t PolicyMappingsSyntax_sequence_of[1] = {
688 { &hf_x509ce_PolicyMappingsSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyMappingsSyntax_item },
692 dissect_x509ce_PolicyMappingsSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
693 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
694 PolicyMappingsSyntax_sequence_of, hf_index, ett_x509ce_PolicyMappingsSyntax);
700 static const ber_sequence_t AttributesSyntax_sequence_of[1] = {
701 { &hf_x509ce_AttributesSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
705 dissect_x509ce_AttributesSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
706 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
707 AttributesSyntax_sequence_of, hf_index, ett_x509ce_AttributesSyntax);
715 dissect_x509ce_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_) {
716 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
724 dissect_x509ce_INTEGER_0_MAX(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
725 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
732 static const ber_sequence_t BasicConstraintsSyntax_sequence[] = {
733 { &hf_x509ce_cA , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_BOOLEAN },
734 { &hf_x509ce_pathLenConstraint, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER_0_MAX },
735 { NULL, 0, 0, 0, NULL }
739 dissect_x509ce_BasicConstraintsSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
740 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
741 BasicConstraintsSyntax_sequence, hf_index, ett_x509ce_BasicConstraintsSyntax);
749 dissect_x509ce_BaseDistance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
750 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
757 static const ber_sequence_t GeneralSubtree_sequence[] = {
758 { &hf_x509ce_base , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
759 { &hf_x509ce_minimum , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BaseDistance },
760 { &hf_x509ce_maximum , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BaseDistance },
761 { NULL, 0, 0, 0, NULL }
765 dissect_x509ce_GeneralSubtree(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
766 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
767 GeneralSubtree_sequence, hf_index, ett_x509ce_GeneralSubtree);
773 static const ber_sequence_t GeneralSubtrees_sequence_of[1] = {
774 { &hf_x509ce_GeneralSubtrees_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralSubtree },
778 dissect_x509ce_GeneralSubtrees(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
779 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
780 GeneralSubtrees_sequence_of, hf_index, ett_x509ce_GeneralSubtrees);
786 static const ber_sequence_t NameConstraintsSyntax_sequence[] = {
787 { &hf_x509ce_permittedSubtrees, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralSubtrees },
788 { &hf_x509ce_excludedSubtrees, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralSubtrees },
789 { NULL, 0, 0, 0, NULL }
793 dissect_x509ce_NameConstraintsSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
794 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
795 NameConstraintsSyntax_sequence, hf_index, ett_x509ce_NameConstraintsSyntax);
803 dissect_x509ce_SkipCerts(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
804 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
811 static const ber_sequence_t PolicyConstraintsSyntax_sequence[] = {
812 { &hf_x509ce_requireExplicitPolicy, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SkipCerts },
813 { &hf_x509ce_inhibitPolicyMapping, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SkipCerts },
814 { NULL, 0, 0, 0, NULL }
818 dissect_x509ce_PolicyConstraintsSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
819 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
820 PolicyConstraintsSyntax_sequence, hf_index, ett_x509ce_PolicyConstraintsSyntax);
828 dissect_x509ce_CRLNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
829 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
836 const value_string x509ce_CRLReason_vals[] = {
837 { 0, "unspecified" },
838 { 1, "keyCompromise" },
839 { 2, "cACompromise" },
840 { 3, "affiliationChanged" },
842 { 5, "cessationOfOperation" },
843 { 6, "certificateHold" },
844 { 8, "removeFromCRL" },
845 { 9, "privilegeWithdrawn" },
846 { 10, "aaCompromise" },
852 dissect_x509ce_CRLReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
853 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
862 dissect_x509ce_HoldInstruction(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
863 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
869 const value_string x509ce_DistributionPointName_vals[] = {
871 { 1, "nameRelativeToCRLIssuer" },
875 static const ber_choice_t DistributionPointName_choice[] = {
876 { 0, &hf_x509ce_fullName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
877 { 1, &hf_x509ce_nameRelativeToCRLIssuer, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509if_RelativeDistinguishedName },
878 { 0, NULL, 0, 0, 0, NULL }
882 dissect_x509ce_DistributionPointName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
883 offset = dissect_ber_choice(actx, tree, tvb, offset,
884 DistributionPointName_choice, hf_index, ett_x509ce_DistributionPointName,
891 static const asn_namedbit OnlyCertificateTypes_bits[] = {
892 { 0, &hf_x509ce_OnlyCertificateTypes_user, -1, -1, "user", NULL },
893 { 1, &hf_x509ce_OnlyCertificateTypes_authority, -1, -1, "authority", NULL },
894 { 2, &hf_x509ce_OnlyCertificateTypes_attribute, -1, -1, "attribute", NULL },
895 { 0, NULL, 0, 0, NULL, NULL }
899 dissect_x509ce_OnlyCertificateTypes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
900 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
901 OnlyCertificateTypes_bits, hf_index, ett_x509ce_OnlyCertificateTypes,
908 static const asn_namedbit ReasonFlags_bits[] = {
909 { 0, &hf_x509ce_ReasonFlags_unused, -1, -1, "unused", NULL },
910 { 1, &hf_x509ce_ReasonFlags_keyCompromise, -1, -1, "keyCompromise", NULL },
911 { 2, &hf_x509ce_ReasonFlags_cACompromise, -1, -1, "cACompromise", NULL },
912 { 3, &hf_x509ce_ReasonFlags_affiliationChanged, -1, -1, "affiliationChanged", NULL },
913 { 4, &hf_x509ce_ReasonFlags_superseded, -1, -1, "superseded", NULL },
914 { 5, &hf_x509ce_ReasonFlags_cessationOfOperation, -1, -1, "cessationOfOperation", NULL },
915 { 6, &hf_x509ce_ReasonFlags_certificateHold, -1, -1, "certificateHold", NULL },
916 { 7, &hf_x509ce_ReasonFlags_privilegeWithdrawn, -1, -1, "privilegeWithdrawn", NULL },
917 { 8, &hf_x509ce_ReasonFlags_aACompromise, -1, -1, "aACompromise", NULL },
918 { 0, NULL, 0, 0, NULL, NULL }
922 dissect_x509ce_ReasonFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
923 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
924 ReasonFlags_bits, hf_index, ett_x509ce_ReasonFlags,
933 dissect_x509ce_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_) {
934 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
941 static const ber_sequence_t NumberRange_sequence[] = {
942 { &hf_x509ce_startingNumber, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
943 { &hf_x509ce_endingNumber , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
944 { &hf_x509ce_modulus , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER },
945 { NULL, 0, 0, 0, NULL }
949 dissect_x509ce_NumberRange(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
950 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
951 NumberRange_sequence, hf_index, ett_x509ce_NumberRange);
959 dissect_x509ce_CRLStreamIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
960 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
967 static const ber_sequence_t BaseRevocationInfo_sequence[] = {
968 { &hf_x509ce_cRLStreamIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CRLStreamIdentifier },
969 { &hf_x509ce_cRLNumber , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_CRLNumber },
970 { &hf_x509ce_baseThisUpdate, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
971 { NULL, 0, 0, 0, NULL }
975 dissect_x509ce_BaseRevocationInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
976 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
977 BaseRevocationInfo_sequence, hf_index, ett_x509ce_BaseRevocationInfo);
983 static const ber_sequence_t PerAuthorityScope_sequence[] = {
984 { &hf_x509ce_authorityName, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
985 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
986 { &hf_x509ce_onlyContains , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_OnlyCertificateTypes },
987 { &hf_x509ce_onlySomeReasons, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
988 { &hf_x509ce_serialNumberRange, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NumberRange },
989 { &hf_x509ce_subjectKeyIdRange, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NumberRange },
990 { &hf_x509ce_nameSubtrees , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
991 { &hf_x509ce_baseRevocationInfo, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BaseRevocationInfo },
992 { NULL, 0, 0, 0, NULL }
996 dissect_x509ce_PerAuthorityScope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
997 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
998 PerAuthorityScope_sequence, hf_index, ett_x509ce_PerAuthorityScope);
1004 static const ber_sequence_t CRLScopeSyntax_sequence_of[1] = {
1005 { &hf_x509ce_CRLScopeSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PerAuthorityScope },
1009 dissect_x509ce_CRLScopeSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1010 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1011 CRLScopeSyntax_sequence_of, hf_index, ett_x509ce_CRLScopeSyntax);
1017 static const ber_sequence_t DeltaRefInfo_sequence[] = {
1018 { &hf_x509ce_deltaLocation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1019 { &hf_x509ce_lastDelta , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralizedTime },
1020 { NULL, 0, 0, 0, NULL }
1024 dissect_x509ce_DeltaRefInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1025 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1026 DeltaRefInfo_sequence, hf_index, ett_x509ce_DeltaRefInfo);
1032 static const ber_sequence_t CRLReferral_sequence[] = {
1033 { &hf_x509ce_crlr_issuer , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1034 { &hf_x509ce_location , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1035 { &hf_x509ce_deltaRefInfo , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_DeltaRefInfo },
1036 { &hf_x509ce_cRLScope , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_CRLScopeSyntax },
1037 { &hf_x509ce_lastUpdate , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1038 { &hf_x509ce_lastChangedCRL, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1039 { NULL, 0, 0, 0, NULL }
1043 dissect_x509ce_CRLReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1044 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1045 CRLReferral_sequence, hf_index, ett_x509ce_CRLReferral);
1051 const value_string x509ce_StatusReferral_vals[] = {
1052 { 0, "cRLReferral" },
1056 static const ber_choice_t StatusReferral_choice[] = {
1057 { 0, &hf_x509ce_cRLReferral , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_CRLReferral },
1058 { 0, NULL, 0, 0, 0, NULL }
1062 dissect_x509ce_StatusReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1063 offset = dissect_ber_choice(actx, tree, tvb, offset,
1064 StatusReferral_choice, hf_index, ett_x509ce_StatusReferral,
1071 static const ber_sequence_t StatusReferrals_sequence_of[1] = {
1072 { &hf_x509ce_StatusReferrals_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_StatusReferral },
1076 dissect_x509ce_StatusReferrals(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1077 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1078 StatusReferrals_sequence_of, hf_index, ett_x509ce_StatusReferrals);
1084 const value_string x509ce_OrderedListSyntax_vals[] = {
1085 { 0, "ascSerialNum" },
1086 { 1, "ascRevDate" },
1092 dissect_x509ce_OrderedListSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1093 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1100 static const ber_sequence_t DeltaInformation_sequence[] = {
1101 { &hf_x509ce_deltaLocation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1102 { &hf_x509ce_nextDelta , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralizedTime },
1103 { NULL, 0, 0, 0, NULL }
1107 dissect_x509ce_DeltaInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1108 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1109 DeltaInformation_sequence, hf_index, ett_x509ce_DeltaInformation);
1115 static const ber_sequence_t DistributionPoint_sequence[] = {
1116 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1117 { &hf_x509ce_reasons , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
1118 { &hf_x509ce_cRLIssuer , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
1119 { NULL, 0, 0, 0, NULL }
1123 dissect_x509ce_DistributionPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1124 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1125 DistributionPoint_sequence, hf_index, ett_x509ce_DistributionPoint);
1131 static const ber_sequence_t CRLDistPointsSyntax_sequence_of[1] = {
1132 { &hf_x509ce_CRLDistPointsSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_DistributionPoint },
1136 dissect_x509ce_CRLDistPointsSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1137 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1138 CRLDistPointsSyntax_sequence_of, hf_index, ett_x509ce_CRLDistPointsSyntax);
1144 static const ber_sequence_t IssuingDistPointSyntax_sequence[] = {
1145 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1146 { &hf_x509ce_onlyContainsUserPublicKeyCerts, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1147 { &hf_x509ce_onlyContainsCACerts, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1148 { &hf_x509ce_onlySomeReasons, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
1149 { &hf_x509ce_indirectCRL , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1150 { NULL, 0, 0, 0, NULL }
1154 dissect_x509ce_IssuingDistPointSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1155 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1156 IssuingDistPointSyntax_sequence, hf_index, ett_x509ce_IssuingDistPointSyntax);
1164 dissect_x509ce_BaseCRLNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1165 offset = dissect_x509ce_CRLNumber(implicit_tag, tvb, offset, actx, tree, hf_index);
1171 static const ber_sequence_t ReasonInfo_sequence[] = {
1172 { &hf_x509ce_reasonCode , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_x509ce_CRLReason },
1173 { &hf_x509ce_holdInstructionCode, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_HoldInstruction },
1174 { NULL, 0, 0, 0, NULL }
1178 dissect_x509ce_ReasonInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1179 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1180 ReasonInfo_sequence, hf_index, ett_x509ce_ReasonInfo);
1186 static const ber_sequence_t CertificateSerialNumbers_sequence_of[1] = {
1187 { &hf_x509ce_CertificateSerialNumbers_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509af_CertificateSerialNumber },
1191 dissect_x509ce_CertificateSerialNumbers(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1192 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1193 CertificateSerialNumbers_sequence_of, hf_index, ett_x509ce_CertificateSerialNumbers);
1199 static const ber_sequence_t CertificateGroupNumberRange_sequence[] = {
1200 { &hf_x509ce_startingNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
1201 { &hf_x509ce_endingNumber , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
1202 { NULL, 0, 0, 0, NULL }
1206 dissect_x509ce_CertificateGroupNumberRange(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1207 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1208 CertificateGroupNumberRange_sequence, hf_index, ett_x509ce_CertificateGroupNumberRange);
1214 static const value_string x509ce_CertificateGroup_vals[] = {
1215 { 0, "serialNumbers" },
1216 { 1, "serialNumberRange" },
1217 { 2, "nameSubtree" },
1221 static const ber_choice_t CertificateGroup_choice[] = {
1222 { 0, &hf_x509ce_serialNumbers, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateSerialNumbers },
1223 { 1, &hf_x509ce_serialNumberRange_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateGroupNumberRange },
1224 { 2, &hf_x509ce_nameSubtree , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralName },
1225 { 0, NULL, 0, 0, 0, NULL }
1229 dissect_x509ce_CertificateGroup(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1230 offset = dissect_ber_choice(actx, tree, tvb, offset,
1231 CertificateGroup_choice, hf_index, ett_x509ce_CertificateGroup,
1238 static const ber_sequence_t ToBeRevokedGroup_sequence[] = {
1239 { &hf_x509ce_certificateIssuer, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1240 { &hf_x509ce_reasonInfo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonInfo },
1241 { &hf_x509ce_revocationTime, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralizedTime },
1242 { &hf_x509ce_certificateGroup, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_CertificateGroup },
1243 { NULL, 0, 0, 0, NULL }
1247 dissect_x509ce_ToBeRevokedGroup(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1248 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1249 ToBeRevokedGroup_sequence, hf_index, ett_x509ce_ToBeRevokedGroup);
1255 static const ber_sequence_t ToBeRevokedSyntax_sequence_of[1] = {
1256 { &hf_x509ce_ToBeRevokedSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_ToBeRevokedGroup },
1260 dissect_x509ce_ToBeRevokedSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1261 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1262 ToBeRevokedSyntax_sequence_of, hf_index, ett_x509ce_ToBeRevokedSyntax);
1268 static const value_string x509ce_RevokedCertificateGroup_vals[] = {
1269 { 0, "serialNumberRange" },
1270 { 1, "nameSubtree" },
1274 static const ber_choice_t RevokedCertificateGroup_choice[] = {
1275 { 0, &hf_x509ce_serialNumberRange, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_NumberRange },
1276 { 1, &hf_x509ce_nameSubtree , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralName },
1277 { 0, NULL, 0, 0, 0, NULL }
1281 dissect_x509ce_RevokedCertificateGroup(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1282 offset = dissect_ber_choice(actx, tree, tvb, offset,
1283 RevokedCertificateGroup_choice, hf_index, ett_x509ce_RevokedCertificateGroup,
1290 static const ber_sequence_t RevokedGroup_sequence[] = {
1291 { &hf_x509ce_certificateIssuer, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1292 { &hf_x509ce_reasonInfo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonInfo },
1293 { &hf_x509ce_invalidityDate, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1294 { &hf_x509ce_revokedcertificateGroup, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_RevokedCertificateGroup },
1295 { NULL, 0, 0, 0, NULL }
1299 dissect_x509ce_RevokedGroup(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1300 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1301 RevokedGroup_sequence, hf_index, ett_x509ce_RevokedGroup);
1307 static const ber_sequence_t RevokedGroupsSyntax_sequence_of[1] = {
1308 { &hf_x509ce_RevokedGroupsSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_RevokedGroup },
1312 dissect_x509ce_RevokedGroupsSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1313 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1314 RevokedGroupsSyntax_sequence_of, hf_index, ett_x509ce_RevokedGroupsSyntax);
1322 dissect_x509ce_ExpiredCertsOnCRL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1323 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
1329 static const ber_sequence_t AAIssuingDistPointSyntax_sequence[] = {
1330 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1331 { &hf_x509ce_onlySomeReasons, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
1332 { &hf_x509ce_indirectCRL , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1333 { &hf_x509ce_containsUserAttributeCerts, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1334 { &hf_x509ce_containsAACerts, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1335 { &hf_x509ce_containsSOAPublicKeyCerts, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1336 { NULL, 0, 0, 0, NULL }
1340 dissect_x509ce_AAIssuingDistPointSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1341 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1342 AAIssuingDistPointSyntax_sequence, hf_index, ett_x509ce_AAIssuingDistPointSyntax);
1348 static const ber_sequence_t CertificateExactAssertion_sequence[] = {
1349 { &hf_x509ce_serialNumber , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509af_CertificateSerialNumber },
1350 { &hf_x509ce_issuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1351 { NULL, 0, 0, 0, NULL }
1355 dissect_x509ce_CertificateExactAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1356 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1357 CertificateExactAssertion_sequence, hf_index, ett_x509ce_CertificateExactAssertion);
1363 static const value_string x509ce_T_builtinNameForm_vals[] = {
1364 { 1, "rfc822Name" },
1366 { 3, "x400Address" },
1367 { 4, "directoryName" },
1368 { 5, "ediPartyName" },
1369 { 6, "uniformResourceIdentifier" },
1371 { 8, "registeredId" },
1377 dissect_x509ce_T_builtinNameForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1378 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1385 const value_string x509ce_AltNameType_vals[] = {
1386 { 0, "builtinNameForm" },
1387 { 1, "otherNameForm" },
1391 static const ber_choice_t AltNameType_choice[] = {
1392 { 0, &hf_x509ce_builtinNameForm, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_x509ce_T_builtinNameForm },
1393 { 1, &hf_x509ce_otherNameForm, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1394 { 0, NULL, 0, 0, 0, NULL }
1398 dissect_x509ce_AltNameType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1399 offset = dissect_ber_choice(actx, tree, tvb, offset,
1400 AltNameType_choice, hf_index, ett_x509ce_AltNameType,
1407 static const ber_sequence_t CertPolicySet_sequence_of[1] = {
1408 { &hf_x509ce_CertPolicySet_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
1412 dissect_x509ce_CertPolicySet(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1413 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1414 CertPolicySet_sequence_of, hf_index, ett_x509ce_CertPolicySet);
1420 static const ber_sequence_t CertificateAssertion_sequence[] = {
1421 { &hf_x509ce_serialNumber , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_CertificateSerialNumber },
1422 { &hf_x509ce_issuer , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1423 { &hf_x509ce_subjectKeyIdentifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SubjectKeyIdentifier },
1424 { &hf_x509ce_authorityKeyIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AuthorityKeyIdentifier },
1425 { &hf_x509ce_certificateValid, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_Time },
1426 { &hf_x509ce_privateKeyValid, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1427 { &hf_x509ce_subjectPublicKeyAlgID, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1428 { &hf_x509ce_keyUsage , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_KeyUsage },
1429 { &hf_x509ce_subjectAltName, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_AltNameType },
1430 { &hf_x509ce_policy , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertPolicySet },
1431 { &hf_x509ce_pathToName , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1432 { &hf_x509ce_subject , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1433 { &hf_x509ce_nameConstraints, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NameConstraintsSyntax },
1434 { NULL, 0, 0, 0, NULL }
1438 dissect_x509ce_CertificateAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1439 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1440 CertificateAssertion_sequence, hf_index, ett_x509ce_CertificateAssertion);
1446 static const ber_sequence_t CertificatePairExactAssertion_sequence[] = {
1447 { &hf_x509ce_cpea_issuedToThisCAAssertion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateExactAssertion },
1448 { &hf_x509ce_cpea_issuedByThisCAAssertion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateExactAssertion },
1449 { NULL, 0, 0, 0, NULL }
1453 dissect_x509ce_CertificatePairExactAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1454 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1455 CertificatePairExactAssertion_sequence, hf_index, ett_x509ce_CertificatePairExactAssertion);
1461 static const ber_sequence_t CertificatePairAssertion_sequence[] = {
1462 { &hf_x509ce_issuedToThisCAAssertion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateAssertion },
1463 { &hf_x509ce_issuedByThisCAAssertion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateAssertion },
1464 { NULL, 0, 0, 0, NULL }
1468 dissect_x509ce_CertificatePairAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1469 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1470 CertificatePairAssertion_sequence, hf_index, ett_x509ce_CertificatePairAssertion);
1476 static const ber_sequence_t CertificateListExactAssertion_sequence[] = {
1477 { &hf_x509ce_issuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1478 { &hf_x509ce_thisUpdate , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509af_Time },
1479 { &hf_x509ce_distributionPoint, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1480 { NULL, 0, 0, 0, NULL }
1484 dissect_x509ce_CertificateListExactAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1485 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1486 CertificateListExactAssertion_sequence, hf_index, ett_x509ce_CertificateListExactAssertion);
1492 static const ber_sequence_t CertificateListAssertion_sequence[] = {
1493 { &hf_x509ce_issuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1494 { &hf_x509ce_minCRLNumber , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CRLNumber },
1495 { &hf_x509ce_maxCRLNumber , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CRLNumber },
1496 { &hf_x509ce_reasonFlags , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_ReasonFlags },
1497 { &hf_x509ce_dateAndTime , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509af_Time },
1498 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1499 { &hf_x509ce_authorityKeyIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AuthorityKeyIdentifier },
1500 { NULL, 0, 0, 0, NULL }
1504 dissect_x509ce_CertificateListAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1505 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1506 CertificateListAssertion_sequence, hf_index, ett_x509ce_CertificateListAssertion);
1512 static const ber_sequence_t PkiPathMatchSyntax_sequence[] = {
1513 { &hf_x509ce_firstIssuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1514 { &hf_x509ce_lastSubject , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1515 { NULL, 0, 0, 0, NULL }
1519 dissect_x509ce_PkiPathMatchSyntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1520 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1521 PkiPathMatchSyntax_sequence, hf_index, ett_x509ce_PkiPathMatchSyntax);
1527 static const ber_sequence_t AltName_sequence[] = {
1528 { &hf_x509ce_altnameType , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_AltNameType },
1529 { &hf_x509ce_altNameValue , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1530 { NULL, 0, 0, 0, NULL }
1534 dissect_x509ce_AltName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1535 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1536 AltName_sequence, hf_index, ett_x509ce_AltName);
1542 static const ber_sequence_t EnhancedCertificateAssertion_sequence[] = {
1543 { &hf_x509ce_serialNumber , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_CertificateSerialNumber },
1544 { &hf_x509ce_issuer , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1545 { &hf_x509ce_subjectKeyIdentifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SubjectKeyIdentifier },
1546 { &hf_x509ce_authorityKeyIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AuthorityKeyIdentifier },
1547 { &hf_x509ce_certificateValid, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_Time },
1548 { &hf_x509ce_privateKeyValid, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1549 { &hf_x509ce_subjectPublicKeyAlgID, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1550 { &hf_x509ce_keyUsage , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_KeyUsage },
1551 { &hf_x509ce_subjectAltName_01, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AltName },
1552 { &hf_x509ce_policy , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertPolicySet },
1553 { &hf_x509ce_pathToName_01, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
1554 { &hf_x509ce_subject , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1555 { &hf_x509ce_nameConstraints, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NameConstraintsSyntax },
1556 { NULL, 0, 0, 0, NULL }
1560 dissect_x509ce_EnhancedCertificateAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1561 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1562 EnhancedCertificateAssertion_sequence, hf_index, ett_x509ce_EnhancedCertificateAssertion);
1568 static const ber_sequence_t CertificateTemplate_sequence[] = {
1569 { &hf_x509ce_templateID , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1570 { &hf_x509ce_templateMajorVersion, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER },
1571 { &hf_x509ce_templateMinorVersion, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER },
1572 { NULL, 0, 0, 0, NULL }
1576 dissect_x509ce_CertificateTemplate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1577 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1578 CertificateTemplate_sequence, hf_index, ett_x509ce_CertificateTemplate);
1586 dissect_x509ce_GeneralString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1587 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GeneralString,
1588 actx, tree, tvb, offset, hf_index,
1595 static const asn_namedbit EntrustInfoFlags_bits[] = {
1596 { 0, &hf_x509ce_EntrustInfoFlags_keyUpdateAllowed, -1, -1, "keyUpdateAllowed", NULL },
1597 { 1, &hf_x509ce_EntrustInfoFlags_newExtensions, -1, -1, "newExtensions", NULL },
1598 { 2, &hf_x509ce_EntrustInfoFlags_pKIXCertificate, -1, -1, "pKIXCertificate", NULL },
1599 { 3, &hf_x509ce_EntrustInfoFlags_enterpriseCategory, -1, -1, "enterpriseCategory", NULL },
1600 { 4, &hf_x509ce_EntrustInfoFlags_webCategory, -1, -1, "webCategory", NULL },
1601 { 5, &hf_x509ce_EntrustInfoFlags_sETCategory, -1, -1, "sETCategory", NULL },
1602 { 0, NULL, 0, 0, NULL, NULL }
1606 dissect_x509ce_EntrustInfoFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1607 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1608 EntrustInfoFlags_bits, hf_index, ett_x509ce_EntrustInfoFlags,
1615 static const ber_sequence_t EntrustVersionInfo_sequence[] = {
1616 { &hf_x509ce_entrustVers , BER_CLASS_UNI, BER_UNI_TAG_GeneralString, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralString },
1617 { &hf_x509ce_entrustVersInfoFlags, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_EntrustInfoFlags },
1618 { NULL, 0, 0, 0, NULL }
1622 dissect_x509ce_EntrustVersionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1623 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1624 EntrustVersionInfo_sequence, hf_index, ett_x509ce_EntrustVersionInfo);
1631 static void dissect_AuthorityKeyIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1632 asn1_ctx_t asn1_ctx;
1633 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1634 dissect_x509ce_AuthorityKeyIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_AuthorityKeyIdentifier_PDU);
1636 static void dissect_SubjectKeyIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1637 asn1_ctx_t asn1_ctx;
1638 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1639 dissect_x509ce_SubjectKeyIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_SubjectKeyIdentifier_PDU);
1641 static void dissect_KeyUsage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1642 asn1_ctx_t asn1_ctx;
1643 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1644 dissect_x509ce_KeyUsage(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_KeyUsage_PDU);
1646 static void dissect_KeyPurposeIDs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1647 asn1_ctx_t asn1_ctx;
1648 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1649 dissect_x509ce_KeyPurposeIDs(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_KeyPurposeIDs_PDU);
1651 static void dissect_PrivateKeyUsagePeriod_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1652 asn1_ctx_t asn1_ctx;
1653 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1654 dissect_x509ce_PrivateKeyUsagePeriod(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PrivateKeyUsagePeriod_PDU);
1656 static void dissect_CertificatePoliciesSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1657 asn1_ctx_t asn1_ctx;
1658 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1659 dissect_x509ce_CertificatePoliciesSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificatePoliciesSyntax_PDU);
1661 static void dissect_PolicyMappingsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1662 asn1_ctx_t asn1_ctx;
1663 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1664 dissect_x509ce_PolicyMappingsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PolicyMappingsSyntax_PDU);
1666 static void dissect_GeneralNames_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1667 asn1_ctx_t asn1_ctx;
1668 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1669 dissect_x509ce_GeneralNames(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_GeneralNames_PDU);
1671 static void dissect_AttributesSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1672 asn1_ctx_t asn1_ctx;
1673 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1674 dissect_x509ce_AttributesSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_AttributesSyntax_PDU);
1676 static void dissect_BasicConstraintsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1677 asn1_ctx_t asn1_ctx;
1678 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1679 dissect_x509ce_BasicConstraintsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_BasicConstraintsSyntax_PDU);
1681 static void dissect_NameConstraintsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1682 asn1_ctx_t asn1_ctx;
1683 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1684 dissect_x509ce_NameConstraintsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_NameConstraintsSyntax_PDU);
1686 static void dissect_PolicyConstraintsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1687 asn1_ctx_t asn1_ctx;
1688 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1689 dissect_x509ce_PolicyConstraintsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PolicyConstraintsSyntax_PDU);
1691 static void dissect_SkipCerts_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1692 asn1_ctx_t asn1_ctx;
1693 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1694 dissect_x509ce_SkipCerts(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_SkipCerts_PDU);
1696 static void dissect_CRLNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1697 asn1_ctx_t asn1_ctx;
1698 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1699 dissect_x509ce_CRLNumber(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLNumber_PDU);
1701 static void dissect_CRLReason_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1702 asn1_ctx_t asn1_ctx;
1703 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1704 dissect_x509ce_CRLReason(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLReason_PDU);
1706 static void dissect_HoldInstruction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1707 asn1_ctx_t asn1_ctx;
1708 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1709 dissect_x509ce_HoldInstruction(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_HoldInstruction_PDU);
1711 static void dissect_CRLScopeSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1712 asn1_ctx_t asn1_ctx;
1713 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1714 dissect_x509ce_CRLScopeSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLScopeSyntax_PDU);
1716 static void dissect_StatusReferrals_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1717 asn1_ctx_t asn1_ctx;
1718 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1719 dissect_x509ce_StatusReferrals(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_StatusReferrals_PDU);
1721 static void dissect_CRLStreamIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1722 asn1_ctx_t asn1_ctx;
1723 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1724 dissect_x509ce_CRLStreamIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLStreamIdentifier_PDU);
1726 static void dissect_OrderedListSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1727 asn1_ctx_t asn1_ctx;
1728 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1729 dissect_x509ce_OrderedListSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_OrderedListSyntax_PDU);
1731 static void dissect_DeltaInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1732 asn1_ctx_t asn1_ctx;
1733 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1734 dissect_x509ce_DeltaInformation(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_DeltaInformation_PDU);
1736 static void dissect_CRLDistPointsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1737 asn1_ctx_t asn1_ctx;
1738 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1739 dissect_x509ce_CRLDistPointsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLDistPointsSyntax_PDU);
1741 static void dissect_IssuingDistPointSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1742 asn1_ctx_t asn1_ctx;
1743 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1744 dissect_x509ce_IssuingDistPointSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_IssuingDistPointSyntax_PDU);
1746 static void dissect_BaseCRLNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1747 asn1_ctx_t asn1_ctx;
1748 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1749 dissect_x509ce_BaseCRLNumber(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_BaseCRLNumber_PDU);
1751 static void dissect_ToBeRevokedSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1752 asn1_ctx_t asn1_ctx;
1753 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1754 dissect_x509ce_ToBeRevokedSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_ToBeRevokedSyntax_PDU);
1756 static void dissect_RevokedGroupsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1757 asn1_ctx_t asn1_ctx;
1758 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1759 dissect_x509ce_RevokedGroupsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_RevokedGroupsSyntax_PDU);
1761 static void dissect_ExpiredCertsOnCRL_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1762 asn1_ctx_t asn1_ctx;
1763 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1764 dissect_x509ce_ExpiredCertsOnCRL(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_ExpiredCertsOnCRL_PDU);
1766 static void dissect_AAIssuingDistPointSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1767 asn1_ctx_t asn1_ctx;
1768 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1769 dissect_x509ce_AAIssuingDistPointSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_AAIssuingDistPointSyntax_PDU);
1771 static void dissect_CertificateAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1772 asn1_ctx_t asn1_ctx;
1773 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1774 dissect_x509ce_CertificateAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateAssertion_PDU);
1776 static void dissect_CertificatePairExactAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1777 asn1_ctx_t asn1_ctx;
1778 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1779 dissect_x509ce_CertificatePairExactAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificatePairExactAssertion_PDU);
1781 static void dissect_CertificatePairAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1782 asn1_ctx_t asn1_ctx;
1783 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1784 dissect_x509ce_CertificatePairAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificatePairAssertion_PDU);
1786 static void dissect_CertificateListExactAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1787 asn1_ctx_t asn1_ctx;
1788 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1789 dissect_x509ce_CertificateListExactAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateListExactAssertion_PDU);
1791 static void dissect_CertificateListAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1792 asn1_ctx_t asn1_ctx;
1793 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1794 dissect_x509ce_CertificateListAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateListAssertion_PDU);
1796 static void dissect_PkiPathMatchSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1797 asn1_ctx_t asn1_ctx;
1798 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1799 dissect_x509ce_PkiPathMatchSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PkiPathMatchSyntax_PDU);
1801 static void dissect_EnhancedCertificateAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1802 asn1_ctx_t asn1_ctx;
1803 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1804 dissect_x509ce_EnhancedCertificateAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_EnhancedCertificateAssertion_PDU);
1806 static void dissect_CertificateTemplate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1807 asn1_ctx_t asn1_ctx;
1808 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1809 dissect_x509ce_CertificateTemplate(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateTemplate_PDU);
1811 static void dissect_EntrustVersionInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1812 asn1_ctx_t asn1_ctx;
1813 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1814 dissect_x509ce_EntrustVersionInfo(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_EntrustVersionInfo_PDU);
1818 /*--- End of included file: packet-x509ce-fn.c ---*/
1819 #line 61 "packet-x509ce-template.c"
1823 dissect_x509ce_invalidityDate_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
1825 asn1_ctx_t asn1_ctx;
1826 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1828 dissect_x509ce_GeneralizedTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_id_ce_invalidityDate);
1832 dissect_x509ce_baseUpdateTime_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
1834 asn1_ctx_t asn1_ctx;
1835 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1836 dissect_x509ce_GeneralizedTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_id_ce_baseUpdateTime);
1839 /*--- proto_register_x509ce ----------------------------------------------*/
1840 void proto_register_x509ce(void) {
1842 /* List of fields */
1843 static hf_register_info hf[] = {
1844 { &hf_x509ce_id_ce_baseUpdateTime,
1845 { "baseUpdateTime", "x509ce.id_ce_baseUpdateTime",
1846 FT_STRING, BASE_NONE, NULL, 0,
1848 { &hf_x509ce_id_ce_invalidityDate,
1849 { "invalidityDate", "x509ce.id_ce_invalidityDate",
1850 FT_STRING, BASE_NONE, NULL, 0,
1852 { &hf_x509ce_object_identifier_id,
1853 { "Id", "x509ce.id", FT_OID, BASE_NONE, NULL, 0,
1854 "Object identifier Id", HFILL }},
1855 { &hf_x509ce_IPAddress,
1856 { "iPAddress", "x509ce.IPAddress", FT_IPv4, BASE_NONE, NULL, 0,
1857 "IP Address", HFILL }},
1860 /*--- Included file: packet-x509ce-hfarr.c ---*/
1861 #line 1 "packet-x509ce-hfarr.c"
1862 { &hf_x509ce_AuthorityKeyIdentifier_PDU,
1863 { "AuthorityKeyIdentifier", "x509ce.AuthorityKeyIdentifier",
1864 FT_NONE, BASE_NONE, NULL, 0,
1865 "x509ce.AuthorityKeyIdentifier", HFILL }},
1866 { &hf_x509ce_SubjectKeyIdentifier_PDU,
1867 { "SubjectKeyIdentifier", "x509ce.SubjectKeyIdentifier",
1868 FT_BYTES, BASE_NONE, NULL, 0,
1869 "x509ce.SubjectKeyIdentifier", HFILL }},
1870 { &hf_x509ce_KeyUsage_PDU,
1871 { "KeyUsage", "x509ce.KeyUsage",
1872 FT_BYTES, BASE_NONE, NULL, 0,
1873 "x509ce.KeyUsage", HFILL }},
1874 { &hf_x509ce_KeyPurposeIDs_PDU,
1875 { "KeyPurposeIDs", "x509ce.KeyPurposeIDs",
1876 FT_UINT32, BASE_DEC, NULL, 0,
1877 "x509ce.KeyPurposeIDs", HFILL }},
1878 { &hf_x509ce_PrivateKeyUsagePeriod_PDU,
1879 { "PrivateKeyUsagePeriod", "x509ce.PrivateKeyUsagePeriod",
1880 FT_NONE, BASE_NONE, NULL, 0,
1881 "x509ce.PrivateKeyUsagePeriod", HFILL }},
1882 { &hf_x509ce_CertificatePoliciesSyntax_PDU,
1883 { "CertificatePoliciesSyntax", "x509ce.CertificatePoliciesSyntax",
1884 FT_UINT32, BASE_DEC, NULL, 0,
1885 "x509ce.CertificatePoliciesSyntax", HFILL }},
1886 { &hf_x509ce_PolicyMappingsSyntax_PDU,
1887 { "PolicyMappingsSyntax", "x509ce.PolicyMappingsSyntax",
1888 FT_UINT32, BASE_DEC, NULL, 0,
1889 "x509ce.PolicyMappingsSyntax", HFILL }},
1890 { &hf_x509ce_GeneralNames_PDU,
1891 { "GeneralNames", "x509ce.GeneralNames",
1892 FT_UINT32, BASE_DEC, NULL, 0,
1893 "x509ce.GeneralNames", HFILL }},
1894 { &hf_x509ce_AttributesSyntax_PDU,
1895 { "AttributesSyntax", "x509ce.AttributesSyntax",
1896 FT_UINT32, BASE_DEC, NULL, 0,
1897 "x509ce.AttributesSyntax", HFILL }},
1898 { &hf_x509ce_BasicConstraintsSyntax_PDU,
1899 { "BasicConstraintsSyntax", "x509ce.BasicConstraintsSyntax",
1900 FT_NONE, BASE_NONE, NULL, 0,
1901 "x509ce.BasicConstraintsSyntax", HFILL }},
1902 { &hf_x509ce_NameConstraintsSyntax_PDU,
1903 { "NameConstraintsSyntax", "x509ce.NameConstraintsSyntax",
1904 FT_NONE, BASE_NONE, NULL, 0,
1905 "x509ce.NameConstraintsSyntax", HFILL }},
1906 { &hf_x509ce_PolicyConstraintsSyntax_PDU,
1907 { "PolicyConstraintsSyntax", "x509ce.PolicyConstraintsSyntax",
1908 FT_NONE, BASE_NONE, NULL, 0,
1909 "x509ce.PolicyConstraintsSyntax", HFILL }},
1910 { &hf_x509ce_SkipCerts_PDU,
1911 { "SkipCerts", "x509ce.SkipCerts",
1912 FT_UINT32, BASE_DEC, NULL, 0,
1913 "x509ce.SkipCerts", HFILL }},
1914 { &hf_x509ce_CRLNumber_PDU,
1915 { "CRLNumber", "x509ce.CRLNumber",
1916 FT_UINT32, BASE_DEC, NULL, 0,
1917 "x509ce.CRLNumber", HFILL }},
1918 { &hf_x509ce_CRLReason_PDU,
1919 { "CRLReason", "x509ce.CRLReason",
1920 FT_UINT32, BASE_DEC, VALS(x509ce_CRLReason_vals), 0,
1921 "x509ce.CRLReason", HFILL }},
1922 { &hf_x509ce_HoldInstruction_PDU,
1923 { "HoldInstruction", "x509ce.HoldInstruction",
1924 FT_OID, BASE_NONE, NULL, 0,
1925 "x509ce.HoldInstruction", HFILL }},
1926 { &hf_x509ce_CRLScopeSyntax_PDU,
1927 { "CRLScopeSyntax", "x509ce.CRLScopeSyntax",
1928 FT_UINT32, BASE_DEC, NULL, 0,
1929 "x509ce.CRLScopeSyntax", HFILL }},
1930 { &hf_x509ce_StatusReferrals_PDU,
1931 { "StatusReferrals", "x509ce.StatusReferrals",
1932 FT_UINT32, BASE_DEC, NULL, 0,
1933 "x509ce.StatusReferrals", HFILL }},
1934 { &hf_x509ce_CRLStreamIdentifier_PDU,
1935 { "CRLStreamIdentifier", "x509ce.CRLStreamIdentifier",
1936 FT_UINT32, BASE_DEC, NULL, 0,
1937 "x509ce.CRLStreamIdentifier", HFILL }},
1938 { &hf_x509ce_OrderedListSyntax_PDU,
1939 { "OrderedListSyntax", "x509ce.OrderedListSyntax",
1940 FT_UINT32, BASE_DEC, VALS(x509ce_OrderedListSyntax_vals), 0,
1941 "x509ce.OrderedListSyntax", HFILL }},
1942 { &hf_x509ce_DeltaInformation_PDU,
1943 { "DeltaInformation", "x509ce.DeltaInformation",
1944 FT_NONE, BASE_NONE, NULL, 0,
1945 "x509ce.DeltaInformation", HFILL }},
1946 { &hf_x509ce_CRLDistPointsSyntax_PDU,
1947 { "CRLDistPointsSyntax", "x509ce.CRLDistPointsSyntax",
1948 FT_UINT32, BASE_DEC, NULL, 0,
1949 "x509ce.CRLDistPointsSyntax", HFILL }},
1950 { &hf_x509ce_IssuingDistPointSyntax_PDU,
1951 { "IssuingDistPointSyntax", "x509ce.IssuingDistPointSyntax",
1952 FT_NONE, BASE_NONE, NULL, 0,
1953 "x509ce.IssuingDistPointSyntax", HFILL }},
1954 { &hf_x509ce_BaseCRLNumber_PDU,
1955 { "BaseCRLNumber", "x509ce.BaseCRLNumber",
1956 FT_UINT32, BASE_DEC, NULL, 0,
1957 "x509ce.BaseCRLNumber", HFILL }},
1958 { &hf_x509ce_ToBeRevokedSyntax_PDU,
1959 { "ToBeRevokedSyntax", "x509ce.ToBeRevokedSyntax",
1960 FT_UINT32, BASE_DEC, NULL, 0,
1961 "x509ce.ToBeRevokedSyntax", HFILL }},
1962 { &hf_x509ce_RevokedGroupsSyntax_PDU,
1963 { "RevokedGroupsSyntax", "x509ce.RevokedGroupsSyntax",
1964 FT_UINT32, BASE_DEC, NULL, 0,
1965 "x509ce.RevokedGroupsSyntax", HFILL }},
1966 { &hf_x509ce_ExpiredCertsOnCRL_PDU,
1967 { "ExpiredCertsOnCRL", "x509ce.ExpiredCertsOnCRL",
1968 FT_STRING, BASE_NONE, NULL, 0,
1969 "x509ce.ExpiredCertsOnCRL", HFILL }},
1970 { &hf_x509ce_AAIssuingDistPointSyntax_PDU,
1971 { "AAIssuingDistPointSyntax", "x509ce.AAIssuingDistPointSyntax",
1972 FT_NONE, BASE_NONE, NULL, 0,
1973 "x509ce.AAIssuingDistPointSyntax", HFILL }},
1974 { &hf_x509ce_CertificateAssertion_PDU,
1975 { "CertificateAssertion", "x509ce.CertificateAssertion",
1976 FT_NONE, BASE_NONE, NULL, 0,
1977 "x509ce.CertificateAssertion", HFILL }},
1978 { &hf_x509ce_CertificatePairExactAssertion_PDU,
1979 { "CertificatePairExactAssertion", "x509ce.CertificatePairExactAssertion",
1980 FT_NONE, BASE_NONE, NULL, 0,
1981 "x509ce.CertificatePairExactAssertion", HFILL }},
1982 { &hf_x509ce_CertificatePairAssertion_PDU,
1983 { "CertificatePairAssertion", "x509ce.CertificatePairAssertion",
1984 FT_NONE, BASE_NONE, NULL, 0,
1985 "x509ce.CertificatePairAssertion", HFILL }},
1986 { &hf_x509ce_CertificateListExactAssertion_PDU,
1987 { "CertificateListExactAssertion", "x509ce.CertificateListExactAssertion",
1988 FT_NONE, BASE_NONE, NULL, 0,
1989 "x509ce.CertificateListExactAssertion", HFILL }},
1990 { &hf_x509ce_CertificateListAssertion_PDU,
1991 { "CertificateListAssertion", "x509ce.CertificateListAssertion",
1992 FT_NONE, BASE_NONE, NULL, 0,
1993 "x509ce.CertificateListAssertion", HFILL }},
1994 { &hf_x509ce_PkiPathMatchSyntax_PDU,
1995 { "PkiPathMatchSyntax", "x509ce.PkiPathMatchSyntax",
1996 FT_NONE, BASE_NONE, NULL, 0,
1997 "x509ce.PkiPathMatchSyntax", HFILL }},
1998 { &hf_x509ce_EnhancedCertificateAssertion_PDU,
1999 { "EnhancedCertificateAssertion", "x509ce.EnhancedCertificateAssertion",
2000 FT_NONE, BASE_NONE, NULL, 0,
2001 "x509ce.EnhancedCertificateAssertion", HFILL }},
2002 { &hf_x509ce_CertificateTemplate_PDU,
2003 { "CertificateTemplate", "x509ce.CertificateTemplate",
2004 FT_NONE, BASE_NONE, NULL, 0,
2005 "x509ce.CertificateTemplate", HFILL }},
2006 { &hf_x509ce_EntrustVersionInfo_PDU,
2007 { "EntrustVersionInfo", "x509ce.EntrustVersionInfo",
2008 FT_NONE, BASE_NONE, NULL, 0,
2009 "x509ce.EntrustVersionInfo", HFILL }},
2010 { &hf_x509ce_keyIdentifier,
2011 { "keyIdentifier", "x509ce.keyIdentifier",
2012 FT_BYTES, BASE_NONE, NULL, 0,
2013 "x509ce.KeyIdentifier", HFILL }},
2014 { &hf_x509ce_authorityCertIssuer,
2015 { "authorityCertIssuer", "x509ce.authorityCertIssuer",
2016 FT_UINT32, BASE_DEC, NULL, 0,
2017 "x509ce.GeneralNames", HFILL }},
2018 { &hf_x509ce_authorityCertSerialNumber,
2019 { "authorityCertSerialNumber", "x509ce.authorityCertSerialNumber",
2020 FT_INT32, BASE_DEC, NULL, 0,
2021 "x509af.CertificateSerialNumber", HFILL }},
2022 { &hf_x509ce_KeyPurposeIDs_item,
2023 { "KeyPurposeId", "x509ce.KeyPurposeId",
2024 FT_OID, BASE_NONE, NULL, 0,
2025 "x509ce.KeyPurposeId", HFILL }},
2026 { &hf_x509ce_notBefore,
2027 { "notBefore", "x509ce.notBefore",
2028 FT_STRING, BASE_NONE, NULL, 0,
2029 "x509ce.GeneralizedTime", HFILL }},
2030 { &hf_x509ce_notAfter,
2031 { "notAfter", "x509ce.notAfter",
2032 FT_STRING, BASE_NONE, NULL, 0,
2033 "x509ce.GeneralizedTime", HFILL }},
2034 { &hf_x509ce_CertificatePoliciesSyntax_item,
2035 { "PolicyInformation", "x509ce.PolicyInformation",
2036 FT_NONE, BASE_NONE, NULL, 0,
2037 "x509ce.PolicyInformation", HFILL }},
2038 { &hf_x509ce_policyIdentifier,
2039 { "policyIdentifier", "x509ce.policyIdentifier",
2040 FT_OID, BASE_NONE, NULL, 0,
2041 "x509ce.CertPolicyId", HFILL }},
2042 { &hf_x509ce_policyQualifiers,
2043 { "policyQualifiers", "x509ce.policyQualifiers",
2044 FT_UINT32, BASE_DEC, NULL, 0,
2045 "x509ce.SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo", HFILL }},
2046 { &hf_x509ce_policyQualifiers_item,
2047 { "PolicyQualifierInfo", "x509ce.PolicyQualifierInfo",
2048 FT_NONE, BASE_NONE, NULL, 0,
2049 "x509ce.PolicyQualifierInfo", HFILL }},
2050 { &hf_x509ce_policyQualifierId,
2051 { "policyQualifierId", "x509ce.policyQualifierId",
2052 FT_OID, BASE_NONE, NULL, 0,
2053 "x509ce.T_policyQualifierId", HFILL }},
2054 { &hf_x509ce_qualifier,
2055 { "qualifier", "x509ce.qualifier",
2056 FT_NONE, BASE_NONE, NULL, 0,
2057 "x509ce.T_qualifier", HFILL }},
2058 { &hf_x509ce_PolicyMappingsSyntax_item,
2059 { "PolicyMappingsSyntax item", "x509ce.PolicyMappingsSyntax_item",
2060 FT_NONE, BASE_NONE, NULL, 0,
2061 "x509ce.PolicyMappingsSyntax_item", HFILL }},
2062 { &hf_x509ce_issuerDomainPolicy,
2063 { "issuerDomainPolicy", "x509ce.issuerDomainPolicy",
2064 FT_OID, BASE_NONE, NULL, 0,
2065 "x509ce.CertPolicyId", HFILL }},
2066 { &hf_x509ce_subjectDomainPolicy,
2067 { "subjectDomainPolicy", "x509ce.subjectDomainPolicy",
2068 FT_OID, BASE_NONE, NULL, 0,
2069 "x509ce.CertPolicyId", HFILL }},
2070 { &hf_x509ce_GeneralNames_item,
2071 { "GeneralName", "x509ce.GeneralName",
2072 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2073 "x509ce.GeneralName", HFILL }},
2074 { &hf_x509ce_otherName,
2075 { "otherName", "x509ce.otherName",
2076 FT_NONE, BASE_NONE, NULL, 0,
2077 "x509ce.OtherName", HFILL }},
2078 { &hf_x509ce_rfc822Name,
2079 { "rfc822Name", "x509ce.rfc822Name",
2080 FT_STRING, BASE_NONE, NULL, 0,
2081 "x509ce.IA5String", HFILL }},
2082 { &hf_x509ce_dNSName,
2083 { "dNSName", "x509ce.dNSName",
2084 FT_STRING, BASE_NONE, NULL, 0,
2085 "x509ce.IA5String", HFILL }},
2086 { &hf_x509ce_x400Address,
2087 { "x400Address", "x509ce.x400Address",
2088 FT_NONE, BASE_NONE, NULL, 0,
2089 "x411.ORAddress", HFILL }},
2090 { &hf_x509ce_directoryName,
2091 { "directoryName", "x509ce.directoryName",
2092 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2093 "x509if.Name", HFILL }},
2094 { &hf_x509ce_ediPartyName,
2095 { "ediPartyName", "x509ce.ediPartyName",
2096 FT_NONE, BASE_NONE, NULL, 0,
2097 "x509ce.EDIPartyName", HFILL }},
2098 { &hf_x509ce_uniformResourceIdentifier,
2099 { "uniformResourceIdentifier", "x509ce.uniformResourceIdentifier",
2100 FT_STRING, BASE_NONE, NULL, 0,
2101 "x509ce.T_uniformResourceIdentifier", HFILL }},
2102 { &hf_x509ce_iPAddress,
2103 { "iPAddress", "x509ce.iPAddress",
2104 FT_BYTES, BASE_NONE, NULL, 0,
2105 "x509ce.T_iPAddress", HFILL }},
2106 { &hf_x509ce_registeredID,
2107 { "registeredID", "x509ce.registeredID",
2108 FT_OID, BASE_NONE, NULL, 0,
2109 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2110 { &hf_x509ce_type_id,
2111 { "type-id", "x509ce.type_id",
2112 FT_OID, BASE_NONE, NULL, 0,
2113 "x509ce.OtherNameType", HFILL }},
2115 { "value", "x509ce.value",
2116 FT_NONE, BASE_NONE, NULL, 0,
2117 "x509ce.OtherNameValue", HFILL }},
2118 { &hf_x509ce_nameAssigner,
2119 { "nameAssigner", "x509ce.nameAssigner",
2120 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
2121 "x509sat.DirectoryString", HFILL }},
2122 { &hf_x509ce_partyName,
2123 { "partyName", "x509ce.partyName",
2124 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
2125 "x509sat.DirectoryString", HFILL }},
2126 { &hf_x509ce_AttributesSyntax_item,
2127 { "Attribute", "x509ce.Attribute",
2128 FT_NONE, BASE_NONE, NULL, 0,
2129 "x509if.Attribute", HFILL }},
2131 { "cA", "x509ce.cA",
2132 FT_BOOLEAN, BASE_NONE, NULL, 0,
2133 "x509ce.BOOLEAN", HFILL }},
2134 { &hf_x509ce_pathLenConstraint,
2135 { "pathLenConstraint", "x509ce.pathLenConstraint",
2136 FT_UINT32, BASE_DEC, NULL, 0,
2137 "x509ce.INTEGER_0_MAX", HFILL }},
2138 { &hf_x509ce_permittedSubtrees,
2139 { "permittedSubtrees", "x509ce.permittedSubtrees",
2140 FT_UINT32, BASE_DEC, NULL, 0,
2141 "x509ce.GeneralSubtrees", HFILL }},
2142 { &hf_x509ce_excludedSubtrees,
2143 { "excludedSubtrees", "x509ce.excludedSubtrees",
2144 FT_UINT32, BASE_DEC, NULL, 0,
2145 "x509ce.GeneralSubtrees", HFILL }},
2146 { &hf_x509ce_GeneralSubtrees_item,
2147 { "GeneralSubtree", "x509ce.GeneralSubtree",
2148 FT_NONE, BASE_NONE, NULL, 0,
2149 "x509ce.GeneralSubtree", HFILL }},
2151 { "base", "x509ce.base",
2152 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2153 "x509ce.GeneralName", HFILL }},
2154 { &hf_x509ce_minimum,
2155 { "minimum", "x509ce.minimum",
2156 FT_UINT32, BASE_DEC, NULL, 0,
2157 "x509ce.BaseDistance", HFILL }},
2158 { &hf_x509ce_maximum,
2159 { "maximum", "x509ce.maximum",
2160 FT_UINT32, BASE_DEC, NULL, 0,
2161 "x509ce.BaseDistance", HFILL }},
2162 { &hf_x509ce_requireExplicitPolicy,
2163 { "requireExplicitPolicy", "x509ce.requireExplicitPolicy",
2164 FT_UINT32, BASE_DEC, NULL, 0,
2165 "x509ce.SkipCerts", HFILL }},
2166 { &hf_x509ce_inhibitPolicyMapping,
2167 { "inhibitPolicyMapping", "x509ce.inhibitPolicyMapping",
2168 FT_UINT32, BASE_DEC, NULL, 0,
2169 "x509ce.SkipCerts", HFILL }},
2170 { &hf_x509ce_CRLScopeSyntax_item,
2171 { "PerAuthorityScope", "x509ce.PerAuthorityScope",
2172 FT_NONE, BASE_NONE, NULL, 0,
2173 "x509ce.PerAuthorityScope", HFILL }},
2174 { &hf_x509ce_authorityName,
2175 { "authorityName", "x509ce.authorityName",
2176 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2177 "x509ce.GeneralName", HFILL }},
2178 { &hf_x509ce_distributionPoint,
2179 { "distributionPoint", "x509ce.distributionPoint",
2180 FT_UINT32, BASE_DEC, VALS(x509ce_DistributionPointName_vals), 0,
2181 "x509ce.DistributionPointName", HFILL }},
2182 { &hf_x509ce_onlyContains,
2183 { "onlyContains", "x509ce.onlyContains",
2184 FT_BYTES, BASE_NONE, NULL, 0,
2185 "x509ce.OnlyCertificateTypes", HFILL }},
2186 { &hf_x509ce_onlySomeReasons,
2187 { "onlySomeReasons", "x509ce.onlySomeReasons",
2188 FT_BYTES, BASE_NONE, NULL, 0,
2189 "x509ce.ReasonFlags", HFILL }},
2190 { &hf_x509ce_serialNumberRange,
2191 { "serialNumberRange", "x509ce.serialNumberRange",
2192 FT_NONE, BASE_NONE, NULL, 0,
2193 "x509ce.NumberRange", HFILL }},
2194 { &hf_x509ce_subjectKeyIdRange,
2195 { "subjectKeyIdRange", "x509ce.subjectKeyIdRange",
2196 FT_NONE, BASE_NONE, NULL, 0,
2197 "x509ce.NumberRange", HFILL }},
2198 { &hf_x509ce_nameSubtrees,
2199 { "nameSubtrees", "x509ce.nameSubtrees",
2200 FT_UINT32, BASE_DEC, NULL, 0,
2201 "x509ce.GeneralNames", HFILL }},
2202 { &hf_x509ce_baseRevocationInfo,
2203 { "baseRevocationInfo", "x509ce.baseRevocationInfo",
2204 FT_NONE, BASE_NONE, NULL, 0,
2205 "x509ce.BaseRevocationInfo", HFILL }},
2206 { &hf_x509ce_startingNumber,
2207 { "startingNumber", "x509ce.startingNumber",
2208 FT_INT32, BASE_DEC, NULL, 0,
2209 "x509ce.INTEGER", HFILL }},
2210 { &hf_x509ce_endingNumber,
2211 { "endingNumber", "x509ce.endingNumber",
2212 FT_INT32, BASE_DEC, NULL, 0,
2213 "x509ce.INTEGER", HFILL }},
2214 { &hf_x509ce_modulus,
2215 { "modulus", "x509ce.modulus",
2216 FT_INT32, BASE_DEC, NULL, 0,
2217 "x509ce.INTEGER", HFILL }},
2218 { &hf_x509ce_cRLStreamIdentifier,
2219 { "cRLStreamIdentifier", "x509ce.cRLStreamIdentifier",
2220 FT_UINT32, BASE_DEC, NULL, 0,
2221 "x509ce.CRLStreamIdentifier", HFILL }},
2222 { &hf_x509ce_cRLNumber,
2223 { "cRLNumber", "x509ce.cRLNumber",
2224 FT_UINT32, BASE_DEC, NULL, 0,
2225 "x509ce.CRLNumber", HFILL }},
2226 { &hf_x509ce_baseThisUpdate,
2227 { "baseThisUpdate", "x509ce.baseThisUpdate",
2228 FT_STRING, BASE_NONE, NULL, 0,
2229 "x509ce.GeneralizedTime", HFILL }},
2230 { &hf_x509ce_StatusReferrals_item,
2231 { "StatusReferral", "x509ce.StatusReferral",
2232 FT_UINT32, BASE_DEC, VALS(x509ce_StatusReferral_vals), 0,
2233 "x509ce.StatusReferral", HFILL }},
2234 { &hf_x509ce_cRLReferral,
2235 { "cRLReferral", "x509ce.cRLReferral",
2236 FT_NONE, BASE_NONE, NULL, 0,
2237 "x509ce.CRLReferral", HFILL }},
2238 { &hf_x509ce_crlr_issuer,
2239 { "issuer", "x509ce.issuer",
2240 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2241 "x509ce.GeneralName", HFILL }},
2242 { &hf_x509ce_location,
2243 { "location", "x509ce.location",
2244 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2245 "x509ce.GeneralName", HFILL }},
2246 { &hf_x509ce_deltaRefInfo,
2247 { "deltaRefInfo", "x509ce.deltaRefInfo",
2248 FT_NONE, BASE_NONE, NULL, 0,
2249 "x509ce.DeltaRefInfo", HFILL }},
2250 { &hf_x509ce_cRLScope,
2251 { "cRLScope", "x509ce.cRLScope",
2252 FT_UINT32, BASE_DEC, NULL, 0,
2253 "x509ce.CRLScopeSyntax", HFILL }},
2254 { &hf_x509ce_lastUpdate,
2255 { "lastUpdate", "x509ce.lastUpdate",
2256 FT_STRING, BASE_NONE, NULL, 0,
2257 "x509ce.GeneralizedTime", HFILL }},
2258 { &hf_x509ce_lastChangedCRL,
2259 { "lastChangedCRL", "x509ce.lastChangedCRL",
2260 FT_STRING, BASE_NONE, NULL, 0,
2261 "x509ce.GeneralizedTime", HFILL }},
2262 { &hf_x509ce_deltaLocation,
2263 { "deltaLocation", "x509ce.deltaLocation",
2264 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2265 "x509ce.GeneralName", HFILL }},
2266 { &hf_x509ce_lastDelta,
2267 { "lastDelta", "x509ce.lastDelta",
2268 FT_STRING, BASE_NONE, NULL, 0,
2269 "x509ce.GeneralizedTime", HFILL }},
2270 { &hf_x509ce_nextDelta,
2271 { "nextDelta", "x509ce.nextDelta",
2272 FT_STRING, BASE_NONE, NULL, 0,
2273 "x509ce.GeneralizedTime", HFILL }},
2274 { &hf_x509ce_CRLDistPointsSyntax_item,
2275 { "DistributionPoint", "x509ce.DistributionPoint",
2276 FT_NONE, BASE_NONE, NULL, 0,
2277 "x509ce.DistributionPoint", HFILL }},
2278 { &hf_x509ce_reasons,
2279 { "reasons", "x509ce.reasons",
2280 FT_BYTES, BASE_NONE, NULL, 0,
2281 "x509ce.ReasonFlags", HFILL }},
2282 { &hf_x509ce_cRLIssuer,
2283 { "cRLIssuer", "x509ce.cRLIssuer",
2284 FT_UINT32, BASE_DEC, NULL, 0,
2285 "x509ce.GeneralNames", HFILL }},
2286 { &hf_x509ce_fullName,
2287 { "fullName", "x509ce.fullName",
2288 FT_UINT32, BASE_DEC, NULL, 0,
2289 "x509ce.GeneralNames", HFILL }},
2290 { &hf_x509ce_nameRelativeToCRLIssuer,
2291 { "nameRelativeToCRLIssuer", "x509ce.nameRelativeToCRLIssuer",
2292 FT_UINT32, BASE_DEC, NULL, 0,
2293 "x509if.RelativeDistinguishedName", HFILL }},
2294 { &hf_x509ce_onlyContainsUserPublicKeyCerts,
2295 { "onlyContainsUserPublicKeyCerts", "x509ce.onlyContainsUserPublicKeyCerts",
2296 FT_BOOLEAN, BASE_NONE, NULL, 0,
2297 "x509ce.BOOLEAN", HFILL }},
2298 { &hf_x509ce_onlyContainsCACerts,
2299 { "onlyContainsCACerts", "x509ce.onlyContainsCACerts",
2300 FT_BOOLEAN, BASE_NONE, NULL, 0,
2301 "x509ce.BOOLEAN", HFILL }},
2302 { &hf_x509ce_indirectCRL,
2303 { "indirectCRL", "x509ce.indirectCRL",
2304 FT_BOOLEAN, BASE_NONE, NULL, 0,
2305 "x509ce.BOOLEAN", HFILL }},
2306 { &hf_x509ce_ToBeRevokedSyntax_item,
2307 { "ToBeRevokedGroup", "x509ce.ToBeRevokedGroup",
2308 FT_NONE, BASE_NONE, NULL, 0,
2309 "x509ce.ToBeRevokedGroup", HFILL }},
2310 { &hf_x509ce_certificateIssuer,
2311 { "certificateIssuer", "x509ce.certificateIssuer",
2312 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2313 "x509ce.GeneralName", HFILL }},
2314 { &hf_x509ce_reasonInfo,
2315 { "reasonInfo", "x509ce.reasonInfo",
2316 FT_NONE, BASE_NONE, NULL, 0,
2317 "x509ce.ReasonInfo", HFILL }},
2318 { &hf_x509ce_revocationTime,
2319 { "revocationTime", "x509ce.revocationTime",
2320 FT_STRING, BASE_NONE, NULL, 0,
2321 "x509ce.GeneralizedTime", HFILL }},
2322 { &hf_x509ce_certificateGroup,
2323 { "certificateGroup", "x509ce.certificateGroup",
2324 FT_UINT32, BASE_DEC, VALS(x509ce_CertificateGroup_vals), 0,
2325 "x509ce.CertificateGroup", HFILL }},
2326 { &hf_x509ce_reasonCode,
2327 { "reasonCode", "x509ce.reasonCode",
2328 FT_UINT32, BASE_DEC, VALS(x509ce_CRLReason_vals), 0,
2329 "x509ce.CRLReason", HFILL }},
2330 { &hf_x509ce_holdInstructionCode,
2331 { "holdInstructionCode", "x509ce.holdInstructionCode",
2332 FT_OID, BASE_NONE, NULL, 0,
2333 "x509ce.HoldInstruction", HFILL }},
2334 { &hf_x509ce_serialNumbers,
2335 { "serialNumbers", "x509ce.serialNumbers",
2336 FT_UINT32, BASE_DEC, NULL, 0,
2337 "x509ce.CertificateSerialNumbers", HFILL }},
2338 { &hf_x509ce_serialNumberRange_01,
2339 { "serialNumberRange", "x509ce.serialNumberRange",
2340 FT_NONE, BASE_NONE, NULL, 0,
2341 "x509ce.CertificateGroupNumberRange", HFILL }},
2342 { &hf_x509ce_nameSubtree,
2343 { "nameSubtree", "x509ce.nameSubtree",
2344 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2345 "x509ce.GeneralName", HFILL }},
2346 { &hf_x509ce_CertificateSerialNumbers_item,
2347 { "CertificateSerialNumber", "x509ce.CertificateSerialNumber",
2348 FT_INT32, BASE_DEC, NULL, 0,
2349 "x509af.CertificateSerialNumber", HFILL }},
2350 { &hf_x509ce_RevokedGroupsSyntax_item,
2351 { "RevokedGroup", "x509ce.RevokedGroup",
2352 FT_NONE, BASE_NONE, NULL, 0,
2353 "x509ce.RevokedGroup", HFILL }},
2354 { &hf_x509ce_invalidityDate,
2355 { "invalidityDate", "x509ce.invalidityDate",
2356 FT_STRING, BASE_NONE, NULL, 0,
2357 "x509ce.GeneralizedTime", HFILL }},
2358 { &hf_x509ce_revokedcertificateGroup,
2359 { "revokedcertificateGroup", "x509ce.revokedcertificateGroup",
2360 FT_UINT32, BASE_DEC, VALS(x509ce_RevokedCertificateGroup_vals), 0,
2361 "x509ce.RevokedCertificateGroup", HFILL }},
2362 { &hf_x509ce_containsUserAttributeCerts,
2363 { "containsUserAttributeCerts", "x509ce.containsUserAttributeCerts",
2364 FT_BOOLEAN, BASE_NONE, NULL, 0,
2365 "x509ce.BOOLEAN", HFILL }},
2366 { &hf_x509ce_containsAACerts,
2367 { "containsAACerts", "x509ce.containsAACerts",
2368 FT_BOOLEAN, BASE_NONE, NULL, 0,
2369 "x509ce.BOOLEAN", HFILL }},
2370 { &hf_x509ce_containsSOAPublicKeyCerts,
2371 { "containsSOAPublicKeyCerts", "x509ce.containsSOAPublicKeyCerts",
2372 FT_BOOLEAN, BASE_NONE, NULL, 0,
2373 "x509ce.BOOLEAN", HFILL }},
2374 { &hf_x509ce_serialNumber,
2375 { "serialNumber", "x509ce.serialNumber",
2376 FT_INT32, BASE_DEC, NULL, 0,
2377 "x509af.CertificateSerialNumber", HFILL }},
2378 { &hf_x509ce_issuer,
2379 { "issuer", "x509ce.issuer",
2380 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2381 "x509if.Name", HFILL }},
2382 { &hf_x509ce_subjectKeyIdentifier,
2383 { "subjectKeyIdentifier", "x509ce.subjectKeyIdentifier",
2384 FT_BYTES, BASE_NONE, NULL, 0,
2385 "x509ce.SubjectKeyIdentifier", HFILL }},
2386 { &hf_x509ce_authorityKeyIdentifier,
2387 { "authorityKeyIdentifier", "x509ce.authorityKeyIdentifier",
2388 FT_NONE, BASE_NONE, NULL, 0,
2389 "x509ce.AuthorityKeyIdentifier", HFILL }},
2390 { &hf_x509ce_certificateValid,
2391 { "certificateValid", "x509ce.certificateValid",
2392 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2393 "x509af.Time", HFILL }},
2394 { &hf_x509ce_privateKeyValid,
2395 { "privateKeyValid", "x509ce.privateKeyValid",
2396 FT_STRING, BASE_NONE, NULL, 0,
2397 "x509ce.GeneralizedTime", HFILL }},
2398 { &hf_x509ce_subjectPublicKeyAlgID,
2399 { "subjectPublicKeyAlgID", "x509ce.subjectPublicKeyAlgID",
2400 FT_OID, BASE_NONE, NULL, 0,
2401 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2402 { &hf_x509ce_keyUsage,
2403 { "keyUsage", "x509ce.keyUsage",
2404 FT_BYTES, BASE_NONE, NULL, 0,
2405 "x509ce.KeyUsage", HFILL }},
2406 { &hf_x509ce_subjectAltName,
2407 { "subjectAltName", "x509ce.subjectAltName",
2408 FT_UINT32, BASE_DEC, VALS(x509ce_AltNameType_vals), 0,
2409 "x509ce.AltNameType", HFILL }},
2410 { &hf_x509ce_policy,
2411 { "policy", "x509ce.policy",
2412 FT_UINT32, BASE_DEC, NULL, 0,
2413 "x509ce.CertPolicySet", HFILL }},
2414 { &hf_x509ce_pathToName,
2415 { "pathToName", "x509ce.pathToName",
2416 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2417 "x509if.Name", HFILL }},
2418 { &hf_x509ce_subject,
2419 { "subject", "x509ce.subject",
2420 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2421 "x509if.Name", HFILL }},
2422 { &hf_x509ce_nameConstraints,
2423 { "nameConstraints", "x509ce.nameConstraints",
2424 FT_NONE, BASE_NONE, NULL, 0,
2425 "x509ce.NameConstraintsSyntax", HFILL }},
2426 { &hf_x509ce_builtinNameForm,
2427 { "builtinNameForm", "x509ce.builtinNameForm",
2428 FT_UINT32, BASE_DEC, VALS(x509ce_T_builtinNameForm_vals), 0,
2429 "x509ce.T_builtinNameForm", HFILL }},
2430 { &hf_x509ce_otherNameForm,
2431 { "otherNameForm", "x509ce.otherNameForm",
2432 FT_OID, BASE_NONE, NULL, 0,
2433 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2434 { &hf_x509ce_CertPolicySet_item,
2435 { "CertPolicyId", "x509ce.CertPolicyId",
2436 FT_OID, BASE_NONE, NULL, 0,
2437 "x509ce.CertPolicyId", HFILL }},
2438 { &hf_x509ce_cpea_issuedToThisCAAssertion,
2439 { "issuedToThisCAAssertion", "x509ce.issuedToThisCAAssertion",
2440 FT_NONE, BASE_NONE, NULL, 0,
2441 "x509ce.CertificateExactAssertion", HFILL }},
2442 { &hf_x509ce_cpea_issuedByThisCAAssertion,
2443 { "issuedByThisCAAssertion", "x509ce.issuedByThisCAAssertion",
2444 FT_NONE, BASE_NONE, NULL, 0,
2445 "x509ce.CertificateExactAssertion", HFILL }},
2446 { &hf_x509ce_issuedToThisCAAssertion,
2447 { "issuedToThisCAAssertion", "x509ce.issuedToThisCAAssertion",
2448 FT_NONE, BASE_NONE, NULL, 0,
2449 "x509ce.CertificateAssertion", HFILL }},
2450 { &hf_x509ce_issuedByThisCAAssertion,
2451 { "issuedByThisCAAssertion", "x509ce.issuedByThisCAAssertion",
2452 FT_NONE, BASE_NONE, NULL, 0,
2453 "x509ce.CertificateAssertion", HFILL }},
2454 { &hf_x509ce_thisUpdate,
2455 { "thisUpdate", "x509ce.thisUpdate",
2456 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2457 "x509af.Time", HFILL }},
2458 { &hf_x509ce_minCRLNumber,
2459 { "minCRLNumber", "x509ce.minCRLNumber",
2460 FT_UINT32, BASE_DEC, NULL, 0,
2461 "x509ce.CRLNumber", HFILL }},
2462 { &hf_x509ce_maxCRLNumber,
2463 { "maxCRLNumber", "x509ce.maxCRLNumber",
2464 FT_UINT32, BASE_DEC, NULL, 0,
2465 "x509ce.CRLNumber", HFILL }},
2466 { &hf_x509ce_reasonFlags,
2467 { "reasonFlags", "x509ce.reasonFlags",
2468 FT_BYTES, BASE_NONE, NULL, 0,
2469 "x509ce.ReasonFlags", HFILL }},
2470 { &hf_x509ce_dateAndTime,
2471 { "dateAndTime", "x509ce.dateAndTime",
2472 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2473 "x509af.Time", HFILL }},
2474 { &hf_x509ce_firstIssuer,
2475 { "firstIssuer", "x509ce.firstIssuer",
2476 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2477 "x509if.Name", HFILL }},
2478 { &hf_x509ce_lastSubject,
2479 { "lastSubject", "x509ce.lastSubject",
2480 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2481 "x509if.Name", HFILL }},
2482 { &hf_x509ce_subjectAltName_01,
2483 { "subjectAltName", "x509ce.subjectAltName",
2484 FT_NONE, BASE_NONE, NULL, 0,
2485 "x509ce.AltName", HFILL }},
2486 { &hf_x509ce_pathToName_01,
2487 { "pathToName", "x509ce.pathToName",
2488 FT_UINT32, BASE_DEC, NULL, 0,
2489 "x509ce.GeneralNames", HFILL }},
2490 { &hf_x509ce_altnameType,
2491 { "altnameType", "x509ce.altnameType",
2492 FT_UINT32, BASE_DEC, VALS(x509ce_AltNameType_vals), 0,
2493 "x509ce.AltNameType", HFILL }},
2494 { &hf_x509ce_altNameValue,
2495 { "altNameValue", "x509ce.altNameValue",
2496 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2497 "x509ce.GeneralName", HFILL }},
2498 { &hf_x509ce_templateID,
2499 { "templateID", "x509ce.templateID",
2500 FT_OID, BASE_NONE, NULL, 0,
2501 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2502 { &hf_x509ce_templateMajorVersion,
2503 { "templateMajorVersion", "x509ce.templateMajorVersion",
2504 FT_INT32, BASE_DEC, NULL, 0,
2505 "x509ce.INTEGER", HFILL }},
2506 { &hf_x509ce_templateMinorVersion,
2507 { "templateMinorVersion", "x509ce.templateMinorVersion",
2508 FT_INT32, BASE_DEC, NULL, 0,
2509 "x509ce.INTEGER", HFILL }},
2510 { &hf_x509ce_entrustVers,
2511 { "entrustVers", "x509ce.entrustVers",
2512 FT_STRING, BASE_NONE, NULL, 0,
2513 "x509ce.GeneralString", HFILL }},
2514 { &hf_x509ce_entrustVersInfoFlags,
2515 { "entrustVersInfoFlags", "x509ce.entrustVersInfoFlags",
2516 FT_BYTES, BASE_NONE, NULL, 0,
2517 "x509ce.EntrustInfoFlags", HFILL }},
2518 { &hf_x509ce_KeyUsage_digitalSignature,
2519 { "digitalSignature", "x509ce.digitalSignature",
2520 FT_BOOLEAN, 8, NULL, 0x80,
2522 { &hf_x509ce_KeyUsage_contentCommitment,
2523 { "contentCommitment", "x509ce.contentCommitment",
2524 FT_BOOLEAN, 8, NULL, 0x40,
2526 { &hf_x509ce_KeyUsage_keyEncipherment,
2527 { "keyEncipherment", "x509ce.keyEncipherment",
2528 FT_BOOLEAN, 8, NULL, 0x20,
2530 { &hf_x509ce_KeyUsage_dataEncipherment,
2531 { "dataEncipherment", "x509ce.dataEncipherment",
2532 FT_BOOLEAN, 8, NULL, 0x10,
2534 { &hf_x509ce_KeyUsage_keyAgreement,
2535 { "keyAgreement", "x509ce.keyAgreement",
2536 FT_BOOLEAN, 8, NULL, 0x08,
2538 { &hf_x509ce_KeyUsage_keyCertSign,
2539 { "keyCertSign", "x509ce.keyCertSign",
2540 FT_BOOLEAN, 8, NULL, 0x04,
2542 { &hf_x509ce_KeyUsage_cRLSign,
2543 { "cRLSign", "x509ce.cRLSign",
2544 FT_BOOLEAN, 8, NULL, 0x02,
2546 { &hf_x509ce_KeyUsage_encipherOnly,
2547 { "encipherOnly", "x509ce.encipherOnly",
2548 FT_BOOLEAN, 8, NULL, 0x01,
2550 { &hf_x509ce_KeyUsage_decipherOnly,
2551 { "decipherOnly", "x509ce.decipherOnly",
2552 FT_BOOLEAN, 8, NULL, 0x80,
2554 { &hf_x509ce_OnlyCertificateTypes_user,
2555 { "user", "x509ce.user",
2556 FT_BOOLEAN, 8, NULL, 0x80,
2558 { &hf_x509ce_OnlyCertificateTypes_authority,
2559 { "authority", "x509ce.authority",
2560 FT_BOOLEAN, 8, NULL, 0x40,
2562 { &hf_x509ce_OnlyCertificateTypes_attribute,
2563 { "attribute", "x509ce.attribute",
2564 FT_BOOLEAN, 8, NULL, 0x20,
2566 { &hf_x509ce_ReasonFlags_unused,
2567 { "unused", "x509ce.unused",
2568 FT_BOOLEAN, 8, NULL, 0x80,
2570 { &hf_x509ce_ReasonFlags_keyCompromise,
2571 { "keyCompromise", "x509ce.keyCompromise",
2572 FT_BOOLEAN, 8, NULL, 0x40,
2574 { &hf_x509ce_ReasonFlags_cACompromise,
2575 { "cACompromise", "x509ce.cACompromise",
2576 FT_BOOLEAN, 8, NULL, 0x20,
2578 { &hf_x509ce_ReasonFlags_affiliationChanged,
2579 { "affiliationChanged", "x509ce.affiliationChanged",
2580 FT_BOOLEAN, 8, NULL, 0x10,
2582 { &hf_x509ce_ReasonFlags_superseded,
2583 { "superseded", "x509ce.superseded",
2584 FT_BOOLEAN, 8, NULL, 0x08,
2586 { &hf_x509ce_ReasonFlags_cessationOfOperation,
2587 { "cessationOfOperation", "x509ce.cessationOfOperation",
2588 FT_BOOLEAN, 8, NULL, 0x04,
2590 { &hf_x509ce_ReasonFlags_certificateHold,
2591 { "certificateHold", "x509ce.certificateHold",
2592 FT_BOOLEAN, 8, NULL, 0x02,
2594 { &hf_x509ce_ReasonFlags_privilegeWithdrawn,
2595 { "privilegeWithdrawn", "x509ce.privilegeWithdrawn",
2596 FT_BOOLEAN, 8, NULL, 0x01,
2598 { &hf_x509ce_ReasonFlags_aACompromise,
2599 { "aACompromise", "x509ce.aACompromise",
2600 FT_BOOLEAN, 8, NULL, 0x80,
2602 { &hf_x509ce_EntrustInfoFlags_keyUpdateAllowed,
2603 { "keyUpdateAllowed", "x509ce.keyUpdateAllowed",
2604 FT_BOOLEAN, 8, NULL, 0x80,
2606 { &hf_x509ce_EntrustInfoFlags_newExtensions,
2607 { "newExtensions", "x509ce.newExtensions",
2608 FT_BOOLEAN, 8, NULL, 0x40,
2610 { &hf_x509ce_EntrustInfoFlags_pKIXCertificate,
2611 { "pKIXCertificate", "x509ce.pKIXCertificate",
2612 FT_BOOLEAN, 8, NULL, 0x20,
2614 { &hf_x509ce_EntrustInfoFlags_enterpriseCategory,
2615 { "enterpriseCategory", "x509ce.enterpriseCategory",
2616 FT_BOOLEAN, 8, NULL, 0x10,
2618 { &hf_x509ce_EntrustInfoFlags_webCategory,
2619 { "webCategory", "x509ce.webCategory",
2620 FT_BOOLEAN, 8, NULL, 0x08,
2622 { &hf_x509ce_EntrustInfoFlags_sETCategory,
2623 { "sETCategory", "x509ce.sETCategory",
2624 FT_BOOLEAN, 8, NULL, 0x04,
2627 /*--- End of included file: packet-x509ce-hfarr.c ---*/
2628 #line 101 "packet-x509ce-template.c"
2631 /* List of subtrees */
2632 static gint *ett[] = {
2634 /*--- Included file: packet-x509ce-ettarr.c ---*/
2635 #line 1 "packet-x509ce-ettarr.c"
2636 &ett_x509ce_AuthorityKeyIdentifier,
2637 &ett_x509ce_KeyUsage,
2638 &ett_x509ce_KeyPurposeIDs,
2639 &ett_x509ce_PrivateKeyUsagePeriod,
2640 &ett_x509ce_CertificatePoliciesSyntax,
2641 &ett_x509ce_PolicyInformation,
2642 &ett_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo,
2643 &ett_x509ce_PolicyQualifierInfo,
2644 &ett_x509ce_PolicyMappingsSyntax,
2645 &ett_x509ce_PolicyMappingsSyntax_item,
2646 &ett_x509ce_GeneralNames,
2647 &ett_x509ce_GeneralName,
2648 &ett_x509ce_OtherName,
2649 &ett_x509ce_EDIPartyName,
2650 &ett_x509ce_AttributesSyntax,
2651 &ett_x509ce_BasicConstraintsSyntax,
2652 &ett_x509ce_NameConstraintsSyntax,
2653 &ett_x509ce_GeneralSubtrees,
2654 &ett_x509ce_GeneralSubtree,
2655 &ett_x509ce_PolicyConstraintsSyntax,
2656 &ett_x509ce_CRLScopeSyntax,
2657 &ett_x509ce_PerAuthorityScope,
2658 &ett_x509ce_OnlyCertificateTypes,
2659 &ett_x509ce_NumberRange,
2660 &ett_x509ce_BaseRevocationInfo,
2661 &ett_x509ce_StatusReferrals,
2662 &ett_x509ce_StatusReferral,
2663 &ett_x509ce_CRLReferral,
2664 &ett_x509ce_DeltaRefInfo,
2665 &ett_x509ce_DeltaInformation,
2666 &ett_x509ce_CRLDistPointsSyntax,
2667 &ett_x509ce_DistributionPoint,
2668 &ett_x509ce_DistributionPointName,
2669 &ett_x509ce_ReasonFlags,
2670 &ett_x509ce_IssuingDistPointSyntax,
2671 &ett_x509ce_ToBeRevokedSyntax,
2672 &ett_x509ce_ToBeRevokedGroup,
2673 &ett_x509ce_ReasonInfo,
2674 &ett_x509ce_CertificateGroup,
2675 &ett_x509ce_CertificateGroupNumberRange,
2676 &ett_x509ce_CertificateSerialNumbers,
2677 &ett_x509ce_RevokedGroupsSyntax,
2678 &ett_x509ce_RevokedGroup,
2679 &ett_x509ce_RevokedCertificateGroup,
2680 &ett_x509ce_AAIssuingDistPointSyntax,
2681 &ett_x509ce_CertificateExactAssertion,
2682 &ett_x509ce_CertificateAssertion,
2683 &ett_x509ce_AltNameType,
2684 &ett_x509ce_CertPolicySet,
2685 &ett_x509ce_CertificatePairExactAssertion,
2686 &ett_x509ce_CertificatePairAssertion,
2687 &ett_x509ce_CertificateListExactAssertion,
2688 &ett_x509ce_CertificateListAssertion,
2689 &ett_x509ce_PkiPathMatchSyntax,
2690 &ett_x509ce_EnhancedCertificateAssertion,
2691 &ett_x509ce_AltName,
2692 &ett_x509ce_CertificateTemplate,
2693 &ett_x509ce_EntrustVersionInfo,
2694 &ett_x509ce_EntrustInfoFlags,
2696 /*--- End of included file: packet-x509ce-ettarr.c ---*/
2697 #line 106 "packet-x509ce-template.c"
2700 /* Register protocol */
2701 proto_x509ce = proto_register_protocol(PNAME, PSNAME, PFNAME);
2703 /* Register fields and subtrees */
2704 proto_register_field_array(proto_x509ce, hf, array_length(hf));
2705 proto_register_subtree_array(ett, array_length(ett));
2710 /*--- proto_reg_handoff_x509ce -------------------------------------------*/
2711 void proto_reg_handoff_x509ce(void) {
2713 /*--- Included file: packet-x509ce-dis-tab.c ---*/
2714 #line 1 "packet-x509ce-dis-tab.c"
2715 register_ber_oid_dissector("2.5.29.9", dissect_AttributesSyntax_PDU, proto_x509ce, "id-ce-subjectDirectoryAttributes");
2716 register_ber_oid_dissector("2.5.29.14", dissect_SubjectKeyIdentifier_PDU, proto_x509ce, "id-ce-subjectKeyIdentifier");
2717 register_ber_oid_dissector("2.5.29.15", dissect_KeyUsage_PDU, proto_x509ce, "id-ce-keyUsage");
2718 register_ber_oid_dissector("2.5.29.16", dissect_PrivateKeyUsagePeriod_PDU, proto_x509ce, "id-ce-privateKeyUsagePeriod");
2719 register_ber_oid_dissector("2.5.29.17", dissect_GeneralNames_PDU, proto_x509ce, "id-ce-subjectAltName");
2720 register_ber_oid_dissector("2.5.29.18", dissect_GeneralNames_PDU, proto_x509ce, "id-ce-issuerAltName");
2721 register_ber_oid_dissector("2.5.29.19", dissect_BasicConstraintsSyntax_PDU, proto_x509ce, "id-ce-basicConstraints");
2722 register_ber_oid_dissector("2.5.29.20", dissect_CRLNumber_PDU, proto_x509ce, "id-ce-cRLNumber");
2723 register_ber_oid_dissector("2.5.29.21", dissect_CRLReason_PDU, proto_x509ce, "id-ce-reasonCode");
2724 register_ber_oid_dissector("2.5.29.23", dissect_HoldInstruction_PDU, proto_x509ce, "id-ce-instructionCode");
2725 register_ber_oid_dissector("2.5.29.27", dissect_BaseCRLNumber_PDU, proto_x509ce, "id-ce-deltaCRLIndicator");
2726 register_ber_oid_dissector("2.5.29.28", dissect_IssuingDistPointSyntax_PDU, proto_x509ce, "id-ce-issuingDistributionPoint");
2727 register_ber_oid_dissector("2.5.29.29", dissect_GeneralNames_PDU, proto_x509ce, "id-ce-certificateIssuer");
2728 register_ber_oid_dissector("2.5.29.30", dissect_NameConstraintsSyntax_PDU, proto_x509ce, "id-ce-nameConstraints");
2729 register_ber_oid_dissector("2.5.29.31", dissect_CRLDistPointsSyntax_PDU, proto_x509ce, "id-ce-cRLDistributionPoints");
2730 register_ber_oid_dissector("2.5.29.32", dissect_CertificatePoliciesSyntax_PDU, proto_x509ce, "id-ce-certificatePolicies");
2731 register_ber_oid_dissector("2.5.29.33", dissect_PolicyMappingsSyntax_PDU, proto_x509ce, "id-ce-policyMappings");
2732 register_ber_oid_dissector("2.5.29.35", dissect_AuthorityKeyIdentifier_PDU, proto_x509ce, "id-ce-authorityKeyIdentifier");
2733 register_ber_oid_dissector("2.5.29.36", dissect_PolicyConstraintsSyntax_PDU, proto_x509ce, "id-ce-policyConstraints");
2734 register_ber_oid_dissector("2.5.29.37", dissect_KeyPurposeIDs_PDU, proto_x509ce, "id-ce-extKeyUsage");
2735 register_ber_oid_dissector("2.5.29.40", dissect_CRLStreamIdentifier_PDU, proto_x509ce, "id-ce-cRLStreamIdentifier");
2736 register_ber_oid_dissector("2.5.29.44", dissect_CRLScopeSyntax_PDU, proto_x509ce, "id-ce-cRLScope");
2737 register_ber_oid_dissector("2.5.29.45", dissect_StatusReferrals_PDU, proto_x509ce, "id-ce-statusReferrals");
2738 register_ber_oid_dissector("2.5.29.46", dissect_CRLDistPointsSyntax_PDU, proto_x509ce, "id-ce-freshestCRL");
2739 register_ber_oid_dissector("2.5.29.47", dissect_OrderedListSyntax_PDU, proto_x509ce, "id-ce-orderedList");
2740 register_ber_oid_dissector("2.5.29.53", dissect_DeltaInformation_PDU, proto_x509ce, "id-ce-deltaInfo");
2741 register_ber_oid_dissector("2.5.29.54", dissect_SkipCerts_PDU, proto_x509ce, "id-ce-inhibitAnyPolicy");
2742 register_ber_oid_dissector("2.5.29.58", dissect_ToBeRevokedSyntax_PDU, proto_x509ce, "id-ce-toBeRevoked");
2743 register_ber_oid_dissector("2.5.29.59", dissect_RevokedGroupsSyntax_PDU, proto_x509ce, "id-ce-RevokedGroups");
2744 register_ber_oid_dissector("2.5.29.60", dissect_ExpiredCertsOnCRL_PDU, proto_x509ce, "id-ce-expiredCertsOnCRL");
2745 register_ber_oid_dissector("2.5.29.61", dissect_AAIssuingDistPointSyntax_PDU, proto_x509ce, "id-ce-aAissuingDistributionPoint");
2746 register_ber_oid_dissector("2.5.13.35", dissect_CertificateAssertion_PDU, proto_x509ce, "id-mr-certificateMatch");
2747 register_ber_oid_dissector("2.5.13.36", dissect_CertificatePairExactAssertion_PDU, proto_x509ce, "id-mr-certificatePairExactMatch");
2748 register_ber_oid_dissector("2.5.13.37", dissect_CertificatePairAssertion_PDU, proto_x509ce, "id-mr-certificatePairMatch");
2749 register_ber_oid_dissector("2.5.13.38", dissect_CertificateListExactAssertion_PDU, proto_x509ce, "id-mr-certificateListExactMatch");
2750 register_ber_oid_dissector("2.5.13.39", dissect_CertificateListAssertion_PDU, proto_x509ce, "id-mr-certificateListMatch");
2751 register_ber_oid_dissector("2.5.13.62", dissect_PkiPathMatchSyntax_PDU, proto_x509ce, "id-mr-pkiPathMatch");
2752 register_ber_oid_dissector("2.5.13.65", dissect_EnhancedCertificateAssertion_PDU, proto_x509ce, "id-mr-enhancedCertificateMatch");
2753 register_ber_oid_dissector("1.3.6.1.4.1.311.21.7", dissect_CertificateTemplate_PDU, proto_x509ce, "id-ms-certificate-template");
2754 register_ber_oid_dissector("1.3.6.1.4.1.311.21.10", dissect_CertificatePoliciesSyntax_PDU, proto_x509ce, "id-ms-application-certificate-policies");
2755 register_ber_oid_dissector("1.2.840.113533.7.65.0", dissect_EntrustVersionInfo_PDU, proto_x509ce, "id-ce-entrustVersionInfo");
2758 /*--- End of included file: packet-x509ce-dis-tab.c ---*/
2759 #line 121 "packet-x509ce-template.c"
2760 register_ber_oid_dissector("2.5.29.24", dissect_x509ce_invalidityDate_callback, proto_x509ce, "id-ce-invalidityDate");
2761 register_ber_oid_dissector("2.5.29.51", dissect_x509ce_baseUpdateTime_callback, proto_x509ce, "id-ce-baseUpdateTime");