mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-01 03:34:39 +02:00
wolfSSL_d2i_PKCS12_fp
This commit is contained in:
12
src/ssl.c
12
src/ssl.c
@@ -18028,6 +18028,12 @@ static void *wolfSSL_d2i_X509_fp_ex(XFILE file, void **x509, int type)
|
|||||||
else if(type == CRL_TYPE)
|
else if(type == CRL_TYPE)
|
||||||
newx509 = (void *)wolfSSL_d2i_X509_CRL(NULL, fileBuffer, (int)sz);
|
newx509 = (void *)wolfSSL_d2i_X509_CRL(NULL, fileBuffer, (int)sz);
|
||||||
#endif
|
#endif
|
||||||
|
else if(type == PKCS12_TYPE){
|
||||||
|
if((newx509 = wc_PKCS12_new()) == NULL)
|
||||||
|
goto err_exit;
|
||||||
|
if(wc_d2i_PKCS12(fileBuffer, (int)sz, (WC_PKCS12*)newx509) < 0)
|
||||||
|
goto err_exit;
|
||||||
|
}
|
||||||
else goto err_exit;
|
else goto err_exit;
|
||||||
if(newx509 == NULL)
|
if(newx509 == NULL)
|
||||||
{
|
{
|
||||||
@@ -18060,6 +18066,12 @@ _exit:
|
|||||||
return newx509;
|
return newx509;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
WOLFSSL_X509_PKCS12 *wolfSSL_d2i_PKCS12_fp(XFILE fp, WOLFSSL_X509_PKCS12 **pkcs12)
|
||||||
|
{
|
||||||
|
WOLFSSL_ENTER("wolfSSL_d2i_PKCS12_fp");
|
||||||
|
return (WOLFSSL_X509_PKCS12 *)wolfSSL_d2i_X509_fp_ex(fp, (void **)pkcs12, PKCS12_TYPE);
|
||||||
|
}
|
||||||
|
|
||||||
WOLFSSL_X509 *wolfSSL_d2i_X509_fp(XFILE fp, WOLFSSL_X509 **x509)
|
WOLFSSL_X509 *wolfSSL_d2i_X509_fp(XFILE fp, WOLFSSL_X509 **x509)
|
||||||
{
|
{
|
||||||
WOLFSSL_ENTER("wolfSSL_d2i_X509_fp");
|
WOLFSSL_ENTER("wolfSSL_d2i_X509_fp");
|
||||||
|
@@ -121,6 +121,7 @@ typedef struct WOLFSSL_X509 WOLFSSL_X509;
|
|||||||
typedef struct WOLFSSL_X509_NAME WOLFSSL_X509_NAME;
|
typedef struct WOLFSSL_X509_NAME WOLFSSL_X509_NAME;
|
||||||
typedef struct WOLFSSL_X509_NAME_ENTRY WOLFSSL_X509_NAME_ENTRY;
|
typedef struct WOLFSSL_X509_NAME_ENTRY WOLFSSL_X509_NAME_ENTRY;
|
||||||
typedef struct WOLFSSL_X509_CHAIN WOLFSSL_X509_CHAIN;
|
typedef struct WOLFSSL_X509_CHAIN WOLFSSL_X509_CHAIN;
|
||||||
|
typedef struct WC_PKCS12 WOLFSSL_X509_PKCS12;
|
||||||
|
|
||||||
typedef struct WOLFSSL_CERT_MANAGER WOLFSSL_CERT_MANAGER;
|
typedef struct WOLFSSL_CERT_MANAGER WOLFSSL_CERT_MANAGER;
|
||||||
typedef struct WOLFSSL_SOCKADDR WOLFSSL_SOCKADDR;
|
typedef struct WOLFSSL_SOCKADDR WOLFSSL_SOCKADDR;
|
||||||
@@ -1555,8 +1556,8 @@ typedef struct WC_PKCS12 WC_PKCS12;
|
|||||||
WOLFSSL_API WC_PKCS12* wolfSSL_d2i_PKCS12_bio(WOLFSSL_BIO* bio,
|
WOLFSSL_API WC_PKCS12* wolfSSL_d2i_PKCS12_bio(WOLFSSL_BIO* bio,
|
||||||
WC_PKCS12** pkcs12);
|
WC_PKCS12** pkcs12);
|
||||||
#ifndef NO_FILESYSTEM
|
#ifndef NO_FILESYSTEM
|
||||||
WOLFSSL_API WC_PKCS12* wolfSSL_d2i_PKCS12_fp(XFILE fp,
|
WOLFSSL_API WOLFSSL_X509_PKCS12* wolfSSL_d2i_PKCS12_fp(XFILE fp,
|
||||||
WC_PKCS12** pkcs12);
|
WOLFSSL_X509_PKCS12** pkcs12);
|
||||||
#endif
|
#endif
|
||||||
WOLFSSL_API int wolfSSL_PKCS12_parse(WC_PKCS12* pkcs12, const char* psw,
|
WOLFSSL_API int wolfSSL_PKCS12_parse(WC_PKCS12* pkcs12, const char* psw,
|
||||||
WOLFSSL_EVP_PKEY** pkey, WOLFSSL_X509** cert,
|
WOLFSSL_EVP_PKEY** pkey, WOLFSSL_X509** cert,
|
||||||
|
@@ -72,7 +72,8 @@ enum CertType {
|
|||||||
ECC_PUBLICKEY_TYPE,
|
ECC_PUBLICKEY_TYPE,
|
||||||
TRUSTED_PEER_TYPE,
|
TRUSTED_PEER_TYPE,
|
||||||
EDDSA_PRIVATEKEY_TYPE,
|
EDDSA_PRIVATEKEY_TYPE,
|
||||||
ED25519_TYPE
|
ED25519_TYPE,
|
||||||
|
PKCS12_TYPE
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user