dsh-zen-remote 2.3.4 → 2.3.6

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 (53) hide show
  1. package/README.md +1 -1
  2. package/README.zh-CN.md +1 -1
  3. package/docs/interface.md +2 -2
  4. package/docs/plugin-bridge.md +2 -2
  5. package/docs/remote-access.en.md +3 -3
  6. package/docs/remote-access.md +3 -3
  7. package/lib/adapters/dsh-better-sidebar/index.js +31 -2
  8. package/lib/adapters/dsh-better-sidebar/index.js.map +1 -1
  9. package/lib/client.js +185 -48
  10. package/lib/index.js +13 -0
  11. package/lib/index.js.map +1 -1
  12. package/lib/intercept.js +43 -1
  13. package/lib/intercept.js.map +1 -1
  14. package/lib/plugin-adapter-core.js +30 -1
  15. package/lib/plugin-adapter-core.js.map +1 -1
  16. package/lib/plugin-route-intercept.js +506 -11
  17. package/lib/plugin-route-intercept.js.map +1 -1
  18. package/lib/plugin-tunnel.js +210 -18
  19. package/lib/plugin-tunnel.js.map +1 -1
  20. package/lib/types/adapters/dsh-better-sidebar/index.d.ts +5 -2
  21. package/lib/types/adapters/dsh-better-sidebar/index.d.ts.map +1 -1
  22. package/lib/types/client/MobileSessionInfo.d.ts.map +1 -1
  23. package/lib/types/client/effects/turn-fold.d.ts +42 -0
  24. package/lib/types/client/effects/turn-fold.d.ts.map +1 -1
  25. package/lib/types/client/locales.d.ts +2 -0
  26. package/lib/types/client/locales.d.ts.map +1 -1
  27. package/lib/types/client/styles/content.css.d.ts +1 -1
  28. package/lib/types/client/styles/content.css.d.ts.map +1 -1
  29. package/lib/types/client/styles/layout.css.d.ts +1 -1
  30. package/lib/types/client/styles/layout.css.d.ts.map +1 -1
  31. package/lib/types/client/styles/turn-fold.css.d.ts.map +1 -1
  32. package/lib/types/index.d.ts.map +1 -1
  33. package/lib/types/intercept.d.ts +6 -0
  34. package/lib/types/intercept.d.ts.map +1 -1
  35. package/lib/types/plugin-adapter-core.d.ts.map +1 -1
  36. package/lib/types/plugin-route-intercept.d.ts +8 -0
  37. package/lib/types/plugin-route-intercept.d.ts.map +1 -1
  38. package/lib/types/plugin-tunnel.d.ts +37 -2
  39. package/lib/types/plugin-tunnel.d.ts.map +1 -1
  40. package/package.json +37 -37
  41. package/scripts/check-info-sheet-stacking.mjs +85 -0
  42. package/src/adapters/dsh-better-sidebar/index.ts +31 -2
  43. package/src/client/MobileSessionInfo.tsx +29 -2
  44. package/src/client/effects/turn-fold.ts +97 -26
  45. package/src/client/locales.ts +4 -0
  46. package/src/client/styles/content.css.ts +44 -14
  47. package/src/client/styles/layout.css.ts +9 -3
  48. package/src/client/styles/turn-fold.css.ts +9 -0
  49. package/src/index.ts +13 -0
  50. package/src/intercept.ts +46 -0
  51. package/src/plugin-adapter-core.ts +29 -2
  52. package/src/plugin-route-intercept.ts +516 -12
  53. package/src/plugin-tunnel.ts +230 -20
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-route-intercept.js","sourceRoot":"","sources":["../src/plugin-route-intercept.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-route-intercept.js","sourceRoot":"","sources":["../src/plugin-route-intercept.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@
24
24
  */
25
25
  import { connect as netConnect } from 'node:net';
26
26
  import { connect as tlsConnect } from 'node:tls';
27
+ import { randomBytes } from 'node:crypto';
27
28
  import { pluginBridgeError, responseJson } from './http.js';
28
29
  import { adapterPathMatches, adapterTailShapeViolation, locateAdapterIds } from './plugin-adapter-core.js';
29
30
  import { routeLocatorOf, routeMaxBodyOf, routeMethodsOf, routePrefixOf, routeUpgradesOf } from './plugin-bridge.js';
@@ -98,6 +99,16 @@ export async function validatePluginCall(bridge, coords, isAccessible, readJsonB
98
99
  return { ok: false, status: 403, code: 'not-shared' };
99
100
  sessionId = queryId;
100
101
  }
102
+ else if (locator.in === 'json-body' && readJsonBody === undefined && routeUpgradesOf(route)) {
103
+ // PB-26b: a json-body UPGRADE route's handshake is an empty-bodied GET —
104
+ // the ids ride the JSON text frames the browser sends AFTER the
105
+ // handshake, and the tunnel's send gate share-checks every one of those
106
+ // frames ({@link frameShareVerdict}) before a byte reaches the plugin.
107
+ // The open phase locates nothing and validates no body; the consent
108
+ // wall below still applies, and the tunnel carries the route so the
109
+ // gate can judge the frames.
110
+ sessionId = '';
111
+ }
101
112
  else {
102
113
  let parsedBody;
103
114
  if (locator.in === 'json-body') {
@@ -144,6 +155,125 @@ export const TUNNEL_DOWN_CHUNK_BYTES = 48 * 1024;
144
155
  export const TUNNEL_UP_CHUNK_BYTES = 64 * 1024;
145
156
  /** Concurrent tunnels per device. */
146
157
  export const MAX_TUNNELS_PER_DEVICE = 8;
158
+ /** The frame-size cap the gate parses (per frame, declared length): a
159
+ * browser watch frame is a few KiB at most, and an unbounded declared
160
+ * length would let a broken sender grow the parse buffer forever. */
161
+ export const MAX_GATE_FRAME_BYTES = 1024 * 1024;
162
+ /** Split the COMPLETE frames at the front of `buffer` — client frames
163
+ * (masked) and server frames (unmasked) alike. A partial frame at the tail
164
+ * stays unconsumed for the next chunk; `violated` reports a frame whose
165
+ * DECLARED length exceeds {@link MAX_GATE_FRAME_BYTES} (the caller refuses,
166
+ * never waits for bytes that must not arrive). */
167
+ export function parseRfc6455Frames(buffer) {
168
+ const frames = [];
169
+ let offset = 0;
170
+ while (true) {
171
+ const remain = buffer.length - offset;
172
+ if (remain < 2)
173
+ break;
174
+ const fin = (buffer[offset] & 0x80) !== 0;
175
+ const opcode = buffer[offset] & 0x0f;
176
+ const masked = (buffer[offset + 1] & 0x80) !== 0;
177
+ let length = buffer[offset + 1] & 0x7f;
178
+ let headerLength = 2;
179
+ if (length === 126) {
180
+ if (remain < 4)
181
+ break;
182
+ length = buffer.readUInt16BE(offset + 2);
183
+ headerLength = 4;
184
+ }
185
+ else if (length === 127) {
186
+ if (remain < 10)
187
+ break;
188
+ const declared = buffer.readBigUInt64BE(offset + 2);
189
+ if (declared > BigInt(MAX_GATE_FRAME_BYTES))
190
+ return { frames, consumed: offset, violated: true };
191
+ length = Number(declared);
192
+ headerLength = 10;
193
+ }
194
+ if (length > MAX_GATE_FRAME_BYTES)
195
+ return { frames, consumed: offset, violated: true };
196
+ const maskLength = masked ? 4 : 0;
197
+ if (remain < headerLength + maskLength + length)
198
+ break;
199
+ const maskAt = offset + headerLength;
200
+ const payloadAt = maskAt + maskLength;
201
+ const end = payloadAt + length;
202
+ const payload = Buffer.from(buffer.subarray(payloadAt, end));
203
+ if (masked) {
204
+ const mask = buffer.subarray(maskAt, payloadAt);
205
+ for (let i = 0; i < payload.length; i += 1)
206
+ payload[i] ^= mask[i % 4];
207
+ }
208
+ frames.push({ opcode, fin, payload, raw: Buffer.from(buffer.subarray(offset, end)) });
209
+ offset = end;
210
+ }
211
+ return { frames, consumed: offset, violated: false };
212
+ }
213
+ /** Encode one RFC 6455 frame. `mask: true` produces the CLIENT side's
214
+ * masked form (4 fresh random bytes, payload XORed) — the bytes the sub-
215
+ * client forwards must look like the browser's own. `false` is the server
216
+ * side's plain form (frames toward the browser). `fin` (default true) is
217
+ * the frame's FIN bit — a fragmented frame keeps its fragmentation shape
218
+ * when the gate re-frames it. */
219
+ export function encodeRfc6455Frame(opcode, payload, mask, fin = true) {
220
+ const firstByte = (fin ? 0x80 : 0x00) | (opcode & 0x0f);
221
+ const maskBit = mask ? 0x80 : 0;
222
+ const length = payload.length;
223
+ let head;
224
+ if (length < 126) {
225
+ head = Buffer.from([firstByte, maskBit | length]);
226
+ }
227
+ else if (length < 65536) {
228
+ head = Buffer.alloc(4);
229
+ head[0] = firstByte;
230
+ head[1] = maskBit | 126;
231
+ head.writeUInt16BE(length, 2);
232
+ }
233
+ else {
234
+ head = Buffer.alloc(10);
235
+ head[0] = firstByte;
236
+ head[1] = maskBit | 127;
237
+ head.writeBigUInt64BE(BigInt(length), 2);
238
+ }
239
+ if (!mask)
240
+ return Buffer.concat([head, payload]);
241
+ const maskKey = randomBytes(4);
242
+ const masked = Buffer.from(payload);
243
+ for (let i = 0; i < masked.length; i += 1)
244
+ masked[i] ^= maskKey[i % 4];
245
+ return Buffer.concat([head, maskKey, masked]);
246
+ }
247
+ /** The share-wall verdict of ONE client text frame (PB-26b): the frame's
248
+ * JSON is located against the route's OWN locator and every hit is share-
249
+ * checked — the same adapter-core rule the open phase runs for query and
250
+ * body routes. Non-text frames (close/ping/pong/binary) carry no session
251
+ * ids and pass. A frame that locates NOTHING (an empty `threadIds` array —
252
+ * the unsubscribe-all — or a non-object JSON) is admitted: there is no id
253
+ * to check. */
254
+ function frameShareVerdict(route, frame, isAccessible) {
255
+ if (frame.opcode !== 0x1)
256
+ return { ok: true };
257
+ let parsed;
258
+ try {
259
+ parsed = JSON.parse(frame.payload.toString('utf8'));
260
+ }
261
+ catch {
262
+ return { ok: false, status: 400, code: 'bad-request' };
263
+ }
264
+ let hits;
265
+ try {
266
+ hits = locateAdapterIds(asAdapterRoute(route), route.path, new URLSearchParams(), parsed);
267
+ }
268
+ catch {
269
+ return { ok: false, status: 400, code: 'bad-query' };
270
+ }
271
+ for (const hit of hits) {
272
+ if (!isAccessible(hit.value))
273
+ return { ok: false, status: 403, code: 'not-shared' };
274
+ }
275
+ return { ok: true };
276
+ }
147
277
  /** The four WebSocket headers the open body may carry, verbatim. */
148
278
  const TUNNEL_CLIENT_HEADERS = ['sec-websocket-key', 'sec-websocket-version', 'sec-websocket-protocol', 'sec-websocket-extensions'];
149
279
  function isRecord(value) {
@@ -200,6 +330,28 @@ export function createPluginTunnel(options) {
200
330
  const value = Array.isArray(raw) ? raw[0] : raw;
201
331
  return typeof value === 'string' ? value : undefined;
202
332
  };
333
+ /** PB-26b: run the frame gate over the tunnel's accumulated upstream
334
+ * buffer — split the complete frames, share-check every TEXT one against
335
+ * the route's locator and return the verified wire bytes for the plugin.
336
+ * A refusal returns the verdict and the caller owns the channel (an HTTP
337
+ * status on `send`; an end line on the early head bytes): the refused
338
+ * frame and everything after it NEVER reach upstream. Frames that locate
339
+ * no id (the empty-array unsubscribe) are admitted verbatim. */
340
+ const admitUpstreamFrames = (tunnel, isAccessible) => {
341
+ const buffer = tunnel.upFrameBuffer;
342
+ const parsed = parseRfc6455Frames(buffer);
343
+ if (parsed.violated)
344
+ return { ok: false, status: 400, code: 'bad-request' };
345
+ const verified = [];
346
+ for (const frame of parsed.frames) {
347
+ const verdict = frameShareVerdict(tunnel.route, frame, isAccessible);
348
+ if (!verdict.ok)
349
+ return verdict;
350
+ verified.push(frame.raw);
351
+ }
352
+ tunnel.upFrameBuffer = buffer.subarray(parsed.consumed);
353
+ return { ok: true, bytes: Buffer.concat(verified) };
354
+ };
203
355
  return {
204
356
  tunnelCount() {
205
357
  return tunnels.size;
@@ -273,9 +425,11 @@ export function createPluginTunnel(options) {
273
425
  pluginBridgeError(res, 400, 'bad-request');
274
426
  return;
275
427
  }
276
- // No body reader here: an open request is empty-bodied by contract, so
277
- // a json-body-locator route can never be validated and answers
278
- // bad-request inside the shared chain.
428
+ // No body reader here: an open request is empty-bodied by contract. A
429
+ // NON-upgrade json-body route answers bad-request inside the shared
430
+ // chain (nothing would ever own its ids); an `upgrade: true` one is
431
+ // admitted with an empty session (PB-26b) — its ids arrive in the
432
+ // later WebSocket frames and the send gate owns them.
279
433
  const validation = await validatePluginCall(bridge, coords, options.isAccessible);
280
434
  if (!validation.ok) {
281
435
  pluginBridgeError(res, validation.status, validation.code);
@@ -319,11 +473,14 @@ export function createPluginTunnel(options) {
319
473
  return;
320
474
  }
321
475
  const id = (await import('node:crypto')).randomBytes(16).toString('hex');
476
+ const gated = routeUpgradesOf(validation.route) && routeLocatorOf(validation.route).in === 'json-body';
322
477
  const tunnel = {
323
478
  device,
324
479
  upstream,
325
480
  res,
326
481
  expectedSeq: 0,
482
+ route: validation.route,
483
+ upFrameBuffer: gated ? Buffer.alloc(0) : undefined,
327
484
  heartbeat: setInterval(() => {
328
485
  writeLine(res, { type: 'ping' });
329
486
  }, options.heartbeatMs),
@@ -354,8 +511,24 @@ export function createPluginTunnel(options) {
354
511
  '\r\n',
355
512
  ];
356
513
  upstream.write(requestLines.join('\r\n'));
357
- if (head.length > 0)
514
+ // PB-26b: the gated tunnel admits even its EARLY head bytes through
515
+ // the same per-frame wall — the client half never sends head on a
516
+ // json-body route, so bytes here are a bypass attempt and the tunnel
517
+ // dies with an end line (the river is already open — no HTTP status
518
+ // fits anymore) instead of slipping ids past the share check.
519
+ if (tunnel.upFrameBuffer !== undefined && head.length > 0) {
520
+ tunnel.upFrameBuffer = Buffer.concat([tunnel.upFrameBuffer, head]);
521
+ const admitted = admitUpstreamFrames(tunnel, options.isAccessible);
522
+ if (!admitted.ok) {
523
+ teardown(tunnel, id, 'client-closed');
524
+ return;
525
+ }
526
+ if (admitted.bytes.length > 0)
527
+ upstream.write(admitted.bytes);
528
+ }
529
+ else if (head.length > 0) {
358
530
  upstream.write(head);
531
+ }
359
532
  // Upstream bytes → downstream data lines, at most 48 KiB PER LINE, with
360
533
  // the slow-reader discipline: a full socket pauses the UPSTREAM read, so
361
534
  // a stalled client never grows this process's buffers. Whatever arrived
@@ -444,22 +617,41 @@ export function createPluginTunnel(options) {
444
617
  }
445
618
  const bytes = Buffer.concat(chunks);
446
619
  tunnel.expectedSeq = seq + 1;
620
+ // PB-26b: a json-body upgrade tunnel parses its upstream bytes into
621
+ // RFC 6455 frames FIRST — every text frame is located and share-
622
+ // checked before a byte of it reaches the plugin; a refused frame
623
+ // answers the send's own HTTP status and tears the tunnel down. An
624
+ // opaque (query-locator) tunnel skips the gate entirely.
625
+ let outbound = bytes;
626
+ if (tunnel.upFrameBuffer !== undefined) {
627
+ tunnel.upFrameBuffer = Buffer.concat([tunnel.upFrameBuffer, bytes]);
628
+ const admitted = admitUpstreamFrames(tunnel, options.isAccessible);
629
+ if (!admitted.ok) {
630
+ pluginBridgeError(res, admitted.status, admitted.code);
631
+ teardown(tunnel, tunnelId, 'client-closed');
632
+ return;
633
+ }
634
+ outbound = admitted.bytes;
635
+ }
447
636
  // Backpressure: the answer waits for the upstream socket to take the
448
637
  // bytes, so a stalled plugin makes THIS send slow instead of growing
449
- // buffers here.
450
- const flushed = tunnel.upstream.write(bytes);
451
- if (!flushed) {
452
- await new Promise((resolve) => {
453
- const settled = () => {
454
- tunnel.upstream.off('drain', settled);
455
- tunnel.upstream.off('close', settled);
456
- tunnel.upstream.off('error', settled);
457
- resolve();
458
- };
459
- tunnel.upstream.once('drain', settled);
460
- tunnel.upstream.once('close', settled);
461
- tunnel.upstream.once('error', settled);
462
- });
638
+ // buffers here. A gated chunk may hold no complete frame yet — nothing
639
+ // to write, the bytes stay in the parse buffer, the send answers ok.
640
+ if (outbound.length > 0) {
641
+ const flushed = tunnel.upstream.write(outbound);
642
+ if (!flushed) {
643
+ await new Promise((resolve) => {
644
+ const settled = () => {
645
+ tunnel.upstream.off('drain', settled);
646
+ tunnel.upstream.off('close', settled);
647
+ tunnel.upstream.off('error', settled);
648
+ resolve();
649
+ };
650
+ tunnel.upstream.once('drain', settled);
651
+ tunnel.upstream.once('close', settled);
652
+ tunnel.upstream.once('error', settled);
653
+ });
654
+ }
463
655
  }
464
656
  if (tunnels.get(tunnelId) !== tunnel) {
465
657
  // The tunnel died while the bytes were draining.