]> git.kaiwu.me - njs.git/commitdiff
Tests: adapted WebCrypto tests to RHEL9.
authorDmitry Volyntsev <xeioex@nginx.com>
Tue, 24 May 2022 05:26:51 +0000 (22:26 -0700)
committerDmitry Volyntsev <xeioex@nginx.com>
Tue, 24 May 2022 05:26:51 +0000 (22:26 -0700)
test/webcrypto/sign.t.js
test/webcrypto/verify.t.js

index d9eb3dc7123caa58d1e64b7d1fdb21a9c0921e84..d72aa0034dfd8a5f8545d344aea8e63ba99da915 100644 (file)
@@ -11,7 +11,17 @@ async function test(params) {
                                                  false, [ "sign" ]);
 
     let sig = await crypto.subtle.sign(params.sign_alg, sign_key,
-                                     encoder.encode(params.text));
+                                     encoder.encode(params.text))
+                    .catch (e => {
+                        if (e.toString().startsWith("Error: EVP_PKEY_CTX_set_signature_md() failed")) {
+                            /* Red Hat Enterprise Linux: SHA-1 is disabled */
+                            return "SKIPPED";
+                        }
+                    });
+
+    if (sig == "SKIPPED") {
+        return sig;
+    }
 
     if (params.verify) {
         let verify_key = await crypto.subtle.importKey(params.verify_key.fmt,
index b77f5c16b195c9fda9788cb76973c98c5c1bb2ae..df3847247963f4e62c5e8766df1a5ba4982ffbfc 100644 (file)
@@ -11,7 +11,17 @@ async function test(params) {
 
     let r = await crypto.subtle.verify(params.verify_alg,
                                        key, params.signature,
-                                       params.text);
+                                       params.text)
+                    .catch (e => {
+                        if (e.toString().startsWith("Error: EVP_PKEY_CTX_set_signature_md() failed")) {
+                            /* Red Hat Enterprise Linux: SHA-1 is disabled */
+                            return "SKIPPED";
+                        }
+                    });
+
+    if (r == "SKIPPED") {
+        return r;
+    }
 
     if (params.expected !== r) {
         throw Error(`${params.import_alg.name} failed expected: "${params.expected}" vs "${r}"`);