From 2ee86c624ecd6b9dbaad10989143325fc64778cd Mon Sep 17 00:00:00 2001 From: Kenan Sulayman Date: Fri, 7 Feb 2014 18:18:27 +0100 Subject: [PATCH] dns: verify argument is valid function in resolve MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Don't use argument as callback if it's not a valid callback function. Throw a valid exception instead explaining the issue. Adds to #7070 ("DNS — Throw meaningful error(s)"). --- lib/dns.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/dns.js b/lib/dns.js index 15ee6a4362..dcf2128e28 100644 --- a/lib/dns.js +++ b/lib/dns.js @@ -184,9 +184,11 @@ exports.resolve = function(domain, type_, callback_) { if (typeof type_ == 'string') { resolver = resolveMap[type_]; callback = callback_; - } else { + } else if (util.isFunction(type_)) { resolver = exports.resolve4; callback = type_; + } else { + throw new Error('Type must be a string') } if (typeof resolver === 'function') {