/** * Module exports. */ module.exports = localHostOrDomainIs; /** * Is true if the hostname matches exactly the specified hostname, or if there is * no domain name part in the hostname, but the unqualified hostname matches. * * Examples: * * ``` js * localHostOrDomainIs("www.netscape.com", "www.netscape.com") * // is true (exact match). * * localHostOrDomainIs("www", "www.netscape.com") * // is true (hostname match, domain not specified). * * localHostOrDomainIs("www.mcom.com", "www.netscape.com") * // is false (domain name mismatch). * * localHostOrDomainIs("home.netscape.com", "www.netscape.com") * // is false (hostname mismatch). * ``` * * @param {String} host the hostname from the URL. * @param {String} hostdom fully qualified hostname to match against. * @return {Boolean} */ function localHostOrDomainIs (host, hostdom) { var parts = String(host).split('.'); var domparts = String(hostdom).split('.'); var matches = true; for (var i = 0; i < parts.length; i++) { if (parts[i] !== domparts[i]) { matches = false; break; } } return matches; }