@ai-ecoverse/slicc-kernel 1.135.0 → 1.135.1

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.
@@ -6678,7 +6678,7 @@ var KERNEL_VERSION, OS_RELEASE;
6678
6678
  var init_version = __esm({
6679
6679
  "src/version.ts"() {
6680
6680
  "use strict";
6681
- KERNEL_VERSION = true ? "1.135.0" : "0.0.0-dev";
6681
+ KERNEL_VERSION = true ? "1.135.1" : "0.0.0-dev";
6682
6682
  OS_RELEASE = "6.0.0-slicc";
6683
6683
  }
6684
6684
  });
package/dist/node.js CHANGED
@@ -7467,7 +7467,7 @@ function satisfies(version, range2) {
7467
7467
  }
7468
7468
 
7469
7469
  // src/version.ts
7470
- var KERNEL_VERSION = true ? "1.135.0" : "0.0.0-dev";
7470
+ var KERNEL_VERSION = true ? "1.135.1" : "0.0.0-dev";
7471
7471
  var OS_RELEASE = "6.0.0-slicc";
7472
7472
  function procVersion() {
7473
7473
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -18527,6 +18527,42 @@ async function substituteHead(head, ask) {
18527
18527
  `, values };
18528
18528
  }
18529
18529
 
18530
+ // src/kernel/net/saslprep-tables.ts
18531
+ function ranges(text) {
18532
+ return text.split(" ").map((item) => {
18533
+ const [lo = "0", hi = lo] = item.split("-");
18534
+ return [Number.parseInt(lo, 16), Number.parseInt(hi, 16)];
18535
+ });
18536
+ }
18537
+ function within7(table, code) {
18538
+ let lo = 0;
18539
+ let hi = table.length - 1;
18540
+ while (lo <= hi) {
18541
+ const mid = lo + hi >> 1;
18542
+ const [from, to] = table[mid];
18543
+ if (code < from) hi = mid - 1;
18544
+ else if (code > to) lo = mid + 1;
18545
+ else return true;
18546
+ }
18547
+ return false;
18548
+ }
18549
+ var PROHIBITED_TEXT = "0-1F 7F-A0 340-341 6DD 70F 1680 180E 2000-200F 2028-202F 205F-2063 206A-206F 2FF0-2FFB 3000 D800-F8FF FDD0-FDEF FEFF FFF9-FFFF 1D173-1D17A 1FFFE-1FFFF 2FFFE-2FFFF 3FFFE-3FFFF 4FFFE-4FFFF 5FFFE-5FFFF 6FFFE-6FFFF 7FFFE-7FFFF 8FFFE-8FFFF 9FFFE-9FFFF AFFFE-AFFFF BFFFE-BFFFF CFFFE-CFFFF DFFFE-DFFFF E0001 E0020-E007F EFFFE-10FFFF";
18550
+ var UNASSIGNED_TEXT = "221 234-24F 2AE-2AF 2EF-2FF 350-35F 370-373 376-379 37B-37D 37F-383 38B 38D 3A2 3CF 3F7-3FF 487 4CF 4F6-4F7 4FA-4FF 510-530 557-558 560 588 58B-590 5A2 5BA 5C5-5CF 5EB-5EF 5F5-60B 60D-61A 61C-61E 620 63B-63F 656-65F 6EE-6EF 6FF 70E 72D-72F 74B-77F 7B2-900 904 93A-93B 94E-94F 955-957 971-980 984 98D-98E 991-992 9A9 9B1 9B3-9B5 9BA-9BB 9BD 9C5-9C6 9C9-9CA 9CE-9D6 9D8-9DB 9DE 9E4-9E5 9FB-A01 A03-A04 A0B-A0E A11-A12 A29 A31 A34 A37 A3A-A3B A3D A43-A46 A49-A4A A4E-A58 A5D A5F-A65 A75-A80 A84 A8C A8E A92 AA9 AB1 AB4 ABA-ABB AC6 ACA ACE-ACF AD1-ADF AE1-AE5 AF0-B00 B04 B0D-B0E B11-B12 B29 B31 B34-B35 B3A-B3B B44-B46 B49-B4A B4E-B55 B58-B5B B5E B62-B65 B71-B81 B84 B8B-B8D B91 B96-B98 B9B B9D BA0-BA2 BA5-BA7 BAB-BAD BB6 BBA-BBD BC3-BC5 BC9 BCE-BD6 BD8-BE6 BF3-C00 C04 C0D C11 C29 C34 C3A-C3D C45 C49 C4E-C54 C57-C5F C62-C65 C70-C81 C84 C8D C91 CA9 CB4 CBA-CBD CC5 CC9 CCE-CD4 CD7-CDD CDF CE2-CE5 CF0-D01 D04 D0D D11 D29 D3A-D3D D44-D45 D49 D4E-D56 D58-D5F D62-D65 D70-D81 D84 D97-D99 DB2 DBC DBE-DBF DC7-DC9 DCB-DCE DD5 DD7 DE0-DF1 DF5-E00 E3B-E3E E5C-E80 E83 E85-E86 E89 E8B-E8C E8E-E93 E98 EA0 EA4 EA6 EA8-EA9 EAC EBA EBE-EBF EC5 EC7 ECE-ECF EDA-EDB EDE-EFF F48 F6B-F70 F8C-F8F F98 FBD FCD-FCE FD0-FFF 1022 1028 102B 1033-1035 103A-103F 105A-109F 10C6-10CF 10F9-10FA 10FC-10FF 115A-115E 11A3-11A7 11FA-11FF 1207 1247 1249 124E-124F 1257 1259 125E-125F 1287 1289 128E-128F 12AF 12B1 12B6-12B7 12BF 12C1 12C6-12C7 12CF 12D7 12EF 130F 1311 1316-1317 131F 1347 135B-1360 137D-139F 13F5-1400 1677-167F 169D-169F 16F1-16FF 170D 1715-171F 1737-173F 1754-175F 176D 1771 1774-177F 17DD-17DF 17EA-17FF 180F 181A-181F 1878-187F 18AA-1DFF 1E9C-1E9F 1EFA-1EFF 1F16-1F17 1F1E-1F1F 1F46-1F47 1F4E-1F4F 1F58 1F5A 1F5C 1F5E 1F7E-1F7F 1FB5 1FC5 1FD4-1FD5 1FDC 1FF0-1FF1 1FF5 1FFF 2053-2056 2058-205E 2064-2069 2072-2073 208F-209F 20B2-20CF 20EB-20FF 213B-213C 214C-2152 2184-218F 23CF-23FF 2427-243F 244B-245F 24FF 2614-2615 2618 267E-267F 268A-2700 2705 270A-270B 2728 274C 274E 2753-2755 2757 275F-2760 2795-2797 27B0 27BF-27CF 27EC-27EF 2B00-2E7F 2E9A 2EF4-2EFF 2FD6-2FEF 2FFC-2FFF 3040 3097-3098 3100-3104 312D-3130 318F 31B8-31EF 321D-321F 3244-3250 327C-327E 32CC-32CF 32FF 3377-337A 33DE-33DF 33FF 4DB6-4DFF 9FA6-9FFF A48D-A48F A4C7-ABFF D7A4-D7FF FA2E-FA2F FA6B-FAFF FB07-FB12 FB18-FB1C FB37 FB3D FB3F FB42 FB45 FBB2-FBD2 FD40-FD4F FD90-FD91 FDC8-FDCF FDFD-FDFF FE10-FE1F FE24-FE2F FE47-FE48 FE53 FE67 FE6C-FE6F FE75 FEFD-FEFE FF00 FFBF-FFC1 FFC8-FFC9 FFD0-FFD1 FFD8-FFD9 FFDD-FFDF FFE7 FFEF-FFF8 10000-102FF 1031F 10324-1032F 1034B-103FF 10426-10427 1044E-1CFFF 1D0F6-1D0FF 1D127-1D129 1D1DE-1D3FF 1D455 1D49D 1D4A0-1D4A1 1D4A3-1D4A4 1D4A7-1D4A8 1D4AD 1D4BA 1D4BC 1D4C1 1D4C4 1D506 1D50B-1D50C 1D515 1D51D 1D53A 1D53F 1D545 1D547-1D549 1D551 1D6A4-1D6A7 1D7CA-1D7CD 1D800-1FFFD 2A6D7-2F7FF 2FA1E-2FFFD 30000-3FFFD 40000-4FFFD 50000-5FFFD 60000-6FFFD 70000-7FFFD 80000-8FFFD 90000-9FFFD A0000-AFFFD B0000-BFFFD C0000-CFFFD D0000-DFFFD E0000 E0002-E001F E0080-EFFFD";
18551
+ var RANDAL_TEXT = "5BE 5C0 5C3 5D0-5EA 5F0-5F4 61B 61F 621-63A 640-64A 66D-66F 671-6D5 6DD 6E5-6E6 6FA-6FE 700-70D 710 712-72C 780-7A5 7B1 200F FB1D FB1F-FB28 FB2A-FB36 FB38-FB3C FB3E FB40-FB41 FB43-FB44 FB46-FBB1 FBD3-FD3D FD50-FD8F FD92-FDC7 FDF0-FDFC FE70-FE74 FE76-FEFC";
18552
+ var LCAT_TEXT = "41-5A 61-7A AA B5 BA C0-D6 D8-F6 F8-220 222-233 250-2AD 2B0-2B8 2BB-2C1 2D0-2D1 2E0-2E4 2EE 37A 386 388-38A 38C 38E-3A1 3A3-3CE 3D0-3F5 400-482 48A-4CE 4D0-4F5 4F8-4F9 500-50F 531-556 559-55F 561-587 589 903 905-939 93D-940 949-94C 950 958-961 964-970 982-983 985-98C 98F-990 993-9A8 9AA-9B0 9B2 9B6-9B9 9BE-9C0 9C7-9C8 9CB-9CC 9D7 9DC-9DD 9DF-9E1 9E6-9F1 9F4-9FA A05-A0A A0F-A10 A13-A28 A2A-A30 A32-A33 A35-A36 A38-A39 A3E-A40 A59-A5C A5E A66-A6F A72-A74 A83 A85-A8B A8D A8F-A91 A93-AA8 AAA-AB0 AB2-AB3 AB5-AB9 ABD-AC0 AC9 ACB-ACC AD0 AE0 AE6-AEF B02-B03 B05-B0C B0F-B10 B13-B28 B2A-B30 B32-B33 B36-B39 B3D-B3E B40 B47-B48 B4B-B4C B57 B5C-B5D B5F-B61 B66-B70 B83 B85-B8A B8E-B90 B92-B95 B99-B9A B9C B9E-B9F BA3-BA4 BA8-BAA BAE-BB5 BB7-BB9 BBE-BBF BC1-BC2 BC6-BC8 BCA-BCC BD7 BE7-BF2 C01-C03 C05-C0C C0E-C10 C12-C28 C2A-C33 C35-C39 C41-C44 C60-C61 C66-C6F C82-C83 C85-C8C C8E-C90 C92-CA8 CAA-CB3 CB5-CB9 CBE CC0-CC4 CC7-CC8 CCA-CCB CD5-CD6 CDE CE0-CE1 CE6-CEF D02-D03 D05-D0C D0E-D10 D12-D28 D2A-D39 D3E-D40 D46-D48 D4A-D4C D57 D60-D61 D66-D6F D82-D83 D85-D96 D9A-DB1 DB3-DBB DBD DC0-DC6 DCF-DD1 DD8-DDF DF2-DF4 E01-E30 E32-E33 E40-E46 E4F-E5B E81-E82 E84 E87-E88 E8A E8D E94-E97 E99-E9F EA1-EA3 EA5 EA7 EAA-EAB EAD-EB0 EB2-EB3 EBD EC0-EC4 EC6 ED0-ED9 EDC-EDD F00-F17 F1A-F34 F36 F38 F3E-F47 F49-F6A F7F F85 F88-F8B FBE-FC5 FC7-FCC FCF 1000-1021 1023-1027 1029-102A 102C 1031 1038 1040-1057 10A0-10C5 10D0-10F8 10FB 1100-1159 115F-11A2 11A8-11F9 1200-1206 1208-1246 1248 124A-124D 1250-1256 1258 125A-125D 1260-1286 1288 128A-128D 1290-12AE 12B0 12B2-12B5 12B8-12BE 12C0 12C2-12C5 12C8-12CE 12D0-12D6 12D8-12EE 12F0-130E 1310 1312-1315 1318-131E 1320-1346 1348-135A 1361-137C 13A0-13F4 1401-1676 1681-169A 16A0-16F0 1700-170C 170E-1711 1720-1731 1735-1736 1740-1751 1760-176C 176E-1770 1780-17B6 17BE-17C5 17C7-17C8 17D4-17DA 17DC 17E0-17E9 1810-1819 1820-1877 1880-18A8 1E00-1E9B 1EA0-1EF9 1F00-1F15 1F18-1F1D 1F20-1F45 1F48-1F4D 1F50-1F57 1F59 1F5B 1F5D 1F5F-1F7D 1F80-1FB4 1FB6-1FBC 1FBE 1FC2-1FC4 1FC6-1FCC 1FD0-1FD3 1FD6-1FDB 1FE0-1FEC 1FF2-1FF4 1FF6-1FFC 200E 2071 207F 2102 2107 210A-2113 2115 2119-211D 2124 2126 2128 212A-212D 212F-2131 2133-2139 213D-213F 2145-2149 2160-2183 2336-237A 2395 249C-24E9 3005-3007 3021-3029 3031-3035 3038-303C 3041-3096 309D-309F 30A1-30FA 30FC-30FF 3105-312C 3131-318E 3190-31B7 31F0-321C 3220-3243 3260-327B 327F-32B0 32C0-32CB 32D0-32FE 3300-3376 337B-33DD 33E0-33FE 3400-4DB5 4E00-9FA5 A000-A48C AC00-D7A3 D800-FA2D FA30-FA6A FB00-FB06 FB13-FB17 FF21-FF3A FF41-FF5A FF66-FFBE FFC2-FFC7 FFCA-FFCF FFD2-FFD7 FFDA-FFDC 10300-1031E 10320-10323 10330-1034A 10400-10425 10428-1044D 1D000-1D0F5 1D100-1D126 1D12A-1D166 1D16A-1D172 1D183-1D184 1D18C-1D1A9 1D1AE-1D1DD 1D400-1D454 1D456-1D49C 1D49E-1D49F 1D4A2 1D4A5-1D4A6 1D4A9-1D4AC 1D4AE-1D4B9 1D4BB 1D4BD-1D4C0 1D4C2-1D4C3 1D4C5-1D505 1D507-1D50A 1D50D-1D514 1D516-1D51C 1D51E-1D539 1D53B-1D53E 1D540-1D544 1D546 1D54A-1D550 1D552-1D6A3 1D6A8-1D7C9 20000-2A6D6 2F800-2FA1D F0000-FFFFD 100000-10FFFD";
18553
+ var PROHIBITED = ranges(PROHIBITED_TEXT);
18554
+ var UNASSIGNED = ranges(UNASSIGNED_TEXT);
18555
+ var RANDAL = ranges(RANDAL_TEXT);
18556
+ var LCAT = ranges(LCAT_TEXT);
18557
+ function prepFails(prepared) {
18558
+ const codes = Array.from(prepared, (ch) => ch.codePointAt(0) ?? 0);
18559
+ if (codes.length === 0) return true;
18560
+ if (codes.some((c) => within7(PROHIBITED, c) || within7(UNASSIGNED, c))) return true;
18561
+ if (!codes.some((c) => within7(RANDAL, c))) return false;
18562
+ if (codes.some((c) => within7(LCAT, c))) return true;
18563
+ return !within7(RANDAL, codes[0] ?? 0) || !within7(RANDAL, codes.at(-1) ?? 0);
18564
+ }
18565
+
18530
18566
  // src/kernel/net/sealed-scram.ts
18531
18567
  var encoder8 = new TextEncoder();
18532
18568
  function base64Bytes(text) {
@@ -18612,11 +18648,10 @@ async function scramKeys(password, x) {
18612
18648
  }
18613
18649
  var SPACES = /[\u00A0\u1680\u2000-\u200B\u202F\u205F\u3000]/g;
18614
18650
  var NOTHING2 = /\u00AD|\u034F|\u1806|[\u180B-\u180D]|\u200C|\u200D|\u2060|[\uFE00-\uFE0F]|\uFEFF/g;
18615
- var PROHIBITED = /[\u0000-\u001F\u007F-\u009F\uE000-\uF8FF\uFFFE\uFFFF]/;
18616
18651
  function saslprep(password) {
18617
- if (/^[\x20-\x7e]*$/.test(password)) return password;
18618
- const mapped = password.replace(SPACES, " ").replace(NOTHING2, "").normalize("NFKC");
18619
- return PROHIBITED.test(mapped) ? password : mapped;
18652
+ if (/^[\x00-\x7f]*$/.test(password)) return password;
18653
+ const mapped = password.replace(SPACES, " ").replace(NOTHING2, "");
18654
+ return prepFails(mapped) ? password : mapped.normalize("NFKC");
18620
18655
  }
18621
18656
  function sameBytes(a, b) {
18622
18657
  if (a.length !== b.length) return false;
@@ -20381,7 +20416,7 @@ function isMissing(err) {
20381
20416
  if (err?.code === "ENOENT") return true;
20382
20417
  return err instanceof Error && err.message.startsWith("ENOENT");
20383
20418
  }
20384
- function within7(path, root) {
20419
+ function within8(path, root) {
20385
20420
  return path === root || path.startsWith(root.endsWith("/") ? root : `${root}/`);
20386
20421
  }
20387
20422
  var VfsNode = class {
@@ -20817,12 +20852,12 @@ var VfsNodes = class {
20817
20852
  return node;
20818
20853
  }
20819
20854
  holds(prefix) {
20820
- for (const path of this.byPath.keys()) if (within7(path, prefix)) return true;
20855
+ for (const path of this.byPath.keys()) if (within8(path, prefix)) return true;
20821
20856
  return false;
20822
20857
  }
20823
20858
  writes(prefix) {
20824
20859
  for (const [path, node] of this.byPath)
20825
- if (node.writers > 0 && within7(path, prefix)) return true;
20860
+ if (node.writers > 0 && within8(path, prefix)) return true;
20826
20861
  return false;
20827
20862
  }
20828
20863
  closed(node, writable2 = false) {
@@ -20879,17 +20914,17 @@ var VfsNodes = class {
20879
20914
  this.byPath.get(path)?.reread();
20880
20915
  }
20881
20916
  rewrittenUnder(tree2) {
20882
- for (const [p, node] of this.byPath) if (within7(p, tree2)) node.reread();
20917
+ for (const [p, node] of this.byPath) if (within8(p, tree2)) node.reread();
20883
20918
  }
20884
20919
  doubted(path) {
20885
- for (const [p, node] of this.byPath) if (within7(p, path)) node.doubted();
20920
+ for (const [p, node] of this.byPath) if (within8(p, path)) node.doubted();
20886
20921
  }
20887
20922
  async flush(path) {
20888
- for (const [p, node] of this.byPath) if (within7(p, path)) await node.serial(() => node.flush());
20923
+ for (const [p, node] of this.byPath) if (within8(p, path)) await node.serial(() => node.flush());
20889
20924
  }
20890
20925
  async unlinking(path) {
20891
20926
  for (const [held, node] of [...this.byPath]) {
20892
- if (!within7(held, path)) continue;
20927
+ if (!within8(held, path)) continue;
20893
20928
  await node.serial(async () => {
20894
20929
  await Promise.all([this.keepsOnDisk || node.keep(), node.limit()]);
20895
20930
  });
@@ -20897,14 +20932,14 @@ var VfsNodes = class {
20897
20932
  }
20898
20933
  revoke(prefix) {
20899
20934
  for (const [path, node] of [...this.byPath]) {
20900
- if (!within7(path, prefix)) continue;
20935
+ if (!within8(path, prefix)) continue;
20901
20936
  node.revoke();
20902
20937
  this.forget(node);
20903
20938
  }
20904
20939
  }
20905
20940
  unlinked(path) {
20906
20941
  for (const [held, node] of [...this.byPath]) {
20907
- if (!within7(held, path) || this.byPath.get(held) !== node) continue;
20942
+ if (!within8(held, path) || this.byPath.get(held) !== node) continue;
20908
20943
  if (!this.dropName(held, node)) this.orphan(node);
20909
20944
  }
20910
20945
  }
@@ -20912,8 +20947,8 @@ var VfsNodes = class {
20912
20947
  if (from === to) return;
20913
20948
  const moved2 = [];
20914
20949
  for (const [p, node] of [...this.byPath]) {
20915
- if (within7(p, from)) moved2.push([p, node]);
20916
- else if (within7(p, to) && this.byPath.get(p) === node && !this.dropName(p, node)) {
20950
+ if (within8(p, from)) moved2.push([p, node]);
20951
+ else if (within8(p, to) && this.byPath.get(p) === node && !this.dropName(p, node)) {
20917
20952
  this.orphan(node);
20918
20953
  }
20919
20954
  }