@ai-ecoverse/slicc-kernel 1.135.5 → 1.135.7

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/dist/node.js CHANGED
@@ -7486,7 +7486,7 @@ function satisfies(version, range2) {
7486
7486
  }
7487
7487
 
7488
7488
  // src/version.ts
7489
- var KERNEL_VERSION = true ? "1.135.5" : "0.0.0-dev";
7489
+ var KERNEL_VERSION = true ? "1.135.7" : "0.0.0-dev";
7490
7490
  var OS_RELEASE = "6.0.0-slicc";
7491
7491
  function procVersion() {
7492
7492
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -2783,7 +2783,7 @@ var KERNEL_VERSION, OS_RELEASE;
2783
2783
  var init_version = __esm({
2784
2784
  "src/version.ts"() {
2785
2785
  "use strict";
2786
- KERNEL_VERSION = true ? "1.135.5" : "0.0.0-dev";
2786
+ KERNEL_VERSION = true ? "1.135.7" : "0.0.0-dev";
2787
2787
  OS_RELEASE = "6.0.0-slicc";
2788
2788
  }
2789
2789
  });
@@ -10533,6 +10533,9 @@ var init_wasi_host = __esm({
10533
10533
  else if (!o.bare) this.fds.setup(o.cwd, o.inherited ?? [], o.preopenRoot === true);
10534
10534
  this.listening = o.shared ? [] : this.fds.sockets();
10535
10535
  }
10536
+ fromCwd(raw) {
10537
+ return this.fds.cwd() === void 0 ? this.fds.resolve(3, `${this.cwd}/${raw}`) : this.fds.resolve(3, raw);
10538
+ }
10536
10539
  get cwd() {
10537
10540
  return this.fds.cwd() ?? this.startCwd;
10538
10541
  }
@@ -10545,7 +10548,7 @@ var init_wasi_host = __esm({
10545
10548
  const raw = mem.string(p, l);
10546
10549
  if (raw === "") throw new WasiError("ENOENT");
10547
10550
  if (raw.startsWith("/")) return fds.resolve(3, raw);
10548
- return dirfd === AT_FDCWD2 ? fds.resolve(3, `${this.cwd}/${raw}`) : fds.resolve(dirfd, raw);
10551
+ return dirfd === AT_FDCWD2 ? this.fromCwd(raw) : fds.resolve(dirfd, raw);
10549
10552
  };
10550
10553
  return (...args) => {
10551
10554
  const [srcDirfd, sp, sl, dstDirfd, dp, dl, mode, flags] = args;
@@ -10705,7 +10708,7 @@ var init_wasi_host = __esm({
10705
10708
  if (!mkfifo) return E.NOSYS;
10706
10709
  const raw = mem.string(p, l);
10707
10710
  if (raw === "") throw new WasiError("ENOENT");
10708
- const path = dirfd === AT_FDCWD2 && !raw.startsWith("/") ? fds.resolve(3, `${this.cwd}/${raw}`) : at(dirfd, p, l);
10711
+ const path = dirfd === AT_FDCWD2 && !raw.startsWith("/") ? this.fromCwd(raw) : at(dirfd, p, l);
10709
10712
  const umask = this.umasks.get();
10710
10713
  const want = mode & 4095 & ~umask;
10711
10714
  mkfifo.call(this.o.fs, path, want);
@@ -10810,12 +10813,18 @@ var init_wasi_host = __esm({
10810
10813
  if (errno2 === E.SUCCESS && disposition === SIG_IGN) this.sigmask?.discard(sig);
10811
10814
  return errno2;
10812
10815
  },
10813
- sigmask_set: (how, lo, hi, old) => this.sigmask ? this.sigmask.set(how, lo, hi, (oldLo, oldHi) => {
10814
- if (old === 0) return;
10815
- const view = mem.view();
10816
- view.setUint32(old, oldLo, true);
10817
- view.setUint32(old + 4, oldHi, true);
10818
- }) : E.NOSYS,
10816
+ sigmask_set: (how, lo, hi, old) => {
10817
+ if (!this.sigmask) return E.NOSYS;
10818
+ if (how === SIG_UNBLOCK || how === SIG_SETMASK) {
10819
+ this.signals?.unblocking(how === SIG_UNBLOCK ? lo << 1 : ~(lo << 1));
10820
+ }
10821
+ return this.sigmask.set(how, lo, hi, (oldLo, oldHi) => {
10822
+ if (old === 0) return;
10823
+ const view = mem.view();
10824
+ view.setUint32(old, oldLo, true);
10825
+ view.setUint32(old + 4, oldHi, true);
10826
+ });
10827
+ },
10819
10828
  sigmask_poll: (lo, hi, inPtr, outPtr, n, nevents) => this.sigmask ? this.maskedPoll(this.sigmask, [lo, hi], [inPtr, outPtr, n, nevents]) : E.NOSYS,
10820
10829
  sigmask_epoll_wait: (lo, hi, epfd, events, max, timeout, nevents) => this.sigmask ? this.maskedEpoll(
10821
10830
  this.sigmask,
@@ -12737,6 +12746,10 @@ var init_wasi_signals = __esm({
12737
12746
  nodefer = 0;
12738
12747
  running = 0;
12739
12748
  deferred = 0;
12749
+ lifted = 0;
12750
+ unblocking(bits) {
12751
+ this.lifted |= bits & this.running;
12752
+ }
12740
12753
  defaults = 0;
12741
12754
  nocldwait = false;
12742
12755
  fallBack;
@@ -12807,15 +12820,18 @@ var init_wasi_signals = __esm({
12807
12820
  return;
12808
12821
  }
12809
12822
  const bit = sigbit(sig);
12810
- if ((this.running & bit) !== 0 && (this.nodefer & bit) === 0) {
12823
+ if ((this.running & bit) !== 0 && ((this.nodefer | this.lifted) & bit) === 0) {
12811
12824
  this.deferred |= bit;
12812
12825
  return;
12813
12826
  }
12827
+ const outer = { running: this.running & bit, lifted: this.lifted & bit };
12814
12828
  this.running |= bit;
12829
+ this.lifted &= ~bit;
12815
12830
  try {
12816
12831
  this.run(handler, sig);
12817
12832
  } finally {
12818
- this.running &= ~bit;
12833
+ this.running = this.running & ~bit | outer.running;
12834
+ this.lifted = this.lifted & ~bit | outer.lifted;
12819
12835
  }
12820
12836
  if ((this.deferred & bit) === 0) return;
12821
12837
  this.deferred &= ~bit;