mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-27 03:20:22 +08:00
3492452a5b
2) attribute aliasing support - x509CertificateIssuer - x509CertificateSerial - x509CertificateIssuerAndIssuer 3) AuthorityKeyIdentifier support(one of certificate extension) 4) Misc. improvement - integrate OID and its decoder mapping table - normalize and validate the values of both component asserions and extracted components 5) Misc. bug fix
328 lines
11 KiB
C
328 lines
11 KiB
C
|
|
#include "asn-incl.h"
|
|
/*
|
|
* authorityKeyIdentifier.h
|
|
* "AuthorityKeyIdentifierDefinition" ASN.1 module encode/decode/extracting/matching/free C src.
|
|
* This file was generated by modified eSMACC compiler Sat Dec 11 10:15:39 2004
|
|
* The generated files are strongly encouraged to be
|
|
* compiled as a module for OpenLDAP Software
|
|
*/
|
|
|
|
#ifndef _authorityKeyIdentifier_h_
|
|
#define _authorityKeyIdentifier_h_
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#ifdef _WIN32
|
|
#pragma warning( disable : 4101 )
|
|
#endif
|
|
#include "componentlib.h"
|
|
typedef ComponentOcts ComponentKeyIdentifier; /* OCTET STRING */
|
|
|
|
#define MatchingComponentKeyIdentifier MatchingComponentOcts
|
|
|
|
#define ExtractingComponentKeyIdentifier ExtractingComponentOcts
|
|
|
|
#define BDecComponentKeyIdentifier BDecComponentOcts
|
|
|
|
#define GDecComponentKeyIdentifier GDecComponentOcts
|
|
|
|
|
|
typedef ComponentInt ComponentCertificateSerialNumber; /* INTEGER */
|
|
|
|
#define MatchingComponentCertificateSerialNumber MatchingComponentInt
|
|
|
|
#define ExtractingComponentCertificateSerialNumber ExtractingComponentInt
|
|
|
|
#define BDecComponentCertificateSerialNumber BDecComponentInt
|
|
|
|
#define GDecComponentCertificateSerialNumber GDecComponentInt
|
|
|
|
|
|
typedef struct OtherName /* SEQUENCE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
ComponentOid type_id; /* OBJECT IDENTIFIER */
|
|
ComponentAnyDefinedBy value; /* [0] EXPLICIT ANY DEFINED BY type-id */
|
|
} ComponentOtherName;
|
|
|
|
int MatchingComponentOtherName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentOtherName PROTO (( void* mem_op, ComponentReference *cr, ComponentOtherName *comp ));
|
|
|
|
|
|
int BDecComponentOtherName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentOtherName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentOtherName PROTO (( void* mem_op, GenBuf * b, ComponentOtherName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct ORAddress /* SEQUENCE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
ComponentOid type_id; /* OBJECT IDENTIFIER */
|
|
ComponentAnyDefinedBy value; /* ANY DEFINED BY type-id */
|
|
ComponentOcts extension; /* OCTET STRING OPTIONAL */
|
|
} ComponentORAddress;
|
|
|
|
int MatchingComponentORAddress PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentORAddress PROTO (( void* mem_op, ComponentReference *cr, ComponentORAddress *comp ));
|
|
|
|
|
|
int BDecComponentORAddress PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentORAddress **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentORAddress PROTO (( void* mem_op, GenBuf * b, ComponentORAddress **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct AttributeTypeAndValue /* SEQUENCE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
ComponentOid type; /* OBJECT IDENTIFIER */
|
|
ComponentAnyDefinedBy value; /* ANY DEFINED BY type */
|
|
} ComponentAttributeTypeAndValue;
|
|
|
|
int MatchingComponentAttributeTypeAndValue PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentAttributeTypeAndValue PROTO (( void* mem_op, ComponentReference *cr, ComponentAttributeTypeAndValue *comp ));
|
|
|
|
|
|
int BDecComponentAttributeTypeAndValue PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentAttributeTypeAndValue **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentAttributeTypeAndValue PROTO (( void* mem_op, GenBuf * b, ComponentAttributeTypeAndValue **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct DirectoryString /* CHOICE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
enum DirectoryStringChoiceId
|
|
{
|
|
DIRECTORYSTRING_TELETEXSTRING,
|
|
DIRECTORYSTRING_PRINTABLESTRING,
|
|
DIRECTORYSTRING_UNIVERSALSTRING,
|
|
DIRECTORYSTRING_UTF8STRING,
|
|
DIRECTORYSTRING_BMPSTRING
|
|
} choiceId;
|
|
union DirectoryStringChoiceUnion
|
|
{
|
|
ComponentTeletexString* teletexString; /* TeletexString SIZE 1..MAX */
|
|
ComponentPrintableString* printableString; /* PrintableString SIZE 1..MAX */
|
|
ComponentUniversalString* universalString; /* UniversalString SIZE 1..MAX */
|
|
ComponentUTF8String* utf8String; /* UTF8String SIZE 1..MAX */
|
|
ComponentBMPString* bmpString; /* BMPString SIZE 1..MAX */
|
|
} a;
|
|
} ComponentDirectoryString;
|
|
|
|
int MatchingComponentDirectoryString PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentDirectoryString PROTO (( void* mem_op, ComponentReference *cr, ComponentDirectoryString *comp ));
|
|
|
|
|
|
int BDecComponentDirectoryString PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentDirectoryString **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentDirectoryString PROTO (( void* mem_op, GenBuf * b, ComponentDirectoryString **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct EDIPartyName /* SEQUENCE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
ComponentDirectoryString* nameAssigner; /* [0] DirectoryString OPTIONAL */
|
|
ComponentDirectoryString* partyName; /* [1] DirectoryString */
|
|
} ComponentEDIPartyName;
|
|
|
|
int MatchingComponentEDIPartyName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentEDIPartyName PROTO (( void* mem_op, ComponentReference *cr, ComponentEDIPartyName *comp ));
|
|
|
|
|
|
int BDecComponentEDIPartyName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentEDIPartyName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentEDIPartyName PROTO (( void* mem_op, GenBuf * b, ComponentEDIPartyName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef ComponentList ComponentRelativeDistinguishedName; /* SET OF AttributeTypeAndValue */
|
|
|
|
int MatchingComponentRelativeDistinguishedName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentRelativeDistinguishedName PROTO (( void* mem_op, ComponentReference *cr, ComponentRelativeDistinguishedName *comp ));
|
|
|
|
|
|
int BDecComponentRelativeDistinguishedName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentRelativeDistinguishedName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentRelativeDistinguishedName PROTO (( void* mem_op, GenBuf * b, ComponentRelativeDistinguishedName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef ComponentList ComponentRDNSequence; /* SEQUENCE OF RelativeDistinguishedName */
|
|
|
|
int MatchingComponentRDNSequence PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentRDNSequence PROTO (( void* mem_op, ComponentReference *cr, ComponentRDNSequence *comp ));
|
|
|
|
|
|
int BDecComponentRDNSequence PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentRDNSequence **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentRDNSequence PROTO (( void* mem_op, GenBuf * b, ComponentRDNSequence **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct Name /* CHOICE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
enum NameChoiceId
|
|
{
|
|
NAME_RDNSEQUENCE
|
|
} choiceId;
|
|
union NameChoiceUnion
|
|
{
|
|
ComponentRDNSequence* rdnSequence; /* RDNSequence */
|
|
} a;
|
|
} ComponentName;
|
|
|
|
int MatchingComponentName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentName PROTO (( void* mem_op, ComponentReference *cr, ComponentName *comp ));
|
|
|
|
|
|
int BDecComponentName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentName PROTO (( void* mem_op, GenBuf * b, ComponentName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct GeneralName /* CHOICE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
enum GeneralNameChoiceId
|
|
{
|
|
GENERALNAME_OTHERNAME,
|
|
GENERALNAME_RFC822NAME,
|
|
GENERALNAME_DNSNAME,
|
|
GENERALNAME_X400ADDRESS,
|
|
GENERALNAME_DIRECTORYNAME,
|
|
GENERALNAME_EDIPARTYNAME,
|
|
GENERALNAME_UNIFORMRESOURCEIDENTIFIER,
|
|
GENERALNAME_IPADDRESS,
|
|
GENERALNAME_REGISTEREDID
|
|
} choiceId;
|
|
union GeneralNameChoiceUnion
|
|
{
|
|
ComponentOtherName* otherName; /* [0] OtherName */
|
|
ComponentIA5String* rfc822Name; /* [1] IA5String */
|
|
ComponentIA5String* dNSName; /* [2] IA5String */
|
|
ComponentORAddress* x400Address; /* [3] ORAddress */
|
|
ComponentName* directoryName; /* [4] Name */
|
|
ComponentEDIPartyName* ediPartyName; /* [5] EDIPartyName */
|
|
ComponentIA5String* uniformResourceIdentifier; /* [6] IA5String */
|
|
ComponentOcts* iPAddress; /* [7] OCTET STRING */
|
|
ComponentOid* registeredID; /* [8] OBJECT IDENTIFIER */
|
|
} a;
|
|
} ComponentGeneralName;
|
|
|
|
int MatchingComponentGeneralName PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentGeneralName PROTO (( void* mem_op, ComponentReference *cr, ComponentGeneralName *comp ));
|
|
|
|
|
|
int BDecComponentGeneralName PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentGeneralName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentGeneralName PROTO (( void* mem_op, GenBuf * b, ComponentGeneralName **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef ComponentList ComponentGeneralNames; /* SEQUENCE SIZE 1..MAX OF GeneralName */
|
|
|
|
int MatchingComponentGeneralNames PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentGeneralNames PROTO (( void* mem_op, ComponentReference *cr, ComponentGeneralNames *comp ));
|
|
|
|
|
|
int BDecComponentGeneralNames PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentGeneralNames **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentGeneralNames PROTO (( void* mem_op, GenBuf * b, ComponentGeneralNames **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
typedef struct AuthorityKeyIdentifier /* SEQUENCE */
|
|
{
|
|
Syntax* syntax;
|
|
ComponentDesc* comp_desc;
|
|
struct berval identifier;
|
|
char id_buf[MAX_IDENTIFIER_LEN];
|
|
ComponentKeyIdentifier keyIdentifier; /* [0] KeyIdentifier OPTIONAL */
|
|
ComponentGeneralNames* authorityCertIssuer; /* [1] GeneralNames OPTIONAL */
|
|
ComponentCertificateSerialNumber* authorityCertSerialNumber; /* [2] CertificateSerialNumber OPTIONAL */
|
|
} ComponentAuthorityKeyIdentifier;
|
|
|
|
int MatchingComponentAuthorityKeyIdentifier PROTO (( char *oid, ComponentSyntaxInfo *, ComponentSyntaxInfo *v2 ));
|
|
|
|
|
|
void* ExtractingComponentAuthorityKeyIdentifier PROTO (( void* mem_op, ComponentReference *cr, ComponentAuthorityKeyIdentifier *comp ));
|
|
|
|
|
|
int BDecComponentAuthorityKeyIdentifier PROTO ((void* mem_op, GenBuf * b, AsnTag tagId0, AsnLen elmtLen0, ComponentAuthorityKeyIdentifier **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
int GDecComponentAuthorityKeyIdentifier PROTO (( void* mem_op, GenBuf * b, ComponentAuthorityKeyIdentifier **v, AsnLen *bytesDecoded, int mode));
|
|
|
|
|
|
|
|
/* ========== Object Declarations ========== */
|
|
|
|
|
|
/* ========== Object Set Declarations ========== */
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#endif /* conditional include of authorityKeyIdentifier.h */
|