UNPKG

pick-port

Version:

Get a free TCP or UDP port for the given IP address

15 lines (14 loc) 448 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.reserve = reserve; const net = require("node:net"); async function reserve(ip, port) { const server = net.createServer(); await new Promise((resolve, reject) => { server.unref(); server.on('error', reject); server.listen({ host: ip, port, exclusive: true }, () => { server.close(() => resolve()); }); }); }