From b6b385fe119989d1dd7d416f3e059181a21de005 Mon Sep 17 00:00:00 2001 From: toddouska Date: Wed, 9 Sep 2015 12:38:28 -0700 Subject: [PATCH] fix opensslextra with no filesystem --- src/ssl.c | 6 ++++++ wolfssl/openssl/pem.h | 36 ++++++++++++++++++++++-------------- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/ssl.c b/src/ssl.c index c4a095663..a8b47b255 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -14863,6 +14863,7 @@ int wolfSSL_ECDH_compute_key(void *out, size_t outlen, } /* End ECDH */ +#if !defined(NO_FILESYSTEM) /* return code compliant with OpenSSL : * 1 if success, 0 if error */ @@ -14875,6 +14876,7 @@ int wolfSSL_PEM_write_EC_PUBKEY(FILE *fp, WOLFSSL_EC_KEY *x) return SSL_FAILURE; } +#endif /* NO_FILESYSTEM */ #if defined(WOLFSSL_KEY_GEN) @@ -15256,6 +15258,7 @@ int wolfSSL_EVP_PKEY_type(int type) } +#if !defined(NO_FILESYSTEM) WOLFSSL_EVP_PKEY *wolfSSL_PEM_read_PUBKEY(FILE *fp, EVP_PKEY **x, pem_password_cb *cb, void *u) { @@ -15268,9 +15271,11 @@ WOLFSSL_EVP_PKEY *wolfSSL_PEM_read_PUBKEY(FILE *fp, EVP_PKEY **x, return NULL; } +#endif /* NO_FILESYSTEM */ #ifndef NO_RSA +#if !defined(NO_FILESYSTEM) WOLFSSL_RSA *wolfSSL_PEM_read_RSAPublicKey(FILE *fp, WOLFSSL_RSA **x, pem_password_cb *cb, void *u) { @@ -15309,6 +15314,7 @@ int wolfSSL_PEM_write_RSA_PUBKEY(FILE *fp, WOLFSSL_RSA *x) return SSL_FAILURE; } +#endif /* NO_FILESYSTEM */ /* return SSL_SUCCESS if success, SSL_FATAL_ERROR if error */ int wolfSSL_RSA_LoadDer(WOLFSSL_RSA* rsa, const unsigned char* der, int derSz) diff --git a/wolfssl/openssl/pem.h b/wolfssl/openssl/pem.h index f21525818..76a391f54 100644 --- a/wolfssl/openssl/pem.h +++ b/wolfssl/openssl/pem.h @@ -21,15 +21,16 @@ int wolfSSL_PEM_write_bio_RSAPrivateKey(WOLFSSL_BIO* bio, WOLFSSL_RSA* rsa, unsigned char* passwd, int len, pem_password_cb cb, void* arg); WOLFSSL_API +int wolfSSL_PEM_write_mem_RSAPrivateKey(RSA* rsa, const EVP_CIPHER* cipher, + unsigned char* passwd, int len, + unsigned char **pem, int *plen); +#if !defined(NO_FILESYSTEM) +WOLFSSL_API int wolfSSL_PEM_write_RSAPrivateKey(FILE *fp, WOLFSSL_RSA *rsa, const EVP_CIPHER *enc, unsigned char *kstr, int klen, pem_password_cb *cb, void *u); WOLFSSL_API -int wolfSSL_PEM_write_mem_RSAPrivateKey(RSA* rsa, const EVP_CIPHER* cipher, - unsigned char* passwd, int len, - unsigned char **pem, int *plen); -WOLFSSL_API WOLFSSL_RSA *wolfSSL_PEM_read_RSAPublicKey(FILE *fp, WOLFSSL_RSA **x, pem_password_cb *cb, void *u); WOLFSSL_API @@ -37,6 +38,7 @@ int wolfSSL_PEM_write_RSAPublicKey(FILE *fp, WOLFSSL_RSA *x); WOLFSSL_API int wolfSSL_PEM_write_RSA_PUBKEY(FILE *fp, WOLFSSL_RSA *x); +#endif /* NO_FILESYSTEM */ /* DSA */ WOLFSSL_API @@ -46,17 +48,19 @@ int wolfSSL_PEM_write_bio_DSAPrivateKey(WOLFSSL_BIO* bio, unsigned char* passwd, int len, pem_password_cb cb, void* arg); WOLFSSL_API +int wolfSSL_PEM_write_mem_DSAPrivateKey(WOLFSSL_DSA* dsa, + const EVP_CIPHER* cipher, + unsigned char* passwd, int len, + unsigned char **pem, int *plen); +#if !defined(NO_FILESYSTEM) +WOLFSSL_API int wolfSSL_PEM_write_DSAPrivateKey(FILE *fp, WOLFSSL_DSA *dsa, const EVP_CIPHER *enc, unsigned char *kstr, int klen, pem_password_cb *cb, void *u); WOLFSSL_API -int wolfSSL_PEM_write_mem_DSAPrivateKey(WOLFSSL_DSA* dsa, - const EVP_CIPHER* cipher, - unsigned char* passwd, int len, - unsigned char **pem, int *plen); -WOLFSSL_API int wolfSSL_PEM_write_DSA_PUBKEY(FILE *fp, WOLFSSL_DSA *x); +#endif /* NO_FILESYSTEM */ /* ECC */ WOLFSSL_API @@ -65,17 +69,19 @@ int wolfSSL_PEM_write_bio_ECPrivateKey(WOLFSSL_BIO* bio, WOLFSSL_EC_KEY* ec, unsigned char* passwd, int len, pem_password_cb cb, void* arg); WOLFSSL_API +int wolfSSL_PEM_write_mem_ECPrivateKey(WOLFSSL_EC_KEY* key, + const EVP_CIPHER* cipher, + unsigned char* passwd, int len, + unsigned char **pem, int *plen); +#if !defined(NO_FILESYSTEM) +WOLFSSL_API int wolfSSL_PEM_write_ECPrivateKey(FILE *fp, WOLFSSL_EC_KEY *key, const EVP_CIPHER *enc, unsigned char *kstr, int klen, pem_password_cb *cb, void *u); WOLFSSL_API -int wolfSSL_PEM_write_mem_ECPrivateKey(WOLFSSL_EC_KEY* key, - const EVP_CIPHER* cipher, - unsigned char* passwd, int len, - unsigned char **pem, int *plen); -WOLFSSL_API int wolfSSL_PEM_write_EC_PUBKEY(FILE *fp, WOLFSSL_EC_KEY *key); +#endif /* NO_FILESYSTEM */ /* EVP_KEY */ WOLFSSL_API @@ -86,9 +92,11 @@ WOLFSSL_EVP_PKEY* wolfSSL_PEM_read_bio_PrivateKey(WOLFSSL_BIO* bio, WOLFSSL_API int wolfSSL_EVP_PKEY_type(int type); +#if !defined(NO_FILESYSTEM) WOLFSSL_API WOLFSSL_EVP_PKEY *wolfSSL_PEM_read_PUBKEY(FILE *fp, EVP_PKEY **x, pem_password_cb *cb, void *u); +#endif /* NO_FILESYSTEM */ /* RSA */ #define PEM_write_bio_RSAPrivateKey wolfSSL_PEM_write_bio_RSAPrivateKey