in Abuse.ch/src/R53AbuseAutoUpdate.js [51:79]
async function getDomains (){
var listOfDomains = [];
console.log("Fetching the list of domains from " + hostfileUrl);
return new Promise((resolve, reject) => {
const url = hostfileUrl;
let dataString = '';
let post_req = https.request(url, (res) => {
res.setEncoding("utf8");
res.on('data', chunk => {
dataString += chunk;
});
res.on('end', () => {
//console.log(dataString);
listOfDomains = dataString
.split(/\r?\n/)
.filter((line) => line.match(/^\d+/))
.map((line)=> {return line.replace(/127.0.0.1\t/,'')})
.filter((line) => line.match(/^(?!:\/\/)(?=.{1,255}$)((.{1,63}\.){1,127}(?![0-9]*$)[a-z0-9-]+\.?)$/));
console.log("Fetched " + listOfDomains.length + " Domains");
resolve(listOfDomains);
});
res.on('error', (err) => {
reject(err);
});
});
post_req.write("test");
post_req.end();
});
}