Skip to content

Commit

Permalink
Use md5 hashing for OpenSSL 3 (#924)
Browse files Browse the repository at this point in the history
  • Loading branch information
pathmapper authored Mar 22, 2022
1 parent 247c94b commit 4bb9e21
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions src/cache.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,14 @@ const transform = require("./transform");
// Lazily instantiated when needed
let defaultCacheDirectory = null;

let hashType = "md4";
// use md5 hashing if md4 is not available
try {
crypto.createHash(hashType);
} catch (err) {
hashType = "md5";
}

const readFile = promisify(fs.readFile);
const writeFile = promisify(fs.writeFile);
const gunzip = promisify(zlib.gunzip);
Expand Down Expand Up @@ -63,13 +71,6 @@ const write = async function (filename, compress, result) {
* @return {String}
*/
const filename = function (source, identifier, options) {
// md4 hashing is not supported starting with node v17.0.0
const majorNodeVersion = parseInt(process.versions.node.split(".")[0], 10);
let hashType = "md4";
if (majorNodeVersion >= 17) {
hashType = "md5";
}

const hash = crypto.createHash(hashType);

const contents = JSON.stringify({ source, options, identifier });
Expand Down

0 comments on commit 4bb9e21

Please sign in to comment.