dns: remove redundant code using common variable
`validFamilies` variable is defined 2 times, so remove redundant code by defining `validFamilies` in util. Plus, apply the same approach to `validDnsOrders` because it's also used multiple times. PR-URL: https://github.com/nodejs/node/pull/57386 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
This commit is contained in:
parent
6156bbb399
commit
baf989ba11
@ -46,6 +46,8 @@ const {
|
||||
getDefaultResultOrder,
|
||||
setDefaultResultOrder,
|
||||
errorCodes: dnsErrorCodes,
|
||||
validDnsOrders,
|
||||
validFamilies,
|
||||
} = require('internal/dns/utils');
|
||||
const {
|
||||
Resolver,
|
||||
@ -138,7 +140,6 @@ function onlookupall(err, addresses) {
|
||||
|
||||
// Easy DNS A/AAAA look up
|
||||
// lookup(hostname, [options,] callback)
|
||||
const validFamilies = [0, 4, 6];
|
||||
function lookup(hostname, options, callback) {
|
||||
let hints = 0;
|
||||
let family = 0;
|
||||
@ -192,7 +193,7 @@ function lookup(hostname, options, callback) {
|
||||
dnsOrder = options.verbatim ? 'verbatim' : 'ipv4first';
|
||||
}
|
||||
if (options?.order != null) {
|
||||
validateOneOf(options.order, 'options.order', ['ipv4first', 'ipv6first', 'verbatim']);
|
||||
validateOneOf(options.order, 'options.order', validDnsOrders);
|
||||
dnsOrder = options.order;
|
||||
}
|
||||
}
|
||||
|
@ -16,6 +16,8 @@ const {
|
||||
getDefaultResultOrder,
|
||||
setDefaultResultOrder,
|
||||
setDefaultResolver,
|
||||
validDnsOrders,
|
||||
validFamilies,
|
||||
} = require('internal/dns/utils');
|
||||
|
||||
const {
|
||||
@ -179,7 +181,6 @@ function createLookupPromise(family, hostname, all, hints, dnsOrder) {
|
||||
});
|
||||
}
|
||||
|
||||
const validFamilies = [0, 4, 6];
|
||||
/**
|
||||
* Get the IP address for a given hostname.
|
||||
* @param {string} hostname - The hostname to resolve (ex. 'nodejs.org').
|
||||
@ -227,7 +228,7 @@ function lookup(hostname, options) {
|
||||
dnsOrder = options.verbatim ? 'verbatim' : 'ipv4first';
|
||||
}
|
||||
if (options?.order != null) {
|
||||
validateOneOf(options.order, 'options.order', ['ipv4first', 'ipv6first', 'verbatim']);
|
||||
validateOneOf(options.order, 'options.order', validDnsOrders);
|
||||
dnsOrder = options.order;
|
||||
}
|
||||
}
|
||||
|
@ -201,6 +201,8 @@ class ResolverBase {
|
||||
|
||||
let defaultResolver;
|
||||
let dnsOrder;
|
||||
const validDnsOrders = ['verbatim', 'ipv4first', 'ipv6first'];
|
||||
const validFamilies = [0, 4, 6];
|
||||
|
||||
function initializeDns() {
|
||||
const orderFromCLI = getOptionValue('--dns-result-order');
|
||||
@ -208,7 +210,7 @@ function initializeDns() {
|
||||
dnsOrder ??= 'verbatim';
|
||||
} else {
|
||||
// Allow the deserialized application to override order from CLI.
|
||||
validateOneOf(orderFromCLI, '--dns-result-order', ['verbatim', 'ipv4first', 'ipv6first']);
|
||||
validateOneOf(orderFromCLI, '--dns-result-order', validDnsOrders);
|
||||
dnsOrder = orderFromCLI;
|
||||
}
|
||||
|
||||
@ -281,7 +283,7 @@ function emitInvalidHostnameWarning(hostname) {
|
||||
}
|
||||
|
||||
function setDefaultResultOrder(value) {
|
||||
validateOneOf(value, 'dnsOrder', ['verbatim', 'ipv4first', 'ipv6first']);
|
||||
validateOneOf(value, 'dnsOrder', validDnsOrders);
|
||||
dnsOrder = value;
|
||||
}
|
||||
|
||||
@ -356,4 +358,6 @@ module.exports = {
|
||||
errorCodes,
|
||||
createResolverClass,
|
||||
initializeDns,
|
||||
validDnsOrders,
|
||||
validFamilies,
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user