/*******************************************************************
 *
 * This file was generated by TIS/ASN1COMP Ver. 4.1, an ASN.1 compiler.
 * TIS/ASN1COMP is Copyright (c) 1998, TIS Labs at Network Associates, Inc.
 *
 * This file was AUTOMATICALLY GENERATED on Fri Apr  9 20:37:30 1999
 *
 ******************************************************************/

#ifndef pkcs12_STRUCT_H_
#define pkcs12_STRUCT_H_

#include "pkcs12_sizes.h"

#include "pkcs7_asn.h"
#include "pkcs8_asn.h"

/*******************************************************************
 *
 * Structure and type definitions
 *
 ******************************************************************/


typedef PKIOCTET_STRING   PKILocalKeyID;
#define PKIID_LocalKeyID PKIID_OCTET_STRING

typedef PKIIA5String   PKISDSICertificate;
#define PKIID_SDSICertificate PKIID_IA5String

typedef PKIOCTET_STRING   PKIX509Certificate;
#define PKIID_X509Certificate PKIID_OCTET_STRING

typedef PKIOCTET_STRING   PKIX509Crl;
#define PKIID_X509Crl PKIID_OCTET_STRING

typedef struct {
    long  n;          /* number of elements */
    PKIContentInfo *elt[ PKIMAX_AuthenticatedSafes ];
} PKIAuthenticatedSafes;
#define PKIID_AuthenticatedSafes PKIID_SEQUENCE_OF

typedef struct {
    PKIOBJECT_ID  crlType;
    PKIANY  crl;
} PKICRLBag;
#define PKIID_CRLBag PKIID_SEQUENCE

typedef struct {
    PKIOBJECT_ID  certType;
    PKIANY  cert;
} PKICertBag;
#define PKIID_CertBag PKIID_SEQUENCE

typedef PKIPrivateKeyInfo PKIKeyBag;
#define PKIID_KeyBag PKIID_PrivateKeyInfo

typedef struct {
    PKIDigestInfo  mac;
    PKIOCTET_STRING  macSalt;
    PKIINTEGER *macIterationCount;
} PKIMacData;
#define PKIID_MacData PKIID_SEQUENCE

typedef PKIEncryptedPrivateKeyInfo PKIPKCS_8ShroudedKeyBag;
#define PKIID_PKCS_8ShroudedKeyBag PKIID_EncryptedPrivateKeyInfo

typedef struct {
    PKIOBJECT_ID  bagType;
    PKIANY  bagContent;
    PKIAttributes *bagAttributes;
} PKISafeBag;
#define PKIID_SafeBag PKIID_SEQUENCE

typedef struct {
    PKIOBJECT_ID  secretType;
    PKIANY  secret;
} PKISecretBag;
#define PKIID_SecretBag PKIID_SEQUENCE

typedef struct {
    PKIOCTET_STRING  salt;
    PKIINTEGER  iterationCount;
} PKIpkcs_12PbeParams;
#define PKIID_pkcs_12PbeParams PKIID_SEQUENCE

typedef struct {
    PKIVersion  version;
    PKIContentInfo  authSafes;
    PKIMacData *macData;
} PKIPFX;
#define PKIID_PFX PKIID_SEQUENCE

typedef struct {
    long  n;          /* number of elements */
    PKISafeBag *elt[ PKIMAX_SafeContents ];
} PKISafeContents;
#define PKIID_SafeContents PKIID_SEQUENCE_OF

typedef PKISafeContents PKISafeContentsBag;
#define PKIID_SafeContentsBag PKIID_SafeContents

#endif /* pkcs12_STRUCT_H_ */
