appium-ios-remotexpc 5.15.2 → 5.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/build/src/services/ios/dvt/index.d.ts +21 -0
- package/build/src/services/ios/dvt/index.d.ts.map +1 -1
- package/build/src/services/ios/dvt/index.js +170 -56
- package/build/src/services/ios/dvt/index.js.map +1 -1
- package/package.json +1 -1
- package/src/services/ios/dvt/index.ts +196 -63
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
## [5.15.3](https://github.com/appium/appium-ios-remotexpc/compare/v5.15.2...v5.15.3) (2026-08-24)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
* serialize DVT socket reads through a single receive pump ([#300](https://github.com/appium/appium-ios-remotexpc/issues/300)) ([d87b820](https://github.com/appium/appium-ios-remotexpc/commit/d87b820dd6e374153d3e9f8e46e91e5eea8f0bd8))
|
|
6
|
+
|
|
1
7
|
## [5.15.2](https://github.com/appium/appium-ios-remotexpc/compare/v5.15.1...v5.15.2) (2026-08-21)
|
|
2
8
|
|
|
3
9
|
### Bug Fixes
|
|
@@ -17,8 +17,18 @@ export declare class DVTSecureSocketProxyService extends BaseService {
|
|
|
17
17
|
private curMessageId;
|
|
18
18
|
private readonly channelCache;
|
|
19
19
|
private readonly channelMessages;
|
|
20
|
+
private readonly channelWaiters;
|
|
20
21
|
private isHandshakeComplete;
|
|
21
22
|
private readBuffer;
|
|
23
|
+
private readonly pendingChunks;
|
|
24
|
+
private bufferedLength;
|
|
25
|
+
private readonly dataWaiters;
|
|
26
|
+
private socketError;
|
|
27
|
+
private isPumpRunning;
|
|
28
|
+
private listeningSocket;
|
|
29
|
+
private readonly boundOnData;
|
|
30
|
+
private readonly boundOnError;
|
|
31
|
+
private readonly boundOnClose;
|
|
22
32
|
constructor(udid: string);
|
|
23
33
|
/**
|
|
24
34
|
* Connect to the DVT service and perform handshake
|
|
@@ -57,6 +67,15 @@ export declare class DVTSecureSocketProxyService extends BaseService {
|
|
|
57
67
|
* Close the DVT service connection
|
|
58
68
|
*/
|
|
59
69
|
close(): Promise<void>;
|
|
70
|
+
private attachSocketListeners;
|
|
71
|
+
private detachSocketListeners;
|
|
72
|
+
private flushDataWaiters;
|
|
73
|
+
private onSocketData;
|
|
74
|
+
private consolidateReadBuffer;
|
|
75
|
+
private onSocketError;
|
|
76
|
+
private onSocketClose;
|
|
77
|
+
private rejectAllWaiters;
|
|
78
|
+
private hasPendingWaiters;
|
|
60
79
|
/**
|
|
61
80
|
* Perform DTX protocol handshake to establish connection and retrieve capabilities
|
|
62
81
|
*/
|
|
@@ -71,6 +90,8 @@ export declare class DVTSecureSocketProxyService extends BaseService {
|
|
|
71
90
|
* Receive packet fragments until a complete message is available for the specified channel
|
|
72
91
|
*/
|
|
73
92
|
private recvPacketFragments;
|
|
93
|
+
private ensurePumpRunning;
|
|
94
|
+
private runPump;
|
|
74
95
|
/**
|
|
75
96
|
* Read exact number of bytes from socket with buffering
|
|
76
97
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/dvt/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AAE/E,OAAO,EAAC,WAAW,EAAW,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/dvt/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,8 +23,18 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
23
23
|
curMessageId = 0;
|
|
24
24
|
channelCache = new Map();
|
|
25
25
|
channelMessages = new Map();
|
|
26
|
+
channelWaiters = new Map();
|
|
26
27
|
isHandshakeComplete = false;
|
|
27
28
|
readBuffer = Buffer.alloc(0);
|
|
29
|
+
pendingChunks = [];
|
|
30
|
+
bufferedLength = 0;
|
|
31
|
+
dataWaiters = [];
|
|
32
|
+
socketError = null;
|
|
33
|
+
isPumpRunning = false;
|
|
34
|
+
listeningSocket = null;
|
|
35
|
+
boundOnData = (chunk) => this.onSocketData(chunk);
|
|
36
|
+
boundOnError = (err) => this.onSocketError(err);
|
|
37
|
+
boundOnClose = () => this.onSocketClose();
|
|
28
38
|
constructor(udid) {
|
|
29
39
|
super(udid);
|
|
30
40
|
this.channelMessages.set(DVTSecureSocketProxyService.BROADCAST_CHANNEL, new ChannelFragmenter());
|
|
@@ -40,6 +50,7 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
40
50
|
this.connection = await this.startLockdownWithoutCheckin(DVTSecureSocketProxyService.RSD_SERVICE_NAME);
|
|
41
51
|
this.socket = this.connection.getSocket();
|
|
42
52
|
stripSSL(this.socket);
|
|
53
|
+
this.attachSocketListeners(this.socket);
|
|
43
54
|
await this.performHandshake();
|
|
44
55
|
}
|
|
45
56
|
/**
|
|
@@ -196,17 +207,89 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
196
207
|
}
|
|
197
208
|
}
|
|
198
209
|
const socketToDestroy = this.socket;
|
|
210
|
+
this.detachSocketListeners();
|
|
199
211
|
this.connection.close();
|
|
200
212
|
this.connection = null;
|
|
201
213
|
this.socket = null;
|
|
202
214
|
this.isHandshakeComplete = false;
|
|
215
|
+
this.socketError = null;
|
|
203
216
|
this.channelCache.clear();
|
|
204
217
|
this.channelMessages.clear();
|
|
205
218
|
this.channelMessages.set(DVTSecureSocketProxyService.BROADCAST_CHANNEL, new ChannelFragmenter());
|
|
206
|
-
|
|
207
|
-
|
|
219
|
+
this.readBuffer = Buffer.alloc(0);
|
|
220
|
+
this.pendingChunks.length = 0;
|
|
221
|
+
this.bufferedLength = 0;
|
|
222
|
+
this.rejectAllWaiters(new Error('Service closed'));
|
|
223
|
+
this.flushDataWaiters();
|
|
208
224
|
socketToDestroy?.destroy();
|
|
209
225
|
}
|
|
226
|
+
attachSocketListeners(socket) {
|
|
227
|
+
if (this.listeningSocket === socket) {
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
this.detachSocketListeners();
|
|
231
|
+
this.listeningSocket = socket;
|
|
232
|
+
socket.on('data', this.boundOnData);
|
|
233
|
+
socket.on('error', this.boundOnError);
|
|
234
|
+
socket.on('close', this.boundOnClose);
|
|
235
|
+
}
|
|
236
|
+
detachSocketListeners() {
|
|
237
|
+
if (!this.listeningSocket) {
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
this.listeningSocket.off('data', this.boundOnData);
|
|
241
|
+
this.listeningSocket.off('error', this.boundOnError);
|
|
242
|
+
this.listeningSocket.off('close', this.boundOnClose);
|
|
243
|
+
this.listeningSocket = null;
|
|
244
|
+
}
|
|
245
|
+
flushDataWaiters() {
|
|
246
|
+
for (const waiter of this.dataWaiters.splice(0)) {
|
|
247
|
+
waiter();
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
onSocketData(chunk) {
|
|
251
|
+
this.pendingChunks.push(chunk);
|
|
252
|
+
this.bufferedLength += chunk.length;
|
|
253
|
+
if (this.dataWaiters.length > 0) {
|
|
254
|
+
this.flushDataWaiters();
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
this.listeningSocket?.pause();
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
consolidateReadBuffer() {
|
|
261
|
+
if (this.pendingChunks.length === 0) {
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
this.readBuffer = Buffer.concat([this.readBuffer, ...this.pendingChunks]);
|
|
265
|
+
this.pendingChunks.length = 0;
|
|
266
|
+
}
|
|
267
|
+
onSocketError(err) {
|
|
268
|
+
if (!this.socketError) {
|
|
269
|
+
this.socketError = err;
|
|
270
|
+
}
|
|
271
|
+
this.flushDataWaiters();
|
|
272
|
+
}
|
|
273
|
+
onSocketClose() {
|
|
274
|
+
if (!this.socketError) {
|
|
275
|
+
this.socketError = new Error('Socket closed');
|
|
276
|
+
}
|
|
277
|
+
this.flushDataWaiters();
|
|
278
|
+
}
|
|
279
|
+
rejectAllWaiters(error) {
|
|
280
|
+
for (const waiters of this.channelWaiters.values()) {
|
|
281
|
+
for (const waiter of waiters.splice(0)) {
|
|
282
|
+
if (waiter.signal && waiter.onAbort) {
|
|
283
|
+
waiter.signal.removeEventListener('abort', waiter.onAbort);
|
|
284
|
+
}
|
|
285
|
+
waiter.reject(error);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
this.channelWaiters.clear();
|
|
289
|
+
}
|
|
290
|
+
hasPendingWaiters() {
|
|
291
|
+
return Array.from(this.channelWaiters.values()).some((waiters) => waiters.length > 0);
|
|
292
|
+
}
|
|
210
293
|
/**
|
|
211
294
|
* Perform DTX protocol handshake to establish connection and retrieve capabilities
|
|
212
295
|
*/
|
|
@@ -261,6 +344,7 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
261
344
|
* Drain any buffered messages that arrived during handshake
|
|
262
345
|
*/
|
|
263
346
|
async drainBufferedMessages() {
|
|
347
|
+
this.consolidateReadBuffer();
|
|
264
348
|
if (this.readBuffer.length === 0) {
|
|
265
349
|
return;
|
|
266
350
|
}
|
|
@@ -282,24 +366,69 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
282
366
|
catch (error) {
|
|
283
367
|
log.debug('Error while draining buffer:', error);
|
|
284
368
|
}
|
|
369
|
+
this.bufferedLength = this.readBuffer.length;
|
|
285
370
|
}
|
|
286
371
|
/**
|
|
287
372
|
* Receive packet fragments until a complete message is available for the specified channel
|
|
288
373
|
*/
|
|
289
374
|
async recvPacketFragments(channel, signal) {
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
375
|
+
const fragmenter = this.channelMessages.get(channel);
|
|
376
|
+
if (!fragmenter) {
|
|
377
|
+
throw new Error(`No fragmenter for channel ${channel}`);
|
|
378
|
+
}
|
|
379
|
+
const queued = fragmenter.get();
|
|
380
|
+
if (queued) {
|
|
381
|
+
return queued;
|
|
382
|
+
}
|
|
383
|
+
signal?.throwIfAborted();
|
|
384
|
+
const promise = new Promise((resolve, reject) => {
|
|
385
|
+
const waiter = { resolve, reject, signal };
|
|
386
|
+
if (signal) {
|
|
387
|
+
const onAbort = () => {
|
|
388
|
+
const waiters = this.channelWaiters.get(channel);
|
|
389
|
+
if (waiters) {
|
|
390
|
+
const idx = waiters.indexOf(waiter);
|
|
391
|
+
if (idx >= 0) {
|
|
392
|
+
waiters.splice(idx, 1);
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
reject(signal.reason ?? new DOMException('Receive aborted', 'AbortError'));
|
|
396
|
+
};
|
|
397
|
+
waiter.onAbort = onAbort;
|
|
398
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
294
399
|
}
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
400
|
+
const waiters = this.channelWaiters.get(channel) ?? [];
|
|
401
|
+
this.channelWaiters.set(channel, waiters);
|
|
402
|
+
waiters.push(waiter);
|
|
403
|
+
});
|
|
404
|
+
this.ensurePumpRunning();
|
|
405
|
+
return promise;
|
|
406
|
+
}
|
|
407
|
+
ensurePumpRunning() {
|
|
408
|
+
if (this.isPumpRunning) {
|
|
409
|
+
return;
|
|
410
|
+
}
|
|
411
|
+
this.isPumpRunning = true;
|
|
412
|
+
void this.runPump()
|
|
413
|
+
.catch((err) => {
|
|
414
|
+
this.rejectAllWaiters(err instanceof Error ? err : new Error(String(err)));
|
|
415
|
+
})
|
|
416
|
+
.finally(() => {
|
|
417
|
+
this.isPumpRunning = false;
|
|
418
|
+
if (this.hasPendingWaiters()) {
|
|
419
|
+
this.ensurePumpRunning();
|
|
299
420
|
}
|
|
300
|
-
|
|
301
|
-
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
async runPump() {
|
|
424
|
+
while (this.hasPendingWaiters()) {
|
|
425
|
+
const headerData = await this.readExact(DTX_CONSTANTS.MESSAGE_HEADER_SIZE);
|
|
302
426
|
const header = DTXMessage.parseMessageHeader(headerData);
|
|
427
|
+
if (header.magic !== DTX_CONSTANTS.MESSAGE_HEADER_MAGIC) {
|
|
428
|
+
const err = new Error(`Invalid DTX message header magic: 0x${header.magic.toString(16)} (stream desynchronized)`);
|
|
429
|
+
this.socketError = err;
|
|
430
|
+
throw err;
|
|
431
|
+
}
|
|
303
432
|
const receivedChannel = Math.abs(header.channelCode);
|
|
304
433
|
if (!this.channelMessages.has(receivedChannel)) {
|
|
305
434
|
this.channelMessages.set(receivedChannel, new ChannelFragmenter());
|
|
@@ -312,69 +441,54 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
312
441
|
if (header.fragmentCount > 1 && header.fragmentId === 0) {
|
|
313
442
|
continue;
|
|
314
443
|
}
|
|
315
|
-
// Read message payload
|
|
316
444
|
const messageData = await this.readExact(header.length);
|
|
317
|
-
// Add fragment to appropriate channel
|
|
318
445
|
const targetFragmenter = this.channelMessages.get(receivedChannel);
|
|
319
446
|
if (!targetFragmenter) {
|
|
320
447
|
continue;
|
|
321
448
|
}
|
|
322
449
|
targetFragmenter.addFragment(header, messageData);
|
|
450
|
+
const waiters = this.channelWaiters.get(receivedChannel);
|
|
451
|
+
if (waiters && waiters.length > 0) {
|
|
452
|
+
const completedMessage = targetFragmenter.get();
|
|
453
|
+
if (completedMessage) {
|
|
454
|
+
const waiter = waiters.shift();
|
|
455
|
+
if (waiter) {
|
|
456
|
+
if (waiter.signal && waiter.onAbort) {
|
|
457
|
+
waiter.signal.removeEventListener('abort', waiter.onAbort);
|
|
458
|
+
}
|
|
459
|
+
waiter.resolve(completedMessage);
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
}
|
|
323
463
|
}
|
|
324
464
|
}
|
|
325
465
|
/**
|
|
326
466
|
* Read exact number of bytes from socket with buffering
|
|
327
467
|
*/
|
|
328
|
-
async readExact(length
|
|
329
|
-
|
|
468
|
+
async readExact(length) {
|
|
469
|
+
const socket = this.socket;
|
|
470
|
+
if (!socket) {
|
|
330
471
|
throw new Error(`${this.constructor.name} is not initialized. Call connect() before sending messages.`);
|
|
331
472
|
}
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
if (this.
|
|
473
|
+
if (this.listeningSocket !== socket) {
|
|
474
|
+
this.attachSocketListeners(socket);
|
|
475
|
+
}
|
|
476
|
+
while (this.bufferedLength < length) {
|
|
477
|
+
if (this.socketError) {
|
|
478
|
+
throw this.socketError;
|
|
479
|
+
}
|
|
480
|
+
if (this.socket !== socket || socket.destroyed) {
|
|
337
481
|
throw new Error('Socket is destroyed');
|
|
338
482
|
}
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
if (!socket) {
|
|
343
|
-
reject(new Error('Socket is not available'));
|
|
344
|
-
return;
|
|
345
|
-
}
|
|
346
|
-
const cleanup = () => {
|
|
347
|
-
socket.off('data', onData);
|
|
348
|
-
socket.off('error', onError);
|
|
349
|
-
socket.off('close', onClose);
|
|
350
|
-
signal?.removeEventListener('abort', onAbort);
|
|
351
|
-
};
|
|
352
|
-
const onData = (data) => {
|
|
353
|
-
cleanup();
|
|
354
|
-
resolve(data);
|
|
355
|
-
};
|
|
356
|
-
const onError = (err) => {
|
|
357
|
-
cleanup();
|
|
358
|
-
reject(err);
|
|
359
|
-
};
|
|
360
|
-
const onClose = () => {
|
|
361
|
-
cleanup();
|
|
362
|
-
reject(new Error('Socket closed during read'));
|
|
363
|
-
};
|
|
364
|
-
const onAbort = () => {
|
|
365
|
-
cleanup();
|
|
366
|
-
reject(signal?.reason ?? new DOMException('Read aborted', 'AbortError'));
|
|
367
|
-
};
|
|
368
|
-
socket.once('data', onData);
|
|
369
|
-
socket.once('error', onError);
|
|
370
|
-
socket.once('close', onClose);
|
|
371
|
-
signal?.addEventListener('abort', onAbort, { once: true });
|
|
483
|
+
socket.resume();
|
|
484
|
+
await new Promise((resolve) => {
|
|
485
|
+
this.dataWaiters.push(resolve);
|
|
372
486
|
});
|
|
373
|
-
this.readBuffer = Buffer.concat([this.readBuffer, chunk]);
|
|
374
487
|
}
|
|
375
|
-
|
|
488
|
+
this.consolidateReadBuffer();
|
|
376
489
|
const result = this.readBuffer.subarray(0, length);
|
|
377
490
|
this.readBuffer = this.readBuffer.subarray(length);
|
|
491
|
+
this.bufferedLength = this.readBuffer.length;
|
|
378
492
|
return result;
|
|
379
493
|
}
|
|
380
494
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/ios/dvt/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/ios/dvt/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -22,6 +22,13 @@ const log = getLogger('DVTSecureSocketProxyService');
|
|
|
22
22
|
|
|
23
23
|
const MIN_ERROR_DESCRIPTION_LENGTH = 20;
|
|
24
24
|
|
|
25
|
+
interface ChannelWaiter {
|
|
26
|
+
resolve: (message: Buffer) => void;
|
|
27
|
+
reject: (err: Error) => void;
|
|
28
|
+
signal?: AbortSignal;
|
|
29
|
+
onAbort?: () => void;
|
|
30
|
+
}
|
|
31
|
+
|
|
25
32
|
/**
|
|
26
33
|
* DVTSecureSocketProxyService provides access to Apple's DTServiceHub functionality
|
|
27
34
|
* This service enables various instruments and debugging capabilities through the DTX protocol
|
|
@@ -37,8 +44,18 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
37
44
|
private curMessageId: number = 0;
|
|
38
45
|
private readonly channelCache: Map<string, Channel> = new Map();
|
|
39
46
|
private readonly channelMessages: Map<number, ChannelFragmenter> = new Map();
|
|
47
|
+
private readonly channelWaiters: Map<number, ChannelWaiter[]> = new Map();
|
|
40
48
|
private isHandshakeComplete: boolean = false;
|
|
41
49
|
private readBuffer: Buffer = Buffer.alloc(0);
|
|
50
|
+
private readonly pendingChunks: Buffer[] = [];
|
|
51
|
+
private bufferedLength: number = 0;
|
|
52
|
+
private readonly dataWaiters: Array<() => void> = [];
|
|
53
|
+
private socketError: Error | null = null;
|
|
54
|
+
private isPumpRunning: boolean = false;
|
|
55
|
+
private listeningSocket: net.Socket | null = null;
|
|
56
|
+
private readonly boundOnData = (chunk: Buffer): void => this.onSocketData(chunk);
|
|
57
|
+
private readonly boundOnError = (err: Error): void => this.onSocketError(err);
|
|
58
|
+
private readonly boundOnClose = (): void => this.onSocketClose();
|
|
42
59
|
|
|
43
60
|
constructor(udid: string) {
|
|
44
61
|
super(udid);
|
|
@@ -57,6 +74,7 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
57
74
|
this.connection = await this.startLockdownWithoutCheckin(DVTSecureSocketProxyService.RSD_SERVICE_NAME);
|
|
58
75
|
this.socket = this.connection.getSocket();
|
|
59
76
|
stripSSL(this.socket);
|
|
77
|
+
this.attachSocketListeners(this.socket);
|
|
60
78
|
|
|
61
79
|
await this.performHandshake();
|
|
62
80
|
}
|
|
@@ -252,19 +270,99 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
252
270
|
}
|
|
253
271
|
|
|
254
272
|
const socketToDestroy = this.socket;
|
|
273
|
+
this.detachSocketListeners();
|
|
255
274
|
this.connection.close();
|
|
256
275
|
this.connection = null;
|
|
257
276
|
this.socket = null;
|
|
258
277
|
this.isHandshakeComplete = false;
|
|
278
|
+
this.socketError = null;
|
|
259
279
|
this.channelCache.clear();
|
|
260
280
|
this.channelMessages.clear();
|
|
261
281
|
this.channelMessages.set(DVTSecureSocketProxyService.BROADCAST_CHANNEL, new ChannelFragmenter());
|
|
282
|
+
this.readBuffer = Buffer.alloc(0);
|
|
283
|
+
this.pendingChunks.length = 0;
|
|
284
|
+
this.bufferedLength = 0;
|
|
285
|
+
this.rejectAllWaiters(new Error('Service closed'));
|
|
286
|
+
this.flushDataWaiters();
|
|
262
287
|
|
|
263
|
-
// Forcibly destroy the socket so any pending readExact calls unblock
|
|
264
|
-
// immediately rather than waiting for the remote FIN.
|
|
265
288
|
socketToDestroy?.destroy();
|
|
266
289
|
}
|
|
267
290
|
|
|
291
|
+
private attachSocketListeners(socket: net.Socket): void {
|
|
292
|
+
if (this.listeningSocket === socket) {
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
295
|
+
this.detachSocketListeners();
|
|
296
|
+
this.listeningSocket = socket;
|
|
297
|
+
socket.on('data', this.boundOnData);
|
|
298
|
+
socket.on('error', this.boundOnError);
|
|
299
|
+
socket.on('close', this.boundOnClose);
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
private detachSocketListeners(): void {
|
|
303
|
+
if (!this.listeningSocket) {
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
this.listeningSocket.off('data', this.boundOnData);
|
|
307
|
+
this.listeningSocket.off('error', this.boundOnError);
|
|
308
|
+
this.listeningSocket.off('close', this.boundOnClose);
|
|
309
|
+
this.listeningSocket = null;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
private flushDataWaiters(): void {
|
|
313
|
+
for (const waiter of this.dataWaiters.splice(0)) {
|
|
314
|
+
waiter();
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
private onSocketData(chunk: Buffer): void {
|
|
319
|
+
this.pendingChunks.push(chunk);
|
|
320
|
+
this.bufferedLength += chunk.length;
|
|
321
|
+
if (this.dataWaiters.length > 0) {
|
|
322
|
+
this.flushDataWaiters();
|
|
323
|
+
} else {
|
|
324
|
+
this.listeningSocket?.pause();
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
private consolidateReadBuffer(): void {
|
|
329
|
+
if (this.pendingChunks.length === 0) {
|
|
330
|
+
return;
|
|
331
|
+
}
|
|
332
|
+
this.readBuffer = Buffer.concat([this.readBuffer, ...this.pendingChunks]);
|
|
333
|
+
this.pendingChunks.length = 0;
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
private onSocketError(err: Error): void {
|
|
337
|
+
if (!this.socketError) {
|
|
338
|
+
this.socketError = err;
|
|
339
|
+
}
|
|
340
|
+
this.flushDataWaiters();
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
private onSocketClose(): void {
|
|
344
|
+
if (!this.socketError) {
|
|
345
|
+
this.socketError = new Error('Socket closed');
|
|
346
|
+
}
|
|
347
|
+
this.flushDataWaiters();
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
private rejectAllWaiters(error: Error): void {
|
|
351
|
+
for (const waiters of this.channelWaiters.values()) {
|
|
352
|
+
for (const waiter of waiters.splice(0)) {
|
|
353
|
+
if (waiter.signal && waiter.onAbort) {
|
|
354
|
+
waiter.signal.removeEventListener('abort', waiter.onAbort);
|
|
355
|
+
}
|
|
356
|
+
waiter.reject(error);
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
this.channelWaiters.clear();
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
private hasPendingWaiters(): boolean {
|
|
363
|
+
return Array.from(this.channelWaiters.values()).some((waiters) => waiters.length > 0);
|
|
364
|
+
}
|
|
365
|
+
|
|
268
366
|
/**
|
|
269
367
|
* Perform DTX protocol handshake to establish connection and retrieve capabilities
|
|
270
368
|
*/
|
|
@@ -333,6 +431,7 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
333
431
|
* Drain any buffered messages that arrived during handshake
|
|
334
432
|
*/
|
|
335
433
|
private async drainBufferedMessages(): Promise<void> {
|
|
434
|
+
this.consolidateReadBuffer();
|
|
336
435
|
if (this.readBuffer.length === 0) {
|
|
337
436
|
return;
|
|
338
437
|
}
|
|
@@ -354,28 +453,81 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
354
453
|
} catch (error) {
|
|
355
454
|
log.debug('Error while draining buffer:', error);
|
|
356
455
|
}
|
|
456
|
+
this.bufferedLength = this.readBuffer.length;
|
|
357
457
|
}
|
|
358
458
|
|
|
359
459
|
/**
|
|
360
460
|
* Receive packet fragments until a complete message is available for the specified channel
|
|
361
461
|
*/
|
|
362
462
|
private async recvPacketFragments(channel: number, signal?: AbortSignal): Promise<Buffer> {
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
463
|
+
const fragmenter = this.channelMessages.get(channel);
|
|
464
|
+
if (!fragmenter) {
|
|
465
|
+
throw new Error(`No fragmenter for channel ${channel}`);
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
const queued = fragmenter.get();
|
|
469
|
+
if (queued) {
|
|
470
|
+
return queued;
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
signal?.throwIfAborted();
|
|
368
474
|
|
|
369
|
-
|
|
370
|
-
const
|
|
371
|
-
if (
|
|
372
|
-
|
|
475
|
+
const promise = new Promise<Buffer>((resolve, reject) => {
|
|
476
|
+
const waiter: ChannelWaiter = {resolve, reject, signal};
|
|
477
|
+
if (signal) {
|
|
478
|
+
const onAbort = () => {
|
|
479
|
+
const waiters = this.channelWaiters.get(channel);
|
|
480
|
+
if (waiters) {
|
|
481
|
+
const idx = waiters.indexOf(waiter);
|
|
482
|
+
if (idx >= 0) {
|
|
483
|
+
waiters.splice(idx, 1);
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
reject(signal.reason ?? new DOMException('Receive aborted', 'AbortError'));
|
|
487
|
+
};
|
|
488
|
+
waiter.onAbort = onAbort;
|
|
489
|
+
signal.addEventListener('abort', onAbort, {once: true});
|
|
373
490
|
}
|
|
374
491
|
|
|
375
|
-
|
|
376
|
-
|
|
492
|
+
const waiters = this.channelWaiters.get(channel) ?? [];
|
|
493
|
+
this.channelWaiters.set(channel, waiters);
|
|
494
|
+
waiters.push(waiter);
|
|
495
|
+
});
|
|
496
|
+
|
|
497
|
+
this.ensurePumpRunning();
|
|
498
|
+
return promise;
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
private ensurePumpRunning(): void {
|
|
502
|
+
if (this.isPumpRunning) {
|
|
503
|
+
return;
|
|
504
|
+
}
|
|
505
|
+
this.isPumpRunning = true;
|
|
506
|
+
void this.runPump()
|
|
507
|
+
.catch((err: unknown) => {
|
|
508
|
+
this.rejectAllWaiters(err instanceof Error ? err : new Error(String(err)));
|
|
509
|
+
})
|
|
510
|
+
.finally(() => {
|
|
511
|
+
this.isPumpRunning = false;
|
|
512
|
+
if (this.hasPendingWaiters()) {
|
|
513
|
+
this.ensurePumpRunning();
|
|
514
|
+
}
|
|
515
|
+
});
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
private async runPump(): Promise<void> {
|
|
519
|
+
while (this.hasPendingWaiters()) {
|
|
520
|
+
const headerData = await this.readExact(DTX_CONSTANTS.MESSAGE_HEADER_SIZE);
|
|
377
521
|
const header = DTXMessage.parseMessageHeader(headerData);
|
|
378
522
|
|
|
523
|
+
if (header.magic !== DTX_CONSTANTS.MESSAGE_HEADER_MAGIC) {
|
|
524
|
+
const err = new Error(
|
|
525
|
+
`Invalid DTX message header magic: 0x${header.magic.toString(16)} (stream desynchronized)`,
|
|
526
|
+
);
|
|
527
|
+
this.socketError = err;
|
|
528
|
+
throw err;
|
|
529
|
+
}
|
|
530
|
+
|
|
379
531
|
const receivedChannel = Math.abs(header.channelCode);
|
|
380
532
|
|
|
381
533
|
if (!this.channelMessages.has(receivedChannel)) {
|
|
@@ -392,80 +544,61 @@ export class DVTSecureSocketProxyService extends BaseService {
|
|
|
392
544
|
continue;
|
|
393
545
|
}
|
|
394
546
|
|
|
395
|
-
// Read message payload
|
|
396
547
|
const messageData = await this.readExact(header.length);
|
|
397
548
|
|
|
398
|
-
// Add fragment to appropriate channel
|
|
399
549
|
const targetFragmenter = this.channelMessages.get(receivedChannel);
|
|
400
550
|
if (!targetFragmenter) {
|
|
401
551
|
continue;
|
|
402
552
|
}
|
|
403
553
|
targetFragmenter.addFragment(header, messageData);
|
|
554
|
+
|
|
555
|
+
const waiters = this.channelWaiters.get(receivedChannel);
|
|
556
|
+
if (waiters && waiters.length > 0) {
|
|
557
|
+
const completedMessage = targetFragmenter.get();
|
|
558
|
+
if (completedMessage) {
|
|
559
|
+
const waiter = waiters.shift();
|
|
560
|
+
if (waiter) {
|
|
561
|
+
if (waiter.signal && waiter.onAbort) {
|
|
562
|
+
waiter.signal.removeEventListener('abort', waiter.onAbort);
|
|
563
|
+
}
|
|
564
|
+
waiter.resolve(completedMessage);
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
}
|
|
404
568
|
}
|
|
405
569
|
}
|
|
406
570
|
|
|
407
571
|
/**
|
|
408
572
|
* Read exact number of bytes from socket with buffering
|
|
409
573
|
*/
|
|
410
|
-
private async readExact(length: number
|
|
411
|
-
|
|
574
|
+
private async readExact(length: number): Promise<Buffer> {
|
|
575
|
+
const socket = this.socket;
|
|
576
|
+
if (!socket) {
|
|
412
577
|
throw new Error(`${this.constructor.name} is not initialized. Call connect() before sending messages.`);
|
|
413
578
|
}
|
|
414
579
|
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
580
|
+
if (this.listeningSocket !== socket) {
|
|
581
|
+
this.attachSocketListeners(socket);
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
while (this.bufferedLength < length) {
|
|
585
|
+
if (this.socketError) {
|
|
586
|
+
throw this.socketError;
|
|
587
|
+
}
|
|
588
|
+
if (this.socket !== socket || socket.destroyed) {
|
|
420
589
|
throw new Error('Socket is destroyed');
|
|
421
590
|
}
|
|
422
|
-
signal?.throwIfAborted();
|
|
423
|
-
|
|
424
|
-
const chunk = await new Promise<Buffer>((resolve, reject) => {
|
|
425
|
-
const socket = this.socket;
|
|
426
|
-
if (!socket) {
|
|
427
|
-
reject(new Error('Socket is not available'));
|
|
428
|
-
return;
|
|
429
|
-
}
|
|
430
|
-
const cleanup = () => {
|
|
431
|
-
socket.off('data', onData);
|
|
432
|
-
socket.off('error', onError);
|
|
433
|
-
socket.off('close', onClose);
|
|
434
|
-
signal?.removeEventListener('abort', onAbort);
|
|
435
|
-
};
|
|
436
|
-
|
|
437
|
-
const onData = (data: Buffer) => {
|
|
438
|
-
cleanup();
|
|
439
|
-
resolve(data);
|
|
440
|
-
};
|
|
441
591
|
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
};
|
|
446
|
-
|
|
447
|
-
const onClose = () => {
|
|
448
|
-
cleanup();
|
|
449
|
-
reject(new Error('Socket closed during read'));
|
|
450
|
-
};
|
|
451
|
-
|
|
452
|
-
const onAbort = () => {
|
|
453
|
-
cleanup();
|
|
454
|
-
reject(signal?.reason ?? new DOMException('Read aborted', 'AbortError'));
|
|
455
|
-
};
|
|
456
|
-
|
|
457
|
-
socket.once('data', onData);
|
|
458
|
-
socket.once('error', onError);
|
|
459
|
-
socket.once('close', onClose);
|
|
460
|
-
signal?.addEventListener('abort', onAbort, {once: true});
|
|
592
|
+
socket.resume();
|
|
593
|
+
await new Promise<void>((resolve) => {
|
|
594
|
+
this.dataWaiters.push(resolve);
|
|
461
595
|
});
|
|
462
|
-
|
|
463
|
-
this.readBuffer = Buffer.concat([this.readBuffer, chunk]);
|
|
464
596
|
}
|
|
465
597
|
|
|
466
|
-
|
|
598
|
+
this.consolidateReadBuffer();
|
|
467
599
|
const result = this.readBuffer.subarray(0, length);
|
|
468
600
|
this.readBuffer = this.readBuffer.subarray(length);
|
|
601
|
+
this.bufferedLength = this.readBuffer.length;
|
|
469
602
|
|
|
470
603
|
return result;
|
|
471
604
|
}
|