summaryrefslogtreecommitdiffstats
path: root/crypto/openssl/crypto/pkcs7/enc.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/openssl/crypto/pkcs7/enc.c')
-rw-r--r--crypto/openssl/crypto/pkcs7/enc.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/crypto/openssl/crypto/pkcs7/enc.c b/crypto/openssl/crypto/pkcs7/enc.c
index 43bfd10..2b56c2e 100644
--- a/crypto/openssl/crypto/pkcs7/enc.c
+++ b/crypto/openssl/crypto/pkcs7/enc.c
@@ -56,6 +56,7 @@
* [including the GNU Public Licence.]
*/
#include <stdio.h>
+#include <string.h>
#include <openssl/bio.h>
#include <openssl/x509.h>
#include <openssl/pem.h>
@@ -76,7 +77,7 @@ char *argv[];
const EVP_CIPHER *cipher=NULL;
STACK_OF(X509) *recips=NULL;
- SSLeay_add_all_algorithms();
+ OpenSSL_add_all_algorithms();
data=BIO_new(BIO_s_file());
while(argc > 1)
@@ -98,7 +99,8 @@ char *argv[];
argc-=2;
argv+=2;
if (!(in=BIO_new_file(keyfile,"r"))) goto err;
- if (!(x509=PEM_read_bio_X509(in,NULL,NULL))) goto err;
+ if (!(x509=PEM_read_bio_X509(in,NULL,NULL,NULL)))
+ goto err;
if(!recips) recips = sk_X509_new_null();
sk_X509_push(recips, x509);
BIO_free(in);
@@ -125,7 +127,14 @@ char *argv[];
#else
PKCS7_set_type(p7,NID_pkcs7_enveloped);
#endif
- if(!cipher) cipher = EVP_des_ede3_cbc();
+ if(!cipher) {
+#ifndef NO_DES
+ cipher = EVP_des_ede3_cbc();
+#else
+ fprintf(stderr, "No cipher selected\n");
+ goto err;
+#endif
+ }
if (!PKCS7_set_cipher(p7,cipher)) goto err;
for(i = 0; i < sk_X509_num(recips); i++) {
OpenPOWER on IntegriCloud