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>
42 #include "packet-ber.h"
43 #include "packet-x509ce.h"
44 #include "packet-x509af.h"
45 #include "packet-x509if.h"
46 #include "packet-x509sat.h"
47 #include "packet-x411.h"
49 #define PNAME "X.509 Certificate Extensions"
50 #define PSNAME "X509CE"
51 #define PFNAME "x509ce"
53 /* Initialize the protocol and registered fields */
54 static int proto_x509ce = -1;
55 static int hf_x509ce_id_ce_invalidityDate = -1;
56 static int hf_x509ce_id_ce_baseUpdateTime = -1;
57 static int hf_x509ce_object_identifier_id = -1;
58 static int hf_x509ce_IPAddress = -1;
60 /*--- Included file: packet-x509ce-hf.c ---*/
61 #line 1 "packet-x509ce-hf.c"
62 static int hf_x509ce_AuthorityKeyIdentifier_PDU = -1; /* AuthorityKeyIdentifier */
63 static int hf_x509ce_SubjectKeyIdentifier_PDU = -1; /* SubjectKeyIdentifier */
64 static int hf_x509ce_KeyUsage_PDU = -1; /* KeyUsage */
65 static int hf_x509ce_KeyPurposeIDs_PDU = -1; /* KeyPurposeIDs */
66 static int hf_x509ce_PrivateKeyUsagePeriod_PDU = -1; /* PrivateKeyUsagePeriod */
67 static int hf_x509ce_CertificatePoliciesSyntax_PDU = -1; /* CertificatePoliciesSyntax */
68 static int hf_x509ce_PolicyMappingsSyntax_PDU = -1; /* PolicyMappingsSyntax */
69 static int hf_x509ce_GeneralNames_PDU = -1; /* GeneralNames */
70 static int hf_x509ce_AttributesSyntax_PDU = -1; /* AttributesSyntax */
71 static int hf_x509ce_BasicConstraintsSyntax_PDU = -1; /* BasicConstraintsSyntax */
72 static int hf_x509ce_NameConstraintsSyntax_PDU = -1; /* NameConstraintsSyntax */
73 static int hf_x509ce_PolicyConstraintsSyntax_PDU = -1; /* PolicyConstraintsSyntax */
74 static int hf_x509ce_SkipCerts_PDU = -1; /* SkipCerts */
75 static int hf_x509ce_CRLNumber_PDU = -1; /* CRLNumber */
76 static int hf_x509ce_CRLReason_PDU = -1; /* CRLReason */
77 static int hf_x509ce_HoldInstruction_PDU = -1; /* HoldInstruction */
78 static int hf_x509ce_CRLScopeSyntax_PDU = -1; /* CRLScopeSyntax */
79 static int hf_x509ce_StatusReferrals_PDU = -1; /* StatusReferrals */
80 static int hf_x509ce_CRLStreamIdentifier_PDU = -1; /* CRLStreamIdentifier */
81 static int hf_x509ce_OrderedListSyntax_PDU = -1; /* OrderedListSyntax */
82 static int hf_x509ce_DeltaInformation_PDU = -1; /* DeltaInformation */
83 static int hf_x509ce_CRLDistPointsSyntax_PDU = -1; /* CRLDistPointsSyntax */
84 static int hf_x509ce_IssuingDistPointSyntax_PDU = -1; /* IssuingDistPointSyntax */
85 static int hf_x509ce_BaseCRLNumber_PDU = -1; /* BaseCRLNumber */
86 static int hf_x509ce_ToBeRevokedSyntax_PDU = -1; /* ToBeRevokedSyntax */
87 static int hf_x509ce_RevokedGroupsSyntax_PDU = -1; /* RevokedGroupsSyntax */
88 static int hf_x509ce_ExpiredCertsOnCRL_PDU = -1; /* ExpiredCertsOnCRL */
89 static int hf_x509ce_AAIssuingDistPointSyntax_PDU = -1; /* AAIssuingDistPointSyntax */
90 static int hf_x509ce_CertificateAssertion_PDU = -1; /* CertificateAssertion */
91 static int hf_x509ce_CertificatePairExactAssertion_PDU = -1; /* CertificatePairExactAssertion */
92 static int hf_x509ce_CertificatePairAssertion_PDU = -1; /* CertificatePairAssertion */
93 static int hf_x509ce_CertificateListExactAssertion_PDU = -1; /* CertificateListExactAssertion */
94 static int hf_x509ce_CertificateListAssertion_PDU = -1; /* CertificateListAssertion */
95 static int hf_x509ce_PkiPathMatchSyntax_PDU = -1; /* PkiPathMatchSyntax */
96 static int hf_x509ce_EnhancedCertificateAssertion_PDU = -1; /* EnhancedCertificateAssertion */
97 static int hf_x509ce_CertificateTemplate_PDU = -1; /* CertificateTemplate */
98 static int hf_x509ce_EntrustVersionInfo_PDU = -1; /* EntrustVersionInfo */
99 static int hf_x509ce_keyIdentifier = -1; /* KeyIdentifier */
100 static int hf_x509ce_authorityCertIssuer = -1; /* GeneralNames */
101 static int hf_x509ce_authorityCertSerialNumber = -1; /* CertificateSerialNumber */
102 static int hf_x509ce_KeyPurposeIDs_item = -1; /* KeyPurposeId */
103 static int hf_x509ce_notBefore = -1; /* GeneralizedTime */
104 static int hf_x509ce_notAfter = -1; /* GeneralizedTime */
105 static int hf_x509ce_CertificatePoliciesSyntax_item = -1; /* PolicyInformation */
106 static int hf_x509ce_policyIdentifier = -1; /* CertPolicyId */
107 static int hf_x509ce_policyQualifiers = -1; /* SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo */
108 static int hf_x509ce_policyQualifiers_item = -1; /* PolicyQualifierInfo */
109 static int hf_x509ce_policyQualifierId = -1; /* T_policyQualifierId */
110 static int hf_x509ce_qualifier = -1; /* T_qualifier */
111 static int hf_x509ce_PolicyMappingsSyntax_item = -1; /* PolicyMappingsSyntax_item */
112 static int hf_x509ce_issuerDomainPolicy = -1; /* CertPolicyId */
113 static int hf_x509ce_subjectDomainPolicy = -1; /* CertPolicyId */
114 static int hf_x509ce_GeneralNames_item = -1; /* GeneralName */
115 static int hf_x509ce_otherName = -1; /* OtherName */
116 static int hf_x509ce_rfc822Name = -1; /* IA5String */
117 static int hf_x509ce_dNSName = -1; /* IA5String */
118 static int hf_x509ce_x400Address = -1; /* ORAddress */
119 static int hf_x509ce_directoryName = -1; /* Name */
120 static int hf_x509ce_ediPartyName = -1; /* EDIPartyName */
121 static int hf_x509ce_uniformResourceIdentifier = -1; /* T_uniformResourceIdentifier */
122 static int hf_x509ce_iPAddress = -1; /* T_iPAddress */
123 static int hf_x509ce_registeredID = -1; /* OBJECT_IDENTIFIER */
124 static int hf_x509ce_type_id = -1; /* OtherNameType */
125 static int hf_x509ce_value = -1; /* OtherNameValue */
126 static int hf_x509ce_nameAssigner = -1; /* DirectoryString */
127 static int hf_x509ce_partyName = -1; /* DirectoryString */
128 static int hf_x509ce_AttributesSyntax_item = -1; /* Attribute */
129 static int hf_x509ce_cA = -1; /* BOOLEAN */
130 static int hf_x509ce_pathLenConstraint = -1; /* INTEGER_0_MAX */
131 static int hf_x509ce_permittedSubtrees = -1; /* GeneralSubtrees */
132 static int hf_x509ce_excludedSubtrees = -1; /* GeneralSubtrees */
133 static int hf_x509ce_GeneralSubtrees_item = -1; /* GeneralSubtree */
134 static int hf_x509ce_base = -1; /* GeneralName */
135 static int hf_x509ce_minimum = -1; /* BaseDistance */
136 static int hf_x509ce_maximum = -1; /* BaseDistance */
137 static int hf_x509ce_requireExplicitPolicy = -1; /* SkipCerts */
138 static int hf_x509ce_inhibitPolicyMapping = -1; /* SkipCerts */
139 static int hf_x509ce_CRLScopeSyntax_item = -1; /* PerAuthorityScope */
140 static int hf_x509ce_authorityName = -1; /* GeneralName */
141 static int hf_x509ce_distributionPoint = -1; /* DistributionPointName */
142 static int hf_x509ce_onlyContains = -1; /* OnlyCertificateTypes */
143 static int hf_x509ce_onlySomeReasons = -1; /* ReasonFlags */
144 static int hf_x509ce_serialNumberRange = -1; /* NumberRange */
145 static int hf_x509ce_subjectKeyIdRange = -1; /* NumberRange */
146 static int hf_x509ce_nameSubtrees = -1; /* GeneralNames */
147 static int hf_x509ce_baseRevocationInfo = -1; /* BaseRevocationInfo */
148 static int hf_x509ce_startingNumber = -1; /* INTEGER */
149 static int hf_x509ce_endingNumber = -1; /* INTEGER */
150 static int hf_x509ce_modulus = -1; /* INTEGER */
151 static int hf_x509ce_cRLStreamIdentifier = -1; /* CRLStreamIdentifier */
152 static int hf_x509ce_cRLNumber = -1; /* CRLNumber */
153 static int hf_x509ce_baseThisUpdate = -1; /* GeneralizedTime */
154 static int hf_x509ce_StatusReferrals_item = -1; /* StatusReferral */
155 static int hf_x509ce_cRLReferral = -1; /* CRLReferral */
156 static int hf_x509ce_crlr_issuer = -1; /* GeneralName */
157 static int hf_x509ce_location = -1; /* GeneralName */
158 static int hf_x509ce_deltaRefInfo = -1; /* DeltaRefInfo */
159 static int hf_x509ce_cRLScope = -1; /* CRLScopeSyntax */
160 static int hf_x509ce_lastUpdate = -1; /* GeneralizedTime */
161 static int hf_x509ce_lastChangedCRL = -1; /* GeneralizedTime */
162 static int hf_x509ce_deltaLocation = -1; /* GeneralName */
163 static int hf_x509ce_lastDelta = -1; /* GeneralizedTime */
164 static int hf_x509ce_nextDelta = -1; /* GeneralizedTime */
165 static int hf_x509ce_CRLDistPointsSyntax_item = -1; /* DistributionPoint */
166 static int hf_x509ce_reasons = -1; /* ReasonFlags */
167 static int hf_x509ce_cRLIssuer = -1; /* GeneralNames */
168 static int hf_x509ce_fullName = -1; /* GeneralNames */
169 static int hf_x509ce_nameRelativeToCRLIssuer = -1; /* RelativeDistinguishedName */
170 static int hf_x509ce_onlyContainsUserPublicKeyCerts = -1; /* BOOLEAN */
171 static int hf_x509ce_onlyContainsCACerts = -1; /* BOOLEAN */
172 static int hf_x509ce_indirectCRL = -1; /* BOOLEAN */
173 static int hf_x509ce_ToBeRevokedSyntax_item = -1; /* ToBeRevokedGroup */
174 static int hf_x509ce_certificateIssuer = -1; /* GeneralName */
175 static int hf_x509ce_reasonInfo = -1; /* ReasonInfo */
176 static int hf_x509ce_revocationTime = -1; /* GeneralizedTime */
177 static int hf_x509ce_certificateGroup = -1; /* CertificateGroup */
178 static int hf_x509ce_reasonCode = -1; /* CRLReason */
179 static int hf_x509ce_holdInstructionCode = -1; /* HoldInstruction */
180 static int hf_x509ce_serialNumbers = -1; /* CertificateSerialNumbers */
181 static int hf_x509ce_serialNumberRange_01 = -1; /* CertificateGroupNumberRange */
182 static int hf_x509ce_nameSubtree = -1; /* GeneralName */
183 static int hf_x509ce_CertificateSerialNumbers_item = -1; /* CertificateSerialNumber */
184 static int hf_x509ce_RevokedGroupsSyntax_item = -1; /* RevokedGroup */
185 static int hf_x509ce_invalidityDate = -1; /* GeneralizedTime */
186 static int hf_x509ce_revokedcertificateGroup = -1; /* RevokedCertificateGroup */
187 static int hf_x509ce_containsUserAttributeCerts = -1; /* BOOLEAN */
188 static int hf_x509ce_containsAACerts = -1; /* BOOLEAN */
189 static int hf_x509ce_containsSOAPublicKeyCerts = -1; /* BOOLEAN */
190 static int hf_x509ce_serialNumber = -1; /* CertificateSerialNumber */
191 static int hf_x509ce_issuer = -1; /* Name */
192 static int hf_x509ce_subjectKeyIdentifier = -1; /* SubjectKeyIdentifier */
193 static int hf_x509ce_authorityKeyIdentifier = -1; /* AuthorityKeyIdentifier */
194 static int hf_x509ce_certificateValid = -1; /* Time */
195 static int hf_x509ce_privateKeyValid = -1; /* GeneralizedTime */
196 static int hf_x509ce_subjectPublicKeyAlgID = -1; /* OBJECT_IDENTIFIER */
197 static int hf_x509ce_keyUsage = -1; /* KeyUsage */
198 static int hf_x509ce_subjectAltName = -1; /* AltNameType */
199 static int hf_x509ce_policy = -1; /* CertPolicySet */
200 static int hf_x509ce_pathToName = -1; /* Name */
201 static int hf_x509ce_subject = -1; /* Name */
202 static int hf_x509ce_nameConstraints = -1; /* NameConstraintsSyntax */
203 static int hf_x509ce_builtinNameForm = -1; /* T_builtinNameForm */
204 static int hf_x509ce_otherNameForm = -1; /* OBJECT_IDENTIFIER */
205 static int hf_x509ce_CertPolicySet_item = -1; /* CertPolicyId */
206 static int hf_x509ce_cpea_issuedToThisCAAssertion = -1; /* CertificateExactAssertion */
207 static int hf_x509ce_cpea_issuedByThisCAAssertion = -1; /* CertificateExactAssertion */
208 static int hf_x509ce_issuedToThisCAAssertion = -1; /* CertificateAssertion */
209 static int hf_x509ce_issuedByThisCAAssertion = -1; /* CertificateAssertion */
210 static int hf_x509ce_thisUpdate = -1; /* Time */
211 static int hf_x509ce_minCRLNumber = -1; /* CRLNumber */
212 static int hf_x509ce_maxCRLNumber = -1; /* CRLNumber */
213 static int hf_x509ce_reasonFlags = -1; /* ReasonFlags */
214 static int hf_x509ce_dateAndTime = -1; /* Time */
215 static int hf_x509ce_firstIssuer = -1; /* Name */
216 static int hf_x509ce_lastSubject = -1; /* Name */
217 static int hf_x509ce_subjectAltName_01 = -1; /* AltName */
218 static int hf_x509ce_pathToName_01 = -1; /* GeneralNames */
219 static int hf_x509ce_altnameType = -1; /* AltNameType */
220 static int hf_x509ce_altNameValue = -1; /* GeneralName */
221 static int hf_x509ce_templateID = -1; /* OBJECT_IDENTIFIER */
222 static int hf_x509ce_templateMajorVersion = -1; /* INTEGER */
223 static int hf_x509ce_templateMinorVersion = -1; /* INTEGER */
224 static int hf_x509ce_entrustVers = -1; /* GeneralString */
225 static int hf_x509ce_entrustVersInfoFlags = -1; /* EntrustInfoFlags */
227 static int hf_x509ce_KeyUsage_digitalSignature = -1;
228 static int hf_x509ce_KeyUsage_contentCommitment = -1;
229 static int hf_x509ce_KeyUsage_keyEncipherment = -1;
230 static int hf_x509ce_KeyUsage_dataEncipherment = -1;
231 static int hf_x509ce_KeyUsage_keyAgreement = -1;
232 static int hf_x509ce_KeyUsage_keyCertSign = -1;
233 static int hf_x509ce_KeyUsage_cRLSign = -1;
234 static int hf_x509ce_KeyUsage_encipherOnly = -1;
235 static int hf_x509ce_KeyUsage_decipherOnly = -1;
236 static int hf_x509ce_OnlyCertificateTypes_user = -1;
237 static int hf_x509ce_OnlyCertificateTypes_authority = -1;
238 static int hf_x509ce_OnlyCertificateTypes_attribute = -1;
239 static int hf_x509ce_ReasonFlags_unused = -1;
240 static int hf_x509ce_ReasonFlags_keyCompromise = -1;
241 static int hf_x509ce_ReasonFlags_cACompromise = -1;
242 static int hf_x509ce_ReasonFlags_affiliationChanged = -1;
243 static int hf_x509ce_ReasonFlags_superseded = -1;
244 static int hf_x509ce_ReasonFlags_cessationOfOperation = -1;
245 static int hf_x509ce_ReasonFlags_certificateHold = -1;
246 static int hf_x509ce_ReasonFlags_privilegeWithdrawn = -1;
247 static int hf_x509ce_ReasonFlags_aACompromise = -1;
248 static int hf_x509ce_EntrustInfoFlags_keyUpdateAllowed = -1;
249 static int hf_x509ce_EntrustInfoFlags_newExtensions = -1;
250 static int hf_x509ce_EntrustInfoFlags_pKIXCertificate = -1;
251 static int hf_x509ce_EntrustInfoFlags_enterpriseCategory = -1;
252 static int hf_x509ce_EntrustInfoFlags_webCategory = -1;
253 static int hf_x509ce_EntrustInfoFlags_sETCategory = -1;
255 /*--- End of included file: packet-x509ce-hf.c ---*/
256 #line 52 "packet-x509ce-template.c"
258 /* Initialize the subtree pointers */
260 /*--- Included file: packet-x509ce-ett.c ---*/
261 #line 1 "packet-x509ce-ett.c"
262 static gint ett_x509ce_AuthorityKeyIdentifier = -1;
263 static gint ett_x509ce_KeyUsage = -1;
264 static gint ett_x509ce_KeyPurposeIDs = -1;
265 static gint ett_x509ce_PrivateKeyUsagePeriod = -1;
266 static gint ett_x509ce_CertificatePoliciesSyntax = -1;
267 static gint ett_x509ce_PolicyInformation = -1;
268 static gint ett_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo = -1;
269 static gint ett_x509ce_PolicyQualifierInfo = -1;
270 static gint ett_x509ce_PolicyMappingsSyntax = -1;
271 static gint ett_x509ce_PolicyMappingsSyntax_item = -1;
272 static gint ett_x509ce_GeneralNames = -1;
273 static gint ett_x509ce_GeneralName = -1;
274 static gint ett_x509ce_OtherName = -1;
275 static gint ett_x509ce_EDIPartyName = -1;
276 static gint ett_x509ce_AttributesSyntax = -1;
277 static gint ett_x509ce_BasicConstraintsSyntax = -1;
278 static gint ett_x509ce_NameConstraintsSyntax = -1;
279 static gint ett_x509ce_GeneralSubtrees = -1;
280 static gint ett_x509ce_GeneralSubtree = -1;
281 static gint ett_x509ce_PolicyConstraintsSyntax = -1;
282 static gint ett_x509ce_CRLScopeSyntax = -1;
283 static gint ett_x509ce_PerAuthorityScope = -1;
284 static gint ett_x509ce_OnlyCertificateTypes = -1;
285 static gint ett_x509ce_NumberRange = -1;
286 static gint ett_x509ce_BaseRevocationInfo = -1;
287 static gint ett_x509ce_StatusReferrals = -1;
288 static gint ett_x509ce_StatusReferral = -1;
289 static gint ett_x509ce_CRLReferral = -1;
290 static gint ett_x509ce_DeltaRefInfo = -1;
291 static gint ett_x509ce_DeltaInformation = -1;
292 static gint ett_x509ce_CRLDistPointsSyntax = -1;
293 static gint ett_x509ce_DistributionPoint = -1;
294 static gint ett_x509ce_DistributionPointName = -1;
295 static gint ett_x509ce_ReasonFlags = -1;
296 static gint ett_x509ce_IssuingDistPointSyntax = -1;
297 static gint ett_x509ce_ToBeRevokedSyntax = -1;
298 static gint ett_x509ce_ToBeRevokedGroup = -1;
299 static gint ett_x509ce_ReasonInfo = -1;
300 static gint ett_x509ce_CertificateGroup = -1;
301 static gint ett_x509ce_CertificateGroupNumberRange = -1;
302 static gint ett_x509ce_CertificateSerialNumbers = -1;
303 static gint ett_x509ce_RevokedGroupsSyntax = -1;
304 static gint ett_x509ce_RevokedGroup = -1;
305 static gint ett_x509ce_RevokedCertificateGroup = -1;
306 static gint ett_x509ce_AAIssuingDistPointSyntax = -1;
307 static gint ett_x509ce_CertificateExactAssertion = -1;
308 static gint ett_x509ce_CertificateAssertion = -1;
309 static gint ett_x509ce_AltNameType = -1;
310 static gint ett_x509ce_CertPolicySet = -1;
311 static gint ett_x509ce_CertificatePairExactAssertion = -1;
312 static gint ett_x509ce_CertificatePairAssertion = -1;
313 static gint ett_x509ce_CertificateListExactAssertion = -1;
314 static gint ett_x509ce_CertificateListAssertion = -1;
315 static gint ett_x509ce_PkiPathMatchSyntax = -1;
316 static gint ett_x509ce_EnhancedCertificateAssertion = -1;
317 static gint ett_x509ce_AltName = -1;
318 static gint ett_x509ce_CertificateTemplate = -1;
319 static gint ett_x509ce_EntrustVersionInfo = -1;
320 static gint ett_x509ce_EntrustInfoFlags = -1;
322 /*--- End of included file: packet-x509ce-ett.c ---*/
323 #line 55 "packet-x509ce-template.c"
325 static const char *object_identifier_id;
328 /*--- Included file: packet-x509ce-fn.c ---*/
329 #line 1 "packet-x509ce-fn.c"
333 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_) {
334 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
343 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_) {
344 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
352 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_) {
353 #line 171 "x509ce.cnf"
354 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
362 static const ber_sequence_t OtherName_sequence[] = {
363 { &hf_x509ce_type_id , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_OtherNameType },
364 { &hf_x509ce_value , BER_CLASS_CON, 0, 0, dissect_x509ce_OtherNameValue },
365 { NULL, 0, 0, 0, NULL }
369 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_) {
370 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
371 OtherName_sequence, hf_index, ett_x509ce_OtherName);
379 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_) {
380 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
381 actx, tree, tvb, offset, hf_index,
388 static const ber_sequence_t EDIPartyName_sequence[] = {
389 { &hf_x509ce_nameAssigner , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509sat_DirectoryString },
390 { &hf_x509ce_partyName , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509sat_DirectoryString },
391 { NULL, 0, 0, 0, NULL }
395 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_) {
396 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
397 EDIPartyName_sequence, hf_index, ett_x509ce_EDIPartyName);
405 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_) {
406 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
407 actx, tree, tvb, offset, hf_index,
410 #line 174 "x509ce.cnf"
412 PROTO_ITEM_SET_URL(actx->created_item);
421 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_) {
422 #line 164 "x509ce.cnf"
423 proto_tree_add_item(tree, hf_x509ce_IPAddress, tvb, offset, 4, FALSE);
434 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_) {
435 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
441 const value_string x509ce_GeneralName_vals[] = {
445 { 3, "x400Address" },
446 { 4, "directoryName" },
447 { 5, "ediPartyName" },
448 { 6, "uniformResourceIdentifier" },
450 { 8, "registeredID" },
454 static const ber_choice_t GeneralName_choice[] = {
455 { 0, &hf_x509ce_otherName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_OtherName },
456 { 1, &hf_x509ce_rfc822Name , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_IA5String },
457 { 2, &hf_x509ce_dNSName , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x509ce_IA5String },
458 { 3, &hf_x509ce_x400Address , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_x411_ORAddress },
459 { 4, &hf_x509ce_directoryName, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_x509if_Name },
460 { 5, &hf_x509ce_ediPartyName , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_x509ce_EDIPartyName },
461 { 6, &hf_x509ce_uniformResourceIdentifier, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_x509ce_T_uniformResourceIdentifier },
462 { 7, &hf_x509ce_iPAddress , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_x509ce_T_iPAddress },
463 { 8, &hf_x509ce_registeredID , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_x509ce_OBJECT_IDENTIFIER },
464 { 0, NULL, 0, 0, 0, NULL }
468 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_) {
469 offset = dissect_ber_choice(actx, tree, tvb, offset,
470 GeneralName_choice, hf_index, ett_x509ce_GeneralName,
477 static const ber_sequence_t GeneralNames_sequence_of[1] = {
478 { &hf_x509ce_GeneralNames_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
482 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_) {
483 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
484 GeneralNames_sequence_of, hf_index, ett_x509ce_GeneralNames);
490 static const ber_sequence_t AuthorityKeyIdentifier_sequence[] = {
491 { &hf_x509ce_keyIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_KeyIdentifier },
492 { &hf_x509ce_authorityCertIssuer, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
493 { &hf_x509ce_authorityCertSerialNumber, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_CertificateSerialNumber },
494 { NULL, 0, 0, 0, NULL }
498 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_) {
499 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
500 AuthorityKeyIdentifier_sequence, hf_index, ett_x509ce_AuthorityKeyIdentifier);
508 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_) {
509 offset = dissect_x509ce_KeyIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index);
515 static const asn_namedbit KeyUsage_bits[] = {
516 { 0, &hf_x509ce_KeyUsage_digitalSignature, -1, -1, "digitalSignature", NULL },
517 { 1, &hf_x509ce_KeyUsage_contentCommitment, -1, -1, "contentCommitment", NULL },
518 { 2, &hf_x509ce_KeyUsage_keyEncipherment, -1, -1, "keyEncipherment", NULL },
519 { 3, &hf_x509ce_KeyUsage_dataEncipherment, -1, -1, "dataEncipherment", NULL },
520 { 4, &hf_x509ce_KeyUsage_keyAgreement, -1, -1, "keyAgreement", NULL },
521 { 5, &hf_x509ce_KeyUsage_keyCertSign, -1, -1, "keyCertSign", NULL },
522 { 6, &hf_x509ce_KeyUsage_cRLSign, -1, -1, "cRLSign", NULL },
523 { 7, &hf_x509ce_KeyUsage_encipherOnly, -1, -1, "encipherOnly", NULL },
524 { 8, &hf_x509ce_KeyUsage_decipherOnly, -1, -1, "decipherOnly", NULL },
525 { 0, NULL, 0, 0, NULL, NULL }
529 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_) {
530 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
531 KeyUsage_bits, hf_index, ett_x509ce_KeyUsage,
540 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_) {
541 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
547 static const ber_sequence_t KeyPurposeIDs_sequence_of[1] = {
548 { &hf_x509ce_KeyPurposeIDs_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_KeyPurposeId },
552 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_) {
553 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
554 KeyPurposeIDs_sequence_of, hf_index, ett_x509ce_KeyPurposeIDs);
562 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_) {
563 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
569 static const ber_sequence_t PrivateKeyUsagePeriod_sequence[] = {
570 { &hf_x509ce_notBefore , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
571 { &hf_x509ce_notAfter , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
572 { NULL, 0, 0, 0, NULL }
576 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_) {
577 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
578 PrivateKeyUsagePeriod_sequence, hf_index, ett_x509ce_PrivateKeyUsagePeriod);
586 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_) {
587 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
595 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_) {
596 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_x509ce_object_identifier_id, &object_identifier_id);
604 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_) {
605 #line 161 "x509ce.cnf"
606 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
614 static const ber_sequence_t PolicyQualifierInfo_sequence[] = {
615 { &hf_x509ce_policyQualifierId, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_T_policyQualifierId },
616 { &hf_x509ce_qualifier , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_T_qualifier },
617 { NULL, 0, 0, 0, NULL }
621 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_) {
622 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
623 PolicyQualifierInfo_sequence, hf_index, ett_x509ce_PolicyQualifierInfo);
629 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo_sequence_of[1] = {
630 { &hf_x509ce_policyQualifiers_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyQualifierInfo },
634 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_) {
635 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
636 SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo_sequence_of, hf_index, ett_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo);
642 static const ber_sequence_t PolicyInformation_sequence[] = {
643 { &hf_x509ce_policyIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
644 { &hf_x509ce_policyQualifiers, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo },
645 { NULL, 0, 0, 0, NULL }
649 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_) {
650 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
651 PolicyInformation_sequence, hf_index, ett_x509ce_PolicyInformation);
657 static const ber_sequence_t CertificatePoliciesSyntax_sequence_of[1] = {
658 { &hf_x509ce_CertificatePoliciesSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyInformation },
662 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_) {
663 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
664 CertificatePoliciesSyntax_sequence_of, hf_index, ett_x509ce_CertificatePoliciesSyntax);
670 static const ber_sequence_t PolicyMappingsSyntax_item_sequence[] = {
671 { &hf_x509ce_issuerDomainPolicy, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
672 { &hf_x509ce_subjectDomainPolicy, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
673 { NULL, 0, 0, 0, NULL }
677 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_) {
678 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
679 PolicyMappingsSyntax_item_sequence, hf_index, ett_x509ce_PolicyMappingsSyntax_item);
685 static const ber_sequence_t PolicyMappingsSyntax_sequence_of[1] = {
686 { &hf_x509ce_PolicyMappingsSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyMappingsSyntax_item },
690 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_) {
691 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
692 PolicyMappingsSyntax_sequence_of, hf_index, ett_x509ce_PolicyMappingsSyntax);
698 static const ber_sequence_t AttributesSyntax_sequence_of[1] = {
699 { &hf_x509ce_AttributesSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
703 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_) {
704 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
705 AttributesSyntax_sequence_of, hf_index, ett_x509ce_AttributesSyntax);
713 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_) {
714 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
722 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_) {
723 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
730 static const ber_sequence_t BasicConstraintsSyntax_sequence[] = {
731 { &hf_x509ce_cA , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_BOOLEAN },
732 { &hf_x509ce_pathLenConstraint, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER_0_MAX },
733 { NULL, 0, 0, 0, NULL }
737 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_) {
738 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
739 BasicConstraintsSyntax_sequence, hf_index, ett_x509ce_BasicConstraintsSyntax);
747 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_) {
748 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
755 static const ber_sequence_t GeneralSubtree_sequence[] = {
756 { &hf_x509ce_base , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
757 { &hf_x509ce_minimum , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BaseDistance },
758 { &hf_x509ce_maximum , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BaseDistance },
759 { NULL, 0, 0, 0, NULL }
763 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_) {
764 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
765 GeneralSubtree_sequence, hf_index, ett_x509ce_GeneralSubtree);
771 static const ber_sequence_t GeneralSubtrees_sequence_of[1] = {
772 { &hf_x509ce_GeneralSubtrees_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralSubtree },
776 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_) {
777 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
778 GeneralSubtrees_sequence_of, hf_index, ett_x509ce_GeneralSubtrees);
784 static const ber_sequence_t NameConstraintsSyntax_sequence[] = {
785 { &hf_x509ce_permittedSubtrees, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralSubtrees },
786 { &hf_x509ce_excludedSubtrees, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralSubtrees },
787 { NULL, 0, 0, 0, NULL }
791 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_) {
792 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
793 NameConstraintsSyntax_sequence, hf_index, ett_x509ce_NameConstraintsSyntax);
801 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_) {
802 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
809 static const ber_sequence_t PolicyConstraintsSyntax_sequence[] = {
810 { &hf_x509ce_requireExplicitPolicy, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SkipCerts },
811 { &hf_x509ce_inhibitPolicyMapping, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SkipCerts },
812 { NULL, 0, 0, 0, NULL }
816 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_) {
817 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
818 PolicyConstraintsSyntax_sequence, hf_index, ett_x509ce_PolicyConstraintsSyntax);
826 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_) {
827 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
834 const value_string x509ce_CRLReason_vals[] = {
835 { 0, "unspecified" },
836 { 1, "keyCompromise" },
837 { 2, "cACompromise" },
838 { 3, "affiliationChanged" },
840 { 5, "cessationOfOperation" },
841 { 6, "certificateHold" },
842 { 8, "removeFromCRL" },
843 { 9, "privilegeWithdrawn" },
844 { 10, "aaCompromise" },
850 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_) {
851 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
860 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_) {
861 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
867 const value_string x509ce_DistributionPointName_vals[] = {
869 { 1, "nameRelativeToCRLIssuer" },
873 static const ber_choice_t DistributionPointName_choice[] = {
874 { 0, &hf_x509ce_fullName , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
875 { 1, &hf_x509ce_nameRelativeToCRLIssuer, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509if_RelativeDistinguishedName },
876 { 0, NULL, 0, 0, 0, NULL }
880 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_) {
881 offset = dissect_ber_choice(actx, tree, tvb, offset,
882 DistributionPointName_choice, hf_index, ett_x509ce_DistributionPointName,
889 static const asn_namedbit OnlyCertificateTypes_bits[] = {
890 { 0, &hf_x509ce_OnlyCertificateTypes_user, -1, -1, "user", NULL },
891 { 1, &hf_x509ce_OnlyCertificateTypes_authority, -1, -1, "authority", NULL },
892 { 2, &hf_x509ce_OnlyCertificateTypes_attribute, -1, -1, "attribute", NULL },
893 { 0, NULL, 0, 0, NULL, NULL }
897 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_) {
898 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
899 OnlyCertificateTypes_bits, hf_index, ett_x509ce_OnlyCertificateTypes,
906 static const asn_namedbit ReasonFlags_bits[] = {
907 { 0, &hf_x509ce_ReasonFlags_unused, -1, -1, "unused", NULL },
908 { 1, &hf_x509ce_ReasonFlags_keyCompromise, -1, -1, "keyCompromise", NULL },
909 { 2, &hf_x509ce_ReasonFlags_cACompromise, -1, -1, "cACompromise", NULL },
910 { 3, &hf_x509ce_ReasonFlags_affiliationChanged, -1, -1, "affiliationChanged", NULL },
911 { 4, &hf_x509ce_ReasonFlags_superseded, -1, -1, "superseded", NULL },
912 { 5, &hf_x509ce_ReasonFlags_cessationOfOperation, -1, -1, "cessationOfOperation", NULL },
913 { 6, &hf_x509ce_ReasonFlags_certificateHold, -1, -1, "certificateHold", NULL },
914 { 7, &hf_x509ce_ReasonFlags_privilegeWithdrawn, -1, -1, "privilegeWithdrawn", NULL },
915 { 8, &hf_x509ce_ReasonFlags_aACompromise, -1, -1, "aACompromise", NULL },
916 { 0, NULL, 0, 0, NULL, NULL }
920 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_) {
921 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
922 ReasonFlags_bits, hf_index, ett_x509ce_ReasonFlags,
931 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_) {
932 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
939 static const ber_sequence_t NumberRange_sequence[] = {
940 { &hf_x509ce_startingNumber, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
941 { &hf_x509ce_endingNumber , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
942 { &hf_x509ce_modulus , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER },
943 { NULL, 0, 0, 0, NULL }
947 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_) {
948 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
949 NumberRange_sequence, hf_index, ett_x509ce_NumberRange);
957 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_) {
958 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
965 static const ber_sequence_t BaseRevocationInfo_sequence[] = {
966 { &hf_x509ce_cRLStreamIdentifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CRLStreamIdentifier },
967 { &hf_x509ce_cRLNumber , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_CRLNumber },
968 { &hf_x509ce_baseThisUpdate, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
969 { NULL, 0, 0, 0, NULL }
973 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_) {
974 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
975 BaseRevocationInfo_sequence, hf_index, ett_x509ce_BaseRevocationInfo);
981 static const ber_sequence_t PerAuthorityScope_sequence[] = {
982 { &hf_x509ce_authorityName, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
983 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
984 { &hf_x509ce_onlyContains , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_OnlyCertificateTypes },
985 { &hf_x509ce_onlySomeReasons, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
986 { &hf_x509ce_serialNumberRange, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NumberRange },
987 { &hf_x509ce_subjectKeyIdRange, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NumberRange },
988 { &hf_x509ce_nameSubtrees , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
989 { &hf_x509ce_baseRevocationInfo, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BaseRevocationInfo },
990 { NULL, 0, 0, 0, NULL }
994 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_) {
995 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
996 PerAuthorityScope_sequence, hf_index, ett_x509ce_PerAuthorityScope);
1002 static const ber_sequence_t CRLScopeSyntax_sequence_of[1] = {
1003 { &hf_x509ce_CRLScopeSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PerAuthorityScope },
1007 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_) {
1008 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1009 CRLScopeSyntax_sequence_of, hf_index, ett_x509ce_CRLScopeSyntax);
1015 static const ber_sequence_t DeltaRefInfo_sequence[] = {
1016 { &hf_x509ce_deltaLocation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1017 { &hf_x509ce_lastDelta , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralizedTime },
1018 { NULL, 0, 0, 0, NULL }
1022 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_) {
1023 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1024 DeltaRefInfo_sequence, hf_index, ett_x509ce_DeltaRefInfo);
1030 static const ber_sequence_t CRLReferral_sequence[] = {
1031 { &hf_x509ce_crlr_issuer , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1032 { &hf_x509ce_location , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1033 { &hf_x509ce_deltaRefInfo , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_DeltaRefInfo },
1034 { &hf_x509ce_cRLScope , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_CRLScopeSyntax },
1035 { &hf_x509ce_lastUpdate , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1036 { &hf_x509ce_lastChangedCRL, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1037 { NULL, 0, 0, 0, NULL }
1041 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_) {
1042 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1043 CRLReferral_sequence, hf_index, ett_x509ce_CRLReferral);
1049 const value_string x509ce_StatusReferral_vals[] = {
1050 { 0, "cRLReferral" },
1054 static const ber_choice_t StatusReferral_choice[] = {
1055 { 0, &hf_x509ce_cRLReferral , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_CRLReferral },
1056 { 0, NULL, 0, 0, 0, NULL }
1060 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_) {
1061 offset = dissect_ber_choice(actx, tree, tvb, offset,
1062 StatusReferral_choice, hf_index, ett_x509ce_StatusReferral,
1069 static const ber_sequence_t StatusReferrals_sequence_of[1] = {
1070 { &hf_x509ce_StatusReferrals_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_StatusReferral },
1074 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_) {
1075 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1076 StatusReferrals_sequence_of, hf_index, ett_x509ce_StatusReferrals);
1082 const value_string x509ce_OrderedListSyntax_vals[] = {
1083 { 0, "ascSerialNum" },
1084 { 1, "ascRevDate" },
1090 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_) {
1091 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1098 static const ber_sequence_t DeltaInformation_sequence[] = {
1099 { &hf_x509ce_deltaLocation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1100 { &hf_x509ce_nextDelta , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralizedTime },
1101 { NULL, 0, 0, 0, NULL }
1105 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_) {
1106 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1107 DeltaInformation_sequence, hf_index, ett_x509ce_DeltaInformation);
1113 static const ber_sequence_t DistributionPoint_sequence[] = {
1114 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1115 { &hf_x509ce_reasons , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
1116 { &hf_x509ce_cRLIssuer , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
1117 { NULL, 0, 0, 0, NULL }
1121 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_) {
1122 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1123 DistributionPoint_sequence, hf_index, ett_x509ce_DistributionPoint);
1129 static const ber_sequence_t CRLDistPointsSyntax_sequence_of[1] = {
1130 { &hf_x509ce_CRLDistPointsSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_DistributionPoint },
1134 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_) {
1135 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1136 CRLDistPointsSyntax_sequence_of, hf_index, ett_x509ce_CRLDistPointsSyntax);
1142 static const ber_sequence_t IssuingDistPointSyntax_sequence[] = {
1143 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1144 { &hf_x509ce_onlyContainsUserPublicKeyCerts, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1145 { &hf_x509ce_onlyContainsCACerts, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1146 { &hf_x509ce_onlySomeReasons, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
1147 { &hf_x509ce_indirectCRL , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1148 { NULL, 0, 0, 0, NULL }
1152 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_) {
1153 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1154 IssuingDistPointSyntax_sequence, hf_index, ett_x509ce_IssuingDistPointSyntax);
1162 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_) {
1163 offset = dissect_x509ce_CRLNumber(implicit_tag, tvb, offset, actx, tree, hf_index);
1169 static const ber_sequence_t ReasonInfo_sequence[] = {
1170 { &hf_x509ce_reasonCode , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_x509ce_CRLReason },
1171 { &hf_x509ce_holdInstructionCode, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_HoldInstruction },
1172 { NULL, 0, 0, 0, NULL }
1176 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_) {
1177 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1178 ReasonInfo_sequence, hf_index, ett_x509ce_ReasonInfo);
1184 static const ber_sequence_t CertificateSerialNumbers_sequence_of[1] = {
1185 { &hf_x509ce_CertificateSerialNumbers_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509af_CertificateSerialNumber },
1189 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_) {
1190 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1191 CertificateSerialNumbers_sequence_of, hf_index, ett_x509ce_CertificateSerialNumbers);
1197 static const ber_sequence_t CertificateGroupNumberRange_sequence[] = {
1198 { &hf_x509ce_startingNumber, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
1199 { &hf_x509ce_endingNumber , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_INTEGER },
1200 { NULL, 0, 0, 0, NULL }
1204 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_) {
1205 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1206 CertificateGroupNumberRange_sequence, hf_index, ett_x509ce_CertificateGroupNumberRange);
1212 static const value_string x509ce_CertificateGroup_vals[] = {
1213 { 0, "serialNumbers" },
1214 { 1, "serialNumberRange" },
1215 { 2, "nameSubtree" },
1219 static const ber_choice_t CertificateGroup_choice[] = {
1220 { 0, &hf_x509ce_serialNumbers, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateSerialNumbers },
1221 { 1, &hf_x509ce_serialNumberRange_01, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateGroupNumberRange },
1222 { 2, &hf_x509ce_nameSubtree , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralName },
1223 { 0, NULL, 0, 0, 0, NULL }
1227 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_) {
1228 offset = dissect_ber_choice(actx, tree, tvb, offset,
1229 CertificateGroup_choice, hf_index, ett_x509ce_CertificateGroup,
1236 static const ber_sequence_t ToBeRevokedGroup_sequence[] = {
1237 { &hf_x509ce_certificateIssuer, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1238 { &hf_x509ce_reasonInfo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonInfo },
1239 { &hf_x509ce_revocationTime, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralizedTime },
1240 { &hf_x509ce_certificateGroup, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_CertificateGroup },
1241 { NULL, 0, 0, 0, NULL }
1245 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_) {
1246 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1247 ToBeRevokedGroup_sequence, hf_index, ett_x509ce_ToBeRevokedGroup);
1253 static const ber_sequence_t ToBeRevokedSyntax_sequence_of[1] = {
1254 { &hf_x509ce_ToBeRevokedSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_ToBeRevokedGroup },
1258 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_) {
1259 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1260 ToBeRevokedSyntax_sequence_of, hf_index, ett_x509ce_ToBeRevokedSyntax);
1266 static const value_string x509ce_RevokedCertificateGroup_vals[] = {
1267 { 0, "serialNumberRange" },
1268 { 1, "nameSubtree" },
1272 static const ber_choice_t RevokedCertificateGroup_choice[] = {
1273 { 0, &hf_x509ce_serialNumberRange, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_NumberRange },
1274 { 1, &hf_x509ce_nameSubtree , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralName },
1275 { 0, NULL, 0, 0, 0, NULL }
1279 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_) {
1280 offset = dissect_ber_choice(actx, tree, tvb, offset,
1281 RevokedCertificateGroup_choice, hf_index, ett_x509ce_RevokedCertificateGroup,
1288 static const ber_sequence_t RevokedGroup_sequence[] = {
1289 { &hf_x509ce_certificateIssuer, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1290 { &hf_x509ce_reasonInfo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonInfo },
1291 { &hf_x509ce_invalidityDate, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1292 { &hf_x509ce_revokedcertificateGroup, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_RevokedCertificateGroup },
1293 { NULL, 0, 0, 0, NULL }
1297 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_) {
1298 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1299 RevokedGroup_sequence, hf_index, ett_x509ce_RevokedGroup);
1305 static const ber_sequence_t RevokedGroupsSyntax_sequence_of[1] = {
1306 { &hf_x509ce_RevokedGroupsSyntax_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_RevokedGroup },
1310 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_) {
1311 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1312 RevokedGroupsSyntax_sequence_of, hf_index, ett_x509ce_RevokedGroupsSyntax);
1320 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_) {
1321 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
1327 static const ber_sequence_t AAIssuingDistPointSyntax_sequence[] = {
1328 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1329 { &hf_x509ce_onlySomeReasons, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_ReasonFlags },
1330 { &hf_x509ce_indirectCRL , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1331 { &hf_x509ce_containsUserAttributeCerts, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1332 { &hf_x509ce_containsAACerts, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1333 { &hf_x509ce_containsSOAPublicKeyCerts, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_BOOLEAN },
1334 { NULL, 0, 0, 0, NULL }
1338 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_) {
1339 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1340 AAIssuingDistPointSyntax_sequence, hf_index, ett_x509ce_AAIssuingDistPointSyntax);
1346 static const ber_sequence_t CertificateExactAssertion_sequence[] = {
1347 { &hf_x509ce_serialNumber , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509af_CertificateSerialNumber },
1348 { &hf_x509ce_issuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1349 { NULL, 0, 0, 0, NULL }
1353 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_) {
1354 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1355 CertificateExactAssertion_sequence, hf_index, ett_x509ce_CertificateExactAssertion);
1361 static const value_string x509ce_T_builtinNameForm_vals[] = {
1362 { 1, "rfc822Name" },
1364 { 3, "x400Address" },
1365 { 4, "directoryName" },
1366 { 5, "ediPartyName" },
1367 { 6, "uniformResourceIdentifier" },
1369 { 8, "registeredId" },
1375 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_) {
1376 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1383 const value_string x509ce_AltNameType_vals[] = {
1384 { 0, "builtinNameForm" },
1385 { 1, "otherNameForm" },
1389 static const ber_choice_t AltNameType_choice[] = {
1390 { 0, &hf_x509ce_builtinNameForm, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_x509ce_T_builtinNameForm },
1391 { 1, &hf_x509ce_otherNameForm, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1392 { 0, NULL, 0, 0, 0, NULL }
1396 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_) {
1397 offset = dissect_ber_choice(actx, tree, tvb, offset,
1398 AltNameType_choice, hf_index, ett_x509ce_AltNameType,
1405 static const ber_sequence_t CertPolicySet_sequence_of[1] = {
1406 { &hf_x509ce_CertPolicySet_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_CertPolicyId },
1410 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_) {
1411 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1412 CertPolicySet_sequence_of, hf_index, ett_x509ce_CertPolicySet);
1418 static const ber_sequence_t CertificateAssertion_sequence[] = {
1419 { &hf_x509ce_serialNumber , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_CertificateSerialNumber },
1420 { &hf_x509ce_issuer , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1421 { &hf_x509ce_subjectKeyIdentifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SubjectKeyIdentifier },
1422 { &hf_x509ce_authorityKeyIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AuthorityKeyIdentifier },
1423 { &hf_x509ce_certificateValid, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_Time },
1424 { &hf_x509ce_privateKeyValid, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1425 { &hf_x509ce_subjectPublicKeyAlgID, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1426 { &hf_x509ce_keyUsage , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_KeyUsage },
1427 { &hf_x509ce_subjectAltName, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_AltNameType },
1428 { &hf_x509ce_policy , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertPolicySet },
1429 { &hf_x509ce_pathToName , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1430 { &hf_x509ce_subject , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1431 { &hf_x509ce_nameConstraints, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NameConstraintsSyntax },
1432 { NULL, 0, 0, 0, NULL }
1436 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_) {
1437 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1438 CertificateAssertion_sequence, hf_index, ett_x509ce_CertificateAssertion);
1444 static const ber_sequence_t CertificatePairExactAssertion_sequence[] = {
1445 { &hf_x509ce_cpea_issuedToThisCAAssertion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateExactAssertion },
1446 { &hf_x509ce_cpea_issuedByThisCAAssertion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateExactAssertion },
1447 { NULL, 0, 0, 0, NULL }
1451 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_) {
1452 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1453 CertificatePairExactAssertion_sequence, hf_index, ett_x509ce_CertificatePairExactAssertion);
1459 static const ber_sequence_t CertificatePairAssertion_sequence[] = {
1460 { &hf_x509ce_issuedToThisCAAssertion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateAssertion },
1461 { &hf_x509ce_issuedByThisCAAssertion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateAssertion },
1462 { NULL, 0, 0, 0, NULL }
1466 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_) {
1467 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1468 CertificatePairAssertion_sequence, hf_index, ett_x509ce_CertificatePairAssertion);
1474 static const ber_sequence_t CertificateListExactAssertion_sequence[] = {
1475 { &hf_x509ce_issuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1476 { &hf_x509ce_thisUpdate , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509af_Time },
1477 { &hf_x509ce_distributionPoint, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1478 { NULL, 0, 0, 0, NULL }
1482 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_) {
1483 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1484 CertificateListExactAssertion_sequence, hf_index, ett_x509ce_CertificateListExactAssertion);
1490 static const ber_sequence_t CertificateListAssertion_sequence[] = {
1491 { &hf_x509ce_issuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1492 { &hf_x509ce_minCRLNumber , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CRLNumber },
1493 { &hf_x509ce_maxCRLNumber , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CRLNumber },
1494 { &hf_x509ce_reasonFlags , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_ReasonFlags },
1495 { &hf_x509ce_dateAndTime , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509af_Time },
1496 { &hf_x509ce_distributionPoint, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_DistributionPointName },
1497 { &hf_x509ce_authorityKeyIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AuthorityKeyIdentifier },
1498 { NULL, 0, 0, 0, NULL }
1502 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_) {
1503 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1504 CertificateListAssertion_sequence, hf_index, ett_x509ce_CertificateListAssertion);
1510 static const ber_sequence_t PkiPathMatchSyntax_sequence[] = {
1511 { &hf_x509ce_firstIssuer , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1512 { &hf_x509ce_lastSubject , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509if_Name },
1513 { NULL, 0, 0, 0, NULL }
1517 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_) {
1518 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1519 PkiPathMatchSyntax_sequence, hf_index, ett_x509ce_PkiPathMatchSyntax);
1525 static const ber_sequence_t AltName_sequence[] = {
1526 { &hf_x509ce_altnameType , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_AltNameType },
1527 { &hf_x509ce_altNameValue , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x509ce_GeneralName },
1528 { NULL, 0, 0, 0, NULL }
1532 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_) {
1533 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1534 AltName_sequence, hf_index, ett_x509ce_AltName);
1540 static const ber_sequence_t EnhancedCertificateAssertion_sequence[] = {
1541 { &hf_x509ce_serialNumber , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_CertificateSerialNumber },
1542 { &hf_x509ce_issuer , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1543 { &hf_x509ce_subjectKeyIdentifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_SubjectKeyIdentifier },
1544 { &hf_x509ce_authorityKeyIdentifier, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AuthorityKeyIdentifier },
1545 { &hf_x509ce_certificateValid, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509af_Time },
1546 { &hf_x509ce_privateKeyValid, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralizedTime },
1547 { &hf_x509ce_subjectPublicKeyAlgID, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1548 { &hf_x509ce_keyUsage , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_KeyUsage },
1549 { &hf_x509ce_subjectAltName_01, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_AltName },
1550 { &hf_x509ce_policy , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertPolicySet },
1551 { &hf_x509ce_pathToName_01, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_GeneralNames },
1552 { &hf_x509ce_subject , BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509if_Name },
1553 { &hf_x509ce_nameConstraints, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_NameConstraintsSyntax },
1554 { NULL, 0, 0, 0, NULL }
1558 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_) {
1559 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1560 EnhancedCertificateAssertion_sequence, hf_index, ett_x509ce_EnhancedCertificateAssertion);
1566 static const ber_sequence_t CertificateTemplate_sequence[] = {
1567 { &hf_x509ce_templateID , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509ce_OBJECT_IDENTIFIER },
1568 { &hf_x509ce_templateMajorVersion, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER },
1569 { &hf_x509ce_templateMinorVersion, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_INTEGER },
1570 { NULL, 0, 0, 0, NULL }
1574 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_) {
1575 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1576 CertificateTemplate_sequence, hf_index, ett_x509ce_CertificateTemplate);
1584 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_) {
1585 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GeneralString,
1586 actx, tree, tvb, offset, hf_index,
1593 static const asn_namedbit EntrustInfoFlags_bits[] = {
1594 { 0, &hf_x509ce_EntrustInfoFlags_keyUpdateAllowed, -1, -1, "keyUpdateAllowed", NULL },
1595 { 1, &hf_x509ce_EntrustInfoFlags_newExtensions, -1, -1, "newExtensions", NULL },
1596 { 2, &hf_x509ce_EntrustInfoFlags_pKIXCertificate, -1, -1, "pKIXCertificate", NULL },
1597 { 3, &hf_x509ce_EntrustInfoFlags_enterpriseCategory, -1, -1, "enterpriseCategory", NULL },
1598 { 4, &hf_x509ce_EntrustInfoFlags_webCategory, -1, -1, "webCategory", NULL },
1599 { 5, &hf_x509ce_EntrustInfoFlags_sETCategory, -1, -1, "sETCategory", NULL },
1600 { 0, NULL, 0, 0, NULL, NULL }
1604 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_) {
1605 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1606 EntrustInfoFlags_bits, hf_index, ett_x509ce_EntrustInfoFlags,
1613 static const ber_sequence_t EntrustVersionInfo_sequence[] = {
1614 { &hf_x509ce_entrustVers , BER_CLASS_UNI, BER_UNI_TAG_GeneralString, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralString },
1615 { &hf_x509ce_entrustVersInfoFlags, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509ce_EntrustInfoFlags },
1616 { NULL, 0, 0, 0, NULL }
1620 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_) {
1621 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1622 EntrustVersionInfo_sequence, hf_index, ett_x509ce_EntrustVersionInfo);
1629 static void dissect_AuthorityKeyIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1630 asn1_ctx_t asn1_ctx;
1631 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1632 dissect_x509ce_AuthorityKeyIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_AuthorityKeyIdentifier_PDU);
1634 static void dissect_SubjectKeyIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1635 asn1_ctx_t asn1_ctx;
1636 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1637 dissect_x509ce_SubjectKeyIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_SubjectKeyIdentifier_PDU);
1639 static void dissect_KeyUsage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1640 asn1_ctx_t asn1_ctx;
1641 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1642 dissect_x509ce_KeyUsage(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_KeyUsage_PDU);
1644 static void dissect_KeyPurposeIDs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1645 asn1_ctx_t asn1_ctx;
1646 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1647 dissect_x509ce_KeyPurposeIDs(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_KeyPurposeIDs_PDU);
1649 static void dissect_PrivateKeyUsagePeriod_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1650 asn1_ctx_t asn1_ctx;
1651 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1652 dissect_x509ce_PrivateKeyUsagePeriod(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PrivateKeyUsagePeriod_PDU);
1654 static void dissect_CertificatePoliciesSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1655 asn1_ctx_t asn1_ctx;
1656 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1657 dissect_x509ce_CertificatePoliciesSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificatePoliciesSyntax_PDU);
1659 static void dissect_PolicyMappingsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1660 asn1_ctx_t asn1_ctx;
1661 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1662 dissect_x509ce_PolicyMappingsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PolicyMappingsSyntax_PDU);
1664 static void dissect_GeneralNames_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1665 asn1_ctx_t asn1_ctx;
1666 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1667 dissect_x509ce_GeneralNames(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_GeneralNames_PDU);
1669 static void dissect_AttributesSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1670 asn1_ctx_t asn1_ctx;
1671 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1672 dissect_x509ce_AttributesSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_AttributesSyntax_PDU);
1674 static void dissect_BasicConstraintsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1675 asn1_ctx_t asn1_ctx;
1676 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1677 dissect_x509ce_BasicConstraintsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_BasicConstraintsSyntax_PDU);
1679 static void dissect_NameConstraintsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1680 asn1_ctx_t asn1_ctx;
1681 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1682 dissect_x509ce_NameConstraintsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_NameConstraintsSyntax_PDU);
1684 static void dissect_PolicyConstraintsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1685 asn1_ctx_t asn1_ctx;
1686 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1687 dissect_x509ce_PolicyConstraintsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PolicyConstraintsSyntax_PDU);
1689 static void dissect_SkipCerts_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1690 asn1_ctx_t asn1_ctx;
1691 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1692 dissect_x509ce_SkipCerts(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_SkipCerts_PDU);
1694 static void dissect_CRLNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1695 asn1_ctx_t asn1_ctx;
1696 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1697 dissect_x509ce_CRLNumber(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLNumber_PDU);
1699 static void dissect_CRLReason_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1700 asn1_ctx_t asn1_ctx;
1701 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1702 dissect_x509ce_CRLReason(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLReason_PDU);
1704 static void dissect_HoldInstruction_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1705 asn1_ctx_t asn1_ctx;
1706 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1707 dissect_x509ce_HoldInstruction(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_HoldInstruction_PDU);
1709 static void dissect_CRLScopeSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1710 asn1_ctx_t asn1_ctx;
1711 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1712 dissect_x509ce_CRLScopeSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLScopeSyntax_PDU);
1714 static void dissect_StatusReferrals_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1715 asn1_ctx_t asn1_ctx;
1716 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1717 dissect_x509ce_StatusReferrals(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_StatusReferrals_PDU);
1719 static void dissect_CRLStreamIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1720 asn1_ctx_t asn1_ctx;
1721 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1722 dissect_x509ce_CRLStreamIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLStreamIdentifier_PDU);
1724 static void dissect_OrderedListSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1725 asn1_ctx_t asn1_ctx;
1726 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1727 dissect_x509ce_OrderedListSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_OrderedListSyntax_PDU);
1729 static void dissect_DeltaInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1730 asn1_ctx_t asn1_ctx;
1731 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1732 dissect_x509ce_DeltaInformation(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_DeltaInformation_PDU);
1734 static void dissect_CRLDistPointsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1735 asn1_ctx_t asn1_ctx;
1736 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1737 dissect_x509ce_CRLDistPointsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CRLDistPointsSyntax_PDU);
1739 static void dissect_IssuingDistPointSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1740 asn1_ctx_t asn1_ctx;
1741 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1742 dissect_x509ce_IssuingDistPointSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_IssuingDistPointSyntax_PDU);
1744 static void dissect_BaseCRLNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1745 asn1_ctx_t asn1_ctx;
1746 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1747 dissect_x509ce_BaseCRLNumber(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_BaseCRLNumber_PDU);
1749 static void dissect_ToBeRevokedSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1750 asn1_ctx_t asn1_ctx;
1751 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1752 dissect_x509ce_ToBeRevokedSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_ToBeRevokedSyntax_PDU);
1754 static void dissect_RevokedGroupsSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1755 asn1_ctx_t asn1_ctx;
1756 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1757 dissect_x509ce_RevokedGroupsSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_RevokedGroupsSyntax_PDU);
1759 static void dissect_ExpiredCertsOnCRL_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1760 asn1_ctx_t asn1_ctx;
1761 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1762 dissect_x509ce_ExpiredCertsOnCRL(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_ExpiredCertsOnCRL_PDU);
1764 static void dissect_AAIssuingDistPointSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1765 asn1_ctx_t asn1_ctx;
1766 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1767 dissect_x509ce_AAIssuingDistPointSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_AAIssuingDistPointSyntax_PDU);
1769 static void dissect_CertificateAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1770 asn1_ctx_t asn1_ctx;
1771 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1772 dissect_x509ce_CertificateAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateAssertion_PDU);
1774 static void dissect_CertificatePairExactAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1775 asn1_ctx_t asn1_ctx;
1776 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1777 dissect_x509ce_CertificatePairExactAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificatePairExactAssertion_PDU);
1779 static void dissect_CertificatePairAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1780 asn1_ctx_t asn1_ctx;
1781 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1782 dissect_x509ce_CertificatePairAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificatePairAssertion_PDU);
1784 static void dissect_CertificateListExactAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1785 asn1_ctx_t asn1_ctx;
1786 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1787 dissect_x509ce_CertificateListExactAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateListExactAssertion_PDU);
1789 static void dissect_CertificateListAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1790 asn1_ctx_t asn1_ctx;
1791 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1792 dissect_x509ce_CertificateListAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateListAssertion_PDU);
1794 static void dissect_PkiPathMatchSyntax_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1795 asn1_ctx_t asn1_ctx;
1796 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1797 dissect_x509ce_PkiPathMatchSyntax(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_PkiPathMatchSyntax_PDU);
1799 static void dissect_EnhancedCertificateAssertion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1800 asn1_ctx_t asn1_ctx;
1801 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1802 dissect_x509ce_EnhancedCertificateAssertion(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_EnhancedCertificateAssertion_PDU);
1804 static void dissect_CertificateTemplate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1805 asn1_ctx_t asn1_ctx;
1806 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1807 dissect_x509ce_CertificateTemplate(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_CertificateTemplate_PDU);
1809 static void dissect_EntrustVersionInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1810 asn1_ctx_t asn1_ctx;
1811 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1812 dissect_x509ce_EntrustVersionInfo(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_EntrustVersionInfo_PDU);
1816 /*--- End of included file: packet-x509ce-fn.c ---*/
1817 #line 59 "packet-x509ce-template.c"
1821 dissect_x509ce_invalidityDate_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
1823 asn1_ctx_t asn1_ctx;
1824 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1826 dissect_x509ce_GeneralizedTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_id_ce_invalidityDate);
1830 dissect_x509ce_baseUpdateTime_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
1832 asn1_ctx_t asn1_ctx;
1833 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1834 dissect_x509ce_GeneralizedTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_x509ce_id_ce_baseUpdateTime);
1837 /*--- proto_register_x509ce ----------------------------------------------*/
1838 void proto_register_x509ce(void) {
1840 /* List of fields */
1841 static hf_register_info hf[] = {
1842 { &hf_x509ce_id_ce_baseUpdateTime,
1843 { "baseUpdateTime", "x509ce.id_ce_baseUpdateTime",
1844 FT_STRING, BASE_NONE, NULL, 0,
1846 { &hf_x509ce_id_ce_invalidityDate,
1847 { "invalidityDate", "x509ce.id_ce_invalidityDate",
1848 FT_STRING, BASE_NONE, NULL, 0,
1850 { &hf_x509ce_object_identifier_id,
1851 { "Id", "x509ce.id", FT_OID, BASE_NONE, NULL, 0,
1852 "Object identifier Id", HFILL }},
1853 { &hf_x509ce_IPAddress,
1854 { "iPAddress", "x509ce.IPAddress", FT_IPv4, BASE_NONE, NULL, 0,
1855 "IP Address", HFILL }},
1858 /*--- Included file: packet-x509ce-hfarr.c ---*/
1859 #line 1 "packet-x509ce-hfarr.c"
1860 { &hf_x509ce_AuthorityKeyIdentifier_PDU,
1861 { "AuthorityKeyIdentifier", "x509ce.AuthorityKeyIdentifier",
1862 FT_NONE, BASE_NONE, NULL, 0,
1863 "x509ce.AuthorityKeyIdentifier", HFILL }},
1864 { &hf_x509ce_SubjectKeyIdentifier_PDU,
1865 { "SubjectKeyIdentifier", "x509ce.SubjectKeyIdentifier",
1866 FT_BYTES, BASE_NONE, NULL, 0,
1867 "x509ce.SubjectKeyIdentifier", HFILL }},
1868 { &hf_x509ce_KeyUsage_PDU,
1869 { "KeyUsage", "x509ce.KeyUsage",
1870 FT_BYTES, BASE_NONE, NULL, 0,
1871 "x509ce.KeyUsage", HFILL }},
1872 { &hf_x509ce_KeyPurposeIDs_PDU,
1873 { "KeyPurposeIDs", "x509ce.KeyPurposeIDs",
1874 FT_UINT32, BASE_DEC, NULL, 0,
1875 "x509ce.KeyPurposeIDs", HFILL }},
1876 { &hf_x509ce_PrivateKeyUsagePeriod_PDU,
1877 { "PrivateKeyUsagePeriod", "x509ce.PrivateKeyUsagePeriod",
1878 FT_NONE, BASE_NONE, NULL, 0,
1879 "x509ce.PrivateKeyUsagePeriod", HFILL }},
1880 { &hf_x509ce_CertificatePoliciesSyntax_PDU,
1881 { "CertificatePoliciesSyntax", "x509ce.CertificatePoliciesSyntax",
1882 FT_UINT32, BASE_DEC, NULL, 0,
1883 "x509ce.CertificatePoliciesSyntax", HFILL }},
1884 { &hf_x509ce_PolicyMappingsSyntax_PDU,
1885 { "PolicyMappingsSyntax", "x509ce.PolicyMappingsSyntax",
1886 FT_UINT32, BASE_DEC, NULL, 0,
1887 "x509ce.PolicyMappingsSyntax", HFILL }},
1888 { &hf_x509ce_GeneralNames_PDU,
1889 { "GeneralNames", "x509ce.GeneralNames",
1890 FT_UINT32, BASE_DEC, NULL, 0,
1891 "x509ce.GeneralNames", HFILL }},
1892 { &hf_x509ce_AttributesSyntax_PDU,
1893 { "AttributesSyntax", "x509ce.AttributesSyntax",
1894 FT_UINT32, BASE_DEC, NULL, 0,
1895 "x509ce.AttributesSyntax", HFILL }},
1896 { &hf_x509ce_BasicConstraintsSyntax_PDU,
1897 { "BasicConstraintsSyntax", "x509ce.BasicConstraintsSyntax",
1898 FT_NONE, BASE_NONE, NULL, 0,
1899 "x509ce.BasicConstraintsSyntax", HFILL }},
1900 { &hf_x509ce_NameConstraintsSyntax_PDU,
1901 { "NameConstraintsSyntax", "x509ce.NameConstraintsSyntax",
1902 FT_NONE, BASE_NONE, NULL, 0,
1903 "x509ce.NameConstraintsSyntax", HFILL }},
1904 { &hf_x509ce_PolicyConstraintsSyntax_PDU,
1905 { "PolicyConstraintsSyntax", "x509ce.PolicyConstraintsSyntax",
1906 FT_NONE, BASE_NONE, NULL, 0,
1907 "x509ce.PolicyConstraintsSyntax", HFILL }},
1908 { &hf_x509ce_SkipCerts_PDU,
1909 { "SkipCerts", "x509ce.SkipCerts",
1910 FT_UINT32, BASE_DEC, NULL, 0,
1911 "x509ce.SkipCerts", HFILL }},
1912 { &hf_x509ce_CRLNumber_PDU,
1913 { "CRLNumber", "x509ce.CRLNumber",
1914 FT_UINT32, BASE_DEC, NULL, 0,
1915 "x509ce.CRLNumber", HFILL }},
1916 { &hf_x509ce_CRLReason_PDU,
1917 { "CRLReason", "x509ce.CRLReason",
1918 FT_UINT32, BASE_DEC, VALS(x509ce_CRLReason_vals), 0,
1919 "x509ce.CRLReason", HFILL }},
1920 { &hf_x509ce_HoldInstruction_PDU,
1921 { "HoldInstruction", "x509ce.HoldInstruction",
1922 FT_OID, BASE_NONE, NULL, 0,
1923 "x509ce.HoldInstruction", HFILL }},
1924 { &hf_x509ce_CRLScopeSyntax_PDU,
1925 { "CRLScopeSyntax", "x509ce.CRLScopeSyntax",
1926 FT_UINT32, BASE_DEC, NULL, 0,
1927 "x509ce.CRLScopeSyntax", HFILL }},
1928 { &hf_x509ce_StatusReferrals_PDU,
1929 { "StatusReferrals", "x509ce.StatusReferrals",
1930 FT_UINT32, BASE_DEC, NULL, 0,
1931 "x509ce.StatusReferrals", HFILL }},
1932 { &hf_x509ce_CRLStreamIdentifier_PDU,
1933 { "CRLStreamIdentifier", "x509ce.CRLStreamIdentifier",
1934 FT_UINT32, BASE_DEC, NULL, 0,
1935 "x509ce.CRLStreamIdentifier", HFILL }},
1936 { &hf_x509ce_OrderedListSyntax_PDU,
1937 { "OrderedListSyntax", "x509ce.OrderedListSyntax",
1938 FT_UINT32, BASE_DEC, VALS(x509ce_OrderedListSyntax_vals), 0,
1939 "x509ce.OrderedListSyntax", HFILL }},
1940 { &hf_x509ce_DeltaInformation_PDU,
1941 { "DeltaInformation", "x509ce.DeltaInformation",
1942 FT_NONE, BASE_NONE, NULL, 0,
1943 "x509ce.DeltaInformation", HFILL }},
1944 { &hf_x509ce_CRLDistPointsSyntax_PDU,
1945 { "CRLDistPointsSyntax", "x509ce.CRLDistPointsSyntax",
1946 FT_UINT32, BASE_DEC, NULL, 0,
1947 "x509ce.CRLDistPointsSyntax", HFILL }},
1948 { &hf_x509ce_IssuingDistPointSyntax_PDU,
1949 { "IssuingDistPointSyntax", "x509ce.IssuingDistPointSyntax",
1950 FT_NONE, BASE_NONE, NULL, 0,
1951 "x509ce.IssuingDistPointSyntax", HFILL }},
1952 { &hf_x509ce_BaseCRLNumber_PDU,
1953 { "BaseCRLNumber", "x509ce.BaseCRLNumber",
1954 FT_UINT32, BASE_DEC, NULL, 0,
1955 "x509ce.BaseCRLNumber", HFILL }},
1956 { &hf_x509ce_ToBeRevokedSyntax_PDU,
1957 { "ToBeRevokedSyntax", "x509ce.ToBeRevokedSyntax",
1958 FT_UINT32, BASE_DEC, NULL, 0,
1959 "x509ce.ToBeRevokedSyntax", HFILL }},
1960 { &hf_x509ce_RevokedGroupsSyntax_PDU,
1961 { "RevokedGroupsSyntax", "x509ce.RevokedGroupsSyntax",
1962 FT_UINT32, BASE_DEC, NULL, 0,
1963 "x509ce.RevokedGroupsSyntax", HFILL }},
1964 { &hf_x509ce_ExpiredCertsOnCRL_PDU,
1965 { "ExpiredCertsOnCRL", "x509ce.ExpiredCertsOnCRL",
1966 FT_STRING, BASE_NONE, NULL, 0,
1967 "x509ce.ExpiredCertsOnCRL", HFILL }},
1968 { &hf_x509ce_AAIssuingDistPointSyntax_PDU,
1969 { "AAIssuingDistPointSyntax", "x509ce.AAIssuingDistPointSyntax",
1970 FT_NONE, BASE_NONE, NULL, 0,
1971 "x509ce.AAIssuingDistPointSyntax", HFILL }},
1972 { &hf_x509ce_CertificateAssertion_PDU,
1973 { "CertificateAssertion", "x509ce.CertificateAssertion",
1974 FT_NONE, BASE_NONE, NULL, 0,
1975 "x509ce.CertificateAssertion", HFILL }},
1976 { &hf_x509ce_CertificatePairExactAssertion_PDU,
1977 { "CertificatePairExactAssertion", "x509ce.CertificatePairExactAssertion",
1978 FT_NONE, BASE_NONE, NULL, 0,
1979 "x509ce.CertificatePairExactAssertion", HFILL }},
1980 { &hf_x509ce_CertificatePairAssertion_PDU,
1981 { "CertificatePairAssertion", "x509ce.CertificatePairAssertion",
1982 FT_NONE, BASE_NONE, NULL, 0,
1983 "x509ce.CertificatePairAssertion", HFILL }},
1984 { &hf_x509ce_CertificateListExactAssertion_PDU,
1985 { "CertificateListExactAssertion", "x509ce.CertificateListExactAssertion",
1986 FT_NONE, BASE_NONE, NULL, 0,
1987 "x509ce.CertificateListExactAssertion", HFILL }},
1988 { &hf_x509ce_CertificateListAssertion_PDU,
1989 { "CertificateListAssertion", "x509ce.CertificateListAssertion",
1990 FT_NONE, BASE_NONE, NULL, 0,
1991 "x509ce.CertificateListAssertion", HFILL }},
1992 { &hf_x509ce_PkiPathMatchSyntax_PDU,
1993 { "PkiPathMatchSyntax", "x509ce.PkiPathMatchSyntax",
1994 FT_NONE, BASE_NONE, NULL, 0,
1995 "x509ce.PkiPathMatchSyntax", HFILL }},
1996 { &hf_x509ce_EnhancedCertificateAssertion_PDU,
1997 { "EnhancedCertificateAssertion", "x509ce.EnhancedCertificateAssertion",
1998 FT_NONE, BASE_NONE, NULL, 0,
1999 "x509ce.EnhancedCertificateAssertion", HFILL }},
2000 { &hf_x509ce_CertificateTemplate_PDU,
2001 { "CertificateTemplate", "x509ce.CertificateTemplate",
2002 FT_NONE, BASE_NONE, NULL, 0,
2003 "x509ce.CertificateTemplate", HFILL }},
2004 { &hf_x509ce_EntrustVersionInfo_PDU,
2005 { "EntrustVersionInfo", "x509ce.EntrustVersionInfo",
2006 FT_NONE, BASE_NONE, NULL, 0,
2007 "x509ce.EntrustVersionInfo", HFILL }},
2008 { &hf_x509ce_keyIdentifier,
2009 { "keyIdentifier", "x509ce.keyIdentifier",
2010 FT_BYTES, BASE_NONE, NULL, 0,
2011 "x509ce.KeyIdentifier", HFILL }},
2012 { &hf_x509ce_authorityCertIssuer,
2013 { "authorityCertIssuer", "x509ce.authorityCertIssuer",
2014 FT_UINT32, BASE_DEC, NULL, 0,
2015 "x509ce.GeneralNames", HFILL }},
2016 { &hf_x509ce_authorityCertSerialNumber,
2017 { "authorityCertSerialNumber", "x509ce.authorityCertSerialNumber",
2018 FT_INT32, BASE_DEC, NULL, 0,
2019 "x509af.CertificateSerialNumber", HFILL }},
2020 { &hf_x509ce_KeyPurposeIDs_item,
2021 { "KeyPurposeId", "x509ce.KeyPurposeId",
2022 FT_OID, BASE_NONE, NULL, 0,
2023 "x509ce.KeyPurposeId", HFILL }},
2024 { &hf_x509ce_notBefore,
2025 { "notBefore", "x509ce.notBefore",
2026 FT_STRING, BASE_NONE, NULL, 0,
2027 "x509ce.GeneralizedTime", HFILL }},
2028 { &hf_x509ce_notAfter,
2029 { "notAfter", "x509ce.notAfter",
2030 FT_STRING, BASE_NONE, NULL, 0,
2031 "x509ce.GeneralizedTime", HFILL }},
2032 { &hf_x509ce_CertificatePoliciesSyntax_item,
2033 { "PolicyInformation", "x509ce.PolicyInformation",
2034 FT_NONE, BASE_NONE, NULL, 0,
2035 "x509ce.PolicyInformation", HFILL }},
2036 { &hf_x509ce_policyIdentifier,
2037 { "policyIdentifier", "x509ce.policyIdentifier",
2038 FT_OID, BASE_NONE, NULL, 0,
2039 "x509ce.CertPolicyId", HFILL }},
2040 { &hf_x509ce_policyQualifiers,
2041 { "policyQualifiers", "x509ce.policyQualifiers",
2042 FT_UINT32, BASE_DEC, NULL, 0,
2043 "x509ce.SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo", HFILL }},
2044 { &hf_x509ce_policyQualifiers_item,
2045 { "PolicyQualifierInfo", "x509ce.PolicyQualifierInfo",
2046 FT_NONE, BASE_NONE, NULL, 0,
2047 "x509ce.PolicyQualifierInfo", HFILL }},
2048 { &hf_x509ce_policyQualifierId,
2049 { "policyQualifierId", "x509ce.policyQualifierId",
2050 FT_OID, BASE_NONE, NULL, 0,
2051 "x509ce.T_policyQualifierId", HFILL }},
2052 { &hf_x509ce_qualifier,
2053 { "qualifier", "x509ce.qualifier",
2054 FT_NONE, BASE_NONE, NULL, 0,
2055 "x509ce.T_qualifier", HFILL }},
2056 { &hf_x509ce_PolicyMappingsSyntax_item,
2057 { "PolicyMappingsSyntax item", "x509ce.PolicyMappingsSyntax_item",
2058 FT_NONE, BASE_NONE, NULL, 0,
2059 "x509ce.PolicyMappingsSyntax_item", HFILL }},
2060 { &hf_x509ce_issuerDomainPolicy,
2061 { "issuerDomainPolicy", "x509ce.issuerDomainPolicy",
2062 FT_OID, BASE_NONE, NULL, 0,
2063 "x509ce.CertPolicyId", HFILL }},
2064 { &hf_x509ce_subjectDomainPolicy,
2065 { "subjectDomainPolicy", "x509ce.subjectDomainPolicy",
2066 FT_OID, BASE_NONE, NULL, 0,
2067 "x509ce.CertPolicyId", HFILL }},
2068 { &hf_x509ce_GeneralNames_item,
2069 { "GeneralName", "x509ce.GeneralName",
2070 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2071 "x509ce.GeneralName", HFILL }},
2072 { &hf_x509ce_otherName,
2073 { "otherName", "x509ce.otherName",
2074 FT_NONE, BASE_NONE, NULL, 0,
2075 "x509ce.OtherName", HFILL }},
2076 { &hf_x509ce_rfc822Name,
2077 { "rfc822Name", "x509ce.rfc822Name",
2078 FT_STRING, BASE_NONE, NULL, 0,
2079 "x509ce.IA5String", HFILL }},
2080 { &hf_x509ce_dNSName,
2081 { "dNSName", "x509ce.dNSName",
2082 FT_STRING, BASE_NONE, NULL, 0,
2083 "x509ce.IA5String", HFILL }},
2084 { &hf_x509ce_x400Address,
2085 { "x400Address", "x509ce.x400Address",
2086 FT_NONE, BASE_NONE, NULL, 0,
2087 "x411.ORAddress", HFILL }},
2088 { &hf_x509ce_directoryName,
2089 { "directoryName", "x509ce.directoryName",
2090 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2091 "x509if.Name", HFILL }},
2092 { &hf_x509ce_ediPartyName,
2093 { "ediPartyName", "x509ce.ediPartyName",
2094 FT_NONE, BASE_NONE, NULL, 0,
2095 "x509ce.EDIPartyName", HFILL }},
2096 { &hf_x509ce_uniformResourceIdentifier,
2097 { "uniformResourceIdentifier", "x509ce.uniformResourceIdentifier",
2098 FT_STRING, BASE_NONE, NULL, 0,
2099 "x509ce.T_uniformResourceIdentifier", HFILL }},
2100 { &hf_x509ce_iPAddress,
2101 { "iPAddress", "x509ce.iPAddress",
2102 FT_BYTES, BASE_NONE, NULL, 0,
2103 "x509ce.T_iPAddress", HFILL }},
2104 { &hf_x509ce_registeredID,
2105 { "registeredID", "x509ce.registeredID",
2106 FT_OID, BASE_NONE, NULL, 0,
2107 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2108 { &hf_x509ce_type_id,
2109 { "type-id", "x509ce.type_id",
2110 FT_OID, BASE_NONE, NULL, 0,
2111 "x509ce.OtherNameType", HFILL }},
2113 { "value", "x509ce.value",
2114 FT_NONE, BASE_NONE, NULL, 0,
2115 "x509ce.OtherNameValue", HFILL }},
2116 { &hf_x509ce_nameAssigner,
2117 { "nameAssigner", "x509ce.nameAssigner",
2118 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
2119 "x509sat.DirectoryString", HFILL }},
2120 { &hf_x509ce_partyName,
2121 { "partyName", "x509ce.partyName",
2122 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
2123 "x509sat.DirectoryString", HFILL }},
2124 { &hf_x509ce_AttributesSyntax_item,
2125 { "Attribute", "x509ce.Attribute",
2126 FT_NONE, BASE_NONE, NULL, 0,
2127 "x509if.Attribute", HFILL }},
2129 { "cA", "x509ce.cA",
2130 FT_BOOLEAN, BASE_NONE, NULL, 0,
2131 "x509ce.BOOLEAN", HFILL }},
2132 { &hf_x509ce_pathLenConstraint,
2133 { "pathLenConstraint", "x509ce.pathLenConstraint",
2134 FT_UINT32, BASE_DEC, NULL, 0,
2135 "x509ce.INTEGER_0_MAX", HFILL }},
2136 { &hf_x509ce_permittedSubtrees,
2137 { "permittedSubtrees", "x509ce.permittedSubtrees",
2138 FT_UINT32, BASE_DEC, NULL, 0,
2139 "x509ce.GeneralSubtrees", HFILL }},
2140 { &hf_x509ce_excludedSubtrees,
2141 { "excludedSubtrees", "x509ce.excludedSubtrees",
2142 FT_UINT32, BASE_DEC, NULL, 0,
2143 "x509ce.GeneralSubtrees", HFILL }},
2144 { &hf_x509ce_GeneralSubtrees_item,
2145 { "GeneralSubtree", "x509ce.GeneralSubtree",
2146 FT_NONE, BASE_NONE, NULL, 0,
2147 "x509ce.GeneralSubtree", HFILL }},
2149 { "base", "x509ce.base",
2150 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2151 "x509ce.GeneralName", HFILL }},
2152 { &hf_x509ce_minimum,
2153 { "minimum", "x509ce.minimum",
2154 FT_UINT32, BASE_DEC, NULL, 0,
2155 "x509ce.BaseDistance", HFILL }},
2156 { &hf_x509ce_maximum,
2157 { "maximum", "x509ce.maximum",
2158 FT_UINT32, BASE_DEC, NULL, 0,
2159 "x509ce.BaseDistance", HFILL }},
2160 { &hf_x509ce_requireExplicitPolicy,
2161 { "requireExplicitPolicy", "x509ce.requireExplicitPolicy",
2162 FT_UINT32, BASE_DEC, NULL, 0,
2163 "x509ce.SkipCerts", HFILL }},
2164 { &hf_x509ce_inhibitPolicyMapping,
2165 { "inhibitPolicyMapping", "x509ce.inhibitPolicyMapping",
2166 FT_UINT32, BASE_DEC, NULL, 0,
2167 "x509ce.SkipCerts", HFILL }},
2168 { &hf_x509ce_CRLScopeSyntax_item,
2169 { "PerAuthorityScope", "x509ce.PerAuthorityScope",
2170 FT_NONE, BASE_NONE, NULL, 0,
2171 "x509ce.PerAuthorityScope", HFILL }},
2172 { &hf_x509ce_authorityName,
2173 { "authorityName", "x509ce.authorityName",
2174 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2175 "x509ce.GeneralName", HFILL }},
2176 { &hf_x509ce_distributionPoint,
2177 { "distributionPoint", "x509ce.distributionPoint",
2178 FT_UINT32, BASE_DEC, VALS(x509ce_DistributionPointName_vals), 0,
2179 "x509ce.DistributionPointName", HFILL }},
2180 { &hf_x509ce_onlyContains,
2181 { "onlyContains", "x509ce.onlyContains",
2182 FT_BYTES, BASE_NONE, NULL, 0,
2183 "x509ce.OnlyCertificateTypes", HFILL }},
2184 { &hf_x509ce_onlySomeReasons,
2185 { "onlySomeReasons", "x509ce.onlySomeReasons",
2186 FT_BYTES, BASE_NONE, NULL, 0,
2187 "x509ce.ReasonFlags", HFILL }},
2188 { &hf_x509ce_serialNumberRange,
2189 { "serialNumberRange", "x509ce.serialNumberRange",
2190 FT_NONE, BASE_NONE, NULL, 0,
2191 "x509ce.NumberRange", HFILL }},
2192 { &hf_x509ce_subjectKeyIdRange,
2193 { "subjectKeyIdRange", "x509ce.subjectKeyIdRange",
2194 FT_NONE, BASE_NONE, NULL, 0,
2195 "x509ce.NumberRange", HFILL }},
2196 { &hf_x509ce_nameSubtrees,
2197 { "nameSubtrees", "x509ce.nameSubtrees",
2198 FT_UINT32, BASE_DEC, NULL, 0,
2199 "x509ce.GeneralNames", HFILL }},
2200 { &hf_x509ce_baseRevocationInfo,
2201 { "baseRevocationInfo", "x509ce.baseRevocationInfo",
2202 FT_NONE, BASE_NONE, NULL, 0,
2203 "x509ce.BaseRevocationInfo", HFILL }},
2204 { &hf_x509ce_startingNumber,
2205 { "startingNumber", "x509ce.startingNumber",
2206 FT_INT32, BASE_DEC, NULL, 0,
2207 "x509ce.INTEGER", HFILL }},
2208 { &hf_x509ce_endingNumber,
2209 { "endingNumber", "x509ce.endingNumber",
2210 FT_INT32, BASE_DEC, NULL, 0,
2211 "x509ce.INTEGER", HFILL }},
2212 { &hf_x509ce_modulus,
2213 { "modulus", "x509ce.modulus",
2214 FT_INT32, BASE_DEC, NULL, 0,
2215 "x509ce.INTEGER", HFILL }},
2216 { &hf_x509ce_cRLStreamIdentifier,
2217 { "cRLStreamIdentifier", "x509ce.cRLStreamIdentifier",
2218 FT_UINT32, BASE_DEC, NULL, 0,
2219 "x509ce.CRLStreamIdentifier", HFILL }},
2220 { &hf_x509ce_cRLNumber,
2221 { "cRLNumber", "x509ce.cRLNumber",
2222 FT_UINT32, BASE_DEC, NULL, 0,
2223 "x509ce.CRLNumber", HFILL }},
2224 { &hf_x509ce_baseThisUpdate,
2225 { "baseThisUpdate", "x509ce.baseThisUpdate",
2226 FT_STRING, BASE_NONE, NULL, 0,
2227 "x509ce.GeneralizedTime", HFILL }},
2228 { &hf_x509ce_StatusReferrals_item,
2229 { "StatusReferral", "x509ce.StatusReferral",
2230 FT_UINT32, BASE_DEC, VALS(x509ce_StatusReferral_vals), 0,
2231 "x509ce.StatusReferral", HFILL }},
2232 { &hf_x509ce_cRLReferral,
2233 { "cRLReferral", "x509ce.cRLReferral",
2234 FT_NONE, BASE_NONE, NULL, 0,
2235 "x509ce.CRLReferral", HFILL }},
2236 { &hf_x509ce_crlr_issuer,
2237 { "issuer", "x509ce.issuer",
2238 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2239 "x509ce.GeneralName", HFILL }},
2240 { &hf_x509ce_location,
2241 { "location", "x509ce.location",
2242 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2243 "x509ce.GeneralName", HFILL }},
2244 { &hf_x509ce_deltaRefInfo,
2245 { "deltaRefInfo", "x509ce.deltaRefInfo",
2246 FT_NONE, BASE_NONE, NULL, 0,
2247 "x509ce.DeltaRefInfo", HFILL }},
2248 { &hf_x509ce_cRLScope,
2249 { "cRLScope", "x509ce.cRLScope",
2250 FT_UINT32, BASE_DEC, NULL, 0,
2251 "x509ce.CRLScopeSyntax", HFILL }},
2252 { &hf_x509ce_lastUpdate,
2253 { "lastUpdate", "x509ce.lastUpdate",
2254 FT_STRING, BASE_NONE, NULL, 0,
2255 "x509ce.GeneralizedTime", HFILL }},
2256 { &hf_x509ce_lastChangedCRL,
2257 { "lastChangedCRL", "x509ce.lastChangedCRL",
2258 FT_STRING, BASE_NONE, NULL, 0,
2259 "x509ce.GeneralizedTime", HFILL }},
2260 { &hf_x509ce_deltaLocation,
2261 { "deltaLocation", "x509ce.deltaLocation",
2262 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2263 "x509ce.GeneralName", HFILL }},
2264 { &hf_x509ce_lastDelta,
2265 { "lastDelta", "x509ce.lastDelta",
2266 FT_STRING, BASE_NONE, NULL, 0,
2267 "x509ce.GeneralizedTime", HFILL }},
2268 { &hf_x509ce_nextDelta,
2269 { "nextDelta", "x509ce.nextDelta",
2270 FT_STRING, BASE_NONE, NULL, 0,
2271 "x509ce.GeneralizedTime", HFILL }},
2272 { &hf_x509ce_CRLDistPointsSyntax_item,
2273 { "DistributionPoint", "x509ce.DistributionPoint",
2274 FT_NONE, BASE_NONE, NULL, 0,
2275 "x509ce.DistributionPoint", HFILL }},
2276 { &hf_x509ce_reasons,
2277 { "reasons", "x509ce.reasons",
2278 FT_BYTES, BASE_NONE, NULL, 0,
2279 "x509ce.ReasonFlags", HFILL }},
2280 { &hf_x509ce_cRLIssuer,
2281 { "cRLIssuer", "x509ce.cRLIssuer",
2282 FT_UINT32, BASE_DEC, NULL, 0,
2283 "x509ce.GeneralNames", HFILL }},
2284 { &hf_x509ce_fullName,
2285 { "fullName", "x509ce.fullName",
2286 FT_UINT32, BASE_DEC, NULL, 0,
2287 "x509ce.GeneralNames", HFILL }},
2288 { &hf_x509ce_nameRelativeToCRLIssuer,
2289 { "nameRelativeToCRLIssuer", "x509ce.nameRelativeToCRLIssuer",
2290 FT_UINT32, BASE_DEC, NULL, 0,
2291 "x509if.RelativeDistinguishedName", HFILL }},
2292 { &hf_x509ce_onlyContainsUserPublicKeyCerts,
2293 { "onlyContainsUserPublicKeyCerts", "x509ce.onlyContainsUserPublicKeyCerts",
2294 FT_BOOLEAN, BASE_NONE, NULL, 0,
2295 "x509ce.BOOLEAN", HFILL }},
2296 { &hf_x509ce_onlyContainsCACerts,
2297 { "onlyContainsCACerts", "x509ce.onlyContainsCACerts",
2298 FT_BOOLEAN, BASE_NONE, NULL, 0,
2299 "x509ce.BOOLEAN", HFILL }},
2300 { &hf_x509ce_indirectCRL,
2301 { "indirectCRL", "x509ce.indirectCRL",
2302 FT_BOOLEAN, BASE_NONE, NULL, 0,
2303 "x509ce.BOOLEAN", HFILL }},
2304 { &hf_x509ce_ToBeRevokedSyntax_item,
2305 { "ToBeRevokedGroup", "x509ce.ToBeRevokedGroup",
2306 FT_NONE, BASE_NONE, NULL, 0,
2307 "x509ce.ToBeRevokedGroup", HFILL }},
2308 { &hf_x509ce_certificateIssuer,
2309 { "certificateIssuer", "x509ce.certificateIssuer",
2310 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2311 "x509ce.GeneralName", HFILL }},
2312 { &hf_x509ce_reasonInfo,
2313 { "reasonInfo", "x509ce.reasonInfo",
2314 FT_NONE, BASE_NONE, NULL, 0,
2315 "x509ce.ReasonInfo", HFILL }},
2316 { &hf_x509ce_revocationTime,
2317 { "revocationTime", "x509ce.revocationTime",
2318 FT_STRING, BASE_NONE, NULL, 0,
2319 "x509ce.GeneralizedTime", HFILL }},
2320 { &hf_x509ce_certificateGroup,
2321 { "certificateGroup", "x509ce.certificateGroup",
2322 FT_UINT32, BASE_DEC, VALS(x509ce_CertificateGroup_vals), 0,
2323 "x509ce.CertificateGroup", HFILL }},
2324 { &hf_x509ce_reasonCode,
2325 { "reasonCode", "x509ce.reasonCode",
2326 FT_UINT32, BASE_DEC, VALS(x509ce_CRLReason_vals), 0,
2327 "x509ce.CRLReason", HFILL }},
2328 { &hf_x509ce_holdInstructionCode,
2329 { "holdInstructionCode", "x509ce.holdInstructionCode",
2330 FT_OID, BASE_NONE, NULL, 0,
2331 "x509ce.HoldInstruction", HFILL }},
2332 { &hf_x509ce_serialNumbers,
2333 { "serialNumbers", "x509ce.serialNumbers",
2334 FT_UINT32, BASE_DEC, NULL, 0,
2335 "x509ce.CertificateSerialNumbers", HFILL }},
2336 { &hf_x509ce_serialNumberRange_01,
2337 { "serialNumberRange", "x509ce.serialNumberRange",
2338 FT_NONE, BASE_NONE, NULL, 0,
2339 "x509ce.CertificateGroupNumberRange", HFILL }},
2340 { &hf_x509ce_nameSubtree,
2341 { "nameSubtree", "x509ce.nameSubtree",
2342 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2343 "x509ce.GeneralName", HFILL }},
2344 { &hf_x509ce_CertificateSerialNumbers_item,
2345 { "CertificateSerialNumber", "x509ce.CertificateSerialNumber",
2346 FT_INT32, BASE_DEC, NULL, 0,
2347 "x509af.CertificateSerialNumber", HFILL }},
2348 { &hf_x509ce_RevokedGroupsSyntax_item,
2349 { "RevokedGroup", "x509ce.RevokedGroup",
2350 FT_NONE, BASE_NONE, NULL, 0,
2351 "x509ce.RevokedGroup", HFILL }},
2352 { &hf_x509ce_invalidityDate,
2353 { "invalidityDate", "x509ce.invalidityDate",
2354 FT_STRING, BASE_NONE, NULL, 0,
2355 "x509ce.GeneralizedTime", HFILL }},
2356 { &hf_x509ce_revokedcertificateGroup,
2357 { "revokedcertificateGroup", "x509ce.revokedcertificateGroup",
2358 FT_UINT32, BASE_DEC, VALS(x509ce_RevokedCertificateGroup_vals), 0,
2359 "x509ce.RevokedCertificateGroup", HFILL }},
2360 { &hf_x509ce_containsUserAttributeCerts,
2361 { "containsUserAttributeCerts", "x509ce.containsUserAttributeCerts",
2362 FT_BOOLEAN, BASE_NONE, NULL, 0,
2363 "x509ce.BOOLEAN", HFILL }},
2364 { &hf_x509ce_containsAACerts,
2365 { "containsAACerts", "x509ce.containsAACerts",
2366 FT_BOOLEAN, BASE_NONE, NULL, 0,
2367 "x509ce.BOOLEAN", HFILL }},
2368 { &hf_x509ce_containsSOAPublicKeyCerts,
2369 { "containsSOAPublicKeyCerts", "x509ce.containsSOAPublicKeyCerts",
2370 FT_BOOLEAN, BASE_NONE, NULL, 0,
2371 "x509ce.BOOLEAN", HFILL }},
2372 { &hf_x509ce_serialNumber,
2373 { "serialNumber", "x509ce.serialNumber",
2374 FT_INT32, BASE_DEC, NULL, 0,
2375 "x509af.CertificateSerialNumber", HFILL }},
2376 { &hf_x509ce_issuer,
2377 { "issuer", "x509ce.issuer",
2378 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2379 "x509if.Name", HFILL }},
2380 { &hf_x509ce_subjectKeyIdentifier,
2381 { "subjectKeyIdentifier", "x509ce.subjectKeyIdentifier",
2382 FT_BYTES, BASE_NONE, NULL, 0,
2383 "x509ce.SubjectKeyIdentifier", HFILL }},
2384 { &hf_x509ce_authorityKeyIdentifier,
2385 { "authorityKeyIdentifier", "x509ce.authorityKeyIdentifier",
2386 FT_NONE, BASE_NONE, NULL, 0,
2387 "x509ce.AuthorityKeyIdentifier", HFILL }},
2388 { &hf_x509ce_certificateValid,
2389 { "certificateValid", "x509ce.certificateValid",
2390 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2391 "x509af.Time", HFILL }},
2392 { &hf_x509ce_privateKeyValid,
2393 { "privateKeyValid", "x509ce.privateKeyValid",
2394 FT_STRING, BASE_NONE, NULL, 0,
2395 "x509ce.GeneralizedTime", HFILL }},
2396 { &hf_x509ce_subjectPublicKeyAlgID,
2397 { "subjectPublicKeyAlgID", "x509ce.subjectPublicKeyAlgID",
2398 FT_OID, BASE_NONE, NULL, 0,
2399 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2400 { &hf_x509ce_keyUsage,
2401 { "keyUsage", "x509ce.keyUsage",
2402 FT_BYTES, BASE_NONE, NULL, 0,
2403 "x509ce.KeyUsage", HFILL }},
2404 { &hf_x509ce_subjectAltName,
2405 { "subjectAltName", "x509ce.subjectAltName",
2406 FT_UINT32, BASE_DEC, VALS(x509ce_AltNameType_vals), 0,
2407 "x509ce.AltNameType", HFILL }},
2408 { &hf_x509ce_policy,
2409 { "policy", "x509ce.policy",
2410 FT_UINT32, BASE_DEC, NULL, 0,
2411 "x509ce.CertPolicySet", HFILL }},
2412 { &hf_x509ce_pathToName,
2413 { "pathToName", "x509ce.pathToName",
2414 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2415 "x509if.Name", HFILL }},
2416 { &hf_x509ce_subject,
2417 { "subject", "x509ce.subject",
2418 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2419 "x509if.Name", HFILL }},
2420 { &hf_x509ce_nameConstraints,
2421 { "nameConstraints", "x509ce.nameConstraints",
2422 FT_NONE, BASE_NONE, NULL, 0,
2423 "x509ce.NameConstraintsSyntax", HFILL }},
2424 { &hf_x509ce_builtinNameForm,
2425 { "builtinNameForm", "x509ce.builtinNameForm",
2426 FT_UINT32, BASE_DEC, VALS(x509ce_T_builtinNameForm_vals), 0,
2427 "x509ce.T_builtinNameForm", HFILL }},
2428 { &hf_x509ce_otherNameForm,
2429 { "otherNameForm", "x509ce.otherNameForm",
2430 FT_OID, BASE_NONE, NULL, 0,
2431 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2432 { &hf_x509ce_CertPolicySet_item,
2433 { "CertPolicyId", "x509ce.CertPolicyId",
2434 FT_OID, BASE_NONE, NULL, 0,
2435 "x509ce.CertPolicyId", HFILL }},
2436 { &hf_x509ce_cpea_issuedToThisCAAssertion,
2437 { "issuedToThisCAAssertion", "x509ce.issuedToThisCAAssertion",
2438 FT_NONE, BASE_NONE, NULL, 0,
2439 "x509ce.CertificateExactAssertion", HFILL }},
2440 { &hf_x509ce_cpea_issuedByThisCAAssertion,
2441 { "issuedByThisCAAssertion", "x509ce.issuedByThisCAAssertion",
2442 FT_NONE, BASE_NONE, NULL, 0,
2443 "x509ce.CertificateExactAssertion", HFILL }},
2444 { &hf_x509ce_issuedToThisCAAssertion,
2445 { "issuedToThisCAAssertion", "x509ce.issuedToThisCAAssertion",
2446 FT_NONE, BASE_NONE, NULL, 0,
2447 "x509ce.CertificateAssertion", HFILL }},
2448 { &hf_x509ce_issuedByThisCAAssertion,
2449 { "issuedByThisCAAssertion", "x509ce.issuedByThisCAAssertion",
2450 FT_NONE, BASE_NONE, NULL, 0,
2451 "x509ce.CertificateAssertion", HFILL }},
2452 { &hf_x509ce_thisUpdate,
2453 { "thisUpdate", "x509ce.thisUpdate",
2454 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2455 "x509af.Time", HFILL }},
2456 { &hf_x509ce_minCRLNumber,
2457 { "minCRLNumber", "x509ce.minCRLNumber",
2458 FT_UINT32, BASE_DEC, NULL, 0,
2459 "x509ce.CRLNumber", HFILL }},
2460 { &hf_x509ce_maxCRLNumber,
2461 { "maxCRLNumber", "x509ce.maxCRLNumber",
2462 FT_UINT32, BASE_DEC, NULL, 0,
2463 "x509ce.CRLNumber", HFILL }},
2464 { &hf_x509ce_reasonFlags,
2465 { "reasonFlags", "x509ce.reasonFlags",
2466 FT_BYTES, BASE_NONE, NULL, 0,
2467 "x509ce.ReasonFlags", HFILL }},
2468 { &hf_x509ce_dateAndTime,
2469 { "dateAndTime", "x509ce.dateAndTime",
2470 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2471 "x509af.Time", HFILL }},
2472 { &hf_x509ce_firstIssuer,
2473 { "firstIssuer", "x509ce.firstIssuer",
2474 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2475 "x509if.Name", HFILL }},
2476 { &hf_x509ce_lastSubject,
2477 { "lastSubject", "x509ce.lastSubject",
2478 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2479 "x509if.Name", HFILL }},
2480 { &hf_x509ce_subjectAltName_01,
2481 { "subjectAltName", "x509ce.subjectAltName",
2482 FT_NONE, BASE_NONE, NULL, 0,
2483 "x509ce.AltName", HFILL }},
2484 { &hf_x509ce_pathToName_01,
2485 { "pathToName", "x509ce.pathToName",
2486 FT_UINT32, BASE_DEC, NULL, 0,
2487 "x509ce.GeneralNames", HFILL }},
2488 { &hf_x509ce_altnameType,
2489 { "altnameType", "x509ce.altnameType",
2490 FT_UINT32, BASE_DEC, VALS(x509ce_AltNameType_vals), 0,
2491 "x509ce.AltNameType", HFILL }},
2492 { &hf_x509ce_altNameValue,
2493 { "altNameValue", "x509ce.altNameValue",
2494 FT_UINT32, BASE_DEC, VALS(x509ce_GeneralName_vals), 0,
2495 "x509ce.GeneralName", HFILL }},
2496 { &hf_x509ce_templateID,
2497 { "templateID", "x509ce.templateID",
2498 FT_OID, BASE_NONE, NULL, 0,
2499 "x509ce.OBJECT_IDENTIFIER", HFILL }},
2500 { &hf_x509ce_templateMajorVersion,
2501 { "templateMajorVersion", "x509ce.templateMajorVersion",
2502 FT_INT32, BASE_DEC, NULL, 0,
2503 "x509ce.INTEGER", HFILL }},
2504 { &hf_x509ce_templateMinorVersion,
2505 { "templateMinorVersion", "x509ce.templateMinorVersion",
2506 FT_INT32, BASE_DEC, NULL, 0,
2507 "x509ce.INTEGER", HFILL }},
2508 { &hf_x509ce_entrustVers,
2509 { "entrustVers", "x509ce.entrustVers",
2510 FT_STRING, BASE_NONE, NULL, 0,
2511 "x509ce.GeneralString", HFILL }},
2512 { &hf_x509ce_entrustVersInfoFlags,
2513 { "entrustVersInfoFlags", "x509ce.entrustVersInfoFlags",
2514 FT_BYTES, BASE_NONE, NULL, 0,
2515 "x509ce.EntrustInfoFlags", HFILL }},
2516 { &hf_x509ce_KeyUsage_digitalSignature,
2517 { "digitalSignature", "x509ce.digitalSignature",
2518 FT_BOOLEAN, 8, NULL, 0x80,
2520 { &hf_x509ce_KeyUsage_contentCommitment,
2521 { "contentCommitment", "x509ce.contentCommitment",
2522 FT_BOOLEAN, 8, NULL, 0x40,
2524 { &hf_x509ce_KeyUsage_keyEncipherment,
2525 { "keyEncipherment", "x509ce.keyEncipherment",
2526 FT_BOOLEAN, 8, NULL, 0x20,
2528 { &hf_x509ce_KeyUsage_dataEncipherment,
2529 { "dataEncipherment", "x509ce.dataEncipherment",
2530 FT_BOOLEAN, 8, NULL, 0x10,
2532 { &hf_x509ce_KeyUsage_keyAgreement,
2533 { "keyAgreement", "x509ce.keyAgreement",
2534 FT_BOOLEAN, 8, NULL, 0x08,
2536 { &hf_x509ce_KeyUsage_keyCertSign,
2537 { "keyCertSign", "x509ce.keyCertSign",
2538 FT_BOOLEAN, 8, NULL, 0x04,
2540 { &hf_x509ce_KeyUsage_cRLSign,
2541 { "cRLSign", "x509ce.cRLSign",
2542 FT_BOOLEAN, 8, NULL, 0x02,
2544 { &hf_x509ce_KeyUsage_encipherOnly,
2545 { "encipherOnly", "x509ce.encipherOnly",
2546 FT_BOOLEAN, 8, NULL, 0x01,
2548 { &hf_x509ce_KeyUsage_decipherOnly,
2549 { "decipherOnly", "x509ce.decipherOnly",
2550 FT_BOOLEAN, 8, NULL, 0x80,
2552 { &hf_x509ce_OnlyCertificateTypes_user,
2553 { "user", "x509ce.user",
2554 FT_BOOLEAN, 8, NULL, 0x80,
2556 { &hf_x509ce_OnlyCertificateTypes_authority,
2557 { "authority", "x509ce.authority",
2558 FT_BOOLEAN, 8, NULL, 0x40,
2560 { &hf_x509ce_OnlyCertificateTypes_attribute,
2561 { "attribute", "x509ce.attribute",
2562 FT_BOOLEAN, 8, NULL, 0x20,
2564 { &hf_x509ce_ReasonFlags_unused,
2565 { "unused", "x509ce.unused",
2566 FT_BOOLEAN, 8, NULL, 0x80,
2568 { &hf_x509ce_ReasonFlags_keyCompromise,
2569 { "keyCompromise", "x509ce.keyCompromise",
2570 FT_BOOLEAN, 8, NULL, 0x40,
2572 { &hf_x509ce_ReasonFlags_cACompromise,
2573 { "cACompromise", "x509ce.cACompromise",
2574 FT_BOOLEAN, 8, NULL, 0x20,
2576 { &hf_x509ce_ReasonFlags_affiliationChanged,
2577 { "affiliationChanged", "x509ce.affiliationChanged",
2578 FT_BOOLEAN, 8, NULL, 0x10,
2580 { &hf_x509ce_ReasonFlags_superseded,
2581 { "superseded", "x509ce.superseded",
2582 FT_BOOLEAN, 8, NULL, 0x08,
2584 { &hf_x509ce_ReasonFlags_cessationOfOperation,
2585 { "cessationOfOperation", "x509ce.cessationOfOperation",
2586 FT_BOOLEAN, 8, NULL, 0x04,
2588 { &hf_x509ce_ReasonFlags_certificateHold,
2589 { "certificateHold", "x509ce.certificateHold",
2590 FT_BOOLEAN, 8, NULL, 0x02,
2592 { &hf_x509ce_ReasonFlags_privilegeWithdrawn,
2593 { "privilegeWithdrawn", "x509ce.privilegeWithdrawn",
2594 FT_BOOLEAN, 8, NULL, 0x01,
2596 { &hf_x509ce_ReasonFlags_aACompromise,
2597 { "aACompromise", "x509ce.aACompromise",
2598 FT_BOOLEAN, 8, NULL, 0x80,
2600 { &hf_x509ce_EntrustInfoFlags_keyUpdateAllowed,
2601 { "keyUpdateAllowed", "x509ce.keyUpdateAllowed",
2602 FT_BOOLEAN, 8, NULL, 0x80,
2604 { &hf_x509ce_EntrustInfoFlags_newExtensions,
2605 { "newExtensions", "x509ce.newExtensions",
2606 FT_BOOLEAN, 8, NULL, 0x40,
2608 { &hf_x509ce_EntrustInfoFlags_pKIXCertificate,
2609 { "pKIXCertificate", "x509ce.pKIXCertificate",
2610 FT_BOOLEAN, 8, NULL, 0x20,
2612 { &hf_x509ce_EntrustInfoFlags_enterpriseCategory,
2613 { "enterpriseCategory", "x509ce.enterpriseCategory",
2614 FT_BOOLEAN, 8, NULL, 0x10,
2616 { &hf_x509ce_EntrustInfoFlags_webCategory,
2617 { "webCategory", "x509ce.webCategory",
2618 FT_BOOLEAN, 8, NULL, 0x08,
2620 { &hf_x509ce_EntrustInfoFlags_sETCategory,
2621 { "sETCategory", "x509ce.sETCategory",
2622 FT_BOOLEAN, 8, NULL, 0x04,
2625 /*--- End of included file: packet-x509ce-hfarr.c ---*/
2626 #line 99 "packet-x509ce-template.c"
2629 /* List of subtrees */
2630 static gint *ett[] = {
2632 /*--- Included file: packet-x509ce-ettarr.c ---*/
2633 #line 1 "packet-x509ce-ettarr.c"
2634 &ett_x509ce_AuthorityKeyIdentifier,
2635 &ett_x509ce_KeyUsage,
2636 &ett_x509ce_KeyPurposeIDs,
2637 &ett_x509ce_PrivateKeyUsagePeriod,
2638 &ett_x509ce_CertificatePoliciesSyntax,
2639 &ett_x509ce_PolicyInformation,
2640 &ett_x509ce_SEQUENCE_SIZE_1_MAX_OF_PolicyQualifierInfo,
2641 &ett_x509ce_PolicyQualifierInfo,
2642 &ett_x509ce_PolicyMappingsSyntax,
2643 &ett_x509ce_PolicyMappingsSyntax_item,
2644 &ett_x509ce_GeneralNames,
2645 &ett_x509ce_GeneralName,
2646 &ett_x509ce_OtherName,
2647 &ett_x509ce_EDIPartyName,
2648 &ett_x509ce_AttributesSyntax,
2649 &ett_x509ce_BasicConstraintsSyntax,
2650 &ett_x509ce_NameConstraintsSyntax,
2651 &ett_x509ce_GeneralSubtrees,
2652 &ett_x509ce_GeneralSubtree,
2653 &ett_x509ce_PolicyConstraintsSyntax,
2654 &ett_x509ce_CRLScopeSyntax,
2655 &ett_x509ce_PerAuthorityScope,
2656 &ett_x509ce_OnlyCertificateTypes,
2657 &ett_x509ce_NumberRange,
2658 &ett_x509ce_BaseRevocationInfo,
2659 &ett_x509ce_StatusReferrals,
2660 &ett_x509ce_StatusReferral,
2661 &ett_x509ce_CRLReferral,
2662 &ett_x509ce_DeltaRefInfo,
2663 &ett_x509ce_DeltaInformation,
2664 &ett_x509ce_CRLDistPointsSyntax,
2665 &ett_x509ce_DistributionPoint,
2666 &ett_x509ce_DistributionPointName,
2667 &ett_x509ce_ReasonFlags,
2668 &ett_x509ce_IssuingDistPointSyntax,
2669 &ett_x509ce_ToBeRevokedSyntax,
2670 &ett_x509ce_ToBeRevokedGroup,
2671 &ett_x509ce_ReasonInfo,
2672 &ett_x509ce_CertificateGroup,
2673 &ett_x509ce_CertificateGroupNumberRange,
2674 &ett_x509ce_CertificateSerialNumbers,
2675 &ett_x509ce_RevokedGroupsSyntax,
2676 &ett_x509ce_RevokedGroup,
2677 &ett_x509ce_RevokedCertificateGroup,
2678 &ett_x509ce_AAIssuingDistPointSyntax,
2679 &ett_x509ce_CertificateExactAssertion,
2680 &ett_x509ce_CertificateAssertion,
2681 &ett_x509ce_AltNameType,
2682 &ett_x509ce_CertPolicySet,
2683 &ett_x509ce_CertificatePairExactAssertion,
2684 &ett_x509ce_CertificatePairAssertion,
2685 &ett_x509ce_CertificateListExactAssertion,
2686 &ett_x509ce_CertificateListAssertion,
2687 &ett_x509ce_PkiPathMatchSyntax,
2688 &ett_x509ce_EnhancedCertificateAssertion,
2689 &ett_x509ce_AltName,
2690 &ett_x509ce_CertificateTemplate,
2691 &ett_x509ce_EntrustVersionInfo,
2692 &ett_x509ce_EntrustInfoFlags,
2694 /*--- End of included file: packet-x509ce-ettarr.c ---*/
2695 #line 104 "packet-x509ce-template.c"
2698 /* Register protocol */
2699 proto_x509ce = proto_register_protocol(PNAME, PSNAME, PFNAME);
2701 /* Register fields and subtrees */
2702 proto_register_field_array(proto_x509ce, hf, array_length(hf));
2703 proto_register_subtree_array(ett, array_length(ett));
2708 /*--- proto_reg_handoff_x509ce -------------------------------------------*/
2709 void proto_reg_handoff_x509ce(void) {
2711 /*--- Included file: packet-x509ce-dis-tab.c ---*/
2712 #line 1 "packet-x509ce-dis-tab.c"
2713 register_ber_oid_dissector("2.5.29.9", dissect_AttributesSyntax_PDU, proto_x509ce, "id-ce-subjectDirectoryAttributes");
2714 register_ber_oid_dissector("2.5.29.14", dissect_SubjectKeyIdentifier_PDU, proto_x509ce, "id-ce-subjectKeyIdentifier");
2715 register_ber_oid_dissector("2.5.29.15", dissect_KeyUsage_PDU, proto_x509ce, "id-ce-keyUsage");
2716 register_ber_oid_dissector("2.5.29.16", dissect_PrivateKeyUsagePeriod_PDU, proto_x509ce, "id-ce-privateKeyUsagePeriod");
2717 register_ber_oid_dissector("2.5.29.17", dissect_GeneralNames_PDU, proto_x509ce, "id-ce-subjectAltName");
2718 register_ber_oid_dissector("2.5.29.18", dissect_GeneralNames_PDU, proto_x509ce, "id-ce-issuerAltName");
2719 register_ber_oid_dissector("2.5.29.19", dissect_BasicConstraintsSyntax_PDU, proto_x509ce, "id-ce-basicConstraints");
2720 register_ber_oid_dissector("2.5.29.20", dissect_CRLNumber_PDU, proto_x509ce, "id-ce-cRLNumber");
2721 register_ber_oid_dissector("2.5.29.21", dissect_CRLReason_PDU, proto_x509ce, "id-ce-reasonCode");
2722 register_ber_oid_dissector("2.5.29.23", dissect_HoldInstruction_PDU, proto_x509ce, "id-ce-instructionCode");
2723 register_ber_oid_dissector("2.5.29.27", dissect_BaseCRLNumber_PDU, proto_x509ce, "id-ce-deltaCRLIndicator");
2724 register_ber_oid_dissector("2.5.29.28", dissect_IssuingDistPointSyntax_PDU, proto_x509ce, "id-ce-issuingDistributionPoint");
2725 register_ber_oid_dissector("2.5.29.29", dissect_GeneralNames_PDU, proto_x509ce, "id-ce-certificateIssuer");
2726 register_ber_oid_dissector("2.5.29.30", dissect_NameConstraintsSyntax_PDU, proto_x509ce, "id-ce-nameConstraints");
2727 register_ber_oid_dissector("2.5.29.31", dissect_CRLDistPointsSyntax_PDU, proto_x509ce, "id-ce-cRLDistributionPoints");
2728 register_ber_oid_dissector("2.5.29.32", dissect_CertificatePoliciesSyntax_PDU, proto_x509ce, "id-ce-certificatePolicies");
2729 register_ber_oid_dissector("2.5.29.33", dissect_PolicyMappingsSyntax_PDU, proto_x509ce, "id-ce-policyMappings");
2730 register_ber_oid_dissector("2.5.29.35", dissect_AuthorityKeyIdentifier_PDU, proto_x509ce, "id-ce-authorityKeyIdentifier");
2731 register_ber_oid_dissector("2.5.29.36", dissect_PolicyConstraintsSyntax_PDU, proto_x509ce, "id-ce-policyConstraints");
2732 register_ber_oid_dissector("2.5.29.37", dissect_KeyPurposeIDs_PDU, proto_x509ce, "id-ce-extKeyUsage");
2733 register_ber_oid_dissector("2.5.29.40", dissect_CRLStreamIdentifier_PDU, proto_x509ce, "id-ce-cRLStreamIdentifier");
2734 register_ber_oid_dissector("2.5.29.44", dissect_CRLScopeSyntax_PDU, proto_x509ce, "id-ce-cRLScope");
2735 register_ber_oid_dissector("2.5.29.45", dissect_StatusReferrals_PDU, proto_x509ce, "id-ce-statusReferrals");
2736 register_ber_oid_dissector("2.5.29.46", dissect_CRLDistPointsSyntax_PDU, proto_x509ce, "id-ce-freshestCRL");
2737 register_ber_oid_dissector("2.5.29.47", dissect_OrderedListSyntax_PDU, proto_x509ce, "id-ce-orderedList");
2738 register_ber_oid_dissector("2.5.29.53", dissect_DeltaInformation_PDU, proto_x509ce, "id-ce-deltaInfo");
2739 register_ber_oid_dissector("2.5.29.54", dissect_SkipCerts_PDU, proto_x509ce, "id-ce-inhibitAnyPolicy");
2740 register_ber_oid_dissector("2.5.29.58", dissect_ToBeRevokedSyntax_PDU, proto_x509ce, "id-ce-toBeRevoked");
2741 register_ber_oid_dissector("2.5.29.59", dissect_RevokedGroupsSyntax_PDU, proto_x509ce, "id-ce-RevokedGroups");
2742 register_ber_oid_dissector("2.5.29.60", dissect_ExpiredCertsOnCRL_PDU, proto_x509ce, "id-ce-expiredCertsOnCRL");
2743 register_ber_oid_dissector("2.5.29.61", dissect_AAIssuingDistPointSyntax_PDU, proto_x509ce, "id-ce-aAissuingDistributionPoint");
2744 register_ber_oid_dissector("2.5.13.35", dissect_CertificateAssertion_PDU, proto_x509ce, "id-mr-certificateMatch");
2745 register_ber_oid_dissector("2.5.13.36", dissect_CertificatePairExactAssertion_PDU, proto_x509ce, "id-mr-certificatePairExactMatch");
2746 register_ber_oid_dissector("2.5.13.37", dissect_CertificatePairAssertion_PDU, proto_x509ce, "id-mr-certificatePairMatch");
2747 register_ber_oid_dissector("2.5.13.38", dissect_CertificateListExactAssertion_PDU, proto_x509ce, "id-mr-certificateListExactMatch");
2748 register_ber_oid_dissector("2.5.13.39", dissect_CertificateListAssertion_PDU, proto_x509ce, "id-mr-certificateListMatch");
2749 register_ber_oid_dissector("2.5.13.62", dissect_PkiPathMatchSyntax_PDU, proto_x509ce, "id-mr-pkiPathMatch");
2750 register_ber_oid_dissector("2.5.13.65", dissect_EnhancedCertificateAssertion_PDU, proto_x509ce, "id-mr-enhancedCertificateMatch");
2751 register_ber_oid_dissector("1.3.6.1.4.1.311.21.7", dissect_CertificateTemplate_PDU, proto_x509ce, "id-ms-certificate-template");
2752 register_ber_oid_dissector("1.3.6.1.4.1.311.21.10", dissect_CertificatePoliciesSyntax_PDU, proto_x509ce, "id-ms-application-certificate-policies");
2753 register_ber_oid_dissector("1.2.840.113533.7.65.0", dissect_EntrustVersionInfo_PDU, proto_x509ce, "id-ce-entrustVersionInfo");
2756 /*--- End of included file: packet-x509ce-dis-tab.c ---*/
2757 #line 119 "packet-x509ce-template.c"
2758 register_ber_oid_dissector("2.5.29.24", dissect_x509ce_invalidityDate_callback, proto_x509ce, "id-ce-invalidityDate");
2759 register_ber_oid_dissector("2.5.29.51", dissect_x509ce_baseUpdateTime_callback, proto_x509ce, "id-ce-baseUpdateTime");