1
2#include "asn-incl.h"
3/*
4 *    crl.h
5 *    "CertificateRevokationList" ASN.1 module encode/decode/extracting/matching/free C src.
6 *    This file was generated by modified eSMACC compiler Fri Jan 21 11:25:24 2005
7 *    The generated files are strongly encouraged to be
8 *    compiled as a module for OpenLDAP Software
9 */
10
11#ifndef _crl_h_
12#define _crl_h_
13
14
15
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20#ifdef _WIN32
21#pragma warning( disable : 4101 )
22#endif
23#include "componentlib.h"
24
25#define V1 0
26#define V2 1
27#define V3 2
28
29typedef ComponentInt ComponentVersion; /* INTEGER { V1 (0), V2 (1), V3 (2) }  */
30
31#define MatchingComponentVersion MatchingComponentInt
32
33#define ExtractingComponentVersion ExtractingComponentInt
34
35#define BDecComponentVersion BDecComponentInt
36
37#define GDecComponentVersion GDecComponentInt
38
39
40typedef ComponentInt ComponentCertificateSerialNumber; /* INTEGER */
41
42#define MatchingComponentCertificateSerialNumber MatchingComponentInt
43
44#define ExtractingComponentCertificateSerialNumber ExtractingComponentInt
45
46#define BDecComponentCertificateSerialNumber BDecComponentInt
47
48#define GDecComponentCertificateSerialNumber GDecComponentInt
49
50
51typedef ComponentOid ComponentAttributeType; /* OBJECT IDENTIFIER */
52
53#define MatchingComponentAttributeType MatchingComponentOid
54
55#define ExtractingComponentAttributeType ExtractingComponentOid
56
57#define BDecComponentAttributeType BDecComponentOid
58
59#define GDecComponentAttributeType GDecComponentOid
60
61
62typedef struct AlgorithmIdentifier /* SEQUENCE */
63{
64	Syntax* syntax;
65	ComponentDesc* comp_desc;
66	struct berval identifier;
67	char id_buf[MAX_IDENTIFIER_LEN];
68	ComponentOid algorithm; /* OBJECT IDENTIFIER */
69	ComponentAnyDefinedBy parameters; /* ANY DEFINED BY algorithm OPTIONAL */
70} ComponentAlgorithmIdentifier;
71
72int MatchingComponentAlgorithmIdentifier PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
73
74
75void* ExtractingComponentAlgorithmIdentifier PROTO (( void* mem_op, ComponentReference *cr, ComponentAlgorithmIdentifier *comp ));
76
77
78int BDecComponentAlgorithmIdentifier PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentAlgorithmIdentifier **v, AsnLen *bytesDecoded, int mode));
79
80
81int GDecComponentAlgorithmIdentifier PROTO (( void* mem_op, GenBuf * b, ComponentAlgorithmIdentifier **v, AsnLen *bytesDecoded, int mode));
82
83
84
85typedef struct Time /* CHOICE */
86{
87	Syntax* syntax;
88	ComponentDesc* comp_desc;
89	struct berval identifier;
90	char id_buf[MAX_IDENTIFIER_LEN];
91    enum TimeChoiceId
92    {
93        TIME_UTCTIME,
94        TIME_GENERALIZEDTIME
95    } choiceId;
96    union TimeChoiceUnion
97    {
98	ComponentUTCTime* utcTime; /* < unknown type id ?! > */
99	ComponentGeneralizedTime* generalizedTime; /* < unknown type id ?! > */
100    } a;
101} ComponentTime;
102
103int MatchingComponentTime PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
104
105
106void* ExtractingComponentTime PROTO (( void* mem_op, ComponentReference *cr, ComponentTime *comp ));
107
108
109int BDecComponentTime PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentTime **v, AsnLen *bytesDecoded, int mode));
110
111
112int GDecComponentTime PROTO (( void* mem_op, GenBuf * b, ComponentTime **v, AsnLen *bytesDecoded, int mode));
113
114
115
116typedef struct Extension /* SEQUENCE */
117{
118	Syntax* syntax;
119	ComponentDesc* comp_desc;
120	struct berval identifier;
121	char id_buf[MAX_IDENTIFIER_LEN];
122	ComponentOid extnID; /* OBJECT IDENTIFIER */
123	ComponentBool* critical; /* BOOLEAN DEFAULT FALSE */
124	ComponentOcts extnValue; /* OCTET STRING */
125} ComponentExtension;
126
127int MatchingComponentExtension PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
128
129
130void* ExtractingComponentExtension PROTO (( void* mem_op, ComponentReference *cr, ComponentExtension *comp ));
131
132
133int BDecComponentExtension PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentExtension **v, AsnLen *bytesDecoded, int mode));
134
135
136int GDecComponentExtension PROTO (( void* mem_op, GenBuf * b, ComponentExtension **v, AsnLen *bytesDecoded, int mode));
137
138
139
140typedef struct AttributeTypeAndValue /* SEQUENCE */
141{
142	Syntax* syntax;
143	ComponentDesc* comp_desc;
144	struct berval identifier;
145	char id_buf[MAX_IDENTIFIER_LEN];
146	ComponentAttributeType type; /* AttributeType */
147	ComponentAnyDefinedBy value; /* ANY DEFINED BY type */
148} ComponentAttributeTypeAndValue;
149
150int MatchingComponentAttributeTypeAndValue PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
151
152
153void* ExtractingComponentAttributeTypeAndValue PROTO (( void* mem_op, ComponentReference *cr, ComponentAttributeTypeAndValue *comp ));
154
155
156int BDecComponentAttributeTypeAndValue PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentAttributeTypeAndValue **v, AsnLen *bytesDecoded, int mode));
157
158
159int GDecComponentAttributeTypeAndValue PROTO (( void* mem_op, GenBuf * b, ComponentAttributeTypeAndValue **v, AsnLen *bytesDecoded, int mode));
160
161
162
163typedef ComponentList ComponentExtensions; /* SEQUENCE SIZE 1..MAX OF Extension */
164
165int MatchingComponentExtensions PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
166
167
168void* ExtractingComponentExtensions PROTO (( void* mem_op, ComponentReference *cr, ComponentExtensions *comp ));
169
170
171int BDecComponentExtensions PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentExtensions **v, AsnLen *bytesDecoded, int mode));
172
173
174int GDecComponentExtensions PROTO (( void* mem_op, GenBuf * b, ComponentExtensions **v, AsnLen *bytesDecoded, int mode));
175
176
177
178typedef struct TBSCertListSeqOfSeq /* SEQUENCE */
179{
180	Syntax* syntax;
181	ComponentDesc* comp_desc;
182	struct berval identifier;
183	char id_buf[MAX_IDENTIFIER_LEN];
184	ComponentCertificateSerialNumber userCertificate; /* CertificateSerialNumber */
185	ComponentTime* revocationDate; /* Time */
186	ComponentExtensions* crlEntryExtensions; /* Extensions OPTIONAL */
187} ComponentTBSCertListSeqOfSeq;
188
189int MatchingComponentTBSCertListSeqOfSeq PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
190
191
192void* ExtractingComponentTBSCertListSeqOfSeq PROTO (( void* mem_op, ComponentReference *cr, ComponentTBSCertListSeqOfSeq *comp ));
193
194
195int BDecComponentTBSCertListSeqOfSeq PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentTBSCertListSeqOfSeq **v, AsnLen *bytesDecoded, int mode));
196
197
198int GDecComponentTBSCertListSeqOfSeq PROTO (( void* mem_op, GenBuf * b, ComponentTBSCertListSeqOfSeq **v, AsnLen *bytesDecoded, int mode));
199
200
201
202typedef ComponentList ComponentTBSCertListSeqOf; /* SEQUENCE OF TBSCertListSeqOfSeq */
203
204int MatchingComponentTBSCertListSeqOf PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
205
206
207void* ExtractingComponentTBSCertListSeqOf PROTO (( void* mem_op, ComponentReference *cr, ComponentTBSCertListSeqOf *comp ));
208
209
210int BDecComponentTBSCertListSeqOf PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentTBSCertListSeqOf **v, AsnLen *bytesDecoded, int mode));
211
212
213int GDecComponentTBSCertListSeqOf PROTO (( void* mem_op, GenBuf * b, ComponentTBSCertListSeqOf **v, AsnLen *bytesDecoded, int mode));
214
215
216
217typedef ComponentList ComponentRelativeDistinguishedName; /* SET OF AttributeTypeAndValue */
218
219int MatchingComponentRelativeDistinguishedName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
220
221
222void* ExtractingComponentRelativeDistinguishedName PROTO (( void* mem_op, ComponentReference *cr, ComponentRelativeDistinguishedName *comp ));
223
224
225int BDecComponentRelativeDistinguishedName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentRelativeDistinguishedName **v, AsnLen *bytesDecoded, int mode));
226
227
228int GDecComponentRelativeDistinguishedName PROTO (( void* mem_op, GenBuf * b, ComponentRelativeDistinguishedName **v, AsnLen *bytesDecoded, int mode));
229
230
231
232typedef ComponentList ComponentRDNSequence; /* SEQUENCE OF RelativeDistinguishedName */
233
234int MatchingComponentRDNSequence PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
235
236
237void* ExtractingComponentRDNSequence PROTO (( void* mem_op, ComponentReference *cr, ComponentRDNSequence *comp ));
238
239
240int BDecComponentRDNSequence PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentRDNSequence **v, AsnLen *bytesDecoded, int mode));
241
242
243int GDecComponentRDNSequence PROTO (( void* mem_op, GenBuf * b, ComponentRDNSequence **v, AsnLen *bytesDecoded, int mode));
244
245
246
247typedef struct Name /* CHOICE */
248{
249	Syntax* syntax;
250	ComponentDesc* comp_desc;
251	struct berval identifier;
252	char id_buf[MAX_IDENTIFIER_LEN];
253    enum NameChoiceId
254    {
255        NAME_RDNSEQUENCE
256    } choiceId;
257    union NameChoiceUnion
258    {
259	ComponentRDNSequence* rdnSequence; /* RDNSequence */
260    } a;
261} ComponentName;
262
263int MatchingComponentName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
264
265
266void* ExtractingComponentName PROTO (( void* mem_op, ComponentReference *cr, ComponentName *comp ));
267
268
269int BDecComponentName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentName **v, AsnLen *bytesDecoded, int mode));
270
271
272int GDecComponentName PROTO (( void* mem_op, GenBuf * b, ComponentName **v, AsnLen *bytesDecoded, int mode));
273
274
275
276typedef struct TBSCertList /* SEQUENCE */
277{
278	Syntax* syntax;
279	ComponentDesc* comp_desc;
280	struct berval identifier;
281	char id_buf[MAX_IDENTIFIER_LEN];
282	ComponentVersion* version; /* Version OPTIONAL */
283	ComponentAlgorithmIdentifier* signature; /* AlgorithmIdentifier */
284	ComponentName* issuer; /* Name */
285	ComponentTime* thisUpdate; /* Time */
286	ComponentTime* nextUpdate; /* Time OPTIONAL */
287	ComponentTBSCertListSeqOf* revokedCertificates; /* TBSCertListSeqOf */
288	ComponentExtensions* crlExtensions; /* [0] EXPLICIT Extensions OPTIONAL */
289} ComponentTBSCertList;
290
291int MatchingComponentTBSCertList PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
292
293
294void* ExtractingComponentTBSCertList PROTO (( void* mem_op, ComponentReference *cr, ComponentTBSCertList *comp ));
295
296
297int BDecComponentTBSCertList PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentTBSCertList **v, AsnLen *bytesDecoded, int mode));
298
299
300int GDecComponentTBSCertList PROTO (( void* mem_op, GenBuf * b, ComponentTBSCertList **v, AsnLen *bytesDecoded, int mode));
301
302
303
304typedef struct CertificateList /* SEQUENCE */
305{
306	Syntax* syntax;
307	ComponentDesc* comp_desc;
308	struct berval identifier;
309	char id_buf[MAX_IDENTIFIER_LEN];
310	ComponentTBSCertList* tbsCertList; /* TBSCertList */
311	ComponentAlgorithmIdentifier* signatureAlgorithm; /* AlgorithmIdentifier */
312	ComponentBits signature; /* BIT STRING */
313} ComponentCertificateList;
314
315int MatchingComponentCertificateList PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
316
317
318void* ExtractingComponentCertificateList PROTO (( void* mem_op, ComponentReference *cr, ComponentCertificateList *comp ));
319
320
321int BDecComponentCertificateList PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentCertificateList **v, AsnLen *bytesDecoded, int mode));
322
323
324int GDecComponentCertificateList PROTO (( void* mem_op, GenBuf * b, ComponentCertificateList **v, AsnLen *bytesDecoded, int mode));
325
326
327
328typedef struct Validity /* SEQUENCE */
329{
330	Syntax* syntax;
331	ComponentDesc* comp_desc;
332	struct berval identifier;
333	char id_buf[MAX_IDENTIFIER_LEN];
334	ComponentTime* notBefore; /* Time */
335	ComponentTime* notAfter; /* Time */
336} ComponentValidity;
337
338int MatchingComponentValidity PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
339
340
341void* ExtractingComponentValidity PROTO (( void* mem_op, ComponentReference *cr, ComponentValidity *comp ));
342
343
344int BDecComponentValidity PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentValidity **v, AsnLen *bytesDecoded, int mode));
345
346
347int GDecComponentValidity PROTO (( void* mem_op, GenBuf * b, ComponentValidity **v, AsnLen *bytesDecoded, int mode));
348
349
350
351/* ========== Object Declarations ========== */
352
353
354/* ========== Object Set Declarations ========== */
355#ifdef __cplusplus
356extern "C" {
357#endif
358
359#endif /* conditional include of crl.h */
360