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