UNPKG

@microsoft/dev-tunnels-ssh-tcp

Version:

SSH TCP extensions library for Dev Tunnels

29 lines 1.16 kB
"use strict"; // // Copyright (c) Microsoft Corporation. All rights reserved. // Object.defineProperty(exports, "__esModule", { value: true }); exports.DefaultTcpListenerFactory = void 0; const net = require("net"); class DefaultTcpListenerFactory { async createTcpListener(remotePort, localIPAddress, localPort, canChangeLocalPort, cancellation) { if (!localIPAddress) throw new TypeError('Local IP address is required.'); if (!Number.isInteger(localPort) || localPort < 0) throw new TypeError('Local port must be a non-negative integer.'); const listener = net.createServer(); await new Promise((resolve, reject) => { listener.listen({ host: localIPAddress, port: localPort, ipv6Only: net.isIPv6(localIPAddress), exclusive: false, }); listener.on('listening', resolve); listener.on('error', reject); }); return listener; } } exports.DefaultTcpListenerFactory = DefaultTcpListenerFactory; //# sourceMappingURL=tcpListenerFactory.js.map