/*******************************************************************
 *
 * 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_H_
#define pkcs12_H_

#include "pkcs12_struct.h"

/*******************************************************************
 *
 * Function declarations for internal functions
 *
 ******************************************************************/

#define PKISizeofLocalKeyIDInternal PKISizeofOCTET_STRINGInternal
#define PKIDropInPlaceLocalKeyID PKIDropInPlaceOCTET_STRING
#define PKIPackLocalKeyIDInternal PKIPackOCTET_STRINGInternal
#define PKIUnpkInPlaceLocalKeyID PKIUnpkInPlaceOCTET_STRING
#define PKIUnpackLocalKeyIDInternal PKIUnpackOCTET_STRINGInternal

#define PKISizeofSDSICertificateInternal PKISizeofIA5StringInternal
#define PKIDropInPlaceSDSICertificate PKIDropInPlaceIA5String
#define PKIPackSDSICertificateInternal PKIPackIA5StringInternal
#define PKIUnpkInPlaceSDSICertificate PKIUnpkInPlaceIA5String
#define PKIUnpackSDSICertificateInternal PKIUnpackIA5StringInternal

#define PKISizeofX509CertificateInternal PKISizeofOCTET_STRINGInternal
#define PKIDropInPlaceX509Certificate PKIDropInPlaceOCTET_STRING
#define PKIPackX509CertificateInternal PKIPackOCTET_STRINGInternal
#define PKIUnpkInPlaceX509Certificate PKIUnpkInPlaceOCTET_STRING
#define PKIUnpackX509CertificateInternal PKIUnpackOCTET_STRINGInternal

#define PKISizeofX509CrlInternal PKISizeofOCTET_STRINGInternal
#define PKIDropInPlaceX509Crl PKIDropInPlaceOCTET_STRING
#define PKIPackX509CrlInternal PKIPackOCTET_STRINGInternal
#define PKIUnpkInPlaceX509Crl PKIUnpkInPlaceOCTET_STRING
#define PKIUnpackX509CrlInternal PKIUnpackOCTET_STRINGInternal

size_t PKISizeofAuthenticatedSafesInternal(
    PKIAuthenticatedSafes *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceAuthenticatedSafes(
    PKICONTEXT *ctx,
    PKIAuthenticatedSafes *f);
size_t PKIPackAuthenticatedSafesInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKIAuthenticatedSafes *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceAuthenticatedSafes (
    PKICONTEXT *ctx,
    PKIAuthenticatedSafes *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackAuthenticatedSafesInternal(
    PKICONTEXT *ctx,
    PKIAuthenticatedSafes **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

size_t PKISizeofCRLBagInternal(
    PKICRLBag *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceCRLBag(
    PKICONTEXT *ctx,
    PKICRLBag *f);
size_t PKIPackCRLBagInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKICRLBag *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceCRLBag (
    PKICONTEXT *ctx,
    PKICRLBag *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackCRLBagInternal(
    PKICONTEXT *ctx,
    PKICRLBag **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

size_t PKISizeofCertBagInternal(
    PKICertBag *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceCertBag(
    PKICONTEXT *ctx,
    PKICertBag *f);
size_t PKIPackCertBagInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKICertBag *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceCertBag (
    PKICONTEXT *ctx,
    PKICertBag *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackCertBagInternal(
    PKICONTEXT *ctx,
    PKICertBag **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

#define PKISizeofKeyBagInternal PKISizeofPrivateKeyInfoInternal
#define PKIDropInPlaceKeyBag PKIDropInPlacePrivateKeyInfo
#define PKIPackKeyBagInternal PKIPackPrivateKeyInfoInternal
#define PKIUnpkInPlaceKeyBag PKIUnpkInPlacePrivateKeyInfo
#define PKIUnpackKeyBagInternal PKIUnpackPrivateKeyInfoInternal

size_t PKISizeofMacDataInternal(
    PKIMacData *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceMacData(
    PKICONTEXT *ctx,
    PKIMacData *f);
size_t PKIPackMacDataInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKIMacData *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceMacData (
    PKICONTEXT *ctx,
    PKIMacData *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackMacDataInternal(
    PKICONTEXT *ctx,
    PKIMacData **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

#define PKISizeofPKCS_8ShroudedKeyBagInternal PKISizeofEncryptedPrivateKeyInfoInternal
#define PKIDropInPlacePKCS_8ShroudedKeyBag PKIDropInPlaceEncryptedPrivateKeyInfo
#define PKIPackPKCS_8ShroudedKeyBagInternal PKIPackEncryptedPrivateKeyInfoInternal
#define PKIUnpkInPlacePKCS_8ShroudedKeyBag PKIUnpkInPlaceEncryptedPrivateKeyInfo
#define PKIUnpackPKCS_8ShroudedKeyBagInternal PKIUnpackEncryptedPrivateKeyInfoInternal

size_t PKISizeofSafeBagInternal(
    PKISafeBag *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceSafeBag(
    PKICONTEXT *ctx,
    PKISafeBag *f);
size_t PKIPackSafeBagInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKISafeBag *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceSafeBag (
    PKICONTEXT *ctx,
    PKISafeBag *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackSafeBagInternal(
    PKICONTEXT *ctx,
    PKISafeBag **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

size_t PKISizeofSecretBagInternal(
    PKISecretBag *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceSecretBag(
    PKICONTEXT *ctx,
    PKISecretBag *f);
size_t PKIPackSecretBagInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKISecretBag *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceSecretBag (
    PKICONTEXT *ctx,
    PKISecretBag *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackSecretBagInternal(
    PKICONTEXT *ctx,
    PKISecretBag **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

size_t PKISizeofpkcs_12PbeParamsInternal(
    PKIpkcs_12PbeParams *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlacepkcs_12PbeParams(
    PKICONTEXT *ctx,
    PKIpkcs_12PbeParams *f);
size_t PKIPackpkcs_12PbeParamsInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKIpkcs_12PbeParams *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlacepkcs_12PbeParams (
    PKICONTEXT *ctx,
    PKIpkcs_12PbeParams *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackpkcs_12PbeParamsInternal(
    PKICONTEXT *ctx,
    PKIpkcs_12PbeParams **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

size_t PKISizeofPFXInternal(
    PKIPFX *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlacePFX(
    PKICONTEXT *ctx,
    PKIPFX *f);
size_t PKIPackPFXInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKIPFX *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlacePFX (
    PKICONTEXT *ctx,
    PKIPFX *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackPFXInternal(
    PKICONTEXT *ctx,
    PKIPFX **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

size_t PKISizeofSafeContentsInternal(
    PKISafeContents *asnstruct,
    int outerSizeFlag,
    int expTaggedFlag);
void PKIDropInPlaceSafeContents(
    PKICONTEXT *ctx,
    PKISafeContents *f);
size_t PKIPackSafeContentsInternal(
    PKICONTEXT *ctx,
    unsigned char *buf,
    size_t buflen,
    PKISafeContents *asnstruct,
    unsigned char tag,
    int *erret);
size_t PKIUnpkInPlaceSafeContents (
    PKICONTEXT *ctx,
    PKISafeContents *asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);
size_t PKIUnpackSafeContentsInternal(
    PKICONTEXT *ctx,
    PKISafeContents **asnstruct,
    const unsigned char *buf,
    size_t buflen,
    unsigned char tag,
    int *erret);

#define PKISizeofSafeContentsBagInternal PKISizeofSafeContentsInternal
#define PKIDropInPlaceSafeContentsBag PKIDropInPlaceSafeContents
#define PKIPackSafeContentsBagInternal PKIPackSafeContentsInternal
#define PKIUnpkInPlaceSafeContentsBag PKIUnpkInPlaceSafeContents
#define PKIUnpackSafeContentsBagInternal PKIUnpackSafeContentsInternal


#endif /* pkcs12_H_ */
