Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of wolfSSL by
pem.h
00001 /* pem.h for openssl */ 00002 00003 00004 #ifndef WOLFSSL_PEM_H_ 00005 #define WOLFSSL_PEM_H_ 00006 00007 #include <wolfssl/openssl/evp.h> 00008 #include <wolfssl/openssl/bio.h> 00009 #include <wolfssl/openssl/rsa.h> 00010 #include <wolfssl/openssl/dsa.h> 00011 00012 #ifdef __cplusplus 00013 extern "C" { 00014 #endif 00015 00016 #define PEM_write_bio_PrivateKey wolfSSL_PEM_write_bio_PrivateKey 00017 00018 /* RSA */ 00019 WOLFSSL_API 00020 int wolfSSL_PEM_write_bio_RSAPrivateKey(WOLFSSL_BIO* bio, WOLFSSL_RSA* rsa, 00021 const EVP_CIPHER* cipher, 00022 unsigned char* passwd, int len, 00023 pem_password_cb* cb, void* arg); 00024 WOLFSSL_API 00025 int wolfSSL_PEM_write_mem_RSAPrivateKey(RSA* rsa, const EVP_CIPHER* cipher, 00026 unsigned char* passwd, int len, 00027 unsigned char **pem, int *plen); 00028 #if !defined(NO_FILESYSTEM) 00029 WOLFSSL_API 00030 int wolfSSL_PEM_write_RSAPrivateKey(FILE *fp, WOLFSSL_RSA *rsa, 00031 const EVP_CIPHER *enc, 00032 unsigned char *kstr, int klen, 00033 pem_password_cb *cb, void *u); 00034 WOLFSSL_API 00035 WOLFSSL_RSA *wolfSSL_PEM_read_RSAPublicKey(FILE *fp, WOLFSSL_RSA **x, 00036 pem_password_cb *cb, void *u); 00037 WOLFSSL_API 00038 int wolfSSL_PEM_write_RSAPublicKey(FILE *fp, WOLFSSL_RSA *x); 00039 00040 WOLFSSL_API 00041 int wolfSSL_PEM_write_RSA_PUBKEY(FILE *fp, WOLFSSL_RSA *x); 00042 #endif /* NO_FILESYSTEM */ 00043 00044 /* DSA */ 00045 WOLFSSL_API 00046 int wolfSSL_PEM_write_bio_DSAPrivateKey(WOLFSSL_BIO* bio, 00047 WOLFSSL_DSA* dsa, 00048 const EVP_CIPHER* cipher, 00049 unsigned char* passwd, int len, 00050 pem_password_cb* cb, void* arg); 00051 WOLFSSL_API 00052 int wolfSSL_PEM_write_mem_DSAPrivateKey(WOLFSSL_DSA* dsa, 00053 const EVP_CIPHER* cipher, 00054 unsigned char* passwd, int len, 00055 unsigned char **pem, int *plen); 00056 #if !defined(NO_FILESYSTEM) 00057 WOLFSSL_API 00058 int wolfSSL_PEM_write_DSAPrivateKey(FILE *fp, WOLFSSL_DSA *dsa, 00059 const EVP_CIPHER *enc, 00060 unsigned char *kstr, int klen, 00061 pem_password_cb *cb, void *u); 00062 WOLFSSL_API 00063 int wolfSSL_PEM_write_DSA_PUBKEY(FILE *fp, WOLFSSL_DSA *x); 00064 #endif /* NO_FILESYSTEM */ 00065 00066 /* ECC */ 00067 WOLFSSL_API 00068 int wolfSSL_PEM_write_bio_ECPrivateKey(WOLFSSL_BIO* bio, WOLFSSL_EC_KEY* ec, 00069 const EVP_CIPHER* cipher, 00070 unsigned char* passwd, int len, 00071 pem_password_cb* cb, void* arg); 00072 WOLFSSL_API 00073 int wolfSSL_PEM_write_mem_ECPrivateKey(WOLFSSL_EC_KEY* key, 00074 const EVP_CIPHER* cipher, 00075 unsigned char* passwd, int len, 00076 unsigned char **pem, int *plen); 00077 #if !defined(NO_FILESYSTEM) 00078 WOLFSSL_API 00079 int wolfSSL_PEM_write_ECPrivateKey(FILE *fp, WOLFSSL_EC_KEY *key, 00080 const EVP_CIPHER *enc, 00081 unsigned char *kstr, int klen, 00082 pem_password_cb *cb, void *u); 00083 WOLFSSL_API 00084 int wolfSSL_PEM_write_EC_PUBKEY(FILE *fp, WOLFSSL_EC_KEY *key); 00085 #endif /* NO_FILESYSTEM */ 00086 00087 /* EVP_KEY */ 00088 WOLFSSL_API 00089 WOLFSSL_EVP_PKEY* wolfSSL_PEM_read_bio_PrivateKey(WOLFSSL_BIO* bio, 00090 WOLFSSL_EVP_PKEY**, 00091 pem_password_cb* cb, 00092 void* arg); 00093 WOLFSSL_API 00094 int wolfSSL_PEM_write_bio_PrivateKey(WOLFSSL_BIO* bio, WOLFSSL_EVP_PKEY* key, 00095 const WOLFSSL_EVP_CIPHER* cipher, 00096 unsigned char* passwd, int len, 00097 pem_password_cb* cb, void* arg); 00098 00099 WOLFSSL_API 00100 int wolfSSL_EVP_PKEY_type(int type); 00101 00102 WOLFSSL_API 00103 int wolfSSL_EVP_PKEY_base_id(const EVP_PKEY *pkey); 00104 00105 #if !defined(NO_FILESYSTEM) 00106 WOLFSSL_API 00107 WOLFSSL_EVP_PKEY *wolfSSL_PEM_read_PUBKEY(FILE *fp, EVP_PKEY **x, 00108 pem_password_cb *cb, void *u); 00109 WOLFSSL_API 00110 WOLFSSL_X509 *wolfSSL_PEM_read_X509(FILE *fp, WOLFSSL_X509 **x, 00111 pem_password_cb *cb, void *u); 00112 WOLFSSL_API 00113 WOLFSSL_EVP_PKEY *wolfSSL_PEM_read_PrivateKey(FILE *fp, WOLFSSL_EVP_PKEY **x, 00114 pem_password_cb *cb, void *u); 00115 #endif /* NO_FILESYSTEM */ 00116 00117 #define PEM_read_X509 wolfSSL_PEM_read_X509 00118 #define PEM_read_PrivateKey wolfSSL_PEM_read_PrivateKey 00119 #define PEM_write_bio_PrivateKey wolfSSL_PEM_write_bio_PrivateKey 00120 /* RSA */ 00121 #define PEM_write_bio_RSAPrivateKey wolfSSL_PEM_write_bio_RSAPrivateKey 00122 #define PEM_write_RSAPrivateKey wolfSSL_PEM_write_RSAPrivateKey 00123 #define PEM_write_RSA_PUBKEY wolfSSL_PEM_write_RSA_PUBKEY 00124 #define PEM_write_RSAPublicKey wolfSSL_PEM_write_RSAPublicKey 00125 #define PEM_read_RSAPublicKey wolfSSL_PEM_read_RSAPublicKey 00126 /* DSA */ 00127 #define PEM_write_bio_DSAPrivateKey wolfSSL_PEM_write_bio_DSAPrivateKey 00128 #define PEM_write_DSAPrivateKey wolfSSL_PEM_write_DSAPrivateKey 00129 #define PEM_write_DSA_PUBKEY wolfSSL_PEM_write_DSA_PUBKEY 00130 /* ECC */ 00131 #define PEM_write_bio_ECPrivateKey wolfSSL_PEM_write_bio_ECPrivateKey 00132 #define PEM_write_EC_PUBKEY wolfSSL_PEM_write_EC_PUBKEY 00133 #define PEM_write_ECPrivateKey wolfSSL_PEM_write_ECPrivateKey 00134 /* EVP_KEY */ 00135 #define PEM_read_bio_PrivateKey wolfSSL_PEM_read_bio_PrivateKey 00136 #define PEM_read_PUBKEY wolfSSL_PEM_read_PUBKEY 00137 #define EVP_PKEY_type wolfSSL_EVP_PKEY_type 00138 00139 #ifdef __cplusplus 00140 } /* extern "C" */ 00141 #endif 00142 00143 #endif /* WOLFSSL_PEM_H_ */ 00144 00145
Generated on Tue Jul 12 2022 23:30:58 by
 1.7.2 
    