eport lib/eport.js

exports

method
module.exports()
  • @module:
  • @param: {string}hosthostname or ip, default to '127.0.0.1';
  • @param: {Function}callbacka functionto for call on got a free port;

Description

Get a free port

Source

module.exports = function(host, callback) {
  var server = net.createServer();
  var port = 0;

  if (typeof host === 'function') {
    callback = host;
    host = '127.0.0.1';
  }
  host = host || '127.0.0.1';

  server.on('listening', function() {
    port = server.address().port;
    server.close();
  });

  server.on('close', function() {
    callback(null, port);
  });

  server.listen(0, host);

};