#ifndef _DER_CERT_CRL_H_
#define _DER_CERT_CRL_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <libDER/libDER.h>
#include <libDER/DER_Decode.h>
typedef struct {
DERItem tbs;
DERItem sigAlg;
DERItem sig;
} DERSignedCertCrl;
extern const DERItemSpec DERSignedCertCrlItemSpecs[];
extern const DERSize DERNumSignedCertCrlItemSpecs;
typedef struct {
DERItem version;
DERItem serialNum;
DERItem tbsSigAlg;
DERItem issuer;
DERItem validity;
DERItem subject;
DERItem subjectPubKey;
DERItem issuerID;
DERItem subjectID;
DERItem extensions;
} DERTBSCert;
extern const DERItemSpec DERTBSCertItemSpecs[];
extern const DERSize DERNumTBSCertItemSpecs;
typedef struct {
DERItem notBefore;
DERItem notAfter;
} DERValidity;
extern const DERItemSpec DERValidityItemSpecs[];
extern const DERSize DERNumValidityItemSpecs;
typedef struct {
DERItem type;
DERItem value;
} DERAttributeTypeAndValue;
extern const DERItemSpec DERAttributeTypeAndValueItemSpecs[];
extern const DERSize DERNumAttributeTypeAndValueItemSpecs;
typedef struct {
DERItem extnID;
DERItem critical;
DERItem extnValue;
} DERExtension;
extern const DERItemSpec DERExtensionItemSpecs[];
extern const DERSize DERNumExtensionItemSpecs;
typedef struct {
DERItem cA;
DERItem pathLenConstraint;
} DERBasicConstraints;
extern const DERItemSpec DERBasicConstraintsItemSpecs[];
extern const DERSize DERNumBasicConstraintsItemSpecs;
typedef struct {
DERItem notBefore;
DERItem notAfter;
} DERPrivateKeyUsagePeriod;
extern const DERItemSpec DERPrivateKeyUsagePeriodItemSpecs[];
extern const DERSize DERNumPrivateKeyUsagePeriodItemSpecs;
typedef struct {
DERItem distributionPoint;
DERItem reasons;
DERItem cRLIssuer;
} DERDistributionPoint;
extern const DERItemSpec DERDistributionPointItemSpecs[];
extern const DERSize DERNumDistributionPointItemSpecs;
typedef struct {
DERItem policyIdentifier;
DERItem policyQualifiers;
} DERPolicyInformation;
extern const DERItemSpec DERPolicyInformationItemSpecs[];
extern const DERSize DERNumPolicyInformationItemSpecs;
typedef struct {
DERItem policyQualifierID;
DERItem qualifier;
} DERPolicyQualifierInfo;
extern const DERItemSpec DERPolicyQualifierInfoItemSpecs[];
extern const DERSize DERNumPolicyQualifierInfoItemSpecs;
typedef struct {
DERItem noticeRef;
DERItem explicitText;
} DERUserNotice;
extern const DERItemSpec DERUserNoticeItemSpecs[];
extern const DERSize DERNumUserNoticeItemSpecs;
typedef struct {
DERItem organization;
DERItem noticeNumbers;
} DERNoticeReference;
extern const DERItemSpec DERNoticeReferenceItemSpecs[];
extern const DERSize DERNumNoticeReferenceItemSpecs;
typedef struct {
DERItem issuerDomainPolicy;
DERItem subjectDomainPolicy;
} DERPolicyMapping;
extern const DERItemSpec DERPolicyMappingItemSpecs[];
extern const DERSize DERNumPolicyMappingItemSpecs;
typedef struct {
DERItem accessMethod;
DERItem accessLocation;
} DERAccessDescription;
extern const DERItemSpec DERAccessDescriptionItemSpecs[];
extern const DERSize DERNumAccessDescriptionItemSpecs;
typedef struct {
DERItem keyIdentifier;
DERItem authorityCertIssuer;
DERItem authorityCertSerialNumber;
} DERAuthorityKeyIdentifier;
extern const DERItemSpec DERAuthorityKeyIdentifierItemSpecs[];
extern const DERSize DERNumAuthorityKeyIdentifierItemSpecs;
typedef struct {
DERItem typeIdentifier;
DERItem value;
} DEROtherName;
extern const DERItemSpec DEROtherNameItemSpecs[];
extern const DERSize DERNumOtherNameItemSpecs;
typedef struct {
DERItem requireExplicitPolicy;
DERItem inhibitPolicyMapping;
} DERPolicyConstraints;
extern const DERItemSpec DERPolicyConstraintsItemSpecs[];
extern const DERSize DERNumPolicyConstraintsItemSpecs;
typedef struct {
DERItem version;
DERItem tbsSigAlg;
DERItem issuer;
DERItem thisUpdate;
DERItem nextUpdate;
DERItem revokedCerts;
DERItem extensions;
} DERTBSCrl;
extern const DERItemSpec DERTBSCrlItemSpecs[];
extern const DERSize DERNumTBSCrlItemSpecs;
typedef struct {
DERItem serialNum;
DERItem revocationDate;
DERItem extensions;
} DERRevokedCert;
extern const DERItemSpec DERRevokedCertItemSpecs[];
extern const DERSize DERNumRevokedCertItemSpecs;
#ifdef __cplusplus
}
#endif
#endif