appium-ios-remotexpc 5.22.0 → 5.23.0
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 +12 -0
- package/README.md +14 -0
- package/build/src/lib/plist/length-based-splitter.d.ts +6 -0
- package/build/src/lib/plist/length-based-splitter.d.ts.map +1 -1
- package/build/src/lib/plist/length-based-splitter.js +12 -2
- package/build/src/lib/plist/length-based-splitter.js.map +1 -1
- package/build/src/lib/plist/plist-service.d.ts +15 -0
- package/build/src/lib/plist/plist-service.d.ts.map +1 -1
- package/build/src/lib/plist/plist-service.js +34 -0
- package/build/src/lib/plist/plist-service.js.map +1 -1
- package/build/src/service-connection.d.ts +5 -0
- package/build/src/service-connection.d.ts.map +1 -1
- package/build/src/service-connection.js +7 -0
- package/build/src/service-connection.js.map +1 -1
- package/build/src/services/ios/afc/codec.js +3 -0
- package/build/src/services/ios/afc/codec.js.map +1 -1
- package/build/src/services/ios/configuration/index.d.ts +6 -2
- package/build/src/services/ios/configuration/index.d.ts.map +1 -1
- package/build/src/services/ios/configuration/index.js +10 -1
- package/build/src/services/ios/configuration/index.js.map +1 -1
- package/build/src/services/ios/house-arrest/index.d.ts.map +1 -1
- package/build/src/services/ios/house-arrest/index.js +3 -1
- package/build/src/services/ios/house-arrest/index.js.map +1 -1
- package/package.json +1 -1
- package/scripts/tunnel-creation.mjs +284 -5
- package/src/lib/plist/length-based-splitter.ts +14 -2
- package/src/lib/plist/plist-service.ts +37 -0
- package/src/service-connection.ts +8 -0
- package/src/services/ios/afc/codec.ts +3 -0
- package/src/services/ios/configuration/index.ts +10 -1
- package/src/services/ios/house-arrest/index.ts +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## [5.23.0](https://github.com/appium/appium-ios-remotexpc/compare/v5.22.1...v5.23.0) (2026-10-01)
|
|
2
|
+
|
|
3
|
+
### Features
|
|
4
|
+
|
|
5
|
+
* **tunnel-creation:** add opt-in --watch-devices hot-plug handling ([#337](https://github.com/appium/appium-ios-remotexpc/issues/337)) ([eb7c885](https://github.com/appium/appium-ios-remotexpc/commit/eb7c885adaea2c7dc37f56b7a9151ac06541a298)), closes [Usbmux#_eventStreams](https://github.com/appium/Usbmux/issues/_eventStreams)
|
|
6
|
+
|
|
7
|
+
## [5.22.1](https://github.com/appium/appium-ios-remotexpc/compare/v5.22.0...v5.22.1) (2026-09-25)
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **house-arrest:** detach the plist pipeline before handing the socket to AFC ([#339](https://github.com/appium/appium-ios-remotexpc/issues/339)) ([df9d605](https://github.com/appium/appium-ios-remotexpc/commit/df9d6055cd33d5c7ad24db61c91ba341e52bf93e))
|
|
12
|
+
|
|
1
13
|
## [5.22.0](https://github.com/appium/appium-ios-remotexpc/compare/v5.21.0...v5.22.0) (2026-09-23)
|
|
2
14
|
|
|
3
15
|
### Features
|
package/README.md
CHANGED
|
@@ -218,6 +218,20 @@ CLI helpers under `scripts/` are ESM (`.mjs`) and load the library via the packa
|
|
|
218
218
|
|
|
219
219
|
- `npm run tunnel-creation` — Create USB tunnels and start the tunnel registry HTTP API (requires `sudo`)
|
|
220
220
|
- `npm run tunnel-creation -- --keep-open` — Same as above with `--keep-open` (for inspecting open sockets)
|
|
221
|
+
- `npm run tunnel-creation -- --watch-devices` — Keep running after startup, creating tunnels for devices attached later and removing detached ones (usbmux-visible devices only). Combine with `--udid` to watch a single device — startup then waits for it instead of requiring it to already be connected. Devices attached while watching use the same `--reconnect-retries` policy as devices found at startup; `--keep-open` applies independently.
|
|
222
|
+
|
|
223
|
+
`--watch-devices` combined with the other `tunnel-creation` flags:
|
|
224
|
+
|
|
225
|
+
| `--watch-devices` | `--reconnect-retries` | `--udid` | Behavior |
|
|
226
|
+
| ----------------- | --------------------- | -------- | -------- |
|
|
227
|
+
| off | off | any | Unchanged: devices are listed once at startup. A device attached later, or one whose tunnel drops, is not picked up until the script restarts. With `--udid`, exits with an error if that device isn't connected. |
|
|
228
|
+
| off | on | any | Unchanged: a dropped tunnel is retried up to N times (0 = unlimited). Detaching a device does not stop the retries. |
|
|
229
|
+
| on | off | none | Tunnels for all devices at startup, then for every device attached later. Detached devices lose their tunnel and registry entry. A dropped tunnel is not retried; unplugging and re-plugging the device creates a new one. |
|
|
230
|
+
| on | on | none | As above, and dropped tunnels are retried. Retries for a device stop as soon as it detaches. An attach during a retry is ignored; the retry loop picks the device up on its next attempt. |
|
|
231
|
+
| on | off | set | As "on / off / none", but only that UDID is watched (matched case-insensitively). Startup waits for it to attach instead of exiting if it isn't connected. |
|
|
232
|
+
| on | on | set | As "on / on / none", restricted to that UDID, with the same wait-at-startup behavior. |
|
|
233
|
+
|
|
234
|
+
In every `--watch-devices` row, if usbmuxd restarts the watcher resubscribes and removes devices that were unplugged in the meantime. `--keep-open` applies independently.
|
|
221
235
|
- `npm run pair-appletv` — Pair an Apple TV over WiFi for Remote XPC (requires `sudo`)
|
|
222
236
|
- `npm run start-appletv-tunnel` — Start an Apple TV WiFi tunnel and tunnel registry (requires `sudo`)
|
|
223
237
|
|
|
@@ -14,6 +14,7 @@ export interface LengthBasedSplitterOptions {
|
|
|
14
14
|
* Splits incoming data into length-prefixed chunks
|
|
15
15
|
*/
|
|
16
16
|
export declare class LengthBasedSplitter extends Transform {
|
|
17
|
+
private static readonly EMPTY;
|
|
17
18
|
private buffer;
|
|
18
19
|
private readonly littleEndian;
|
|
19
20
|
private readonly maxFrameLength;
|
|
@@ -30,6 +31,11 @@ export declare class LengthBasedSplitter extends Transform {
|
|
|
30
31
|
* Shutdown the splitter and remove all listeners
|
|
31
32
|
*/
|
|
32
33
|
shutdown(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Returns the bytes received but not yet emitted as a complete frame, and
|
|
36
|
+
* forgets them.
|
|
37
|
+
*/
|
|
38
|
+
takeBufferedData(): Buffer;
|
|
33
39
|
_transform(chunk: Buffer, encoding: BufferEncoding, callback: TransformCallback): void;
|
|
34
40
|
/**
|
|
35
41
|
* Process data as XML
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"length-based-splitter.d.ts","sourceRoot":"","sources":["../../../../src/lib/plist/length-based-splitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,iBAAiB,EAAC,MAAM,aAAa,CAAC;AA2B9D;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,SAAS,CAAkB;IAEnC;;;OAGG;gBACS,OAAO,GAAE,0BAA+B;IAepD;;OAEG;IACH,QAAQ,IAAI,IAAI;IAShB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAwBtF;;OAEG;IACH,OAAO,CAAC,cAAc;IAwCtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CA6E1B"}
|
|
1
|
+
{"version":3,"file":"length-based-splitter.d.ts","sourceRoot":"","sources":["../../../../src/lib/plist/length-based-splitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,iBAAiB,EAAC,MAAM,aAAa,CAAC;AA2B9D;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAmB;IAEhD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,SAAS,CAAkB;IAEnC;;;OAGG;gBACS,OAAO,GAAE,0BAA+B;IAepD;;OAEG;IACH,QAAQ,IAAI,IAAI;IAShB;;;OAGG;IACH,gBAAgB,IAAI,MAAM;IAM1B,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAwBtF;;OAEG;IACH,OAAO,CAAC,cAAc;IAwCtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CA6E1B"}
|
|
@@ -13,6 +13,7 @@ const MAX_PREVIEW_LENGTH = 100; // Maximum number of bytes to preview for conten
|
|
|
13
13
|
* Splits incoming data into length-prefixed chunks
|
|
14
14
|
*/
|
|
15
15
|
export class LengthBasedSplitter extends Transform {
|
|
16
|
+
static EMPTY = Buffer.alloc(0);
|
|
16
17
|
buffer;
|
|
17
18
|
littleEndian;
|
|
18
19
|
maxFrameLength;
|
|
@@ -26,7 +27,7 @@ export class LengthBasedSplitter extends Transform {
|
|
|
26
27
|
*/
|
|
27
28
|
constructor(options = {}) {
|
|
28
29
|
super();
|
|
29
|
-
this.buffer =
|
|
30
|
+
this.buffer = LengthBasedSplitter.EMPTY;
|
|
30
31
|
this.littleEndian = options.littleEndian ?? false;
|
|
31
32
|
this.maxFrameLength = options.maxFrameLength ?? DEFAULT_MAX_FRAME_LENGTH;
|
|
32
33
|
this.lengthFieldOffset = options.lengthFieldOffset ?? DEFAULT_LENGTH_FIELD_OFFSET;
|
|
@@ -42,11 +43,20 @@ export class LengthBasedSplitter extends Transform {
|
|
|
42
43
|
*/
|
|
43
44
|
shutdown() {
|
|
44
45
|
// Reset internal state
|
|
45
|
-
this.buffer =
|
|
46
|
+
this.buffer = LengthBasedSplitter.EMPTY;
|
|
46
47
|
this.isXmlMode = false;
|
|
47
48
|
// Remove all listeners
|
|
48
49
|
this.removeAllListeners();
|
|
49
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Returns the bytes received but not yet emitted as a complete frame, and
|
|
53
|
+
* forgets them.
|
|
54
|
+
*/
|
|
55
|
+
takeBufferedData() {
|
|
56
|
+
const data = this.buffer;
|
|
57
|
+
this.buffer = LengthBasedSplitter.EMPTY;
|
|
58
|
+
return data;
|
|
59
|
+
}
|
|
50
60
|
_transform(chunk, encoding, callback) {
|
|
51
61
|
try {
|
|
52
62
|
// Add the new chunk to our buffer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"length-based-splitter.js","sourceRoot":"","sources":["../../../../src/lib/plist/length-based-splitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAyB,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,EACb,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAE7C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;AAE/B,YAAY;AACZ,MAAM,wBAAwB,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,+CAA+C;AACnG,MAAM,2BAA2B,GAAG,CAAC,CAAC;AACtC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AACtC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AACpC,MAAM,kBAAkB,GAAG,GAAG,CAAC,CAAC,gEAAgE;AAchG;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,SAAS;IACxC,MAAM,CAAS;IACN,YAAY,CAAU;IACtB,cAAc,CAAS;IACvB,iBAAiB,CAAS;IAC1B,iBAAiB,CAAS;IAC1B,gBAAgB,CAAS;IAClC,SAAS,GAAY,KAAK,CAAC;IAEnC;;;OAGG;IACH,YAAY,UAAsC,EAAE;QAClD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"length-based-splitter.js","sourceRoot":"","sources":["../../../../src/lib/plist/length-based-splitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -65,6 +65,21 @@ export declare class PlistService {
|
|
|
65
65
|
* @throws Error if the timeout is reached, or if close() is called before a message arrives
|
|
66
66
|
*/
|
|
67
67
|
receivePlist(timeout?: number): Promise<PlistMessage>;
|
|
68
|
+
/**
|
|
69
|
+
* Stops exchanging plist messages on the socket and returns it, so another
|
|
70
|
+
* protocol can take over the same connection (e.g. AFC after a House Arrest
|
|
71
|
+
* vend).
|
|
72
|
+
*
|
|
73
|
+
* The socket is unpiped from the plist transformers, so they no longer
|
|
74
|
+
* consume its data, and any bytes they buffered are put back into it. Pending
|
|
75
|
+
* receives are rejected. The socket is returned paused, so no data is lost
|
|
76
|
+
* before the new owner attaches its reader; the new owner must `resume()` it
|
|
77
|
+
* after that, since adding a `'data'` listener does not resume an explicitly
|
|
78
|
+
* paused stream.
|
|
79
|
+
*
|
|
80
|
+
* @returns The paused socket, ready to be read by the new owner
|
|
81
|
+
*/
|
|
82
|
+
detachSocket(): Socket | TLSSocket;
|
|
68
83
|
/**
|
|
69
84
|
* Close the connection and clean up resources
|
|
70
85
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plist-service.d.ts","sourceRoot":"","sources":["../../../../src/lib/plist/plist-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,UAAU,CAAC;AACrC,OAAO,EAAC,KAAK,SAAS,EAAC,MAAM,UAAU,CAAC;AAGxC,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAYjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,KAAK,YAAY,GAAG,eAAe,CAAC;AAQpC;;GAEG;AACH,qBAAa,YAAY;IACvB;;OAEG;IACH,MAAM,CAAC,yBAAyB,IAAI,IAAI;IAKxC;;OAEG;IACH,MAAM,CAAC,0BAA0B,IAAI,IAAI;IAIzC;;;OAGG;IACH,MAAM,CAAC,4BAA4B,IAAI,OAAO;IAI9C;;;OAGG;IACI,SAAS,IAAI,MAAM,GAAG,SAAS;IAGtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAgB;IAEhC;;;;OAIG;gBACS,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB;IA8B7D;;;;;OAKG;IACU,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAK3F;;;;OAIG;IACI,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAO1C;;;;;OAKG;IACU,YAAY,CAAC,OAAO,SAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBhE;;OAEG;IACI,KAAK,IAAI,IAAI;IAmCpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;;OAGG;IACH,OAAO,CAAC,WAAW;CAapB"}
|
|
1
|
+
{"version":3,"file":"plist-service.d.ts","sourceRoot":"","sources":["../../../../src/lib/plist/plist-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,UAAU,CAAC;AACrC,OAAO,EAAC,KAAK,SAAS,EAAC,MAAM,UAAU,CAAC;AAGxC,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAYjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,KAAK,YAAY,GAAG,eAAe,CAAC;AAQpC;;GAEG;AACH,qBAAa,YAAY;IACvB;;OAEG;IACH,MAAM,CAAC,yBAAyB,IAAI,IAAI;IAKxC;;OAEG;IACH,MAAM,CAAC,0BAA0B,IAAI,IAAI;IAIzC;;;OAGG;IACH,MAAM,CAAC,4BAA4B,IAAI,OAAO;IAI9C;;;OAGG;IACI,SAAS,IAAI,MAAM,GAAG,SAAS;IAGtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAgB;IAEhC;;;;OAIG;gBACS,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB;IA8B7D;;;;;OAKG;IACU,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAK3F;;;;OAIG;IACI,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAO1C;;;;;OAKG;IACU,YAAY,CAAC,OAAO,SAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBhE;;;;;;;;;;;;;OAaG;IACI,YAAY,IAAI,MAAM,GAAG,SAAS;IAuBzC;;OAEG;IACI,KAAK,IAAI,IAAI;IAmCpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;;OAGG;IACH,OAAO,CAAC,WAAW;CAapB"}
|
|
@@ -121,6 +121,40 @@ export class PlistService {
|
|
|
121
121
|
this._waiters.push(waiter);
|
|
122
122
|
});
|
|
123
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Stops exchanging plist messages on the socket and returns it, so another
|
|
126
|
+
* protocol can take over the same connection (e.g. AFC after a House Arrest
|
|
127
|
+
* vend).
|
|
128
|
+
*
|
|
129
|
+
* The socket is unpiped from the plist transformers, so they no longer
|
|
130
|
+
* consume its data, and any bytes they buffered are put back into it. Pending
|
|
131
|
+
* receives are rejected. The socket is returned paused, so no data is lost
|
|
132
|
+
* before the new owner attaches its reader; the new owner must `resume()` it
|
|
133
|
+
* after that, since adding a `'data'` listener does not resume an explicitly
|
|
134
|
+
* paused stream.
|
|
135
|
+
*
|
|
136
|
+
* @returns The paused socket, ready to be read by the new owner
|
|
137
|
+
*/
|
|
138
|
+
detachSocket() {
|
|
139
|
+
// Unpipe before removing listeners: the pipes' own 'unpipe' handlers take
|
|
140
|
+
// their 'data' listener off the socket, which would otherwise keep feeding
|
|
141
|
+
// every byte into the splitter
|
|
142
|
+
this._socket.unpipe(this._splitter);
|
|
143
|
+
this._splitter.unpipe(this._decoder);
|
|
144
|
+
this._encoder.unpipe(this._socket);
|
|
145
|
+
this._splitter.removeAllListeners();
|
|
146
|
+
this._decoder.removeAllListeners();
|
|
147
|
+
this._messageQueue = [];
|
|
148
|
+
for (const waiter of this._waiters.splice(0)) {
|
|
149
|
+
clearTimeout(waiter.timeoutId);
|
|
150
|
+
waiter.reject(new Error('The socket was detached while waiting for a plist response'));
|
|
151
|
+
}
|
|
152
|
+
const bufferedData = this._splitter.takeBufferedData();
|
|
153
|
+
if (bufferedData.length > 0) {
|
|
154
|
+
this._socket.unshift(bufferedData);
|
|
155
|
+
}
|
|
156
|
+
return this._socket;
|
|
157
|
+
}
|
|
124
158
|
/**
|
|
125
159
|
* Close the connection and clean up resources
|
|
126
160
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plist-service.js","sourceRoot":"","sources":["../../../../src/lib/plist/plist-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plist-service.js","sourceRoot":"","sources":["../../../../src/lib/plist/plist-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,11 @@ export declare class ServiceConnection extends BasePlistService {
|
|
|
31
31
|
* @returns The socket used by this service
|
|
32
32
|
*/
|
|
33
33
|
getSocket(): net.Socket;
|
|
34
|
+
/**
|
|
35
|
+
* Stops exchanging plist messages and returns the socket for another protocol
|
|
36
|
+
* to take over (see {@link PlistService.detachSocket}).
|
|
37
|
+
*/
|
|
38
|
+
detachSocket(): net.Socket;
|
|
34
39
|
/**
|
|
35
40
|
* Closes the connection
|
|
36
41
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-connection.d.ts","sourceRoot":"","sources":["../../src/service-connection.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAEpD,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;gBACzC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,wBAAwB;IAIlE;;OAEG;IACH,MAAM,CAAC,cAAc,CACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,iBAAiB,CAAC;IAsB7B;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,SAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;IAIxF;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAIzC;;;OAGG;IACH,SAAS,IAAI,GAAG,CAAC,MAAM;IAIvB;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAED,eAAe,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"service-connection.d.ts","sourceRoot":"","sources":["../../src/service-connection.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAEpD,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;gBACzC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,wBAAwB;IAIlE;;OAEG;IACH,MAAM,CAAC,cAAc,CACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,iBAAiB,CAAC;IAsB7B;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,SAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;IAIxF;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAIzC;;;OAGG;IACH,SAAS,IAAI,GAAG,CAAC,MAAM;IAIvB;;;OAGG;IACH,YAAY,IAAI,GAAG,CAAC,MAAM;IAI1B;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -49,6 +49,13 @@ export class ServiceConnection extends BasePlistService {
|
|
|
49
49
|
getSocket() {
|
|
50
50
|
return this.getPlistService().getSocket();
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Stops exchanging plist messages and returns the socket for another protocol
|
|
54
|
+
* to take over (see {@link PlistService.detachSocket}).
|
|
55
|
+
*/
|
|
56
|
+
detachSocket() {
|
|
57
|
+
return this.getPlistService().detachSocket();
|
|
58
|
+
}
|
|
52
59
|
/**
|
|
53
60
|
* Closes the connection
|
|
54
61
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-connection.js","sourceRoot":"","sources":["../../src/service-connection.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAUzD;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;IACrD,YAAY,MAAkB,EAAE,OAAkC;QAChE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CACnB,QAAgB,EAChB,IAAY,EACZ,OAAkC;QAElC,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC;QAC7C,MAAM,uBAAuB,GAAG,OAAO,EAAE,uBAAuB,IAAI,KAAK,CAAC;QAE1E,OAAO,IAAI,OAAO,CAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC,EAAE,GAAG,EAAE;gBAC7E,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;gBACD,OAAO,CAAC,IAAI,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,UAAU,CAAC,uBAAuB,EAAE,GAAG,EAAE;gBAC9C,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,UAA2B,EAAE,OAAO,GAAG,KAAK;QAC3D,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,OAAwB;QAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,SAAS,EAAgB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;CACF;AAED,eAAe,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"service-connection.js","sourceRoot":"","sources":["../../src/service-connection.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAUzD;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;IACrD,YAAY,MAAkB,EAAE,OAAkC;QAChE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CACnB,QAAgB,EAChB,IAAY,EACZ,OAAkC;QAElC,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC;QAC7C,MAAM,uBAAuB,GAAG,OAAO,EAAE,uBAAuB,IAAI,KAAK,CAAC;QAE1E,OAAO,IAAI,OAAO,CAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC,EAAE,GAAG,EAAE;gBAC7E,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;gBACD,OAAO,CAAC,IAAI,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,UAAU,CAAC,uBAAuB,EAAE,GAAG,EAAE;gBAC9C,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,UAA2B,EAAE,OAAO,GAAG,KAAK;QAC3D,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,OAAwB;QAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,SAAS,EAAgB,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,YAAY,EAAgB,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;CACF;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -421,6 +421,9 @@ function ensureSocketState(socket) {
|
|
|
421
421
|
socket.once('close', state.onClose);
|
|
422
422
|
socket.once('end', state.onClose);
|
|
423
423
|
SOCKET_STATES.set(socket, state);
|
|
424
|
+
// A socket handed over by another protocol (e.g. House Arrest) arrives paused,
|
|
425
|
+
// and a 'data' listener alone does not resume an explicitly paused stream
|
|
426
|
+
socket.resume();
|
|
424
427
|
return state;
|
|
425
428
|
}
|
|
426
429
|
//# sourceMappingURL=codec.js.map
|
|
@@ -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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"}
|
|
@@ -8,9 +8,13 @@ import { type CoreDeviceInvokeOptions, CoreDeviceService } from '../core-device/
|
|
|
8
8
|
export type UserInterfaceStyle = 'dark' | 'light' | (string & {});
|
|
9
9
|
/**
|
|
10
10
|
* Dynamic Type content-size names accepted by the daemon's `setdevicetextsize`
|
|
11
|
-
* action
|
|
11
|
+
* action, from smallest to largest: the seven standard sizes followed by the five
|
|
12
|
+
* accessibility sizes. The daemon only accepts an accessibility size while
|
|
13
|
+
* Settings > Accessibility > Display & Text Size > Larger Text >
|
|
14
|
+
* "Larger Accessibility Sizes" is enabled on the device, and fails with
|
|
15
|
+
* `CoreDeviceError 21063` otherwise.
|
|
12
16
|
*/
|
|
13
|
-
declare const DEVICE_TEXT_SIZES: readonly ["extraSmall", "small", "medium", "large", "extraLarge", "extraExtraLarge", "extraExtraExtraLarge"];
|
|
17
|
+
declare const DEVICE_TEXT_SIZES: readonly ["extraSmall", "small", "medium", "large", "extraLarge", "extraExtraLarge", "extraExtraExtraLarge", "accessibilityMedium", "accessibilityLarge", "accessibilityExtraLarge", "accessibilityExtraExtraLarge", "accessibilityExtraExtraExtraLarge"];
|
|
14
18
|
/** A valid Dynamic Type content-size name. See {@link DEVICE_TEXT_SIZES}. */
|
|
15
19
|
export type DeviceTextSize = (typeof DEVICE_TEXT_SIZES)[number];
|
|
16
20
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/configuration/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,KAAK,uBAAuB,EAAmB,iBAAiB,EAAC,MAAM,uCAAuC,CAAC;AAoBvH;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElE
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/configuration/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,11 @@ const ACTION = {
|
|
|
19
19
|
};
|
|
20
20
|
/**
|
|
21
21
|
* Dynamic Type content-size names accepted by the daemon's `setdevicetextsize`
|
|
22
|
-
* action
|
|
22
|
+
* action, from smallest to largest: the seven standard sizes followed by the five
|
|
23
|
+
* accessibility sizes. The daemon only accepts an accessibility size while
|
|
24
|
+
* Settings > Accessibility > Display & Text Size > Larger Text >
|
|
25
|
+
* "Larger Accessibility Sizes" is enabled on the device, and fails with
|
|
26
|
+
* `CoreDeviceError 21063` otherwise.
|
|
23
27
|
*/
|
|
24
28
|
const DEVICE_TEXT_SIZES = [
|
|
25
29
|
'extraSmall',
|
|
@@ -29,6 +33,11 @@ const DEVICE_TEXT_SIZES = [
|
|
|
29
33
|
'extraLarge',
|
|
30
34
|
'extraExtraLarge',
|
|
31
35
|
'extraExtraExtraLarge',
|
|
36
|
+
'accessibilityMedium',
|
|
37
|
+
'accessibilityLarge',
|
|
38
|
+
'accessibilityExtraLarge',
|
|
39
|
+
'accessibilityExtraExtraLarge',
|
|
40
|
+
'accessibilityExtraExtraExtraLarge',
|
|
32
41
|
];
|
|
33
42
|
/**
|
|
34
43
|
* Color-filter presets that enable from `filterType` alone.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/ios/configuration/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,sCAAsC,CAAC;AAElE,OAAO,EAA+B,eAAe,EAAE,iBAAiB,EAAC,MAAM,uCAAuC,CAAC;AAEvH,MAAM,MAAM,GAAG;IACb,wBAAwB,EAAE,mDAAmD;IAC7E,wBAAwB,EAAE,mDAAmD;IAC7E,gBAAgB,EAAE,yDAAyD;IAC3E,gBAAgB,EAAE,4CAA4C;IAC9D,gBAAgB,EAAE,4CAA4C;IAC9D,oBAAoB,EAAE,+CAA+C;IACrE,oBAAoB,EAAE,+CAA+C;IACrE,iBAAiB,EAAE,6CAA6C;IAChE,iBAAiB,EAAE,6CAA6C;IAChE,qBAAqB,EAAE,uDAAuD;IAC9E,qBAAqB,EAAE,uDAAuD;IAC9E,gBAAgB,EAAE,4CAA4C;IAC9D,gBAAgB,EAAE,4CAA4C;IAC9D,uBAAuB,EAAE,mDAAmD;IAC5E,uBAAuB,EAAE,mDAAmD;CACpE,CAAC;AAUX
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/ios/configuration/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/house-arrest/index.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAO/C;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,+CAA+C;IAE/E;;;;;;OAMG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI1D;;;;;;OAMG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI1D;;;;;;;OAOG;YACW,KAAK;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/ios/house-arrest/index.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAO/C;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,+CAA+C;IAE/E;;;;;;OAMG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI1D;;;;;;OAMG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI1D;;;;;;;OAOG;YACW,KAAK;CA4CpB;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -64,7 +64,9 @@ export class HouseArrestService extends BaseService {
|
|
|
64
64
|
throw new Error(`House Arrest vend failed with status: ${status}`);
|
|
65
65
|
}
|
|
66
66
|
log.debug(`Successfully vended into ${bundleId}`);
|
|
67
|
-
|
|
67
|
+
// The plist layer must let go of the socket: otherwise it keeps consuming the AFC
|
|
68
|
+
// replies, and once its buffer fills up it pauses the socket and AFC reads stall.
|
|
69
|
+
return AfcService.fromSocket(connection.detachSocket());
|
|
68
70
|
}
|
|
69
71
|
catch (error) {
|
|
70
72
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/ios/house-arrest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AACjD,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAE/C,MAAM,GAAG,GAAG,SAAS,CAAC,oBAAoB,CAAC,CAAC;AAE5C,MAAM,cAAc,GAAG,eAAe,CAAC;AACvC,MAAM,cAAc,GAAG,eAAe,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IACjD,MAAM,CAAU,gBAAgB,GAAG,2CAA2C,CAAC;IAE/E;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,OAAe;QACnD,GAAG,CAAC,KAAK,CAAC,gBAAgB,QAAQ,kBAAkB,OAAO,EAAE,CAAC,CAAC;QAE/D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QAExF,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,oBAAoB,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,oBAAoB,EAAE,OAAO,KAAK,cAAc,EAAE,CAAC;gBACrD,GAAG,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAC3F,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC;gBACjD,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,QAAQ;aACrB,CAAC,CAAC;YAEH,MAAM,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAC,GAAG,QAAQ,CAAC;YAEhD,IAAI,KAAK,KAAK,yBAAyB,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,KAAK,KAAK,0BAA0B,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,0EAA0E,CAAC,CAAC;YAC9G,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;YACxD,CAAC;YACD,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;YAElD,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/ios/house-arrest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AACjD,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAE/C,MAAM,GAAG,GAAG,SAAS,CAAC,oBAAoB,CAAC,CAAC;AAE5C,MAAM,cAAc,GAAG,eAAe,CAAC;AACvC,MAAM,cAAc,GAAG,eAAe,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IACjD,MAAM,CAAU,gBAAgB,GAAG,2CAA2C,CAAC;IAE/E;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,OAAe;QACnD,GAAG,CAAC,KAAK,CAAC,gBAAgB,QAAQ,kBAAkB,OAAO,EAAE,CAAC,CAAC;QAE/D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QAExF,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,oBAAoB,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,oBAAoB,EAAE,OAAO,KAAK,cAAc,EAAE,CAAC;gBACrD,GAAG,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAC3F,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC;gBACjD,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,QAAQ;aACrB,CAAC,CAAC;YAEH,MAAM,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAC,GAAG,QAAQ,CAAC;YAEhD,IAAI,KAAK,KAAK,yBAAyB,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,KAAK,KAAK,0BAA0B,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,0EAA0E,CAAC,CAAC;YAC9G,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;YACxD,CAAC;YACD,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;YAElD,kFAAkF;YAClF,kFAAkF;YAClF,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YACV,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;;AAGH,eAAe,kBAAkB,CAAC"}
|
package/package.json
CHANGED
|
@@ -33,6 +33,9 @@ const log = logger.getLogger('TunnelCreation');
|
|
|
33
33
|
/** @type {import('appium-ios-remotexpc').TunnelRegistryServer | null} */
|
|
34
34
|
let registryServer = null;
|
|
35
35
|
|
|
36
|
+
/** @type {DeviceWatcher | null} */
|
|
37
|
+
let deviceWatcher = null;
|
|
38
|
+
|
|
36
39
|
/** @type {Map<string, TunnelCreationSuccessResult>} */
|
|
37
40
|
const establishedTunnelsByUdid = new Map();
|
|
38
41
|
|
|
@@ -78,6 +81,19 @@ function registerEstablishedTunnel(result) {
|
|
|
78
81
|
establishedTunnelsByUdid.set(udid, result);
|
|
79
82
|
}
|
|
80
83
|
|
|
84
|
+
/**
|
|
85
|
+
* Drops the bookkeeping entry of a tunnel that died, unless a newer tunnel has replaced it already.
|
|
86
|
+
*
|
|
87
|
+
* @param {string} udid
|
|
88
|
+
* @param {string} deadAddress
|
|
89
|
+
* @returns {void}
|
|
90
|
+
*/
|
|
91
|
+
function forgetEstablishedTunnel(udid, deadAddress) {
|
|
92
|
+
if (establishedTunnelsByUdid.get(udid)?.tunnel.Address === deadAddress) {
|
|
93
|
+
establishedTunnelsByUdid.delete(udid);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
81
97
|
/**
|
|
82
98
|
*
|
|
83
99
|
* @param {string} connectionType
|
|
@@ -93,6 +109,18 @@ function connectionTypeRank(connectionType) {
|
|
|
93
109
|
return 2;
|
|
94
110
|
}
|
|
95
111
|
|
|
112
|
+
/**
|
|
113
|
+
* UDID comparison used elsewhere in the library (`Usbmux.findDevice`, lockdown) is case-insensitive,
|
|
114
|
+
* so a user-supplied `--udid` must match the same way.
|
|
115
|
+
*
|
|
116
|
+
* @param {string} a
|
|
117
|
+
* @param {string} b
|
|
118
|
+
* @returns {boolean}
|
|
119
|
+
*/
|
|
120
|
+
function isSameUdid(a, b) {
|
|
121
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
122
|
+
}
|
|
123
|
+
|
|
96
124
|
/**
|
|
97
125
|
* usbmux may list the same UDID twice (USB + Network). Prefer USB for tunneling.
|
|
98
126
|
*
|
|
@@ -186,6 +214,8 @@ function attachTunnelRegistryLifecycleWatch(registry, successful, callbacks = {}
|
|
|
186
214
|
},
|
|
187
215
|
onTunnelDead: async ({udid: droppedUdid, address}) => {
|
|
188
216
|
await TunnelManager.closeTunnelByAddress(address).catch(() => {});
|
|
217
|
+
// A dead tunnel must not keep blocking later attaches of this UDID, whether or not a reconnect follows
|
|
218
|
+
forgetEstablishedTunnel(droppedUdid, address);
|
|
189
219
|
if (callbacks.onTunnelDead) {
|
|
190
220
|
await callbacks.onTunnelDead({udid: droppedUdid, address});
|
|
191
221
|
}
|
|
@@ -204,12 +234,18 @@ function attachTunnelRegistryLifecycleWatch(registry, successful, callbacks = {}
|
|
|
204
234
|
* @param {string} opts.udid
|
|
205
235
|
* @param {number} opts.maxRetries
|
|
206
236
|
* @param {import('appium-ios-remotexpc').UsbmuxDevice} opts.device
|
|
237
|
+
* @param {Set<string>} [opts.watchedUdids] - UDIDs currently attached; only defined with `--watch-devices`.
|
|
238
|
+
* Retrying stops once the UDID is no longer in the set. Without it, retries are never cut short by detach.
|
|
207
239
|
* @param {function(string): Promise<void>} opts.reconnectTunnelByUdid
|
|
208
240
|
* @returns {Promise<void>}
|
|
209
241
|
*/
|
|
210
|
-
async function runReconnectAttempts({udid, maxRetries, device, reconnectTunnelByUdid}) {
|
|
242
|
+
async function runReconnectAttempts({udid, maxRetries, device, watchedUdids, reconnectTunnelByUdid}) {
|
|
211
243
|
let attempt = 0;
|
|
212
244
|
while (maxRetries === 0 || attempt < maxRetries) {
|
|
245
|
+
if (watchedUdids && !watchedUdids.has(udid)) {
|
|
246
|
+
log.info(`Stopped reconnecting ${udid}: device detached`);
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
213
249
|
attempt += 1;
|
|
214
250
|
log.warn(
|
|
215
251
|
`Reconnecting dropped tunnel for ${udid} (attempt ${attempt}${maxRetries === 0 ? ', unlimited mode' : `/${maxRetries}`})...`,
|
|
@@ -241,9 +277,10 @@ async function runReconnectAttempts({udid, maxRetries, device, reconnectTunnelBy
|
|
|
241
277
|
* @param {object} opts
|
|
242
278
|
* @param {number} opts.reconnectRetries
|
|
243
279
|
* @param {Map<string, import('appium-ios-remotexpc').UsbmuxDevice>} opts.devicesByUdid
|
|
280
|
+
* @param {Set<string>} [opts.watchedUdids] - See {@link runReconnectAttempts}
|
|
244
281
|
* @returns {function(string): Promise<void>}
|
|
245
282
|
*/
|
|
246
|
-
function createReconnectTunnelByUdid({reconnectRetries, devicesByUdid}) {
|
|
283
|
+
function createReconnectTunnelByUdid({reconnectRetries, devicesByUdid, watchedUdids}) {
|
|
247
284
|
return async function reconnectTunnelByUdid(udid) {
|
|
248
285
|
if (typeof reconnectRetries !== 'number') {
|
|
249
286
|
return;
|
|
@@ -262,6 +299,7 @@ function createReconnectTunnelByUdid({reconnectRetries, devicesByUdid}) {
|
|
|
262
299
|
udid,
|
|
263
300
|
maxRetries: reconnectRetries,
|
|
264
301
|
device,
|
|
302
|
+
watchedUdids,
|
|
265
303
|
reconnectTunnelByUdid,
|
|
266
304
|
});
|
|
267
305
|
|
|
@@ -285,6 +323,8 @@ function setupCleanupHandlers() {
|
|
|
285
323
|
const cleanup = async (signal) => {
|
|
286
324
|
log.warn(`\nCleaning up (${signal})...`);
|
|
287
325
|
|
|
326
|
+
deviceWatcher?.stop();
|
|
327
|
+
|
|
288
328
|
while (registryWatcherStops.length > 0) {
|
|
289
329
|
const stop = registryWatcherStops.pop();
|
|
290
330
|
try {
|
|
@@ -409,6 +449,225 @@ async function createTunnelForDevice(device) {
|
|
|
409
449
|
}
|
|
410
450
|
}
|
|
411
451
|
|
|
452
|
+
/**
|
|
453
|
+
* Tears down the tunnel and registry entry of a device that is no longer attached.
|
|
454
|
+
*
|
|
455
|
+
* @param {string} udid
|
|
456
|
+
* @returns {Promise<void>}
|
|
457
|
+
*/
|
|
458
|
+
async function removeDetachedDevice(udid) {
|
|
459
|
+
stopLifecycleWatch(udid);
|
|
460
|
+
registryServer?.removeTunnelEntry(udid);
|
|
461
|
+
const established = establishedTunnelsByUdid.get(udid);
|
|
462
|
+
establishedTunnelsByUdid.delete(udid);
|
|
463
|
+
if (established?.tunnelConnection) {
|
|
464
|
+
await closeTunnelQuietly(established.tunnelConnection);
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
/**
|
|
469
|
+
* Follows usbmuxd attach/detach notifications after the initial batch (`--watch-devices`), so
|
|
470
|
+
* devices plugged in or re-trusted later get a tunnel and registry entry without a restart. Only
|
|
471
|
+
* covers devices visible to usbmuxd. Resubscribes if the usbmuxd connection drops (e.g. usbmuxd
|
|
472
|
+
* restarts) and stops once `stop()` is called.
|
|
473
|
+
*
|
|
474
|
+
* Shares state with the reconnect path: an attach is ignored while a tunnel exists or a reconnect
|
|
475
|
+
* is in flight for that UDID, and a detach removes the UDID from `watchedUdids`, which stops any
|
|
476
|
+
* pending reconnect attempts for it.
|
|
477
|
+
*/
|
|
478
|
+
class DeviceWatcher {
|
|
479
|
+
/**
|
|
480
|
+
* @param {object} opts
|
|
481
|
+
* @param {Map<string, import('appium-ios-remotexpc').UsbmuxDevice>} opts.devicesByUdid - Preferred usbmux entry per tracked UDID, used as device context by reconnects
|
|
482
|
+
* @param {Set<string>} opts.watchedUdids - UDIDs currently attached; shared with the reconnect path
|
|
483
|
+
* @param {string | undefined} opts.specificUdid - When set, events for other UDIDs are ignored
|
|
484
|
+
* @param {function(string): Promise<void>} opts.reconnectTunnelByUdid
|
|
485
|
+
*/
|
|
486
|
+
constructor({devicesByUdid, watchedUdids, specificUdid, reconnectTunnelByUdid}) {
|
|
487
|
+
this.devicesByUdid = devicesByUdid;
|
|
488
|
+
this.watchedUdids = watchedUdids;
|
|
489
|
+
this.specificUdid = specificUdid;
|
|
490
|
+
this.reconnectTunnelByUdid = reconnectTunnelByUdid;
|
|
491
|
+
/** @type {Map<number, import('appium-ios-remotexpc').UsbmuxDevice>} */
|
|
492
|
+
this.attachedByDeviceId = new Map();
|
|
493
|
+
this.abortController = new AbortController();
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
/**
|
|
497
|
+
* @param {string} udid
|
|
498
|
+
* @returns {import('appium-ios-remotexpc').UsbmuxDevice[]}
|
|
499
|
+
*/
|
|
500
|
+
attachedEntriesFor(udid) {
|
|
501
|
+
return [...this.attachedByDeviceId.values()].filter((device) => device.Properties.SerialNumber === udid);
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
/**
|
|
505
|
+
* @param {string} udid
|
|
506
|
+
* @returns {void}
|
|
507
|
+
*/
|
|
508
|
+
forget(udid) {
|
|
509
|
+
this.devicesByUdid.delete(udid);
|
|
510
|
+
this.watchedUdids.delete(udid);
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
/** @returns {void} */
|
|
514
|
+
stop() {
|
|
515
|
+
this.abortController.abort();
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
/**
|
|
519
|
+
* @param {import('appium-ios-remotexpc').UsbmuxDeviceEvent} event
|
|
520
|
+
* @returns {Promise<void>}
|
|
521
|
+
*/
|
|
522
|
+
async handleEvent(event) {
|
|
523
|
+
switch (event.type) {
|
|
524
|
+
case 'attach':
|
|
525
|
+
await this.handleAttach(event.device);
|
|
526
|
+
break;
|
|
527
|
+
case 'detach':
|
|
528
|
+
await this.handleDetach(event.deviceId);
|
|
529
|
+
break;
|
|
530
|
+
default:
|
|
531
|
+
log.debug(`Ignoring unknown usbmux event: ${JSON.stringify(event)}`);
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
/**
|
|
536
|
+
* @param {import('appium-ios-remotexpc').UsbmuxDevice} device
|
|
537
|
+
* @returns {Promise<void>}
|
|
538
|
+
*/
|
|
539
|
+
async handleAttach(device) {
|
|
540
|
+
const udid = device.Properties.SerialNumber;
|
|
541
|
+
if (this.specificUdid && !isSameUdid(udid, this.specificUdid)) {
|
|
542
|
+
return;
|
|
543
|
+
}
|
|
544
|
+
this.attachedByDeviceId.set(device.DeviceID, device);
|
|
545
|
+
const [preferred] = dedupeDevicesByUdid(this.attachedEntriesFor(udid));
|
|
546
|
+
this.devicesByUdid.set(udid, preferred);
|
|
547
|
+
this.watchedUdids.add(udid);
|
|
548
|
+
|
|
549
|
+
if (establishedTunnelsByUdid.has(udid) || reconnectingByUdid.has(udid)) {
|
|
550
|
+
log.debug(`Ignoring attach of ${udid} (${device.Properties.ConnectionType}): tunnel already managed`);
|
|
551
|
+
return;
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
log.info(`\n🔌 Device attached: ${udid}`);
|
|
555
|
+
const result = await createTunnelForDevice(preferred);
|
|
556
|
+
if (!result.success) {
|
|
557
|
+
return;
|
|
558
|
+
}
|
|
559
|
+
attachTunnelRegistryLifecycleWatch(registryServer.getRegistry(), [result], {
|
|
560
|
+
onTunnelDead: async ({udid: droppedUdid}) => {
|
|
561
|
+
await this.reconnectTunnelByUdid(droppedUdid);
|
|
562
|
+
},
|
|
563
|
+
});
|
|
564
|
+
let published = false;
|
|
565
|
+
try {
|
|
566
|
+
published = await publishDiscoveredTunnelEntry(result);
|
|
567
|
+
} catch (err) {
|
|
568
|
+
log.warn(`Failed to publish tunnel for ${udid}: ${err}`);
|
|
569
|
+
}
|
|
570
|
+
if (!published) {
|
|
571
|
+
// Otherwise the live but unpublished tunnel would make every later attach of this UDID a no-op
|
|
572
|
+
await removeDetachedDevice(udid);
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
/**
|
|
577
|
+
* @param {number} deviceId
|
|
578
|
+
* @returns {Promise<void>}
|
|
579
|
+
*/
|
|
580
|
+
async handleDetach(deviceId) {
|
|
581
|
+
const device = this.attachedByDeviceId.get(deviceId);
|
|
582
|
+
if (!device) {
|
|
583
|
+
return;
|
|
584
|
+
}
|
|
585
|
+
this.attachedByDeviceId.delete(deviceId);
|
|
586
|
+
const udid = device.Properties.SerialNumber;
|
|
587
|
+
|
|
588
|
+
const [remaining] = dedupeDevicesByUdid(this.attachedEntriesFor(udid));
|
|
589
|
+
if (remaining) {
|
|
590
|
+
// e.g. USB unplugged while still reachable over Network; the lifecycle watch handles the drop
|
|
591
|
+
log.info(
|
|
592
|
+
`Device ${udid} lost its ${device.Properties.ConnectionType} connection, still attached via ${remaining.Properties.ConnectionType}`,
|
|
593
|
+
);
|
|
594
|
+
this.devicesByUdid.set(udid, remaining);
|
|
595
|
+
return;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
log.info(`\n🔌 Device detached: ${udid}`);
|
|
599
|
+
this.forget(udid);
|
|
600
|
+
await removeDetachedDevice(udid);
|
|
601
|
+
}
|
|
602
|
+
|
|
603
|
+
/**
|
|
604
|
+
* Devices unplugged while no subscription was active (during startup, or while usbmuxd was down)
|
|
605
|
+
* are never reported as detached.
|
|
606
|
+
*
|
|
607
|
+
* @returns {Promise<void>}
|
|
608
|
+
*/
|
|
609
|
+
async detachDevicesMissingFromUsbmux() {
|
|
610
|
+
const lister = await createUsbmux();
|
|
611
|
+
let listed;
|
|
612
|
+
try {
|
|
613
|
+
listed = new Set((await lister.listDevices()).map((device) => device.Properties.SerialNumber));
|
|
614
|
+
} finally {
|
|
615
|
+
await lister.close().catch((err) => log.warn(`Failed to close usbmux listing connection: ${err}`));
|
|
616
|
+
}
|
|
617
|
+
for (const udid of [...this.watchedUdids]) {
|
|
618
|
+
if (!listed.has(udid)) {
|
|
619
|
+
log.info(`\n🔌 Device detached while usbmuxd was unavailable: ${udid}`);
|
|
620
|
+
this.forget(udid);
|
|
621
|
+
await removeDetachedDevice(udid);
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
/**
|
|
627
|
+
* Runs the subscribe/handle/resubscribe loop until `stop()` is called.
|
|
628
|
+
*
|
|
629
|
+
* @returns {Promise<void>}
|
|
630
|
+
*/
|
|
631
|
+
async run() {
|
|
632
|
+
const {signal} = this.abortController;
|
|
633
|
+
let backoffMs = 1000;
|
|
634
|
+
|
|
635
|
+
while (!signal.aborted) {
|
|
636
|
+
/** @type {import('appium-ios-remotexpc').Usbmux | null} */
|
|
637
|
+
let usbmux = null;
|
|
638
|
+
try {
|
|
639
|
+
usbmux = await createUsbmux();
|
|
640
|
+
// Listen re-reports every attached device, possibly under new DeviceIDs (e.g. replugged while
|
|
641
|
+
// startup was still creating tunnels, or usbmuxd restarted), so entries from before are stale
|
|
642
|
+
this.attachedByDeviceId.clear();
|
|
643
|
+
const events = usbmux.listen({signal});
|
|
644
|
+
log.info('Watching usbmuxd for device attach/detach events...');
|
|
645
|
+
await this.detachDevicesMissingFromUsbmux();
|
|
646
|
+
for await (const event of events) {
|
|
647
|
+
backoffMs = 1000;
|
|
648
|
+
try {
|
|
649
|
+
await this.handleEvent(event);
|
|
650
|
+
} catch (err) {
|
|
651
|
+
// One failed event must not end the subscription
|
|
652
|
+
log.warn(`Failed to handle usbmux ${event.type} event: ${err}`);
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
} catch (err) {
|
|
656
|
+
if (!signal.aborted) {
|
|
657
|
+
log.warn(`Device watch interrupted (${err}); resubscribing in ${backoffMs}ms`);
|
|
658
|
+
}
|
|
659
|
+
} finally {
|
|
660
|
+
await usbmux?.close().catch((err) => log.warn(`Failed to close usbmux watch connection: ${err}`));
|
|
661
|
+
}
|
|
662
|
+
if (signal.aborted) {
|
|
663
|
+
break;
|
|
664
|
+
}
|
|
665
|
+
await sleep(backoffMs);
|
|
666
|
+
backoffMs = Math.min(backoffMs * 2, 30000);
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
|
|
412
671
|
/**
|
|
413
672
|
* @returns {Promise<void>}
|
|
414
673
|
*/
|
|
@@ -429,6 +688,12 @@ async function main() {
|
|
|
429
688
|
)
|
|
430
689
|
.option('--reconnect-retries <count>', 'Reconnect retries after unexpected tunnel drop (0 = unlimited)', (value) =>
|
|
431
690
|
parseNonNegativeIntegerOption(value, 'retry count'),
|
|
691
|
+
)
|
|
692
|
+
.option(
|
|
693
|
+
'--watch-devices',
|
|
694
|
+
'Keep watching usbmuxd after startup: create tunnels for newly attached devices and remove detached ones (usbmux-visible devices only). ' +
|
|
695
|
+
'With --udid, only that UDID is watched, and startup no longer requires it to already be connected. ' +
|
|
696
|
+
'Tunnels created after startup use the same --reconnect-retries policy as the initial ones. Independent of --keep-open.',
|
|
432
697
|
);
|
|
433
698
|
|
|
434
699
|
program.parse(process.argv);
|
|
@@ -458,7 +723,7 @@ async function main() {
|
|
|
458
723
|
|
|
459
724
|
await usbmux.close();
|
|
460
725
|
|
|
461
|
-
if (devices.length === 0) {
|
|
726
|
+
if (devices.length === 0 && !options.watchDevices) {
|
|
462
727
|
log.warn('No devices found. Make sure iOS devices are connected and trusted.');
|
|
463
728
|
process.exit(0);
|
|
464
729
|
}
|
|
@@ -473,9 +738,11 @@ async function main() {
|
|
|
473
738
|
|
|
474
739
|
let devicesToProcess = devices;
|
|
475
740
|
if (specificUdid) {
|
|
476
|
-
devicesToProcess = devices.filter((device) => device.Properties.SerialNumber
|
|
741
|
+
devicesToProcess = devices.filter((device) => isSameUdid(device.Properties.SerialNumber, specificUdid));
|
|
477
742
|
|
|
478
|
-
if (devicesToProcess.length === 0) {
|
|
743
|
+
if (devicesToProcess.length === 0 && options.watchDevices) {
|
|
744
|
+
log.warn(`Device with UDID ${specificUdid} is not connected yet; waiting for it to attach.`);
|
|
745
|
+
} else if (devicesToProcess.length === 0) {
|
|
479
746
|
log.error(`Device with UDID ${specificUdid} not found in connected devices.`);
|
|
480
747
|
log.error('Available devices:');
|
|
481
748
|
devices.forEach((device) => {
|
|
@@ -505,9 +772,11 @@ async function main() {
|
|
|
505
772
|
|
|
506
773
|
const reconnectRetries = options.reconnectRetries;
|
|
507
774
|
const devicesByUdid = new Map(devicesToProcess.map((device) => [device.Properties.SerialNumber, device]));
|
|
775
|
+
const watchedUdids = options.watchDevices ? new Set(devicesByUdid.keys()) : undefined;
|
|
508
776
|
const reconnectTunnelByUdid = createReconnectTunnelByUdid({
|
|
509
777
|
reconnectRetries,
|
|
510
778
|
devicesByUdid,
|
|
779
|
+
watchedUdids,
|
|
511
780
|
});
|
|
512
781
|
|
|
513
782
|
const results = [];
|
|
@@ -562,6 +831,16 @@ async function main() {
|
|
|
562
831
|
const firstUdid = successful[0].device.Properties.SerialNumber;
|
|
563
832
|
log.info(` curl "http://localhost:${registryPort}/remotexpc/tunnels/${firstUdid}?waitMs=15000"`);
|
|
564
833
|
}
|
|
834
|
+
|
|
835
|
+
if (options.watchDevices) {
|
|
836
|
+
deviceWatcher = new DeviceWatcher({
|
|
837
|
+
devicesByUdid,
|
|
838
|
+
watchedUdids,
|
|
839
|
+
specificUdid,
|
|
840
|
+
reconnectTunnelByUdid,
|
|
841
|
+
});
|
|
842
|
+
await deviceWatcher.run();
|
|
843
|
+
}
|
|
565
844
|
} catch (error) {
|
|
566
845
|
log.error(`Error during tunnel creation test: ${error}`);
|
|
567
846
|
throw error;
|
|
@@ -41,6 +41,8 @@ export interface LengthBasedSplitterOptions {
|
|
|
41
41
|
* Splits incoming data into length-prefixed chunks
|
|
42
42
|
*/
|
|
43
43
|
export class LengthBasedSplitter extends Transform {
|
|
44
|
+
private static readonly EMPTY = Buffer.alloc(0);
|
|
45
|
+
|
|
44
46
|
private buffer: Buffer;
|
|
45
47
|
private readonly littleEndian: boolean;
|
|
46
48
|
private readonly maxFrameLength: number;
|
|
@@ -55,7 +57,7 @@ export class LengthBasedSplitter extends Transform {
|
|
|
55
57
|
*/
|
|
56
58
|
constructor(options: LengthBasedSplitterOptions = {}) {
|
|
57
59
|
super();
|
|
58
|
-
this.buffer =
|
|
60
|
+
this.buffer = LengthBasedSplitter.EMPTY;
|
|
59
61
|
this.littleEndian = options.littleEndian ?? false;
|
|
60
62
|
this.maxFrameLength = options.maxFrameLength ?? DEFAULT_MAX_FRAME_LENGTH;
|
|
61
63
|
this.lengthFieldOffset = options.lengthFieldOffset ?? DEFAULT_LENGTH_FIELD_OFFSET;
|
|
@@ -73,13 +75,23 @@ export class LengthBasedSplitter extends Transform {
|
|
|
73
75
|
*/
|
|
74
76
|
shutdown(): void {
|
|
75
77
|
// Reset internal state
|
|
76
|
-
this.buffer =
|
|
78
|
+
this.buffer = LengthBasedSplitter.EMPTY;
|
|
77
79
|
this.isXmlMode = false;
|
|
78
80
|
|
|
79
81
|
// Remove all listeners
|
|
80
82
|
this.removeAllListeners();
|
|
81
83
|
}
|
|
82
84
|
|
|
85
|
+
/**
|
|
86
|
+
* Returns the bytes received but not yet emitted as a complete frame, and
|
|
87
|
+
* forgets them.
|
|
88
|
+
*/
|
|
89
|
+
takeBufferedData(): Buffer {
|
|
90
|
+
const data = this.buffer;
|
|
91
|
+
this.buffer = LengthBasedSplitter.EMPTY;
|
|
92
|
+
return data;
|
|
93
|
+
}
|
|
94
|
+
|
|
83
95
|
_transform(chunk: Buffer, encoding: BufferEncoding, callback: TransformCallback): void {
|
|
84
96
|
try {
|
|
85
97
|
// Add the new chunk to our buffer
|
|
@@ -160,6 +160,43 @@ export class PlistService {
|
|
|
160
160
|
});
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
+
/**
|
|
164
|
+
* Stops exchanging plist messages on the socket and returns it, so another
|
|
165
|
+
* protocol can take over the same connection (e.g. AFC after a House Arrest
|
|
166
|
+
* vend).
|
|
167
|
+
*
|
|
168
|
+
* The socket is unpiped from the plist transformers, so they no longer
|
|
169
|
+
* consume its data, and any bytes they buffered are put back into it. Pending
|
|
170
|
+
* receives are rejected. The socket is returned paused, so no data is lost
|
|
171
|
+
* before the new owner attaches its reader; the new owner must `resume()` it
|
|
172
|
+
* after that, since adding a `'data'` listener does not resume an explicitly
|
|
173
|
+
* paused stream.
|
|
174
|
+
*
|
|
175
|
+
* @returns The paused socket, ready to be read by the new owner
|
|
176
|
+
*/
|
|
177
|
+
public detachSocket(): Socket | TLSSocket {
|
|
178
|
+
// Unpipe before removing listeners: the pipes' own 'unpipe' handlers take
|
|
179
|
+
// their 'data' listener off the socket, which would otherwise keep feeding
|
|
180
|
+
// every byte into the splitter
|
|
181
|
+
this._socket.unpipe(this._splitter);
|
|
182
|
+
this._splitter.unpipe(this._decoder);
|
|
183
|
+
this._encoder.unpipe(this._socket);
|
|
184
|
+
this._splitter.removeAllListeners();
|
|
185
|
+
this._decoder.removeAllListeners();
|
|
186
|
+
|
|
187
|
+
this._messageQueue = [];
|
|
188
|
+
for (const waiter of this._waiters.splice(0)) {
|
|
189
|
+
clearTimeout(waiter.timeoutId);
|
|
190
|
+
waiter.reject(new Error('The socket was detached while waiting for a plist response'));
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
const bufferedData = this._splitter.takeBufferedData();
|
|
194
|
+
if (bufferedData.length > 0) {
|
|
195
|
+
this._socket.unshift(bufferedData);
|
|
196
|
+
}
|
|
197
|
+
return this._socket;
|
|
198
|
+
}
|
|
199
|
+
|
|
163
200
|
/**
|
|
164
201
|
* Close the connection and clean up resources
|
|
165
202
|
*/
|
|
@@ -71,6 +71,14 @@ export class ServiceConnection extends BasePlistService {
|
|
|
71
71
|
return this.getPlistService().getSocket() as net.Socket;
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
/**
|
|
75
|
+
* Stops exchanging plist messages and returns the socket for another protocol
|
|
76
|
+
* to take over (see {@link PlistService.detachSocket}).
|
|
77
|
+
*/
|
|
78
|
+
detachSocket(): net.Socket {
|
|
79
|
+
return this.getPlistService().detachSocket() as net.Socket;
|
|
80
|
+
}
|
|
81
|
+
|
|
74
82
|
/**
|
|
75
83
|
* Closes the connection
|
|
76
84
|
*/
|
|
@@ -513,5 +513,8 @@ function ensureSocketState(socket: net.Socket): SocketState {
|
|
|
513
513
|
socket.once('close', state.onClose);
|
|
514
514
|
socket.once('end', state.onClose);
|
|
515
515
|
SOCKET_STATES.set(socket, state);
|
|
516
|
+
// A socket handed over by another protocol (e.g. House Arrest) arrives paused,
|
|
517
|
+
// and a 'data' listener alone does not resume an explicitly paused stream
|
|
518
|
+
socket.resume();
|
|
516
519
|
return state;
|
|
517
520
|
}
|
|
@@ -30,7 +30,11 @@ export type UserInterfaceStyle = 'dark' | 'light' | (string & {});
|
|
|
30
30
|
|
|
31
31
|
/**
|
|
32
32
|
* Dynamic Type content-size names accepted by the daemon's `setdevicetextsize`
|
|
33
|
-
* action
|
|
33
|
+
* action, from smallest to largest: the seven standard sizes followed by the five
|
|
34
|
+
* accessibility sizes. The daemon only accepts an accessibility size while
|
|
35
|
+
* Settings > Accessibility > Display & Text Size > Larger Text >
|
|
36
|
+
* "Larger Accessibility Sizes" is enabled on the device, and fails with
|
|
37
|
+
* `CoreDeviceError 21063` otherwise.
|
|
34
38
|
*/
|
|
35
39
|
const DEVICE_TEXT_SIZES = [
|
|
36
40
|
'extraSmall',
|
|
@@ -40,6 +44,11 @@ const DEVICE_TEXT_SIZES = [
|
|
|
40
44
|
'extraLarge',
|
|
41
45
|
'extraExtraLarge',
|
|
42
46
|
'extraExtraExtraLarge',
|
|
47
|
+
'accessibilityMedium',
|
|
48
|
+
'accessibilityLarge',
|
|
49
|
+
'accessibilityExtraLarge',
|
|
50
|
+
'accessibilityExtraExtraLarge',
|
|
51
|
+
'accessibilityExtraExtraExtraLarge',
|
|
43
52
|
] as const;
|
|
44
53
|
|
|
45
54
|
/** A valid Dynamic Type content-size name. See {@link DEVICE_TEXT_SIZES}. */
|
|
@@ -77,7 +77,9 @@ export class HouseArrestService extends BaseService {
|
|
|
77
77
|
|
|
78
78
|
log.debug(`Successfully vended into ${bundleId}`);
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
// The plist layer must let go of the socket: otherwise it keeps consuming the AFC
|
|
81
|
+
// replies, and once its buffer fills up it pauses the socket and AFC reads stall.
|
|
82
|
+
return AfcService.fromSocket(connection.detachSocket());
|
|
81
83
|
} catch (error) {
|
|
82
84
|
try {
|
|
83
85
|
connection.close();
|