|
@@ -0,0 +1,49 @@
|
|
|
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
+From: Shelley Vohr <[email protected]>
|
|
|
+Date: Mon, 8 Nov 2021 15:52:17 +0100
|
|
|
+Subject: test: add fixture trim option
|
|
|
+
|
|
|
+Fixes a spec failure originating with a strict requirement in BoringSSL
|
|
|
+that base64 strings be evenly divisible by 4 in their implementation of
|
|
|
+`NETSCAPE_SPKI_b64_decode`.
|
|
|
+
|
|
|
+Fixes that issue by trimming the newlines out of the file.
|
|
|
+
|
|
|
+Upstreamed at https://github.com/nodejs/node/pull/40757.
|
|
|
+
|
|
|
+diff --git a/test/common/fixtures.js b/test/common/fixtures.js
|
|
|
+index e5e1d887df525e493989a4aa8df6952a0e5b6c47..2da8aeb6a694e4b45d76bc3908284783d83f6755 100644
|
|
|
+--- a/test/common/fixtures.js
|
|
|
++++ b/test/common/fixtures.js
|
|
|
+@@ -15,8 +15,13 @@ function readFixtureSync(args, enc) {
|
|
|
+ return fs.readFileSync(fixturesPath(args), enc);
|
|
|
+ }
|
|
|
+
|
|
|
+-function readFixtureKey(name, enc) {
|
|
|
+- return fs.readFileSync(fixturesPath('keys', name), enc);
|
|
|
++function readFixtureKey(name, enc, trim) {
|
|
|
++ let result = fs.readFileSync(fixturesPath('keys', name), enc);
|
|
|
++ if (trim) {
|
|
|
++ result = Buffer.from(result.toString().trim(), 'utf8');
|
|
|
++ }
|
|
|
++
|
|
|
++ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ function readFixtureKeys(enc, ...names) {
|
|
|
+diff --git a/test/parallel/test-crypto-certificate.js b/test/parallel/test-crypto-certificate.js
|
|
|
+index 4a5f1f149fe6c739f7f1d2ee17df6e61a942d621..a21fbff81c840da29034cb07ae2bd711cfe78b0a 100644
|
|
|
+--- a/test/parallel/test-crypto-certificate.js
|
|
|
++++ b/test/parallel/test-crypto-certificate.js
|
|
|
+@@ -30,9 +30,9 @@ const { Certificate } = crypto;
|
|
|
+ const fixtures = require('../common/fixtures');
|
|
|
+
|
|
|
+ // Test Certificates
|
|
|
+-const spkacValid = fixtures.readKey('rsa_spkac.spkac');
|
|
|
++const spkacValid = fixtures.readKey('rsa_spkac.spkac', null, true);
|
|
|
+ const spkacChallenge = 'this-is-a-challenge';
|
|
|
+-const spkacFail = fixtures.readKey('rsa_spkac_invalid.spkac');
|
|
|
++const spkacFail = fixtures.readKey('rsa_spkac_invalid.spkac', null, true);
|
|
|
+ const spkacPublicPem = fixtures.readKey('rsa_public.pem');
|
|
|
+
|
|
|
+ function copyArrayBuffer(buf) {
|