andre@0: /* This Source Code Form is subject to the terms of the Mozilla Public andre@0: * License, v. 2.0. If a copy of the MPL was not distributed with this andre@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ andre@0: /* andre@0: * pkix_pl_x500name.h andre@0: * andre@0: * X500Name Object Type Definitions andre@0: * andre@0: */ andre@0: andre@0: #ifndef _PKIX_PL_X500NAME_H andre@0: #define _PKIX_PL_X500NAME_H andre@0: andre@0: #include "pkix_pl_common.h" andre@0: andre@0: #ifdef __cplusplus andre@0: extern "C" { andre@0: #endif andre@0: andre@0: andre@0: struct PKIX_PL_X500NameStruct{ andre@0: PLArenaPool *arena; /* X500Name arena. Shared arena with nssDN andre@0: * and derName */ andre@0: CERTName nssDN; andre@0: SECItem derName; /* adding DER encoded CERTName to the structure andre@0: * to avoid unnecessary name encoding when pass andre@0: * der name to cert finder */ andre@0: }; andre@0: andre@0: /* see source file for function documentation */ andre@0: andre@0: PKIX_Error *pkix_pl_X500Name_RegisterSelf(void *plContext); andre@0: andre@0: PKIX_Error *pkix_pl_X500Name_GetDERName( andre@0: PKIX_PL_X500Name *xname, andre@0: PLArenaPool *arena, andre@0: SECItem **pSECName, andre@0: void *plContext); andre@0: andre@0: #ifdef BUILD_LIBPKIX_TESTS andre@0: PKIX_Error * pkix_pl_X500Name_CreateFromUtf8( andre@0: char *stringRep, andre@0: PKIX_PL_X500Name **pName, andre@0: void *plContext); andre@0: #endif /* BUILD_LIBPKIX_TESTS */ andre@0: andre@0: PKIX_Error *pkix_pl_X500Name_GetCommonName( andre@0: PKIX_PL_X500Name *xname, andre@0: unsigned char **pCommonName, andre@0: void *plContext); andre@0: andre@0: PKIX_Error * andre@0: pkix_pl_X500Name_GetCountryName( andre@0: PKIX_PL_X500Name *xname, andre@0: unsigned char **pCountryName, andre@0: void *plContext); andre@0: andre@0: PKIX_Error * andre@0: pkix_pl_X500Name_GetOrgName( andre@0: PKIX_PL_X500Name *xname, andre@0: unsigned char **pOrgName, andre@0: void *plContext); andre@0: andre@0: PKIX_Error * andre@0: pkix_pl_X500Name_GetCERTName( andre@0: PKIX_PL_X500Name *xname, andre@0: CERTName **pCERTName, andre@0: void *plContext); andre@0: andre@0: #ifdef __cplusplus andre@0: } andre@0: #endif andre@0: andre@0: #endif /* _PKIX_PL_X500NAME_H */