5 * "AuthenticationFramework" ASN.1 module encode/decode/extracting/matching/free C src.
6 * This file was generated by modified eSMACC compiler Sat Dec 11 11:22:49 2004
7 * The generated files are strongly encouraged to be
8 * compiled as a module for OpenLDAP Software
11 #ifndef _certificate_h_
12 #define _certificate_h_
21 #pragma warning( disable : 4101 )
23 #include "componentlib.h"
24 typedef enum AuthenticationFrameworkAnyId
28 printableStringOid_ANY_ID = 2,
29 printableStringOid2_ANY_ID = 3,
30 printableStringOid3_ANY_ID = 4,
31 printableStringOid4_ANY_ID = 5,
32 printableStringOid5_ANY_ID = 6,
33 printableStringOid6_ANY_ID = 7,
34 iA5StringOid_ANY_ID = 8,
35 octetStringOid_ANY_ID = 9,
36 octetStringOid2_ANY_ID = 10,
37 octetStringOid3_ANY_ID = 11} AuthenticationFrameworkAnyId;
40 void InitAnyAuthenticationFramework();
47 typedef ComponentInt ComponentVersion; /* INTEGER { V1 (0), V2 (1), V3 (2) } */
49 #define MatchingComponentVersion MatchingComponentInt
51 #define ExtractingComponentVersion ExtractingComponentInt
53 #define BDecComponentVersion BDecComponentInt
55 #define GDecComponentVersion GDecComponentInt
58 typedef ComponentInt ComponentCertificateSerialNumber; /* INTEGER */
60 #define MatchingComponentCertificateSerialNumber MatchingComponentInt
62 #define ExtractingComponentCertificateSerialNumber ExtractingComponentInt
64 #define BDecComponentCertificateSerialNumber BDecComponentInt
66 #define GDecComponentCertificateSerialNumber GDecComponentInt
69 typedef ComponentOid ComponentAttributeType; /* OBJECT IDENTIFIER */
71 #define MatchingComponentAttributeType MatchingComponentOid
73 #define ExtractingComponentAttributeType ExtractingComponentOid
75 #define BDecComponentAttributeType BDecComponentOid
77 #define GDecComponentAttributeType GDecComponentOid
80 typedef ComponentBits ComponentUniqueIdentifier; /* BIT STRING */
82 #define MatchingComponentUniqueIdentifier MatchingComponentBits
84 #define ExtractingComponentUniqueIdentifier ExtractingComponentBits
86 #define BDecComponentUniqueIdentifier BDecComponentBits
88 #define GDecComponentUniqueIdentifier GDecComponentBits
91 typedef struct AlgorithmIdentifier /* SEQUENCE */
94 ComponentDesc* comp_desc;
95 struct berval identifier;
96 char id_buf[MAX_IDENTIFIER_LEN];
97 ComponentOid algorithm; /* OBJECT IDENTIFIER */
98 ComponentAnyDefinedBy parameters; /* ANY DEFINED BY algorithm OPTIONAL */
99 } ComponentAlgorithmIdentifier;
101 int MatchingComponentAlgorithmIdentifier PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
104 void* ExtractingComponentAlgorithmIdentifier PROTO (( void* mem_op, ComponentReference *cr, ComponentAlgorithmIdentifier *comp ));
107 int BDecComponentAlgorithmIdentifier PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentAlgorithmIdentifier **v, AsnLen *bytesDecoded, int mode));
110 int GDecComponentAlgorithmIdentifier PROTO (( void* mem_op, GenBuf * b, ComponentAlgorithmIdentifier **v, AsnLen *bytesDecoded, int mode));
114 typedef struct Time /* CHOICE */
117 ComponentDesc* comp_desc;
118 struct berval identifier;
119 char id_buf[MAX_IDENTIFIER_LEN];
125 union TimeChoiceUnion
127 ComponentUTCTime* utcTime; /* < unknown type id ?! > */
128 ComponentGeneralizedTime* generalizedTime; /* < unknown type id ?! > */
132 int MatchingComponentTime PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
135 void* ExtractingComponentTime PROTO (( void* mem_op, ComponentReference *cr, ComponentTime *comp ));
138 int BDecComponentTime PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentTime **v, AsnLen *bytesDecoded, int mode));
141 int GDecComponentTime PROTO (( void* mem_op, GenBuf * b, ComponentTime **v, AsnLen *bytesDecoded, int mode));
145 typedef struct Extension /* SEQUENCE */
148 ComponentDesc* comp_desc;
149 struct berval identifier;
150 char id_buf[MAX_IDENTIFIER_LEN];
151 ComponentOid extnID; /* OBJECT IDENTIFIER */
152 ComponentBool* critical; /* BOOLEAN DEFAULT FALSE */
153 ComponentOcts extnValue; /* OCTET STRING */
154 } ComponentExtension;
156 int MatchingComponentExtension PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
159 void* ExtractingComponentExtension PROTO (( void* mem_op, ComponentReference *cr, ComponentExtension *comp ));
162 int BDecComponentExtension PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentExtension **v, AsnLen *bytesDecoded, int mode));
165 int GDecComponentExtension PROTO (( void* mem_op, GenBuf * b, ComponentExtension **v, AsnLen *bytesDecoded, int mode));
169 typedef struct AttributeTypeAndValue /* SEQUENCE */
172 ComponentDesc* comp_desc;
173 struct berval identifier;
174 char id_buf[MAX_IDENTIFIER_LEN];
175 ComponentAttributeType type; /* AttributeType */
176 ComponentAnyDefinedBy value; /* ANY DEFINED BY type */
177 } ComponentAttributeTypeAndValue;
179 int MatchingComponentAttributeTypeAndValue PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
182 void* ExtractingComponentAttributeTypeAndValue PROTO (( void* mem_op, ComponentReference *cr, ComponentAttributeTypeAndValue *comp ));
185 int BDecComponentAttributeTypeAndValue PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentAttributeTypeAndValue **v, AsnLen *bytesDecoded, int mode));
188 int GDecComponentAttributeTypeAndValue PROTO (( void* mem_op, GenBuf * b, ComponentAttributeTypeAndValue **v, AsnLen *bytesDecoded, int mode));
192 typedef struct Validity /* SEQUENCE */
195 ComponentDesc* comp_desc;
196 struct berval identifier;
197 char id_buf[MAX_IDENTIFIER_LEN];
198 ComponentTime* notBefore; /* Time */
199 ComponentTime* notAfter; /* Time */
202 int MatchingComponentValidity PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
205 void* ExtractingComponentValidity PROTO (( void* mem_op, ComponentReference *cr, ComponentValidity *comp ));
208 int BDecComponentValidity PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentValidity **v, AsnLen *bytesDecoded, int mode));
211 int GDecComponentValidity PROTO (( void* mem_op, GenBuf * b, ComponentValidity **v, AsnLen *bytesDecoded, int mode));
215 typedef struct SubjectPublicKeyInfo /* SEQUENCE */
218 ComponentDesc* comp_desc;
219 struct berval identifier;
220 char id_buf[MAX_IDENTIFIER_LEN];
221 ComponentAlgorithmIdentifier* algorithm; /* AlgorithmIdentifier */
222 ComponentBits subjectPublicKey; /* BIT STRING */
223 } ComponentSubjectPublicKeyInfo;
225 int MatchingComponentSubjectPublicKeyInfo PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
228 void* ExtractingComponentSubjectPublicKeyInfo PROTO (( void* mem_op, ComponentReference *cr, ComponentSubjectPublicKeyInfo *comp ));
231 int BDecComponentSubjectPublicKeyInfo PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentSubjectPublicKeyInfo **v, AsnLen *bytesDecoded, int mode));
234 int GDecComponentSubjectPublicKeyInfo PROTO (( void* mem_op, GenBuf * b, ComponentSubjectPublicKeyInfo **v, AsnLen *bytesDecoded, int mode));
238 typedef ComponentList ComponentExtensions; /* SEQUENCE SIZE 1..MAX OF Extension */
240 int MatchingComponentExtensions PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
243 void* ExtractingComponentExtensions PROTO (( void* mem_op, ComponentReference *cr, ComponentExtensions *comp ));
246 int BDecComponentExtensions PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentExtensions **v, AsnLen *bytesDecoded, int mode));
249 int GDecComponentExtensions PROTO (( void* mem_op, GenBuf * b, ComponentExtensions **v, AsnLen *bytesDecoded, int mode));
253 typedef ComponentList ComponentRelativeDistinguishedName; /* SET OF AttributeTypeAndValue */
255 int MatchingComponentRelativeDistinguishedName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
258 void* ExtractingComponentRelativeDistinguishedName PROTO (( void* mem_op, ComponentReference *cr, ComponentRelativeDistinguishedName *comp ));
261 int BDecComponentRelativeDistinguishedName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentRelativeDistinguishedName **v, AsnLen *bytesDecoded, int mode));
264 int GDecComponentRelativeDistinguishedName PROTO (( void* mem_op, GenBuf * b, ComponentRelativeDistinguishedName **v, AsnLen *bytesDecoded, int mode));
268 typedef ComponentList ComponentRDNSequence; /* SEQUENCE OF RelativeDistinguishedName */
270 int MatchingComponentRDNSequence PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
273 void* ExtractingComponentRDNSequence PROTO (( void* mem_op, ComponentReference *cr, ComponentRDNSequence *comp ));
276 int BDecComponentRDNSequence PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentRDNSequence **v, AsnLen *bytesDecoded, int mode));
279 int GDecComponentRDNSequence PROTO (( void* mem_op, GenBuf * b, ComponentRDNSequence **v, AsnLen *bytesDecoded, int mode));
283 typedef struct Name /* CHOICE */
286 ComponentDesc* comp_desc;
287 struct berval identifier;
288 char id_buf[MAX_IDENTIFIER_LEN];
293 union NameChoiceUnion
295 ComponentRDNSequence* rdnSequence; /* RDNSequence */
299 int MatchingComponentName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
302 void* ExtractingComponentName PROTO (( void* mem_op, ComponentReference *cr, ComponentName *comp ));
305 int BDecComponentName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentName **v, AsnLen *bytesDecoded, int mode));
308 int GDecComponentName PROTO (( void* mem_op, GenBuf * b, ComponentName **v, AsnLen *bytesDecoded, int mode));
312 typedef struct TBSCertificate /* SEQUENCE */
315 ComponentDesc* comp_desc;
316 struct berval identifier;
317 char id_buf[MAX_IDENTIFIER_LEN];
318 ComponentVersion* version; /* [0] Version DEFAULT v1 */
319 ComponentCertificateSerialNumber serialNumber; /* CertificateSerialNumber */
320 ComponentAlgorithmIdentifier* signature; /* AlgorithmIdentifier */
321 ComponentName* issuer; /* Name */
322 ComponentValidity* validity; /* Validity */
323 ComponentName* subject; /* Name */
324 ComponentSubjectPublicKeyInfo* subjectPublicKeyInfo; /* SubjectPublicKeyInfo */
325 ComponentUniqueIdentifier issuerUniqueIdentifier; /* [1] IMPLICIT UniqueIdentifier OPTIONAL */
326 ComponentUniqueIdentifier subjectUniqueIdentifier; /* [2] IMPLICIT UniqueIdentifier OPTIONAL */
327 ComponentExtensions* extensions; /* [3] Extensions OPTIONAL */
328 } ComponentTBSCertificate;
330 int MatchingComponentTBSCertificate PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
333 void* ExtractingComponentTBSCertificate PROTO (( void* mem_op, ComponentReference *cr, ComponentTBSCertificate *comp ));
336 int BDecComponentTBSCertificate PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentTBSCertificate **v, AsnLen *bytesDecoded, int mode));
339 int GDecComponentTBSCertificate PROTO (( void* mem_op, GenBuf * b, ComponentTBSCertificate **v, AsnLen *bytesDecoded, int mode));
343 typedef struct Certificate /* SEQUENCE */
346 ComponentDesc* comp_desc;
347 struct berval identifier;
348 char id_buf[MAX_IDENTIFIER_LEN];
349 ComponentTBSCertificate* toBeSigned; /* TBSCertificate */
350 ComponentAlgorithmIdentifier* signatureAlgorithm; /* AlgorithmIdentifier */
351 ComponentBits signature; /* BIT STRING */
352 } ComponentCertificate;
354 int MatchingComponentCertificate PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
357 void* ExtractingComponentCertificate PROTO (( void* mem_op, ComponentReference *cr, ComponentCertificate *comp ));
360 int BDecComponentCertificate PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentCertificate **v, AsnLen *bytesDecoded, int mode));
363 int GDecComponentCertificate PROTO (( void* mem_op, GenBuf * b, ComponentCertificate **v, AsnLen *bytesDecoded, int mode));
367 /* ========== Object Declarations ========== */
370 /* ========== Object Set Declarations ========== */
375 #endif /* conditional include of certificate.h */