[njs] WebCrypto: improved working with curve constants.
noreply at nginx.com
noreply at nginx.com
Fri May 16 19:16:02 UTC 2025
details: https://github.com/nginx/njs/commit/f3bc5338cb9df269ca6573cf46b5d39721803cf2
branches: master
commit: f3bc5338cb9df269ca6573cf46b5d39721803cf2
user: Dmitry Volyntsev <xeioex at nginx.com>
date: Tue, 13 May 2025 19:08:16 -0700
description:
WebCrypto: improved working with curve constants.
In crypto.subtle.generateKey().
---
external/njs_webcrypto_module.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/external/njs_webcrypto_module.c b/external/njs_webcrypto_module.c
index d9b05d09..8d7f78e7 100644
--- a/external/njs_webcrypto_module.c
+++ b/external/njs_webcrypto_module.c
@@ -2593,7 +2593,6 @@ static njs_int_t
njs_ext_generate_key(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
njs_index_t unused, njs_value_t *retval)
{
- int nid;
unsigned usage;
njs_int_t ret;
njs_bool_t extractable;
@@ -2730,8 +2729,7 @@ njs_ext_generate_key(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
case NJS_ALGORITHM_ECDSA:
case NJS_ALGORITHM_ECDH:
- nid = 0;
- ret = njs_algorithm_curve(vm, aobject, &nid);
+ ret = njs_algorithm_curve(vm, aobject, &key->u.a.curve);
if (njs_slow_path(ret == NJS_ERROR)) {
goto fail;
}
@@ -2747,7 +2745,7 @@ njs_ext_generate_key(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
goto fail;
}
- if (EVP_PKEY_CTX_set_ec_paramgen_curve_nid(ctx, nid) <= 0) {
+ if (EVP_PKEY_CTX_set_ec_paramgen_curve_nid(ctx, key->u.a.curve) <= 0) {
njs_webcrypto_error(vm, "EVP_PKEY_CTX_set_ec_paramgen_curve_nid() "
"failed");
goto fail;
More information about the nginx-devel
mailing list