]> git.kaiwu.me - njs.git/commitdiff
SSL: fixed building with OpenSSL <= 1.0.1.
authorDmitry Volyntsev <xeioex@nginx.com>
Wed, 13 Oct 2021 16:31:00 +0000 (16:31 +0000)
committerDmitry Volyntsev <xeioex@nginx.com>
Wed, 13 Oct 2021 16:31:00 +0000 (16:31 +0000)
This closes #429 issue on Github.

external/njs_openssl.h
external/njs_webcrypto.c

index 002c6a2e8420991d1dae0efdbe2d81db087aac96..dc4f80dd9dc3e360d18f768b1844ac0c274cd3f0 100644 (file)
@@ -45,6 +45,9 @@
 #endif
 
 
+#define njs_bio_new_mem_buf(b, len) BIO_new_mem_buf((void *) b, len)
+
+
 #if (OPENSSL_VERSION_NUMBER < 0x30000000L && !defined ERR_peek_error_data)
 #define ERR_peek_error_data(d, f)    ERR_peek_error_line_data(NULL, NULL, d, f)
 #endif
index bed7cef34c3caded5ee57fbcc97b8dbb6ccb630e..ccd549ceebdbe323a911c5a5b2facf45b50ec0fa 100644 (file)
@@ -598,7 +598,7 @@ njs_cipher_pkey(njs_vm_t *vm, njs_str_t *data, njs_webcrypto_key_t *key,
     md = njs_algorithm_hash_digest(key->hash);
 
     EVP_PKEY_CTX_set_rsa_padding(ctx, RSA_PKCS1_OAEP_PADDING);
-    EVP_PKEY_CTX_set_rsa_oaep_md(ctx, md);
+    EVP_PKEY_CTX_set_signature_md(ctx, md);
     EVP_PKEY_CTX_set_rsa_mgf1_md(ctx, md);
 
     ret = cipher(ctx, NULL, &outlen, data->start, data->length);
@@ -1714,7 +1714,7 @@ njs_ext_import_key(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
 
     switch (fmt) {
     case NJS_KEY_FORMAT_PKCS8:
-        bio = BIO_new_mem_buf(start, key_data.length);
+        bio = njs_bio_new_mem_buf(start, key_data.length);
         if (njs_slow_path(bio == NULL)) {
             njs_webcrypto_error(vm, "BIO_new_mem_buf() failed");
             goto fail;