mirror of
https://github.com/AikidoSec/safe-chain.git
synced 2026-05-26 12:10:49 +00:00
Better error handling and extract validation logic to a re-usable function.
This commit is contained in:
parent
1e7cd74364
commit
8c872b3861
1 changed files with 25 additions and 6 deletions
|
|
@ -18,15 +18,15 @@ export function getScanTimeout() {
|
||||||
const config = readConfigFile();
|
const config = readConfigFile();
|
||||||
|
|
||||||
if (process.env.AIKIDO_SCAN_TIMEOUT_MS) {
|
if (process.env.AIKIDO_SCAN_TIMEOUT_MS) {
|
||||||
const scanTimeout = Number(process.env.AIKIDO_SCAN_TIMEOUT_MS);
|
const scanTimeout = validateTimeout(process.env.AIKIDO_SCAN_TIMEOUT_MS);
|
||||||
if (!Number.isNaN(scanTimeout) && scanTimeout > 0) {
|
if (scanTimeout != null) {
|
||||||
return scanTimeout;
|
return scanTimeout;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config.scanTimeout) {
|
if (config.scanTimeout) {
|
||||||
const scanTimeout = Number(config.scanTimeout);
|
const scanTimeout = validateTimeout(config.scanTimeout);
|
||||||
if (!Number.isNaN(scanTimeout) && scanTimeout > 0) {
|
if (scanTimeout != null) {
|
||||||
return scanTimeout;
|
return scanTimeout;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -34,6 +34,19 @@ export function getScanTimeout() {
|
||||||
return 10000; // Default to 10 seconds
|
return 10000; // Default to 10 seconds
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param {any} value
|
||||||
|
* @returns {number?}
|
||||||
|
*/
|
||||||
|
function validateTimeout(value) {
|
||||||
|
const timeout = Number(value);
|
||||||
|
if (!Number.isNaN(timeout) && timeout > 0) {
|
||||||
|
return timeout;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {import("../api/aikido.js").MalwarePackage[]} data
|
* @param {import("../api/aikido.js").MalwarePackage[]} data
|
||||||
* @param {string | number} version
|
* @param {string | number} version
|
||||||
|
|
@ -100,8 +113,14 @@ function readConfigFile() {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
const data = fs.readFileSync(configFilePath, "utf8");
|
const data = fs.readFileSync(configFilePath, "utf8");
|
||||||
return JSON.parse(data);
|
return JSON.parse(data);
|
||||||
|
} catch {
|
||||||
|
return {
|
||||||
|
scanTimeout: undefined,
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue