You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
449 B
30 lines
449 B
'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;
|
|
};
|