@ai-ecoverse/slicc-kernel 1.152.2 → 1.154.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/README.md +28 -3
- package/dist/driver-worker.js +147 -10
- package/dist/driver-worker.js.map +4 -4
- package/dist/index.js +168 -14
- package/dist/index.js.map +4 -4
- package/dist/kernel-worker.js +844 -167
- package/dist/kernel-worker.js.map +4 -4
- package/dist/node-driver-worker.js +147 -10
- package/dist/node-driver-worker.js.map +4 -4
- package/dist/node-process-worker.js +81 -24
- package/dist/node-process-worker.js.map +3 -3
- package/dist/node.js +982 -182
- package/dist/node.js.map +4 -4
- package/dist/process-worker.js +81 -24
- package/dist/process-worker.js.map +3 -3
- package/dist/types/client/attach.d.ts +2 -0
- package/dist/types/client/protocol.d.ts +4 -0
- package/dist/types/client/serve-client.d.ts +2 -0
- package/dist/types/embedder-relay.d.ts +58 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/kernel/embedder.d.ts +100 -0
- package/dist/types/kernel/fd-table.d.ts +3 -1
- package/dist/types/kernel/host.d.ts +8 -0
- package/dist/types/kernel/net/tls-client.d.ts +4 -1
- package/dist/types/kernel/net/tls-engine.d.ts +5 -2
- package/dist/types/kernel/net/tls-server.d.ts +2 -0
- package/dist/types/kernel/net/tls-uplink.d.ts +2 -0
- package/dist/types/kernel/process.d.ts +17 -0
- package/dist/types/kernel/socket-syscalls.d.ts +3 -0
- package/dist/types/launcher.d.ts +13 -0
- package/dist/types/node.d.ts +3 -0
- package/dist/types/process/js/js-net.d.ts +3 -0
- package/dist/types/process/kernel-streams.d.ts +2 -1
- package/dist/types/process/wasi/wasi-fds.d.ts +1 -0
- package/dist/types/serve.d.ts +3 -0
- package/package.json +4 -4
package/dist/process-worker.js
CHANGED
|
@@ -2964,7 +2964,7 @@ var KERNEL_VERSION, OS_RELEASE;
|
|
|
2964
2964
|
var init_version = __esm({
|
|
2965
2965
|
"src/version.ts"() {
|
|
2966
2966
|
"use strict";
|
|
2967
|
-
KERNEL_VERSION = true ? "1.
|
|
2967
|
+
KERNEL_VERSION = true ? "1.154.0" : "0.0.0-dev";
|
|
2968
2968
|
OS_RELEASE = "6.0.0-slicc";
|
|
2969
2969
|
}
|
|
2970
2970
|
});
|
|
@@ -4172,7 +4172,7 @@ function sealedStat(minor = 250) {
|
|
|
4172
4172
|
const now = /* @__PURE__ */ new Date();
|
|
4173
4173
|
return {
|
|
4174
4174
|
dev: 22,
|
|
4175
|
-
ino: minor
|
|
4175
|
+
ino: DEVICE_INO[minor],
|
|
4176
4176
|
mode: 8630,
|
|
4177
4177
|
nlink: 1,
|
|
4178
4178
|
uid: 0,
|
|
@@ -4196,7 +4196,7 @@ function datesOf(real) {
|
|
|
4196
4196
|
dates[key] = new Date(value2);
|
|
4197
4197
|
return dates;
|
|
4198
4198
|
}
|
|
4199
|
-
var POLLIN, POLLOUT, POLLERR, POLLHUP, POLLRDNORM, POLLWRNORM, TCSETSF, O_NONBLOCK, SOCKET_MODE, PTY_PATH, TTY_PATH, PTS_MAJOR, TTY_NAME, SEALED_PATH, STRERROR, CLIPBOARD_PATH, O_CREAT2, O_EXCL2, O_NOCTTY, O_TRUNC3, O_DIRECTORY, KILLED_BY_SIGPIPE, ProcessExit, SyscallError, KernelStreams;
|
|
4199
|
+
var POLLIN, POLLOUT, POLLERR, POLLHUP, POLLRDNORM, POLLWRNORM, TCSETSF, O_NONBLOCK, SOCKET_MODE, PTY_PATH, TTY_PATH, PTS_MAJOR, TTY_NAME, SEALED_PATH, STRERROR, CLIPBOARD_PATH, EMBEDDER_PATH, DEVICE_INO, O_CREAT2, O_EXCL2, O_NOCTTY, O_TRUNC3, O_DIRECTORY, KILLED_BY_SIGPIPE, ProcessExit, SyscallError, KernelStreams;
|
|
4200
4200
|
var init_kernel_streams = __esm({
|
|
4201
4201
|
"src/process/kernel-streams.ts"() {
|
|
4202
4202
|
"use strict";
|
|
@@ -4226,6 +4226,8 @@ var init_kernel_streams = __esm({
|
|
|
4226
4226
|
EINTR: "Interrupted system call"
|
|
4227
4227
|
};
|
|
4228
4228
|
CLIPBOARD_PATH = "/dev/clipboard";
|
|
4229
|
+
EMBEDDER_PATH = "/dev/embedder";
|
|
4230
|
+
DEVICE_INO = { 250: 1, 251: 2, 252: 3 };
|
|
4229
4231
|
O_CREAT2 = 64;
|
|
4230
4232
|
O_EXCL2 = 128;
|
|
4231
4233
|
O_NOCTTY = 256;
|
|
@@ -4308,7 +4310,7 @@ var init_kernel_streams = __esm({
|
|
|
4308
4310
|
stream.stream_ops = { ...stream.stream_ops, getattr: () => this.Fs.stat?.(name2) ?? {} };
|
|
4309
4311
|
}
|
|
4310
4312
|
nameDevice(stream, kind) {
|
|
4311
|
-
this.nameStream(stream, kind
|
|
4313
|
+
this.nameStream(stream, `/dev/${kind}`);
|
|
4312
4314
|
}
|
|
4313
4315
|
listSealed() {
|
|
4314
4316
|
const fs = this.Fs;
|
|
@@ -4316,7 +4318,8 @@ var init_kernel_streams = __esm({
|
|
|
4316
4318
|
if (!analyzePath || !mkdev || !makedev) return;
|
|
4317
4319
|
const nodes = [
|
|
4318
4320
|
[SEALED_PATH, 250, this.sys.openSealed],
|
|
4319
|
-
[CLIPBOARD_PATH, 251, this.sys.openClipboard]
|
|
4321
|
+
[CLIPBOARD_PATH, 251, this.sys.openClipboard],
|
|
4322
|
+
[EMBEDDER_PATH, 252, this.sys.openEmbedder]
|
|
4320
4323
|
];
|
|
4321
4324
|
for (const [path, minor, opener] of nodes) {
|
|
4322
4325
|
if (!opener) continue;
|
|
@@ -4346,6 +4349,7 @@ var init_kernel_streams = __esm({
|
|
|
4346
4349
|
this.attach(stream, kfd, terminal);
|
|
4347
4350
|
this.nameStream(stream, path);
|
|
4348
4351
|
if (path === CLIPBOARD_PATH) this.reportClose(kfd);
|
|
4352
|
+
if (path === EMBEDDER_PATH) this.reportClose(kfd);
|
|
4349
4353
|
}
|
|
4350
4354
|
reporting = /* @__PURE__ */ new Set();
|
|
4351
4355
|
reportClose(kfd) {
|
|
@@ -4633,10 +4637,11 @@ var init_kernel_streams = __esm({
|
|
|
4633
4637
|
return this.vessel(open, kfd, { path, flags, mode }, false);
|
|
4634
4638
|
}
|
|
4635
4639
|
openClipboard(open, path, flags, mode) {
|
|
4636
|
-
const
|
|
4637
|
-
|
|
4640
|
+
const clipboard = path === CLIPBOARD_PATH;
|
|
4641
|
+
const opener = clipboard ? this.sys.openClipboard : this.sys.openEmbedder;
|
|
4642
|
+
if (!clipboard && path !== EMBEDDER_PATH || !opener) return void 0;
|
|
4638
4643
|
if (flags & O_DIRECTORY) throw new this.Fs.ErrnoError(wasiErrno("ENOTDIR"));
|
|
4639
|
-
const kfd = this.call(() =>
|
|
4644
|
+
const kfd = this.call(() => opener.call(this.sys, flags & 3));
|
|
4640
4645
|
try {
|
|
4641
4646
|
const stream = this.vessel(open, kfd, { path, flags, mode }, false);
|
|
4642
4647
|
this.reportClose(kfd);
|
|
@@ -4672,6 +4677,7 @@ var init_kernel_streams = __esm({
|
|
|
4672
4677
|
fs[name2] = (path, ...rest2) => {
|
|
4673
4678
|
if (path === SEALED_PATH && this.sys.openSealed) return sealedStat();
|
|
4674
4679
|
if (path === CLIPBOARD_PATH && this.sys.openClipboard) return sealedStat(251);
|
|
4680
|
+
if (path === EMBEDDER_PATH && this.sys.openEmbedder) return sealedStat(252);
|
|
4675
4681
|
const owned = this.ownedTty(path);
|
|
4676
4682
|
if (owned && isPtyPath(path)) return this.owned(path, ptyStat(path));
|
|
4677
4683
|
if (!isPtyPath(path))
|
|
@@ -4965,8 +4971,7 @@ function placeholder(Fs, streams2, entry) {
|
|
|
4965
4971
|
const access = entry.flags ?? O_RDWR;
|
|
4966
4972
|
if (entry.kind === "socket") return streams2.socketStream(access);
|
|
4967
4973
|
if (entry.kind === "tty") return Fs.open("/dev/tty", O_RDWR);
|
|
4968
|
-
if (entry.kind === "stream" || entry.kind
|
|
4969
|
-
return Fs.open("/dev/null", access);
|
|
4974
|
+
if (entry.kind === "stream" || DEVICE_KINDS.has(entry.kind)) return Fs.open("/dev/null", access);
|
|
4970
4975
|
Fs.mkdirTree(PLACEHOLDER_DIR);
|
|
4971
4976
|
return Fs.open(`${PLACEHOLDER_DIR}/${entry.fd}`, access | O_CREAT3);
|
|
4972
4977
|
}
|
|
@@ -4990,8 +4995,9 @@ function placeKernelStream(Fs, streams2, entry) {
|
|
|
4990
4995
|
streams2.sizeFromKernel(stream, entry.kernel);
|
|
4991
4996
|
} else if (entry.kind === "socket") streams2.attachSocket(stream, entry.kernel);
|
|
4992
4997
|
else streams2.attach(stream, entry.kernel, entry.kind === "tty");
|
|
4993
|
-
if (entry.kind === "clipboard") streams2.reportClose(entry.kernel);
|
|
4994
|
-
if (
|
|
4998
|
+
if (entry.kind === "clipboard" || entry.kind === "embedder") streams2.reportClose(entry.kernel);
|
|
4999
|
+
if (DEVICE_KINDS.has(entry.kind))
|
|
5000
|
+
streams2.nameDevice(stream, entry.kind);
|
|
4995
5001
|
if (entry.kind === "tty") streams2.nameTerminal(stream);
|
|
4996
5002
|
if (entry.kind === "stream") {
|
|
4997
5003
|
asFifo(stream, streams2, entry.desc !== void 0 ? `d${entry.desc}` : `k${entry.kernel}`);
|
|
@@ -5018,7 +5024,7 @@ function restoreForkedStreams(Fs, streams2, table) {
|
|
|
5018
5024
|
}
|
|
5019
5025
|
}
|
|
5020
5026
|
}
|
|
5021
|
-
var O_RDWR, O_ACCMODE4, O_CREAT3, O_EXCL3, O_TRUNC4, PLACEHOLDER_DIR, NAMED_DEVICES, ACCESS, DEVICES, FIFO_MODE, nextStreamIno, streamInos;
|
|
5027
|
+
var O_RDWR, O_ACCMODE4, O_CREAT3, O_EXCL3, O_TRUNC4, PLACEHOLDER_DIR, NAMED_DEVICES, DEVICE_KINDS, ACCESS, DEVICES, FIFO_MODE, nextStreamIno, streamInos;
|
|
5022
5028
|
var init_process_fork = __esm({
|
|
5023
5029
|
"src/process/process-fork.ts"() {
|
|
5024
5030
|
"use strict";
|
|
@@ -5031,8 +5037,10 @@ var init_process_fork = __esm({
|
|
|
5031
5037
|
PLACEHOLDER_DIR = "/dev/slicc-fd";
|
|
5032
5038
|
NAMED_DEVICES = {
|
|
5033
5039
|
"/dev/sealed": "sealed",
|
|
5034
|
-
"/dev/clipboard": "clipboard"
|
|
5040
|
+
"/dev/clipboard": "clipboard",
|
|
5041
|
+
"/dev/embedder": "embedder"
|
|
5035
5042
|
};
|
|
5043
|
+
DEVICE_KINDS = /* @__PURE__ */ new Set(["sealed", "clipboard", "embedder"]);
|
|
5036
5044
|
ACCESS = { 0: "read", 1: "write" };
|
|
5037
5045
|
DEVICES = {
|
|
5038
5046
|
"/dev/null": "null",
|
|
@@ -6310,6 +6318,9 @@ function kernelSys(transport) {
|
|
|
6310
6318
|
clipboardAbort(fd) {
|
|
6311
6319
|
call2({ op: "fd-clipboard-abort", fd }, "fd-clipboard-abort");
|
|
6312
6320
|
},
|
|
6321
|
+
openEmbedder(flags) {
|
|
6322
|
+
return json2(call2({ op: "fd-open-embedder", flags }, "fd-open-embedder"));
|
|
6323
|
+
},
|
|
6313
6324
|
ptyNumbers() {
|
|
6314
6325
|
return json2(call2({ op: "pty-list" }, "pty-list"));
|
|
6315
6326
|
},
|
|
@@ -6805,7 +6816,14 @@ var init_process_runtime = __esm({
|
|
|
6805
6816
|
O_ACCMODE5 = 3;
|
|
6806
6817
|
O_DIRECTORY2 = 65536;
|
|
6807
6818
|
accessMode = (access) => access === "read" ? O_RDONLY2 : access === "write" ? O_WRONLY3 : O_RDWR3;
|
|
6808
|
-
PLACED = /* @__PURE__ */ new Set([
|
|
6819
|
+
PLACED = /* @__PURE__ */ new Set([
|
|
6820
|
+
"stream",
|
|
6821
|
+
"file",
|
|
6822
|
+
"socket",
|
|
6823
|
+
"clipboard",
|
|
6824
|
+
"embedder",
|
|
6825
|
+
"sealed"
|
|
6826
|
+
]);
|
|
6809
6827
|
GLUE_TRAILER = [
|
|
6810
6828
|
"if (typeof ENV !== 'undefined') Object.assign(ENV, Module.sliccEnv);",
|
|
6811
6829
|
"if (typeof thisProgram !== 'undefined' && Module.thisProgram === '') thisProgram = '';",
|
|
@@ -7926,6 +7944,7 @@ var init_js_kernel = __esm({
|
|
|
7926
7944
|
"fd-write",
|
|
7927
7945
|
"fd-close",
|
|
7928
7946
|
"fd-open-clipboard",
|
|
7947
|
+
"fd-open-embedder",
|
|
7929
7948
|
"net-ws-ready",
|
|
7930
7949
|
"sock-tls",
|
|
7931
7950
|
"sock-tls-upgrade",
|
|
@@ -8261,6 +8280,7 @@ function* lookup(abs) {
|
|
|
8261
8280
|
if (DEVICES2.includes(name2)) return { kind: "device" };
|
|
8262
8281
|
if (name2 === "tty") return { kind: "tty" };
|
|
8263
8282
|
if (name2 === "clipboard") return { kind: "clipboard" };
|
|
8283
|
+
if (name2 === "embedder") return { kind: "embedder" };
|
|
8264
8284
|
if (name2 === "sealed") return { kind: "sealed" };
|
|
8265
8285
|
const std = STDIO.indexOf(name2);
|
|
8266
8286
|
if (std >= 0) return { kind: "link", target: `${SELF_FD}/${std}`, fd: std };
|
|
@@ -8317,7 +8337,8 @@ function* fdTarget(fd, path) {
|
|
|
8317
8337
|
if (info.kind === "file") return (yield { op: "fd-vfs-stat", fd }).path;
|
|
8318
8338
|
if (info.terminal) return info.terminal;
|
|
8319
8339
|
if (info.meta && "device" in info.meta) return `/dev/${info.meta.device}`;
|
|
8320
|
-
if (info.kind === "clipboard" || info.kind === "sealed"
|
|
8340
|
+
if (info.kind === "clipboard" || info.kind === "sealed" || info.kind === "embedder")
|
|
8341
|
+
return `/dev/${info.kind}`;
|
|
8321
8342
|
return `${info.kind === "socket" ? "socket" : "pipe"}:[${fd}]`;
|
|
8322
8343
|
}
|
|
8323
8344
|
function devFdStat(fd) {
|
|
@@ -8334,6 +8355,7 @@ function* devStat(abs, follow3) {
|
|
|
8334
8355
|
case "device":
|
|
8335
8356
|
case "tty":
|
|
8336
8357
|
case "clipboard":
|
|
8358
|
+
case "embedder":
|
|
8337
8359
|
case "sealed":
|
|
8338
8360
|
return nodeStat(CHAR | 438);
|
|
8339
8361
|
case "terminal":
|
|
@@ -8379,7 +8401,18 @@ function* devReaddir(abs) {
|
|
|
8379
8401
|
if (node.kind !== "dir") throw new JsCallError("ENOTDIR", abs);
|
|
8380
8402
|
const names = yield { op: "fd-tty-names" };
|
|
8381
8403
|
const ttys = names.filter((n) => /^\/dev\/tty\d+$/.test(n)).map((n) => n.slice(5));
|
|
8382
|
-
return [
|
|
8404
|
+
return [
|
|
8405
|
+
...DEVICES2,
|
|
8406
|
+
"clipboard",
|
|
8407
|
+
"embedder",
|
|
8408
|
+
"sealed",
|
|
8409
|
+
"tty",
|
|
8410
|
+
"fd",
|
|
8411
|
+
"pts",
|
|
8412
|
+
"shm",
|
|
8413
|
+
...STDIO,
|
|
8414
|
+
...ttys
|
|
8415
|
+
].sort();
|
|
8383
8416
|
}
|
|
8384
8417
|
function* aliasOf(fd, abs, o) {
|
|
8385
8418
|
const info = yield* fdInfo(fd, abs);
|
|
@@ -8420,6 +8453,11 @@ function* opened(abs, o) {
|
|
|
8420
8453
|
fd: yield { op: "fd-open-clipboard", flags: accessFlags(o) },
|
|
8421
8454
|
file: false
|
|
8422
8455
|
};
|
|
8456
|
+
case "embedder":
|
|
8457
|
+
return {
|
|
8458
|
+
fd: yield { op: "fd-open-embedder", flags: accessFlags(o) },
|
|
8459
|
+
file: false
|
|
8460
|
+
};
|
|
8423
8461
|
case "sealed":
|
|
8424
8462
|
return { fd: yield { op: "fd-open-sealed", flags: accessFlags(o) }, file: false };
|
|
8425
8463
|
case "terminal": {
|
|
@@ -8611,6 +8649,7 @@ var init_js_dev = __esm({
|
|
|
8611
8649
|
"device",
|
|
8612
8650
|
"tty",
|
|
8613
8651
|
"clipboard",
|
|
8652
|
+
"embedder",
|
|
8614
8653
|
"sealed"
|
|
8615
8654
|
]);
|
|
8616
8655
|
}
|
|
@@ -8886,7 +8925,7 @@ function deviceOf(path) {
|
|
|
8886
8925
|
}
|
|
8887
8926
|
function namedDevice(path) {
|
|
8888
8927
|
if (deviceOf(path) || stdioAlias(path) !== void 0) return true;
|
|
8889
|
-
return path
|
|
8928
|
+
return NAMED_PATHS.has(path);
|
|
8890
8929
|
}
|
|
8891
8930
|
function within(path, root) {
|
|
8892
8931
|
return path === root || path.startsWith(root === "/" ? "/" : `${root}/`);
|
|
@@ -8959,7 +8998,7 @@ function promoteRequest(fd, f, handed) {
|
|
|
8959
8998
|
...f.buffer.handle !== void 0 && f.ino !== void 0 ? { ino: f.ino } : {}
|
|
8960
8999
|
};
|
|
8961
9000
|
}
|
|
8962
|
-
var SYNTHETIC_DIRS2, O_NONBLOCK2, O_WRONLY5, O_RDWR5, O_APPEND3, SEALED_PATH2, CLIPBOARD_PATH2, WasiFds, GEN2;
|
|
9001
|
+
var SYNTHETIC_DIRS2, O_NONBLOCK2, O_WRONLY5, O_RDWR5, O_APPEND3, SEALED_PATH2, CLIPBOARD_PATH2, EMBEDDER_PATH2, NAMED_PATHS, WasiFds, GEN2;
|
|
8963
9002
|
var init_wasi_fds = __esm({
|
|
8964
9003
|
"src/process/wasi/wasi-fds.ts"() {
|
|
8965
9004
|
"use strict";
|
|
@@ -8976,6 +9015,13 @@ var init_wasi_fds = __esm({
|
|
|
8976
9015
|
O_APPEND3 = 1024;
|
|
8977
9016
|
SEALED_PATH2 = "/dev/sealed";
|
|
8978
9017
|
CLIPBOARD_PATH2 = "/dev/clipboard";
|
|
9018
|
+
EMBEDDER_PATH2 = "/dev/embedder";
|
|
9019
|
+
NAMED_PATHS = /* @__PURE__ */ new Set([
|
|
9020
|
+
SEALED_PATH2,
|
|
9021
|
+
CLIPBOARD_PATH2,
|
|
9022
|
+
EMBEDDER_PATH2,
|
|
9023
|
+
"/dev/tty"
|
|
9024
|
+
]);
|
|
8979
9025
|
WasiFds = class {
|
|
8980
9026
|
table = /* @__PURE__ */ new Map();
|
|
8981
9027
|
buffers = /* @__PURE__ */ new Map();
|
|
@@ -9588,7 +9634,7 @@ var init_wasi_fds = __esm({
|
|
|
9588
9634
|
return joined2.split("/").includes("..") ? physical(this.fs, joined2) : normalize(joined2);
|
|
9589
9635
|
}
|
|
9590
9636
|
openKernelDevice(path, oflags, fdflags, rights) {
|
|
9591
|
-
const { openSealed, openClipboard, openTty } = this.kernel.sys;
|
|
9637
|
+
const { openSealed, openClipboard, openEmbedder, openTty } = this.kernel.sys;
|
|
9592
9638
|
const nonblock = (fdflags & FDFLAGS.NONBLOCK) !== 0;
|
|
9593
9639
|
let fd;
|
|
9594
9640
|
let kind;
|
|
@@ -9598,6 +9644,9 @@ var init_wasi_fds = __esm({
|
|
|
9598
9644
|
} else if (path === CLIPBOARD_PATH2 && openClipboard) {
|
|
9599
9645
|
fd = this.openCharDevice(openClipboard, oflags, rights);
|
|
9600
9646
|
kind = "clipboard";
|
|
9647
|
+
} else if (path === EMBEDDER_PATH2 && openEmbedder) {
|
|
9648
|
+
fd = this.openCharDevice(openEmbedder, oflags, rights);
|
|
9649
|
+
kind = "embedder";
|
|
9601
9650
|
} else if (path === "/dev/tty" || /^\/dev\/tty\d+$/.test(path)) {
|
|
9602
9651
|
const exclusive = (oflags & OFLAGS.CREAT) !== 0 && (oflags & OFLAGS.EXCL) !== 0;
|
|
9603
9652
|
try {
|
|
@@ -10799,6 +10848,7 @@ function kernelFiletype(kind) {
|
|
|
10799
10848
|
case "tty":
|
|
10800
10849
|
case "sealed":
|
|
10801
10850
|
case "clipboard":
|
|
10851
|
+
case "embedder":
|
|
10802
10852
|
return { filetype: FILETYPE.CHARACTER_DEVICE, seeks: false };
|
|
10803
10853
|
case "device":
|
|
10804
10854
|
return { filetype: FILETYPE.CHARACTER_DEVICE, seeks: true };
|
|
@@ -11876,7 +11926,7 @@ var init_wasi_host = __esm({
|
|
|
11876
11926
|
return gone2 ? { ...out, nlink: 0n } : out;
|
|
11877
11927
|
}
|
|
11878
11928
|
synthetic(path) {
|
|
11879
|
-
return deviceOf(path) !== void 0 || path === SEALED_PATH2 && !!this.o.kernel.sys.openSealed || path === CLIPBOARD_PATH2 && !!this.o.kernel.sys.openClipboard;
|
|
11929
|
+
return deviceOf(path) !== void 0 || path === SEALED_PATH2 && !!this.o.kernel.sys.openSealed || path === CLIPBOARD_PATH2 && !!this.o.kernel.sys.openClipboard || path === EMBEDDER_PATH2 && !!this.o.kernel.sys.openEmbedder;
|
|
11880
11930
|
}
|
|
11881
11931
|
linkedDev(path, follow3) {
|
|
11882
11932
|
if (!follow3) return void 0;
|
|
@@ -16646,7 +16696,8 @@ function serveRequest(tls) {
|
|
|
16646
16696
|
...tls.requestCert ? { requestCert: true } : {},
|
|
16647
16697
|
...tls.rejectUnauthorized === false ? { rejectUnauthorized: false } : {},
|
|
16648
16698
|
...tls.alpn ? { alpn: [...tls.alpn] } : {},
|
|
16649
|
-
...tls.handshakeTimeout !== void 0 ? { handshakeTimeout: tls.handshakeTimeout } : {}
|
|
16699
|
+
...tls.handshakeTimeout !== void 0 ? { handshakeTimeout: tls.handshakeTimeout } : {},
|
|
16700
|
+
...tls.keylog === true ? { keylog: true } : {}
|
|
16650
16701
|
};
|
|
16651
16702
|
}
|
|
16652
16703
|
function servedOf(r) {
|
|
@@ -16656,9 +16707,13 @@ function servedOf(r) {
|
|
|
16656
16707
|
path: "kernel",
|
|
16657
16708
|
...authorizationError ? { authorizationError } : {},
|
|
16658
16709
|
peerCertificates: Object.freeze(r.peerCertificates.map(fromBase64)),
|
|
16659
|
-
cipher: Object.freeze({ ...r.cipher })
|
|
16710
|
+
cipher: Object.freeze({ ...r.cipher }),
|
|
16711
|
+
...keylogOf(r.keylog)
|
|
16660
16712
|
});
|
|
16661
16713
|
}
|
|
16714
|
+
function keylogOf(lines) {
|
|
16715
|
+
return lines ? { keylog: Object.freeze([...lines]) } : {};
|
|
16716
|
+
}
|
|
16662
16717
|
function clientCert(tls, what = "connect") {
|
|
16663
16718
|
if (tls.pfx !== void 0) {
|
|
16664
16719
|
throw new JsCallError("ENOTSUP", what, "pfx is not supported: pass cert and key");
|
|
@@ -16679,6 +16734,7 @@ function tlsRequest(tls) {
|
|
|
16679
16734
|
...tls.rejectUnauthorized === false ? { insecure: true } : {},
|
|
16680
16735
|
...tls.sni === false ? { sni: false } : {},
|
|
16681
16736
|
...tls.checkHostname === false ? { checkHostname: false } : {},
|
|
16737
|
+
...tls.keylog === true ? { keylog: true } : {},
|
|
16682
16738
|
...clientCert(tls)
|
|
16683
16739
|
};
|
|
16684
16740
|
}
|
|
@@ -16715,7 +16771,8 @@ function sessionOf(r) {
|
|
|
16715
16771
|
...r.authorizationError ? { authorizationError: r.authorizationError } : {},
|
|
16716
16772
|
servername: r.servername,
|
|
16717
16773
|
peerCertificates: Object.freeze((r.peerCertificates ?? []).map(fromBase64)),
|
|
16718
|
-
...controlsOf(r)
|
|
16774
|
+
...controlsOf(r),
|
|
16775
|
+
...keylogOf(r.keylog)
|
|
16719
16776
|
});
|
|
16720
16777
|
}
|
|
16721
16778
|
function withAlert(err) {
|