appium-ios-remotexpc 2.2.1 → 2.2.2

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.
Files changed (30) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/build/src/services/ios/afc/codec.d.ts +13 -4
  3. package/build/src/services/ios/afc/codec.d.ts.map +1 -1
  4. package/build/src/services/ios/afc/codec.js +57 -32
  5. package/build/src/services/ios/afc/codec.js.map +1 -1
  6. package/build/src/services/ios/afc/constants.d.ts +2 -2
  7. package/build/src/services/ios/afc/constants.d.ts.map +1 -1
  8. package/build/src/services/ios/afc/constants.js +4 -5
  9. package/build/src/services/ios/afc/constants.js.map +1 -1
  10. package/build/src/services/ios/afc/demux.d.ts +40 -0
  11. package/build/src/services/ios/afc/demux.d.ts.map +1 -0
  12. package/build/src/services/ios/afc/demux.js +174 -0
  13. package/build/src/services/ios/afc/demux.js.map +1 -0
  14. package/build/src/services/ios/afc/index.d.ts +3 -5
  15. package/build/src/services/ios/afc/index.d.ts.map +1 -1
  16. package/build/src/services/ios/afc/index.js +34 -40
  17. package/build/src/services/ios/afc/index.js.map +1 -1
  18. package/build/src/services/ios/afc/stream-utils.d.ts +10 -11
  19. package/build/src/services/ios/afc/stream-utils.d.ts.map +1 -1
  20. package/build/src/services/ios/afc/stream-utils.js +7 -8
  21. package/build/src/services/ios/afc/stream-utils.js.map +1 -1
  22. package/build/src/services/ios/testmanagerd/index.js +2 -2
  23. package/build/src/services/ios/testmanagerd/index.js.map +1 -1
  24. package/package.json +2 -1
  25. package/src/services/ios/afc/codec.ts +73 -37
  26. package/src/services/ios/afc/constants.ts +4 -6
  27. package/src/services/ios/afc/demux.ts +225 -0
  28. package/src/services/ios/afc/index.ts +48 -67
  29. package/src/services/ios/afc/stream-utils.ts +21 -24
  30. package/src/services/ios/testmanagerd/index.ts +2 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [2.2.2](https://github.com/appium/appium-ios-remotexpc/compare/v2.2.1...v2.2.2) (2026-05-30)
2
+
3
+ ### Bug Fixes
4
+
5
+ * Add response demux and improve write framing for RSD AFC uploads ([#227](https://github.com/appium/appium-ios-remotexpc/issues/227)) ([0e2f163](https://github.com/appium/appium-ios-remotexpc/commit/0e2f16315c77172eb776bc463242a7414003b1aa))
6
+
1
7
  ## [2.2.1](https://github.com/appium/appium-ios-remotexpc/compare/v2.2.0...v2.2.1) (2026-05-26)
2
8
 
3
9
  ### Miscellaneous Chores
@@ -26,9 +26,13 @@ export declare function readUInt64LE(buf: Buffer, offset?: number): bigint;
26
26
  */
27
27
  export declare function cstr(str: string): Buffer;
28
28
  /**
29
- * Build an AFC packet header for the provided operation and payload length.
29
+ * Build an AFC packet header with explicit entire_length and this_length values.
30
30
  */
31
- export declare function encodeHeader(op: AfcOpcode, packetNum: bigint, payloadLen: number, thisLenOverride?: number): Buffer;
31
+ export declare function encodeHeaderExplicit(op: AfcOpcode, packetNum: bigint, entireLen: number, thisLen: number): Buffer;
32
+ /**
33
+ * Build an AFC packet header for a single contiguous payload after the header.
34
+ */
35
+ export declare function encodeHeader(op: AfcOpcode, packetNum: bigint, payloadLen: number): Buffer;
32
36
  /**
33
37
  * Tear down buffered-reader state and destroy the socket after a fatal read error.
34
38
  * Late-arriving bytes must not be left for a subsequent readExact on the same socket.
@@ -48,9 +52,14 @@ export declare function readAfcHeader(socket: net.Socket, timeoutMs?: number): P
48
52
  */
49
53
  export declare function readAfcResponse(socket: net.Socket, timeoutMs?: number): Promise<AfcResponse>;
50
54
  /**
51
- * Send an AFC packet (header and optional payload) to the socket.
55
+ * Write a buffer to the socket, waiting for drain only when the kernel buffer is full.
56
+ */
57
+ export declare function writeBufferToSocket(socket: net.Socket, data: Buffer): Promise<void>;
58
+ /**
59
+ * Send an AFC packet as three socket writes: header, optional header payload, optional body.
60
+ * For FILE_WRITE, headerPayload is the 8-byte handle and content is file bytes (no memcpy).
52
61
  */
53
- export declare function sendAfcPacket(socket: net.Socket, op: AfcOpcode, packetNum: bigint, payload?: Buffer, thisLenOverride?: number): Promise<void>;
62
+ export declare function sendAfcPacket(socket: net.Socket, op: AfcOpcode, packetNum: bigint, headerPayload?: Buffer, content?: Buffer): Promise<void>;
54
63
  /**
55
64
  * Split a null-terminated UTF-8 buffer into string entries.
56
65
  */
@@ -1 +1 @@
1
- {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/codec.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import net from 'node:net';
2
2
  import { createPlist } from '../../../lib/plist/plist-creator.js';
3
3
  import { parsePlist } from '../../../lib/plist/unified-plist-parser.js';
4
- import { AFCMAGIC, AFC_HEADER_SIZE, AFC_OPERATION_TIMEOUT_MS, NULL_BYTE, } from './constants.js';
4
+ import { AFCMAGIC, AFC_HEADER_SIZE, AFC_OPERATION_TIMEOUT_MS, MAXIMUM_READ_SIZE, NULL_BYTE, } from './constants.js';
5
5
  import { AfcError, AfcOpcode } from './enums.js';
6
6
  import { AfcConnectionError } from './errors.js';
7
7
  /**
@@ -26,24 +26,24 @@ export function cstr(str) {
26
26
  return Buffer.concat([s, NULL_BYTE]);
27
27
  }
28
28
  /**
29
- * Build an AFC packet header for the provided operation and payload length.
29
+ * Build an AFC packet header with explicit entire_length and this_length values.
30
30
  */
31
- export function encodeHeader(op, packetNum, payloadLen, thisLenOverride) {
32
- const entireLen = BigInt(AFC_HEADER_SIZE + payloadLen);
33
- const thisLen = BigInt(thisLenOverride ?? AFC_HEADER_SIZE + payloadLen);
31
+ export function encodeHeaderExplicit(op, packetNum, entireLen, thisLen) {
34
32
  const header = Buffer.alloc(AFC_HEADER_SIZE);
35
- // magic
36
33
  AFCMAGIC.copy(header, 0);
37
- // entire_length
38
- writeUInt64LE(entireLen).copy(header, 8);
39
- // this_length
40
- writeUInt64LE(thisLen).copy(header, 16);
41
- // packet_num
34
+ writeUInt64LE(BigInt(entireLen)).copy(header, 8);
35
+ writeUInt64LE(BigInt(thisLen)).copy(header, 16);
42
36
  writeUInt64LE(packetNum).copy(header, 24);
43
- // operation
44
37
  writeUInt64LE(BigInt(op)).copy(header, 32);
45
38
  return header;
46
39
  }
40
+ /**
41
+ * Build an AFC packet header for a single contiguous payload after the header.
42
+ */
43
+ export function encodeHeader(op, packetNum, payloadLen) {
44
+ const entireLen = AFC_HEADER_SIZE + payloadLen;
45
+ return encodeHeaderExplicit(op, packetNum, entireLen, entireLen);
46
+ }
47
47
  const SOCKET_STATES = new WeakMap();
48
48
  const FATAL_SOCKETS = new WeakSet();
49
49
  /**
@@ -127,29 +127,53 @@ export async function readAfcResponse(socket, timeoutMs = AFC_OPERATION_TIMEOUT_
127
127
  };
128
128
  }
129
129
  /**
130
- * Send an AFC packet (header and optional payload) to the socket.
130
+ * Write a buffer to the socket, waiting for drain only when the kernel buffer is full.
131
131
  */
132
- export async function sendAfcPacket(socket, op, packetNum, payload = Buffer.alloc(0), thisLenOverride) {
133
- const header = encodeHeader(op, packetNum, payload.length, thisLenOverride);
132
+ export async function writeBufferToSocket(socket, data) {
133
+ assertSocketReadable(socket);
134
+ if (!data.length) {
135
+ return;
136
+ }
137
+ if (socket.write(data)) {
138
+ return;
139
+ }
134
140
  await new Promise((resolve, reject) => {
135
- socket.write(header, (err) => {
136
- if (err) {
137
- return reject(err);
138
- }
139
- if (payload.length) {
140
- socket.write(payload, (err2) => {
141
- if (err2) {
142
- return reject(err2);
143
- }
144
- resolve();
145
- });
146
- }
147
- else {
148
- resolve();
149
- }
150
- });
141
+ const onDrain = () => {
142
+ cleanup();
143
+ resolve();
144
+ };
145
+ const onError = (err) => {
146
+ cleanup();
147
+ reject(err);
148
+ };
149
+ const onClosed = () => {
150
+ cleanup();
151
+ reject(new AfcConnectionError('AFC socket closed while waiting for drain'));
152
+ };
153
+ const cleanup = () => {
154
+ socket.off('drain', onDrain);
155
+ socket.off('error', onError);
156
+ socket.off('close', onClosed);
157
+ socket.off('end', onClosed);
158
+ };
159
+ socket.once('drain', onDrain);
160
+ socket.once('error', onError);
161
+ socket.once('close', onClosed);
162
+ socket.once('end', onClosed);
151
163
  });
152
164
  }
165
+ /**
166
+ * Send an AFC packet as three socket writes: header, optional header payload, optional body.
167
+ * For FILE_WRITE, headerPayload is the 8-byte handle and content is file bytes (no memcpy).
168
+ */
169
+ export async function sendAfcPacket(socket, op, packetNum, headerPayload = Buffer.alloc(0), content = Buffer.alloc(0)) {
170
+ const thisLen = AFC_HEADER_SIZE + headerPayload.length;
171
+ const entireLen = thisLen + content.length;
172
+ const header = encodeHeaderExplicit(op, packetNum, entireLen, thisLen);
173
+ await writeBufferToSocket(socket, header);
174
+ await writeBufferToSocket(socket, headerPayload);
175
+ await writeBufferToSocket(socket, content);
176
+ }
153
177
  /**
154
178
  * Split a null-terminated UTF-8 buffer into string entries.
155
179
  */
@@ -279,6 +303,7 @@ export async function createRawServiceSocket(host, port, options = {}) {
279
303
  const socket = await new Promise((resolve, reject) => {
280
304
  const conn = net.createConnection({ host, port }, () => {
281
305
  conn.setKeepAlive(true);
306
+ conn.setNoDelay(true);
282
307
  resolve(conn);
283
308
  });
284
309
  conn.setTimeout(timeoutMs, () => {
@@ -299,7 +324,7 @@ export async function createRawServiceSocket(host, port, options = {}) {
299
324
  */
300
325
  export function nextReadChunkSize(left) {
301
326
  const leftNum = typeof left === 'bigint' ? Number(left) : left;
302
- return leftNum;
327
+ return Math.min(leftNum, MAXIMUM_READ_SIZE);
303
328
  }
304
329
  /**
305
330
  * Convert nanoseconds to milliseconds for Date construction
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../../../src/services/ios/afc/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../../../src/services/ios/afc/codec.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,10 @@ import { AfcFopenMode } from './enums.js';
4
4
  */
5
5
  export declare const AFCMAGIC: Buffer<ArrayBuffer>;
6
6
  export declare const MAXIMUM_READ_SIZE: number;
7
+ export declare const MAXIMUM_WRITE_SIZE: number;
7
8
  export declare const AFC_FOPEN_TEXTUAL_MODES: Record<string, AfcFopenMode>;
8
9
  export declare const AFC_HEADER_SIZE = 40;
9
- export declare const AFC_OPERATION_TIMEOUT_MS = 15000;
10
- export declare const AFC_WRITE_THIS_LENGTH = 48;
10
+ export declare const AFC_OPERATION_TIMEOUT_MS = 30000;
11
11
  export declare const NULL_BYTE: Buffer<ArrayBuffer>;
12
12
  export declare const AFC_LOCK_SH: number;
13
13
  export declare const AFC_LOCK_EX: number;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AAGH,eAAO,MAAM,QAAQ,qBAAmC,CAAC;AAGzD,eAAO,MAAM,iBAAiB,QAAkB,CAAC;AAGjD,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAOhE,CAAC;AAGF,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAG/C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,eAAO,MAAM,SAAS,qBAAmB,CAAC;AAG1C,eAAO,MAAM,WAAW,QAAQ,CAAC;AACjC,eAAO,MAAM,WAAW,QAAQ,CAAC;AACjC,eAAO,MAAM,WAAW,QAAQ,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AAGH,eAAO,MAAM,QAAQ,qBAAmC,CAAC;AAGzD,eAAO,MAAM,iBAAiB,QAAc,CAAC;AAC7C,eAAO,MAAM,kBAAkB,QAAc,CAAC;AAG9C,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAOhE,CAAC;AAGF,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAE/C,eAAO,MAAM,SAAS,qBAAmB,CAAC;AAG1C,eAAO,MAAM,WAAW,QAAQ,CAAC;AACjC,eAAO,MAAM,WAAW,QAAQ,CAAC;AACjC,eAAO,MAAM,WAAW,QAAQ,CAAC"}
@@ -4,8 +4,9 @@ import { AfcFopenMode } from './enums.js';
4
4
  */
5
5
  // Magic bytes at start of every AFC header
6
6
  export const AFCMAGIC = Buffer.from('CFA6LPAA', 'ascii');
7
- // IO chunk sizes
8
- export const MAXIMUM_READ_SIZE = 4 * 1024 * 1024; // 4 MiB
7
+ // IO chunk sizes (split writes avoid memcpy)
8
+ export const MAXIMUM_READ_SIZE = 1024 * 1024;
9
+ export const MAXIMUM_WRITE_SIZE = 1024 * 1024;
9
10
  // Mapping of textual fopen modes to AFC modes
10
11
  export const AFC_FOPEN_TEXTUAL_MODES = {
11
12
  r: AfcFopenMode.RDONLY,
@@ -17,9 +18,7 @@ export const AFC_FOPEN_TEXTUAL_MODES = {
17
18
  };
18
19
  // Header size: magic (8) + entire_length (8) + this_length (8) + packet_num (8) + operation (8)
19
20
  export const AFC_HEADER_SIZE = 40;
20
- export const AFC_OPERATION_TIMEOUT_MS = 15_000;
21
- // Override for WRITE packets' this_length
22
- export const AFC_WRITE_THIS_LENGTH = 48;
21
+ export const AFC_OPERATION_TIMEOUT_MS = 30_000;
23
22
  export const NULL_BYTE = Buffer.from([0]);
24
23
  // File lock operation constants
25
24
  export const AFC_LOCK_SH = 1 | 4; // 5: Shared lock (multiple readers)
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/services/ios/afc/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AAEH,2CAA2C;AAC3C,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAEzD,iBAAiB;AACjB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ;AAE1D,8CAA8C;AAC9C,MAAM,CAAC,MAAM,uBAAuB,GAAiC;IACnE,CAAC,EAAE,YAAY,CAAC,MAAM;IACtB,IAAI,EAAE,YAAY,CAAC,EAAE;IACrB,CAAC,EAAE,YAAY,CAAC,MAAM;IACtB,IAAI,EAAE,YAAY,CAAC,EAAE;IACrB,CAAC,EAAE,YAAY,CAAC,MAAM;IACtB,IAAI,EAAE,YAAY,CAAC,QAAQ;CAC5B,CAAC;AAEF,gGAAgG;AAChG,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAExC,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE1C,gCAAgC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,oCAAoC;AACtE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,oCAAoC;AACtE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/services/ios/afc/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AAEH,2CAA2C;AAC3C,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAEzD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9C,8CAA8C;AAC9C,MAAM,CAAC,MAAM,uBAAuB,GAAiC;IACnE,CAAC,EAAE,YAAY,CAAC,MAAM;IACtB,IAAI,EAAE,YAAY,CAAC,EAAE;IACrB,CAAC,EAAE,YAAY,CAAC,MAAM;IACtB,IAAI,EAAE,YAAY,CAAC,EAAE;IACrB,CAAC,EAAE,YAAY,CAAC,MAAM;IACtB,IAAI,EAAE,YAAY,CAAC,QAAQ;CAC5B,CAAC;AAEF,gGAAgG;AAChG,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE1C,gCAAgC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,oCAAoC;AACtE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,oCAAoC;AACtE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa"}
@@ -0,0 +1,40 @@
1
+ import type net from 'node:net';
2
+ import { AfcError, AfcOpcode } from './enums.js';
3
+ /**
4
+ * Routes inbound AFC packets to the matching request by packet_num.
5
+ * A background reader task demultiplexes responses so callers can overlap
6
+ * sends while each operation is matched to its reply.
7
+ */
8
+ export declare class AfcPacketDemux {
9
+ private readonly getSocket;
10
+ private readonly onFatalError;
11
+ private readonly pending;
12
+ private packetNum;
13
+ private readerSocket;
14
+ private readerActive;
15
+ private readonly sendLock;
16
+ private stopped;
17
+ constructor(getSocket: () => Promise<net.Socket>, onFatalError: (err: Error) => void);
18
+ ensureReaderStarted(socket: net.Socket): void;
19
+ /**
20
+ * Register a waiter, send one packet, then await its response.
21
+ * packet_num assignment, waiter registration, and send are serialized;
22
+ * awaiting the response happens outside the send lock.
23
+ */
24
+ sendAndWait(op: AfcOpcode, headerPayload?: Buffer, content?: Buffer, timeoutMs?: number): Promise<{
25
+ status: AfcError;
26
+ data: Buffer;
27
+ }>;
28
+ resetForNewSocket(): void;
29
+ /** Graceful shutdown; does not notify the owning service. */
30
+ stop(): void;
31
+ private _runReaderLoop;
32
+ private _sendLocked;
33
+ private _registerPending;
34
+ private _clearPending;
35
+ private _readerLoop;
36
+ /** True while this socket owns the background reader task. */
37
+ private _isCurrentReader;
38
+ private _failPending;
39
+ }
40
+ //# sourceMappingURL=demux.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demux.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/demux.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAWhC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAUjD;;;;GAIG;AACH,qBAAa,cAAc;IASvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAT/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,OAAO,CAAS;gBAGL,SAAS,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EACpC,YAAY,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI;IAGrD,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI;IAY7C;;;;OAIG;IACG,WAAW,CACf,EAAE,EAAE,SAAS,EACb,aAAa,GAAE,MAAwB,EACvC,OAAO,GAAE,MAAwB,EACjC,SAAS,SAA2B,GACnC,OAAO,CAAC;QAAE,MAAM,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAuB9C,iBAAiB,IAAI,IAAI;IAOzB,6DAA6D;IAC7D,IAAI,IAAI,IAAI;YAOE,cAAc;IAkB5B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,gBAAgB;IAiCxB,OAAO,CAAC,aAAa;YAIP,WAAW;IAmDzB,8DAA8D;IAC9D,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,YAAY;CASrB"}
@@ -0,0 +1,174 @@
1
+ import AsyncLock from 'async-lock';
2
+ import { getLogger } from '../../../lib/logger.js';
3
+ import { fatalizeAfcSocket, readAfcHeader, readExact, readUInt64LE, sendAfcPacket, } from './codec.js';
4
+ import { AFC_HEADER_SIZE, AFC_OPERATION_TIMEOUT_MS } from './constants.js';
5
+ import { AfcError, AfcOpcode } from './enums.js';
6
+ import { AfcConnectionError } from './errors.js';
7
+ const log = getLogger('AfcService');
8
+ /**
9
+ * Routes inbound AFC packets to the matching request by packet_num.
10
+ * A background reader task demultiplexes responses so callers can overlap
11
+ * sends while each operation is matched to its reply.
12
+ */
13
+ export class AfcPacketDemux {
14
+ getSocket;
15
+ onFatalError;
16
+ pending = new Map();
17
+ packetNum = 0n;
18
+ readerSocket = null;
19
+ readerActive = false;
20
+ sendLock = new AsyncLock();
21
+ stopped = false;
22
+ constructor(getSocket, onFatalError) {
23
+ this.getSocket = getSocket;
24
+ this.onFatalError = onFatalError;
25
+ }
26
+ ensureReaderStarted(socket) {
27
+ if (this.stopped) {
28
+ throw new AfcConnectionError('AFC demux is stopped');
29
+ }
30
+ if (this.readerActive && this.readerSocket === socket) {
31
+ return;
32
+ }
33
+ this.readerSocket = socket;
34
+ this.readerActive = true;
35
+ void this._runReaderLoop(socket);
36
+ }
37
+ /**
38
+ * Register a waiter, send one packet, then await its response.
39
+ * packet_num assignment, waiter registration, and send are serialized;
40
+ * awaiting the response happens outside the send lock.
41
+ */
42
+ async sendAndWait(op, headerPayload = Buffer.alloc(0), content = Buffer.alloc(0), timeoutMs = AFC_OPERATION_TIMEOUT_MS) {
43
+ if (this.stopped) {
44
+ throw new AfcConnectionError('AFC demux is stopped');
45
+ }
46
+ const socket = await this.getSocket();
47
+ this.ensureReaderStarted(socket);
48
+ const responsePromise = await this._sendLocked(async () => {
49
+ const num = this.packetNum++;
50
+ const waiter = this._registerPending(num, timeoutMs, op);
51
+ try {
52
+ await sendAfcPacket(socket, op, num, headerPayload, content);
53
+ }
54
+ catch (err) {
55
+ this._clearPending(num);
56
+ throw err;
57
+ }
58
+ return waiter;
59
+ });
60
+ return await responsePromise;
61
+ }
62
+ resetForNewSocket() {
63
+ this._failPending(new AfcConnectionError('AFC socket replaced'), false);
64
+ this.readerSocket = null;
65
+ this.readerActive = false;
66
+ this.stopped = false;
67
+ }
68
+ /** Graceful shutdown; does not notify the owning service. */
69
+ stop() {
70
+ this.stopped = true;
71
+ this._failPending(new AfcConnectionError('AFC demux stopped'), false);
72
+ this.readerSocket = null;
73
+ this.readerActive = false;
74
+ }
75
+ async _runReaderLoop(socket) {
76
+ try {
77
+ await this._readerLoop(socket);
78
+ }
79
+ catch (err) {
80
+ if (!this._isCurrentReader(socket)) {
81
+ return;
82
+ }
83
+ this._failPending(err instanceof Error ? err : new Error(String(err)), true);
84
+ }
85
+ finally {
86
+ if (this.readerSocket === socket) {
87
+ this.readerActive = false;
88
+ }
89
+ }
90
+ }
91
+ _sendLocked(fn) {
92
+ return this.sendLock.acquire('afc-send', fn);
93
+ }
94
+ _registerPending(pktNum, timeoutMs, op) {
95
+ return new Promise((resolve, reject) => {
96
+ const timer = setTimeout(() => {
97
+ if (!this.pending.has(pktNum)) {
98
+ return;
99
+ }
100
+ this._clearPending(pktNum);
101
+ reject(new AfcConnectionError(`AFC operation ${AfcOpcode[op] ?? op} timed out after ${timeoutMs}ms (packet ${pktNum})`));
102
+ }, timeoutMs);
103
+ this.pending.set(pktNum, {
104
+ resolve: (value) => {
105
+ clearTimeout(timer);
106
+ resolve(value);
107
+ },
108
+ reject: (err) => {
109
+ clearTimeout(timer);
110
+ reject(err);
111
+ },
112
+ });
113
+ });
114
+ }
115
+ _clearPending(pktNum) {
116
+ this.pending.delete(pktNum);
117
+ }
118
+ async _readerLoop(socket) {
119
+ try {
120
+ while (!this.stopped && !socket.destroyed) {
121
+ const header = await readAfcHeader(socket, AFC_OPERATION_TIMEOUT_MS);
122
+ const payloadLen = Number(header.entireLength - BigInt(AFC_HEADER_SIZE));
123
+ const payload = payloadLen > 0
124
+ ? await readExact(socket, payloadLen, AFC_OPERATION_TIMEOUT_MS)
125
+ : Buffer.alloc(0);
126
+ let status = AfcError.SUCCESS;
127
+ let data = payload;
128
+ const op = Number(header.operation);
129
+ if (op === AfcOpcode.STATUS) {
130
+ if (payloadLen !== 8) {
131
+ log.error(`AFC STATUS response length != 8 (${payloadLen})`);
132
+ }
133
+ status = Number(readUInt64LE(payload.subarray(0, 8)));
134
+ data = Buffer.alloc(0);
135
+ }
136
+ else if (op !== AfcOpcode.DATA) {
137
+ log.debug(`Unexpected AFC response opcode ${op} for packet ${header.packetNum}`);
138
+ }
139
+ const waiter = this.pending.get(header.packetNum);
140
+ if (waiter) {
141
+ this.pending.delete(header.packetNum);
142
+ waiter.resolve({ status, data });
143
+ }
144
+ else {
145
+ log.warn(`AFC response with no waiter (packet ${header.packetNum}, op ${op})`);
146
+ }
147
+ }
148
+ }
149
+ catch (err) {
150
+ if (!this._isCurrentReader(socket)) {
151
+ return;
152
+ }
153
+ const error = err instanceof Error ? err : new AfcConnectionError(String(err));
154
+ if (!socket.destroyed) {
155
+ fatalizeAfcSocket(socket, error);
156
+ }
157
+ throw error;
158
+ }
159
+ }
160
+ /** True while this socket owns the background reader task. */
161
+ _isCurrentReader(socket) {
162
+ return !this.stopped && this.readerSocket === socket;
163
+ }
164
+ _failPending(err, notifyService) {
165
+ for (const [, waiter] of this.pending) {
166
+ waiter.reject(err);
167
+ }
168
+ this.pending.clear();
169
+ if (notifyService) {
170
+ this.onFatalError(err);
171
+ }
172
+ }
173
+ }
174
+ //# sourceMappingURL=demux.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demux.js","sourceRoot":"","sources":["../../../../../src/services/ios/afc/demux.ts"],"names":[],"mappings":"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"}
@@ -51,7 +51,7 @@ export declare class AfcService {
51
51
  private readonly address;
52
52
  static readonly RSD_SERVICE_NAME = "com.apple.afc.shim.remote";
53
53
  private socket;
54
- private packetNum;
54
+ private demux;
55
55
  private silent;
56
56
  /** Set when the AFC byte stream is no longer safe to reuse on this instance. */
57
57
  private connectionError;
@@ -148,12 +148,10 @@ export declare class AfcService {
148
148
  private _assertConnectionAlive;
149
149
  private _markConnectionDead;
150
150
  private _withAfcConnection;
151
+ private _getDemux;
152
+ private _sendAndWait;
151
153
  private _connect;
152
154
  private _resolvePath;
153
- private _lockFile;
154
- private _unlockFile;
155
- private _dispatch;
156
- private _receive;
157
155
  /**
158
156
  * Send a single-operation request and parse result.
159
157
  * Throws if status != SUCCESS.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/afc/index.ts"],"names":[],"mappings":"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"}