/*
 *
 *    x509.h
 *
 *    Note, this file consists of machine-generated data structures.
 *    Do not edit these contents.
 *
 *
 *    Copyright (C) 1996, 1997, Visa International Service Association and MasterCard International Incorporated
 *    All Rights Reserved.
 *
 *    briank@terisa.com
 *
 */

#ifndef __x509__h__
#define __x509__h__

#include <define.h>

#include <asn_types.h>

#ifdef __cplusplus
extern "C" {
#endif



typedef
    struct                         x509__AlgorithmIdentifier_         
    {                                                                 
# define                               x509__AlgorithmIdentifier__parameters   0 
        UCHAR                          _present[1]                      ; 
        asn__object_identifier         algorithm                        ; 
        asn__any                       parameters                       ; 
    }                              x509__AlgorithmIdentifier        ; 

typedef
    struct                         x509__SIGNED_                      
    {                                                                 
        asn__any                       toBeSigned                       ; 
        x509__AlgorithmIdentifier      algorithm                        ; 
        struct                                                            
        {                                                                 
            UINT4                          length                           ; /* number of bits */
            UCHAR                          *value                           ; 
        }                              signature                        ; 
    }                              x509__SIGNED                     ; 

typedef
    struct                         x509__DirectoryString_             
    {                                                                 
# define                               x509__DirectoryString__teletexString 0x5 
# define                               x509__DirectoryString__printableString 0x6 
# define                               x509__DirectoryString__universalString 0x7 
# define                               x509__DirectoryString__bmpString 0x8 
        UINT4                          _choice                          ; 
        union                                                             
        {                                                                 
            asn__printable_string          teletexString                    ; 
            asn__printable_string          printableString                  ; 
            asn__octet_string              universalString                  ; 
            asn__bmp_string                bmpString                        ; 
        } u                                                             ; 
    }                              x509__DirectoryString            ; 

typedef
    asn__integer                   x509__Version                    ; 

typedef
    asn__octet_string              x509__SerialNumber               ; 

typedef
    x509__SerialNumber             x509__CertificateSerialNumber    ; 

typedef
    struct                         x509__AttributeTypeAndValue_       
    {                                                                 
        asn__object_identifier         type                             ; 
        asn__any                       value                            ; 
    }                              x509__AttributeTypeAndValue      ; 

typedef
    struct                         x509__RelativeDistinguishedName_     
    {                                                                 
        struct x509__RelativeDistinguishedName_ *next                            ; 
        x509__AttributeTypeAndValue    attributeTypeAndValue            ; 
    }                              x509__RelativeDistinguishedName   ; 

typedef
    struct                         x509__RDNSequence_                 
    {                                                                 
        struct x509__RDNSequence_      *next                            ; 
        x509__RelativeDistinguishedName *relativeDistinguishedName       ; 
    }                              x509__RDNSequence                ; 

typedef
    struct                         x509__Name_                        
    {                                                                 
# define                               x509__Name__rdnSequence        0x1e 
        UINT4                          _choice                          ; 
        union                                                             
        {                                                                 
            x509__RDNSequence              *rdnSequence                     ; 
        } u                                                             ; 
    }                              x509__Name                       ; 

typedef
    struct                         x509__Validity_                    
    {                                                                 
        asn__utc_time                  notBefore                        ; 
        asn__utc_time                  notAfter                         ; 
    }                              x509__Validity                   ; 

typedef
    struct                         x509__SubjectPublicKeyInfo_        
    {                                                                 
        x509__AlgorithmIdentifier      algorithm                        ; 
        struct                                                            
        {                                                                 
            UINT4                          length                           ; /* number of bits */
            UCHAR                          *value                           ; 
        }                              subjectPublicKey                 ; 
    }                              x509__SubjectPublicKeyInfo       ; 

typedef
    struct                         x509__UniqueIdentifier_            
    {                                                                 
        UINT4                          length                           ; /* number of bits */
        UCHAR                          *value                           ; 
    }                              x509__UniqueIdentifier           ; 

typedef
    struct                         x509__Extension_                   
    {                                                                 
        asn__object_identifier         extnID                           ; 
        asn__boolean                   critical                         ; 
        asn__octet_string              extnValue                        ; 
    }                              x509__Extension                  ; 

typedef
    struct                         x509__Extensions_                  
    {                                                                 
        struct x509__Extensions_       *next                            ; 
        x509__Extension                extension                        ; 
    }                              x509__Extensions                 ; 

typedef
    struct                         x509__UnsignedCertificate_         
    {                                                                 
# define                               x509__UnsignedCertificate__issuerUniqueIdentifier   0 
# define                               x509__UnsignedCertificate__subjectUniqueIdentifier   1 
# define                               x509__UnsignedCertificate__extensions   2 
        UCHAR                          _present[1]                      ; 
        x509__Version                  version                          ; 
        x509__CertificateSerialNumber  serialNumber                     ; 
        x509__AlgorithmIdentifier      signature                        ; 
        x509__Name                     issuer                           ; 
        x509__Validity                 validity                         ; 
        x509__Name                     subject                          ; 
        x509__SubjectPublicKeyInfo     subjectPublicKeyInfo             ; 
        x509__UniqueIdentifier         issuerUniqueIdentifier           ; 
        x509__UniqueIdentifier         subjectUniqueIdentifier          ; 
        x509__Extensions               *extensions                      ; 
    }                              x509__UnsignedCertificate        ; 

typedef
    struct                         x509__Certificate_                 
    {                                                                 
        x509__UnsignedCertificate      toBeSigned                       ; 
        x509__AlgorithmIdentifier      algorithm                        ; 
        struct                                                            
        {                                                                 
            UINT4                          length                           ; /* number of bits */
            UCHAR                          *value                           ; 
        }                              signature                        ; 
    }                              x509__Certificate                ; 

typedef
    x509__RDNSequence              *x509__DistinguishedName         ; 

typedef
    struct                         x509__AttributeValues_             
    {                                                                 
        struct x509__AttributeValues_  *next                            ; 
        asn__any                       any                              ; 
    }                              x509__AttributeValues            ; 

typedef
    struct                         x509__Attribute_                   
    {                                                                 
        asn__object_identifier         type                             ; 
        x509__AttributeValues          *values                          ; 
    }                              x509__Attribute                  ; 

typedef
    struct                         x509__CRLEntry_                    
    {                                                                 
# define                               x509__CRLEntry__crlEntryExtensions   0 
        UCHAR                          _present[1]                      ; 
        x509__CertificateSerialNumber  userCertificate                  ; 
        asn__utc_time                  revocationDate                   ; 
        x509__Extensions               *crlEntryExtensions              ; 
    }                              x509__CRLEntry                   ; 

typedef
    struct                         x509__CRLEntries_                  
    {                                                                 
        struct x509__CRLEntries_       *next                            ; 
        x509__CRLEntry                 cRLEntry                         ; 
    }                              x509__CRLEntries                 ; 

typedef
    struct                         x509__UnsignedCertificateRevocationList_     
    {                                                                 
# define                               x509__UnsignedCertificateRevocationList__version   0 
# define                               x509__UnsignedCertificateRevocationList__nextUpdate   1 
# define                               x509__UnsignedCertificateRevocationList__revokedCertificates   2 
# define                               x509__UnsignedCertificateRevocationList__crlExtensions   3 
        UCHAR                          _present[1]                      ; 
        x509__Version                  version                          ; 
        x509__AlgorithmIdentifier      signature                        ; 
        x509__Name                     issuer                           ; 
        asn__utc_time                  thisUpdate                       ; 
        asn__utc_time                  nextUpdate                       ; 
        x509__CRLEntries               *revokedCertificates             ; 
        x509__Extensions               *crlExtensions                   ; 
    }                              x509__UnsignedCertificateRevocationList   ; 

typedef
    struct                         x509__CRL_                         
    {                                                                 
        x509__UnsignedCertificateRevocationList toBeSigned                       ; 
        x509__AlgorithmIdentifier      algorithm                        ; 
        struct                                                            
        {                                                                 
            UINT4                          length                           ; /* number of bits */
            UCHAR                          *value                           ; 
        }                              signature                        ; 
    }                              x509__CRL                        ; 

typedef
    x509__CRL                      x509__CertificateRevocationList   ; 

typedef
    asn__octet_string              x509__KeyIdentifier              ; 

typedef
    struct                         x509__GeneralName_                 
    {                                                                 
# define                               x509__GeneralName__directoryName 0x77 
        UINT4                          _choice                          ; 
        union                                                             
        {                                                                 
            x509__Name                     directoryName                    ; 
        } u                                                             ; 
    }                              x509__GeneralName                ; 

typedef
    struct                         x509__GeneralNames_                
    {                                                                 
        struct x509__GeneralNames_     *next                            ; 
        x509__GeneralName              generalName                      ; 
    }                              x509__GeneralNames               ; 

typedef
    struct                         x509__AuthorityKeyIdentifier_      
    {                                                                 
# define                               x509__AuthorityKeyIdentifier__keyIdentifier   0 
# define                               x509__AuthorityKeyIdentifier__authorityCertIssuer   1 
# define                               x509__AuthorityKeyIdentifier__authorityCertSerialNumber   2 
        UCHAR                          _present[1]                      ; 
        x509__KeyIdentifier            keyIdentifier                    ; 
        x509__GeneralNames             *authorityCertIssuer             ; 
        x509__CertificateSerialNumber  authorityCertSerialNumber        ; 
    }                              x509__AuthorityKeyIdentifier     ; 

typedef
    x509__KeyIdentifier            x509__SubjectKeyIdentifier       ; 

typedef
# define                           x509__KeyUsage__digitalSignature   0 
# define                           x509__KeyUsage__nonRepudiation   1 
# define                           x509__KeyUsage__keyEncipherment   2 
# define                           x509__KeyUsage__dataEncipherment   3 
# define                           x509__KeyUsage__keyAgreement     4 
# define                           x509__KeyUsage__keyCertSign      5 
# define                           x509__KeyUsage__cRLSign          6 
    UCHAR                          x509__KeyUsage[1]                ; 

typedef
    struct                         x509__PrivateKeyUsagePeriod_       
    {                                                                 
# define                               x509__PrivateKeyUsagePeriod__notBefore   0 
# define                               x509__PrivateKeyUsagePeriod__notAfter   1 
        UCHAR                          _present[1]                      ; 
        asn__generalized_time          notBefore                        ; 
        asn__generalized_time          notAfter                         ; 
    }                              x509__PrivateKeyUsagePeriod      ; 

typedef
    asn__object_identifier         x509__CertPolicyId               ; 

typedef
    struct                         x509__PolicyQualifierInfo_         
    {                                                                 
# define                               x509__PolicyQualifierInfo__qualifier   0 
        UCHAR                          _present[1]                      ; 
        asn__object_identifier         policyQualifierId                ; 
        asn__any                       qualifier                        ; 
    }                              x509__PolicyQualifierInfo        ; 

typedef
    struct                         x509__PolicyQualifiers_            
    {                                                                 
        struct x509__PolicyQualifiers_ *next                            ; 
        x509__PolicyQualifierInfo      policyQualifierInfo              ; 
    }                              x509__PolicyQualifiers           ; 

typedef
    struct                         x509__PolicyInformation_           
    {                                                                 
# define                               x509__PolicyInformation__policyQualifiers   0 
        UCHAR                          _present[1]                      ; 
        x509__CertPolicyId             policyIdentifier                 ; 
        x509__PolicyQualifiers         *policyQualifiers                ; 
    }                              x509__PolicyInformation          ; 

typedef
    struct                         x509__CertificatePoliciesSyntax_     
    {                                                                 
        struct x509__CertificatePoliciesSyntax_ *next                            ; 
        x509__PolicyInformation        policyInformation                ; 
    }                              x509__CertificatePoliciesSyntax   ; 

typedef
    struct                         x509__BasicConstraintsSyntax_      
    {                                                                 
# define                               x509__BasicConstraintsSyntax__pathLenConstraint   0 
        UCHAR                          _present[1]                      ; 
        asn__boolean                   cA                               ; 
        asn__integer                   pathLenConstraint                ; 
    }                              x509__BasicConstraintsSyntax     ; 

typedef
    asn__integer                   x509__CRLNumber                  ; 



extern      asn__integer                   x509__v1                         ; 
extern      asn__object_identifier         x509__id_at                      ; 
extern      asn__object_identifier         x509__id_at_commonName           ; 
extern      asn__object_identifier         x509__id_at_countryName          ; 
extern      asn__object_identifier         x509__id_at_localityName         ; 
extern      asn__object_identifier         x509__id_at_stateOrProvinceName   ; 
extern      asn__object_identifier         x509__id_at_organizationName     ; 
extern      asn__object_identifier         x509__id_at_organizationalUnitName   ; 
extern      asn__object_identifier         x509__id_ce                      ; 
extern      asn__object_identifier         x509__id_ce_subjectKeyIdentifier   ; 
extern      asn__object_identifier         x509__id_ce_keyUsage             ; 
extern      asn__object_identifier         x509__id_ce_privateKeyUsagePeriod   ; 
extern      asn__object_identifier         x509__id_ce_subjectAltName       ; 
extern      asn__object_identifier         x509__id_ce_issuerAltName        ; 
extern      asn__object_identifier         x509__id_ce_basicConstraints     ; 
extern      asn__object_identifier         x509__id_ce_cRLNumber            ; 
extern      asn__object_identifier         x509__id_ce_certificatePolicies   ; 
extern      asn__object_identifier         x509__id_ce_authorityKeyIdentifier   ; 





# define                           X509__SIGNED                     0 /* x509__SIGNED */
# define                           X509__DIRECTORYSTRING            1 /* x509__DirectoryString */
# define                           X509__CERTIFICATE                2 /* x509__Certificate */
# define                           X509__UNSIGNEDCERTIFICATE        3 /* x509__UnsignedCertificate */
# define                           X509__UNIQUEIDENTIFIER           4 /* x509__UniqueIdentifier */
# define                           X509__VERSION                    5 /* x509__Version */
# define                           X509__SERIALNUMBER               6 /* x509__SerialNumber */
# define                           X509__CERTIFICATESERIALNUMBER    7 /* x509__CertificateSerialNumber */
# define                           X509__NAME                       8 /* x509__Name */
# define                           X509__RDNSEQUENCE                9 /* x509__RDNSequence */
# define                           X509__DISTINGUISHEDNAME         10 /* x509__DistinguishedName */
# define                           X509__RELATIVEDISTINGUISHEDNAME  11 /* x509__RelativeDistinguishedName */
# define                           X509__ATTRIBUTE                 12 /* x509__Attribute */
# define                           X509__ATTRIBUTEVALUES           13 /* x509__AttributeValues */
# define                           X509__ATTRIBUTETYPEANDVALUE     14 /* x509__AttributeTypeAndValue */
# define                           X509__VALIDITY                  15 /* x509__Validity */
# define                           X509__SUBJECTPUBLICKEYINFO      16 /* x509__SubjectPublicKeyInfo */
# define                           X509__ALGORITHMIDENTIFIER       17 /* x509__AlgorithmIdentifier */
# define                           X509__EXTENSIONS                18 /* x509__Extensions */
# define                           X509__EXTENSION                 19 /* x509__Extension */
# define                           X509__CERTIFICATEREVOCATIONLIST  20 /* x509__CertificateRevocationList */
# define                           X509__CRL                       21 /* x509__CRL */
# define                           X509__UNSIGNEDCERTIFICATEREVOCATIONLIST  22 /* x509__UnsignedCertificateRevocationList */
# define                           X509__CRLENTRIES                23 /* x509__CRLEntries */
# define                           X509__CRLENTRY                  24 /* x509__CRLEntry */
# define                           X509__AUTHORITYKEYIDENTIFIER    25 /* x509__AuthorityKeyIdentifier */
# define                           X509__KEYIDENTIFIER             26 /* x509__KeyIdentifier */
# define                           X509__SUBJECTKEYIDENTIFIER      27 /* x509__SubjectKeyIdentifier */
# define                           X509__KEYUSAGE                  28 /* x509__KeyUsage */
# define                           X509__PRIVATEKEYUSAGEPERIOD     29 /* x509__PrivateKeyUsagePeriod */
# define                           X509__CERTIFICATEPOLICIESSYNTAX  30 /* x509__CertificatePoliciesSyntax */
# define                           X509__POLICYINFORMATION         31 /* x509__PolicyInformation */
# define                           X509__POLICYQUALIFIERS          32 /* x509__PolicyQualifiers */
# define                           X509__CERTPOLICYID              33 /* x509__CertPolicyId */
# define                           X509__POLICYQUALIFIERINFO       34 /* x509__PolicyQualifierInfo */
# define                           X509__GENERALNAMES              35 /* x509__GeneralNames */
# define                           X509__GENERALNAME               36 /* x509__GeneralName */
# define                           X509__BASICCONSTRAINTSSYNTAX    37 /* x509__BasicConstraintsSyntax */
# define                           X509__CRLNUMBER                 38 /* x509__CRLNumber */



PRIVATE      a2c_module                     x509                             ; 


#ifdef __cplusplus
}
#endif
#endif


Copyright © 1996, 1997, Visa International Service Association and MasterCard International Incorporated
All Rights Reserved.