/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef PKIT_H #include "pkit.h" #endif /* PKIT_H */ #ifndef PKIM_H #include "pkim.h" #endif /* PKIM_H */ /* This is defined in pki3hack.c */ NSS_EXTERN nssDecodedCert * nssDecodedPKIXCertificate_Create( NSSArena *arenaOpt, NSSDER *encoding); NSS_IMPLEMENT PRStatus nssDecodedPKIXCertificate_Destroy( nssDecodedCert *dc); NSS_IMPLEMENT nssDecodedCert * nssDecodedCert_Create( NSSArena *arenaOpt, NSSDER *encoding, NSSCertificateType type) { nssDecodedCert *rvDC = NULL; switch (type) { case NSSCertificateType_PKIX: rvDC = nssDecodedPKIXCertificate_Create(arenaOpt, encoding); break; default: #if 0 nss_SetError(NSS_ERROR_INVALID_ARGUMENT); #endif return (nssDecodedCert *)NULL; } return rvDC; } NSS_IMPLEMENT PRStatus nssDecodedCert_Destroy( nssDecodedCert *dc) { if (!dc) { return PR_FAILURE; } switch (dc->type) { case NSSCertificateType_PKIX: return nssDecodedPKIXCertificate_Destroy(dc); default: #if 0 nss_SetError(NSS_ERROR_INVALID_ARGUMENT); #endif break; } return PR_FAILURE; }