30 lines
449 B
JavaScript
30 lines
449 B
JavaScript
'use strict';
|
|
const {isIP} = require('net');
|
|
const assert = require('assert');
|
|
|
|
const getHost = host => {
|
|
if (host[0] === '[') {
|
|
const idx = host.indexOf(']');
|
|
|
|
assert(idx !== -1);
|
|
return host.slice(1, idx);
|
|
}
|
|
|
|
const idx = host.indexOf(':');
|
|
if (idx === -1) {
|
|
return host;
|
|
}
|
|
|
|
return host.slice(0, idx);
|
|
};
|
|
|
|
module.exports = host => {
|
|
const servername = getHost(host);
|
|
|
|
if (isIP(servername)) {
|
|
return '';
|
|
}
|
|
|
|
return servername;
|
|
};
|