detect-port-alt
Advanced tools
Comparing version 1.1.4 to 1.1.5
@@ -1,23 +0,23 @@ | ||
'use strict' | ||
'use strict'; | ||
const debug = require('debug')('detect-port') | ||
const net = require('net') | ||
const address = require('address') | ||
const debug = require('debug')('detect-port'); | ||
const net = require('net'); | ||
const address = require('address'); | ||
module.exports = (port, host, callback) => { | ||
if (typeof port === 'function') { | ||
callback = port | ||
port = null | ||
callback = port; | ||
port = null; | ||
} else if (typeof host === 'function') { | ||
callback = host | ||
host = null | ||
callback = host; | ||
host = null; | ||
} | ||
port = parseInt(port) || 0 | ||
let maxPort = port + 10 | ||
port = parseInt(port) || 0; | ||
let maxPort = port + 10; | ||
if (maxPort > 65535) { | ||
maxPort = 65535 | ||
maxPort = 65535; | ||
} | ||
debug('detect free port between [%s, %s)', port, maxPort) | ||
debug('detect free port between [%s, %s)', port, maxPort); | ||
if (typeof callback === 'function') { | ||
return tryListen(host, port, maxPort, callback) | ||
return tryListen(host, port, maxPort, callback); | ||
} | ||
@@ -32,9 +32,9 @@ // promise | ||
} | ||
}) | ||
}) | ||
} | ||
}); | ||
}); | ||
}; | ||
function tryListen(host, port, maxPort, callback) { | ||
function handleError() { | ||
port++ | ||
port++; | ||
if (port >= maxPort) { | ||
@@ -45,7 +45,7 @@ debug( | ||
maxPort | ||
) | ||
port = 0 | ||
maxPort = 0 | ||
); | ||
port = 0; | ||
maxPort = 0; | ||
} | ||
tryListen(host, port, maxPort, callback) | ||
tryListen(host, port, maxPort, callback); | ||
} | ||
@@ -57,7 +57,7 @@ | ||
if (port === 0) { | ||
return callback(err, realPort) | ||
return callback(err, realPort); | ||
} | ||
if (err) { | ||
return handleError(err) | ||
return handleError(err); | ||
} | ||
@@ -68,3 +68,3 @@ | ||
if (err) { | ||
return handleError(err) | ||
return handleError(err); | ||
} | ||
@@ -75,3 +75,3 @@ | ||
if (err) { | ||
return handleError(err) | ||
return handleError(err); | ||
} | ||
@@ -82,5 +82,6 @@ | ||
try { | ||
ip = address.ip() | ||
ip = address.ip(); | ||
} catch (err) { | ||
return handleError(err) | ||
// Skip the `ip` check if `address.ip()` fails | ||
return callback(null, realPort); | ||
} | ||
@@ -90,27 +91,27 @@ | ||
if (err) { | ||
return handleError(err) | ||
return handleError(err); | ||
} | ||
callback(null, realPort) | ||
}) | ||
}) | ||
}) | ||
}) | ||
callback(null, realPort); | ||
}); | ||
}); | ||
}); | ||
}); | ||
} | ||
function listen(port, hostname, callback) { | ||
const server = new net.Server() | ||
const server = new net.Server(); | ||
server.on('error', err => { | ||
debug('listen %s:%s error: %s', hostname, port, err) | ||
server.close() | ||
return callback(err) | ||
}) | ||
debug('listen %s:%s error: %s', hostname, port, err); | ||
server.close(); | ||
return callback(err); | ||
}); | ||
server.listen(port, hostname, () => { | ||
port = server.address().port | ||
server.close() | ||
debug('get free %s:%s', hostname, port) | ||
return callback(null, port) | ||
}) | ||
port = server.address().port; | ||
server.close(); | ||
debug('get free %s:%s', hostname, port); | ||
return callback(null, port); | ||
}); | ||
} |
{ | ||
"name": "detect-port-alt", | ||
"version": "1.1.4", | ||
"version": "1.1.5", | ||
"description": "detect available port", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
31347
13
102
1