Skip to content

Commit 85ad716

Browse files
committed
WIP
1 parent 8f989f7 commit 85ad716

File tree

2 files changed

+22
-19
lines changed

2 files changed

+22
-19
lines changed

packages/devtools-proxy-support/src/env-var-proxies.ts

Whitespace-only changes.

packages/devtools-proxy-support/src/socks5.ts

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ function createFakeHttpClientRequest(dstAddr: string, dstPort: number) {
6161
}
6262

6363
class Socks5Server extends EventEmitter implements Tunnel {
64-
public logger: ProxyLogEmitter = new EventEmitter()
64+
public logger: ProxyLogEmitter = new EventEmitter();
6565
private readonly agent: AgentWithInitialize;
6666
private server: any;
6767
private serverListen: (port?: number, host?: string) => Promise<void>;
@@ -72,12 +72,14 @@ class Socks5Server extends EventEmitter implements Tunnel {
7272
private agentInitialized = false;
7373
private agentInitPromise?: Promise<void>;
7474

75-
constructor(agent: AgentWithInitialize, tunnelOptions: Partial<TunnelOptions>) {
75+
constructor(
76+
agent: AgentWithInitialize,
77+
tunnelOptions: Partial<TunnelOptions>
78+
) {
7679
super();
7780
this.agent = agent;
78-
if (agent.logger)
79-
this.logger = agent.logger
80-
agent.on?.('error', (err: Error) => this.emit('forwardingError', err))
81+
if (agent.logger) this.logger = agent.logger;
82+
agent.on?.('error', (err: Error) => this.emit('forwardingError', err));
8183
this.rawConfig = getTunnelOptions(tunnelOptions);
8284

8385
this.server = socks5Server.createServer(this.socks5Request.bind(this));
@@ -89,7 +91,7 @@ class Socks5Server extends EventEmitter implements Tunnel {
8991
const success =
9092
this.rawConfig.proxyUsername === user &&
9193
this.rawConfig.proxyPassword === pass;
92-
this.logger.emit('socks5:authentication-complete', {success});
94+
this.logger.emit('socks5:authentication-complete', { success });
9395
queueMicrotask(() => cb(success));
9496
}
9597
)
@@ -121,7 +123,7 @@ class Socks5Server extends EventEmitter implements Tunnel {
121123
async listen(): Promise<void> {
122124
const { proxyHost, proxyPort } = this.rawConfig;
123125

124-
this.logger.emit('socks5:start-listening', { proxyHost, proxyPort })
126+
this.logger.emit('socks5:start-listening', { proxyHost, proxyPort });
125127

126128
const listeningPromise = this.serverListen(proxyPort, proxyHost);
127129
try {
@@ -155,16 +157,17 @@ class Socks5Server extends EventEmitter implements Tunnel {
155157
await (this.agentInitPromise = this.agent.initialize?.());
156158
} catch (err) {
157159
this.emit('forwardingError', err);
158-
this.logger.emit('socks5:forwarding-error',
159-
{ error: (err as any)?.stack ?? String(err) })
160+
this.logger.emit('socks5:forwarding-error', {
161+
error: (err as any)?.stack ?? String(err),
162+
});
160163
delete this.agentInitPromise;
161164
await this.serverClose();
162165
throw err;
163166
}
164167

165168
delete this.agentInitPromise;
166169
this.agentInitialized = true;
167-
this.logger.emit('socks5:agent-initialized')
170+
this.logger.emit('socks5:agent-initialized');
168171
}
169172

170173
private async closeOpenConnections() {
@@ -180,7 +183,7 @@ class Socks5Server extends EventEmitter implements Tunnel {
180183
async close(): Promise<void> {
181184
this.closed = true;
182185

183-
this.logger.emit('socks5:closing-tunnel')
186+
this.logger.emit('socks5:closing-tunnel');
184187
const [maybeError] = await Promise.all([
185188
// If we catch anything, just return the error instead of throwing, we
186189
// want to await on closing the connections before re-throwing server
@@ -215,38 +218,38 @@ class Socks5Server extends EventEmitter implements Tunnel {
215218
): Promise<void> {
216219
const { srcAddr, srcPort, dstAddr, dstPort } = info;
217220
const logMetadata = { srcAddr, srcPort, dstAddr, dstPort };
218-
this.logger.emit('socks5:got-forwarding-request', {...logMetadata});
221+
this.logger.emit('socks5:got-forwarding-request', { ...logMetadata });
219222
let socket: Socket | null = null;
220223

221224
try {
222225
await this.ensureAgentInitialized();
223226

224227
const channel = await this.forwardOut(dstAddr, dstPort);
225228

226-
this.logger.emit('socks5:accepted-forwarding-request', {...logMetadata})
229+
this.logger.emit('socks5:accepted-forwarding-request', {
230+
...logMetadata,
231+
});
227232

228233
socket = accept(true);
229234
this.connections.add(socket);
230235

231236
socket.on('error', (err: ErrorWithOrigin) => {
232237
err.origin ??= 'connection';
233-
this.logger.emit('socks5:forwarding-error',
234-
{
238+
this.logger.emit('socks5:forwarding-error', {
235239
...logMetadata,
236240
error: String((err as Error).stack),
237-
})
241+
});
238242
this.emit('forwardingError', err);
239243
});
240244

241245
socket.once('close', () => {
242-
this.logger.emit('socks5:forwarded-socket-closed', { ...logMetadata})
246+
this.logger.emit('socks5:forwarded-socket-closed', { ...logMetadata });
243247
this.connections.delete(socket as Socket);
244248
});
245249

246250
socket.pipe(channel).pipe(socket);
247251
} catch (err) {
248-
this.emit('socks5:failed-forwarding-request',
249-
{
252+
this.emit('socks5:failed-forwarding-request', {
250253
...logMetadata,
251254
error: String((err as Error).stack),
252255
});

0 commit comments

Comments
 (0)