Don't exit if whitelist doesn't exit

This commit is contained in:
mrrfv
2023-05-15 15:03:53 +02:00
committed by GitHub
parent a6c2a98d80
commit f5380ede47
+28 -26
View File
@@ -14,31 +14,30 @@ let whitelist = []; // Define an empty array for the whitelist
// Read whitelist.csv and parse // Read whitelist.csv and parse
fs.readFile('whitelist.csv', 'utf8', async (err, data) => { fs.readFile('whitelist.csv', 'utf8', async (err, data) => {
if (err) { if (err) {
console.error('Error reading whitelist.csv:', err); console.warn('Error reading whitelist.csv:', err);
return; console.warn('Assuming whitelist is empty.')
} } else {
// Convert into array and cleanup whitelist
// Convert into array and cleanup whitelist const domainValidationPattern = /^(?!-)[A-Za-z0-9-]+([\-\.]{1}[a-z0-9]+)*\.[A-Za-z]{2,6}$/;
const domainValidationPattern = /^(?!-)[A-Za-z0-9-]+([\-\.]{1}[a-z0-9]+)*\.[A-Za-z]{2,6}$/; whitelist = data.split('\n').filter(domain => {
let whitelist = data.split('\n').filter(domain => { // Remove entire lines starting with "127.0.0.1" or "::1", empty lines or comments
// Remove entire lines starting with "127.0.0.1" or "::1", empty lines or comments return domain && !domain.startsWith('#') && !domain.startsWith('//') && !domain.startsWith('/*') && !domain.startsWith('*/') && !(domain === '\r');
return domain && !domain.startsWith('#') && !domain.startsWith('//') && !domain.startsWith('/*') && !domain.startsWith('*/') && !(domain === '\r'); }).map(domain => {
}).map(domain => { // Remove "\r", "0.0.0.0 ", "127.0.0.1 ", "::1 " and similar from domain items
// Remove "\r", "0.0.0.0 ", "127.0.0.1 ", "::1 " and similar from domain items return domain
return domain .replace('\r', '')
.replace('\r', '') .replace('0.0.0.0 ', '')
.replace('0.0.0.0 ', '') .replace('127.0.0.1 ', '')
.replace('127.0.0.1 ', '') .replace('::1 ', '')
.replace('::1 ', '') .replace(':: ', '')
.replace(':: ', '') .replace('||', '')
.replace('||', '') .replace('@@||', '')
.replace('@@||', '') .replace('^$important', '')
.replace('^$important', '') .replace('^', '');
.replace('^', ''); }).filter(domain => {
}).filter(domain => { return domainValidationPattern.test(domain);
return domainValidationPattern.test(domain); });
}); }
}); });
@@ -63,7 +62,10 @@ fs.readFile('input.csv', 'utf8', async (err, data) => {
.replace('::1 ', '') .replace('::1 ', '')
.replace(':: ', '') .replace(':: ', '')
.replace('^', '') .replace('^', '')
.replace('||', ''); .replace('||', '')
.replace('@@||', '')
.replace('^$important', '')
.replace('^', '');
}).filter(domain => { }).filter(domain => {
return domainValidationPattern.test(domain); return domainValidationPattern.test(domain);
}); });