Allow extra domains in test socks proxy

This commit is contained in:
Michael Mac-Vicar 2025-02-25 19:01:34 -03:00
parent 3ce9ae6a7d
commit 6b5098386a

View file

@ -129,16 +129,16 @@ export class TestProxy {
}
export async function setupSocksForwardingServer({
port, forwardPort, allowedTargetPort
port, forwardPort, allowedTargetPort, additionalAllowedHosts = []
}: {
port: number, forwardPort: number, allowedTargetPort: number
port: number, forwardPort: number, allowedTargetPort: number, additionalAllowedHosts?: string[]
}) {
const connectHosts = [];
const connections = new Map<string, net.Socket>();
const socksProxy = new SocksProxy();
socksProxy.setPattern('*');
socksProxy.addListener(SocksProxy.Events.SocksRequested, async (payload: SocksSocketRequestedPayload) => {
if (!['127.0.0.1', 'fake-localhost-127-0-0-1.nip.io', 'localhost'].includes(payload.host) || payload.port !== allowedTargetPort) {
if (!['127.0.0.1', 'fake-localhost-127-0-0-1.nip.io', 'localhost', ...additionalAllowedHosts].includes(payload.host) || payload.port !== allowedTargetPort) {
socksProxy.sendSocketError({ uid: payload.uid, error: 'ECONNREFUSED' });
return;
}