mirror of
https://github.com/thelounge/thelounge
synced 2024-11-10 06:34:21 +00:00
Merge pull request #3294 from thelounge/xpaw/fix-3293
Verify reverse DNS when looking up hostnames for webirc
This commit is contained in:
commit
820a67802d
1 changed files with 16 additions and 4 deletions
|
@ -744,11 +744,23 @@ function performAuthentication(data) {
|
|||
}
|
||||
|
||||
function reverseDnsLookup(ip, callback) {
|
||||
dns.reverse(ip, (err, hostnames) => {
|
||||
if (!err && hostnames.length) {
|
||||
return callback(hostnames[0]);
|
||||
dns.reverse(ip, (reverseErr, hostnames) => {
|
||||
if (reverseErr || hostnames.length < 1) {
|
||||
return callback(ip);
|
||||
}
|
||||
|
||||
callback(ip);
|
||||
dns.resolve(hostnames[0], net.isIP(ip) === 6 ? "AAAA" : "A", (resolveErr, resolvedIps) => {
|
||||
if (resolveErr || resolvedIps.length < 1) {
|
||||
return callback(ip);
|
||||
}
|
||||
|
||||
for (const resolvedIp of resolvedIps) {
|
||||
if (ip === resolvedIp) {
|
||||
return callback(hostnames[0]);
|
||||
}
|
||||
}
|
||||
|
||||
return callback(ip);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue