diff options
Diffstat (limited to 'src/lib/libcrypto/evp/p_enc.c')
-rw-r--r-- | src/lib/libcrypto/evp/p_enc.c | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/src/lib/libcrypto/evp/p_enc.c b/src/lib/libcrypto/evp/p_enc.c index a26bfad02a..4cf6acaf5d 100644 --- a/src/lib/libcrypto/evp/p_enc.c +++ b/src/lib/libcrypto/evp/p_enc.c | |||
@@ -58,26 +58,29 @@ | |||
58 | 58 | ||
59 | #include <stdio.h> | 59 | #include <stdio.h> |
60 | #include "cryptlib.h" | 60 | #include "cryptlib.h" |
61 | #include "rand.h" | 61 | #include <openssl/rand.h> |
62 | #include "rsa.h" | 62 | #ifndef NO_RSA |
63 | #include "evp.h" | 63 | #include <openssl/rsa.h> |
64 | #include "objects.h" | 64 | #endif |
65 | #include "x509.h" | 65 | #include <openssl/evp.h> |
66 | #include <openssl/objects.h> | ||
67 | #include <openssl/x509.h> | ||
66 | 68 | ||
67 | int EVP_PKEY_encrypt(ek,key,key_len,pubk) | 69 | int EVP_PKEY_encrypt(unsigned char *ek, unsigned char *key, int key_len, |
68 | unsigned char *ek; | 70 | EVP_PKEY *pubk) |
69 | unsigned char *key; | ||
70 | int key_len; | ||
71 | EVP_PKEY *pubk; | ||
72 | { | 71 | { |
73 | int ret=0; | 72 | int ret=0; |
74 | 73 | ||
74 | #ifndef NO_RSA | ||
75 | if (pubk->type != EVP_PKEY_RSA) | 75 | if (pubk->type != EVP_PKEY_RSA) |
76 | { | 76 | { |
77 | #endif | ||
77 | EVPerr(EVP_F_EVP_PKEY_ENCRYPT,EVP_R_PUBLIC_KEY_NOT_RSA); | 78 | EVPerr(EVP_F_EVP_PKEY_ENCRYPT,EVP_R_PUBLIC_KEY_NOT_RSA); |
79 | #ifndef NO_RSA | ||
78 | goto err; | 80 | goto err; |
79 | } | 81 | } |
80 | ret=RSA_public_encrypt(key_len,key,ek,pubk->pkey.rsa,RSA_PKCS1_PADDING); | 82 | ret=RSA_public_encrypt(key_len,key,ek,pubk->pkey.rsa,RSA_PKCS1_PADDING); |
81 | err: | 83 | err: |
84 | #endif | ||
82 | return(ret); | 85 | return(ret); |
83 | } | 86 | } |