mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
|
'use strict';
|
||
|
const dns = require('dns');
|
||
|
const assert = require('assert');
|
||
|
|
||
|
assert(process.env.NODE_TEST_HOST);
|
||
|
|
||
|
const {
|
||
|
setDeserializeMainFunction,
|
||
|
} = require('v8').startupSnapshot;
|
||
|
|
||
|
function onError(err) {
|
||
|
console.error('error:', err);
|
||
|
}
|
||
|
|
||
|
function onResolve(addresses) {
|
||
|
console.log(`addresses: ${JSON.stringify(addresses)}`);
|
||
|
}
|
||
|
|
||
|
function onReverse(hostnames) {
|
||
|
console.log(`hostnames: ${JSON.stringify(hostnames)}`);
|
||
|
}
|
||
|
|
||
|
function query() {
|
||
|
if (process.env.NODE_TEST_DNS) {
|
||
|
dns.setServers([process.env.NODE_TEST_DNS])
|
||
|
}
|
||
|
|
||
|
const host = process.env.NODE_TEST_HOST;
|
||
|
if (process.env.NODE_TEST_PROMISE === 'true') {
|
||
|
dns.promises.resolve4(host).then(onResolve, onError);
|
||
|
} else {
|
||
|
dns.resolve4(host, (err, addresses) => {
|
||
|
if (err) {
|
||
|
onError(err);
|
||
|
} else {
|
||
|
onResolve(addresses);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
const ip = process.env.NODE_TEST_IP;
|
||
|
if (ip) {
|
||
|
if (process.env.NODE_TEST_PROMISE === 'true') {
|
||
|
dns.promises.reverse(ip).then(onReverse, onError);
|
||
|
} else {
|
||
|
dns.reverse(ip, (err, hostnames) => {
|
||
|
if (err) {
|
||
|
onError(err);
|
||
|
} else {
|
||
|
onReverse(hostnames);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
query();
|
||
|
|
||
|
setDeserializeMainFunction(query);
|