From f6cd7cbc56f40ce203cdc8224ba1c2540a144b20 Mon Sep 17 00:00:00 2001 From: Alexander Cerutti Date: Wed, 7 Nov 2018 12:53:07 +0100 Subject: [PATCH] Changed way parsePEM checks with operation execute --- src/pass.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/pass.js b/src/pass.js index 5edc4aa..ddfdc5f 100644 --- a/src/pass.js +++ b/src/pass.js @@ -643,7 +643,7 @@ class Pass { .then(contents => { contents.forEach((file, index) => { let certName = optCertsNames[index]; - let pem = parsePEM(file, this.Certificates._raw[certName].passphrase); + let pem = parsePEM(certName, file, this.Certificates._raw[certName].passphrase); if (!pem) { throw new Error(formatError("INVALID_CERTS", optCertsNames[index])); @@ -682,13 +682,11 @@ class Pass { * @returns {Object} The parsed certificate or key in node forge format */ -function parsePEM(element, passphrase) { - if (element.includes("PRIVATE KEY") && passphrase) { +function parsePEM(pemName, element, passphrase) { + if (pemName === "signerKey" && passphrase) { return forge.pki.decryptRsaPrivateKey(element, String(passphrase)); - } else if (element.includes("CERTIFICATE")) { - return forge.pki.certificateFromPem(element); } else { - return null; + return forge.pki.certificateFromPem(element); } }