33#include <wolfssl/openssl/bio.h>
34#include <wolfssl/openssl/rsa.h>
35#include <wolfssl/openssl/dsa.h>
45 const EVP_CIPHER* cipher,
46 unsigned char* passwd,
int len,
47 pem_password_cb* cb,
void* arg);
60 pem_password_cb* cb,
void *u);
68int wolfSSL_PEM_write_mem_RSAPrivateKey(
RSA* rsa,
const EVP_CIPHER* cipher,
69 unsigned char* passwd,
int len,
70 unsigned char **pem,
int *plen);
71#if !defined(NO_FILESYSTEM)
73int wolfSSL_PEM_write_RSAPrivateKey(XFILE fp,
WOLFSSL_RSA *rsa,
74 const EVP_CIPHER *enc,
75 unsigned char *kstr,
int klen,
76 pem_password_cb *cb,
void *u);
79 pem_password_cb *cb,
void *u);
81int wolfSSL_PEM_write_RSAPublicKey(XFILE fp,
WOLFSSL_RSA *x);
84int wolfSSL_PEM_write_RSA_PUBKEY(XFILE fp,
WOLFSSL_RSA *x);
89int wolfSSL_PEM_write_bio_DSAPrivateKey(
WOLFSSL_BIO* bio,
91 const EVP_CIPHER* cipher,
92 unsigned char* passwd,
int len,
93 pem_password_cb* cb,
void* arg);
98 pem_password_cb* cb,
void *pass);
102 pem_password_cb* cb,
void *pass);
108int wolfSSL_PEM_write_mem_DSAPrivateKey(
WOLFSSL_DSA* dsa,
109 const EVP_CIPHER* cipher,
110 unsigned char* passwd,
int len,
111 unsigned char **pem,
int *plen);
112#if !defined(NO_FILESYSTEM)
114int wolfSSL_PEM_write_DSAPrivateKey(XFILE fp,
WOLFSSL_DSA *dsa,
115 const EVP_CIPHER *enc,
116 unsigned char *kstr,
int klen,
117 pem_password_cb *cb,
void *u);
119int wolfSSL_PEM_write_DSA_PUBKEY(XFILE fp,
WOLFSSL_DSA *x);
125 const EVP_CIPHER* cipher,
126 unsigned char* passwd,
int len,
127 pem_password_cb* cb,
void* arg);
138 const EVP_CIPHER* cipher,
139 unsigned char* passwd,
int len,
140 unsigned char **pem,
int *plen);
141#if !defined(NO_FILESYSTEM)
144 const EVP_CIPHER *enc,
145 unsigned char *kstr,
int klen,
146 pem_password_cb *cb,
void *u);
153 pem_password_cb* cb,
void *pass);
165 pem_password_cb *cb,
void *pass);
168 const WOLFSSL_EVP_CIPHER* cipher,
169 unsigned char* passwd,
int len,
170 pem_password_cb* cb,
void* arg);
176int wolfSSL_PEM_read_bio(
WOLFSSL_BIO* bio,
char **name,
char **header,
177 unsigned char **data,
long *len);
179int wolfSSL_PEM_write_bio(
WOLFSSL_BIO *bio,
const char *name,
180 const char *header,
const unsigned char *data,
182#if !defined(NO_FILESYSTEM)
184int wolfSSL_PEM_read(XFILE fp,
char **name,
char **header,
unsigned char **data,
187int wolfSSL_PEM_write(XFILE fp,
const char *name,
const char *header,
188 const unsigned char *data,
long len);
191#if !defined(NO_FILESYSTEM)
194 pem_password_cb *cb,
void *u);
197 pem_password_cb *cb,
void *u);
200 pem_password_cb *cb,
void *u);
205int wolfSSL_PEM_write_DHparams(XFILE fp,
WOLFSSL_DH* dh);
208#define PEM_read wolfSSL_PEM_read
209#define PEM_read_bio wolfSSL_PEM_read_bio
210#define PEM_write wolfSSL_PEM_write
211#define PEM_write_bio wolfSSL_PEM_write_bio
213#define PEM_read_X509 wolfSSL_PEM_read_X509
214#define PEM_read_PrivateKey wolfSSL_PEM_read_PrivateKey
215#define PEM_write_X509 wolfSSL_PEM_write_X509
216#define PEM_write_bio_PrivateKey wolfSSL_PEM_write_bio_PrivateKey
217#define PEM_write_bio_PKCS8PrivateKey wolfSSL_PEM_write_bio_PKCS8PrivateKey
220#define PEM_write_DHparams wolfSSL_PEM_write_DHparams
222#define PEM_write_bio_RSAPrivateKey wolfSSL_PEM_write_bio_RSAPrivateKey
223#define PEM_read_bio_RSAPrivateKey wolfSSL_PEM_read_bio_RSAPrivateKey
224#define PEM_write_bio_RSA_PUBKEY wolfSSL_PEM_write_bio_RSA_PUBKEY
225#define PEM_read_bio_RSA_PUBKEY wolfSSL_PEM_read_bio_RSA_PUBKEY
226#define PEM_read_bio_ECPKParameters wolfSSL_PEM_read_bio_ECPKParameters
227#define PEM_write_RSAPrivateKey wolfSSL_PEM_write_RSAPrivateKey
228#define PEM_write_RSA_PUBKEY wolfSSL_PEM_write_RSA_PUBKEY
229#define PEM_write_RSAPublicKey wolfSSL_PEM_write_RSAPublicKey
230#define PEM_read_RSAPublicKey wolfSSL_PEM_read_RSAPublicKey
232#define PEM_write_bio_DSAPrivateKey wolfSSL_PEM_write_bio_DSAPrivateKey
233#define PEM_write_DSAPrivateKey wolfSSL_PEM_write_DSAPrivateKey
234#define PEM_write_bio_DSA_PUBKEY wolfSSL_PEM_write_bio_DSA_PUBKEY
235#define PEM_write_DSA_PUBKEY wolfSSL_PEM_write_DSA_PUBKEY
236#define PEM_read_bio_DSAPrivateKey wolfSSL_PEM_read_bio_DSAPrivateKey
237#define PEM_read_bio_DSA_PUBKEY wolfSSL_PEM_read_bio_DSA_PUBKEY
239#define PEM_write_bio_ECPrivateKey wolfSSL_PEM_write_bio_ECPrivateKey
240#define PEM_write_bio_EC_PUBKEY wolfSSL_PEM_write_bio_EC_PUBKEY
241#define PEM_write_EC_PUBKEY wolfSSL_PEM_write_EC_PUBKEY
242#define PEM_write_ECPrivateKey wolfSSL_PEM_write_ECPrivateKey
243#define PEM_read_bio_ECPrivateKey wolfSSL_PEM_read_bio_ECPrivateKey
244#define PEM_read_bio_EC_PUBKEY wolfSSL_PEM_read_bio_EC_PUBKEY
246#define PEM_read_bio_PrivateKey wolfSSL_PEM_read_bio_PrivateKey
247#define PEM_read_PUBKEY wolfSSL_PEM_read_PUBKEY
248#define PEM_read_bio_PUBKEY wolfSSL_PEM_read_bio_PUBKEY
249#define PEM_write_bio_PUBKEY wolfSSL_PEM_write_bio_PUBKEY
WOLFSSL_API int wolfSSL_PEM_write_bio_PrivateKey(WOLFSSL_BIO *bio, WOLFSSL_EVP_PKEY *key, const WOLFSSL_EVP_CIPHER *cipher, unsigned char *passwd, int len, pem_password_cb *cb, void *arg)
This function writes a key into a WOLFSSL_BIO structure in PEM format.
Definition ssl.c:31102
Definition internal.h:3598
evp.h defines mini evp openssl compatibility layer
Header file containing key wolfSSL API.