dns: add lookup function.

This commit is contained in:
Christopher Jeffrey 2017-01-16 01:29:38 -08:00
parent 07103da04f
commit ded8097a03
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
2 changed files with 37 additions and 1 deletions

View File

@ -29,3 +29,7 @@ exports.resolve = function resolve(host, proxy) {
});
});
};
exports.lookup = function lookup(host, proxy) {
return exports.resolve(host, proxy);
};

View File

@ -8,7 +8,13 @@
var dns = require('dns');
exports.resolve = function resolve(host) {
var options = {
family: 4,
hints: dns.ADDRCONFIG | dns.V4MAPPED,
all: true
};
exports.resolve = function resolve(host, proxy) {
return new Promise(function(resolve, reject) {
dns.resolve(host, 'A', function(err, result) {
if (err) {
@ -25,3 +31,29 @@ exports.resolve = function resolve(host) {
});
});
};
exports.lookup = function lookup(host, proxy) {
return new Promise(function(resolve, reject) {
var addrs = [];
var i, addr;
dns.lookup(host, options, function(err, result) {
if (err) {
reject(err);
return;
}
if (result.length === 0) {
reject(new Error('No DNS results.'));
return;
}
for (i = 0; i < result.length; i++) {
addr = result[i];
addrs.push(addr.address);
}
resolve(addrs);
});
});
};