Commit 09ba91f
Encode cageids to enable address translations:
* Encode arg cageid translation flag
* make it look not insane
* Changes post test runs.
* Reorganize docs and add clamping/stacking paragraphs (#711)
* reorganize docs, add image, add clamping/stacking paragraphs
* add link
* Update docs/internal/grates.md
Co-authored-by: Justin Cappos <justincappos@gmail.com>
* 3i comment updates
* more 3i comment updates
* index update
* grate changes: more on clamping, motivation
* resolve grate comments
* add examples and more on clamping
* Update wasmtime doc
* Update wasmtime
* update example
* update clamping section
* add clamping doc
* Update docs/internal/clamping.md
Co-authored-by: Justin Cappos <justincappos@gmail.com>
* Apply suggestion from @JustinCappos
Co-authored-by: Justin Cappos <justincappos@gmail.com>
* resolve some comments
* resolve some comments
* fix unclear memory comment
---------
Co-authored-by: Justin Cappos <justincappos@gmail.com>
Co-authored-by: Alice W <wenyaxuan0925@outlook.com>
* Force-link signal_callback export in crt1.c (#916)
Programs that never call sigaction() (e.g. kill.c) would not link in
libc_sigaction.o, so signal_callback was missing from the wasm exports.
The epoch-based signal handler in wasmtime looks up this export at
runtime, causing a panic when delivering signals to such programs.
Fix: add a __attribute__((used)) reference to signal_callback in crt1.c
so it is always exported from every wasm binary.
* refactor handler resolution logic to remove usage of operational_cageid in rawposix (#900)
* refactor traget cageid usage in 3i and rawposix
* Squashed commit of the following:
commit 5756372
Author: Nicholas Renner <nr2185@nyu.edu>
Date: Tue Mar 10 09:58:37 2026 -0400
Restore wasip linker for rust (#902)
* restore wasip linker for rust
* Deduplicate wasip1/lind environ linker functions, fix rustfmt
Merge add_environ_to_linker and add_wasi_compat_to_linker into a single
add_environ_funcs_to_linker that takes a module name parameter. Called
twice with "lind" and "wasi_snapshot_preview1" to register identical
implementations under both namespaces. Fixes cargo fmt lint failure.
commit fee8b37
Author: Nicholas Renner <nr2185@nyu.edu>
Date: Mon Mar 9 22:54:30 2026 -0400
Signal EINTR + Asyncify updates (349 update) (#906)
* update PR to integrated signal EINTR with lind-boot
* Remove spurious set_stack_pointer call in fork child path
The set_stack_pointer call was carried over from the old asyncify branch
but is not needed in the new architecture. The fork child's stack pointer
is correctly managed by the asyncify rewind mechanism. Calling
set_stack_pointer before the rewind interfered with the fork process,
causing all fork-based tests to deadlock/timeout.
* Rewrite eintr_fork_signal test to use spin loop instead of blocking read
The original test used alarm(1) + blocking read(pipe), but RawPOSIX's
read() calls host libc::read() directly, which blocks in the host kernel.
Since SIGALRM is delivered via epoch callback (which requires wasm to be
executing), the blocking read can never be interrupted. Rewrite to use a
spin loop that allows the epoch to fire and deliver the signal.
commit f15676e
Author: Alice Wen <40227173+Yaxuan-w@users.noreply.github.com>
Date: Mon Mar 9 21:28:46 2026 -0400
Implement structured exit status handling and correct POSIX wait status encoding (#910)
* Fix exit code handling to include signal termination
* Revert fs_call
* Remove redundant bit check
* Not using sleep to sync in test
commit f135811
Author: Nicholas Renner <nr2185@nyu.edu>
Date: Mon Mar 9 18:51:24 2026 -0400
determinize resolve test (#912)
commit a8798b6
Author: Alice Wen <40227173+Yaxuan-w@users.noreply.github.com>
Date: Mon Mar 9 17:58:01 2026 -0400
Fix exit code mismatch between wasmtime and lind-boot exit (#856)
* Fix exit code mismatch
* Update skipped list
* Skip test case
* Handle system err return
* Fix merge conflicts
commit 750ba9a
Author: Qianxi Chen <53324229+qianxichen233@users.noreply.github.com>
Date: Mon Mar 9 13:58:23 2026 -0400
unify execute_wasmtime and execute_with_lind (#903)
commit e5eb83c
Author: Qianxi Chen <53324229+qianxichen233@users.noreply.github.com>
Date: Mon Mar 9 13:57:55 2026 -0400
update wasm-opt for dylink support (#905)
commit 086224d
Author: Huong Hoang <68453624+celinehoang177@users.noreply.github.com>
Date: Mon Mar 9 12:10:52 2026 -0400
Replace hardcoded numbers in codebase with named constants (Rust + C) (#855)
* replace hardcoded numbers in codebase with named constants
* replace padding 0s with NOTUSED/UNUSED_ID/UNUSED_ARG
commit 89ef9bd
Author: Nicholas Renner <nr2185@nyu.edu>
Date: Mon Mar 9 11:18:37 2026 -0400
Fix remote DNS (#898)
* dns remote resolv
* add fionread
* lint
* Refine 3i get_handler and solve exec/exit/clone issue
* Fix exec
* update gitignore (#920)
* deps(gha)(deps): bump docker/metadata-action in /.github/workflows (#925)
* deps(gha)(deps): bump docker/build-push-action in /.github/workflows (#926)
* deps(gha)(deps): bump docker/setup-buildx-action in /.github/workflows (#928)
* deps(gha)(deps): bump zizmorcore/zizmor-action from 0.5.0 to 0.5.2 in /.github/workflows (#927)
* deps(gha)(deps): bump zizmorcore/zizmor-action in /.github/workflows
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.5.0 to 0.5.2.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](zizmorcore/zizmor-action@0dce257...71321a2)
---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
dependency-version: 0.5.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* add dedicated environment for zizmor compatibility
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Natasha Hemmings <discount.yoyos@gmail.com>
* Fix getaddrinfo() with PF_UNSPEC (#935)
* Fix getaddrinfo PF_UNSPEC: stub out sendmmsg for Lind-WASM
getaddrinfo() with PF_UNSPEC failed with "Temporary failure in name
resolution" because glibc's DNS resolver (res_send.c) tried to send
parallel A+AAAA queries using sendmmsg(), which is not implemented
in Lind. With __ASSUME_SENDMMSG defined, the fallback to individual
send() calls was compiled out, so the sendmmsg failure was fatal.
Fix:
- Stub __sendmmsg to return ENOSYS immediately (no syscall dispatch)
- Undefine __ASSUME_SENDMMSG in kernel-features.h so res_send.c
compiles in the fallback path that uses individual __send() calls
When sendmmsg returns ENOSYS, res_send.c sets have_sendmmsg=-1 and
falls through to try_send, which sends each DNS query individually.
Subsequent calls skip sendmmsg entirely.
Closes #934
* Add getaddrinfo PF_UNSPEC test
* make test failure return error code in make file to stop process (#936)
* make test failure return error code in make file to stop process
* Add deliberately failing ci test file
* intentional failing tests should now force E2E_STATUS=fail
* Skip ci-test file to prevent actual failures
* move test location to ci folder
* update test harness to include the ci folder
* change skipped test location for ci test
* Fix random_get: route through make_syscall instead of /dev/urandom (#940)
lind-boot chroots to lindfs where /dev/urandom doesn't exist,
causing a panic in random_get. Route through 3i make_syscall to
the existing getrandom_syscall handler (syscall 318) in rawposix.
Fixes #919
* Fix test output
* WIP : Glibc fixes to fix build errors and undefined symbol errors (#793)
* Added placeholder for libdl.a
* Added unwind_def object file for libc.a
* Updated s_frexpl.c with latest glibc code to fix the build error
* Disable compiler flags -mno-sse, -mno-mmx, -mfpmath-387 that are not supported by wasm and caused build errors
* Disable ELF symbol versioning and hidden visibility in glibc shared builds which caused undefined symbol error for pow etc
* Removed flags that is not supported in wasm
* resolve comments.
* Revert "Merge branch 'main' of github.com:Lind-Project/lind-wasm into encode-argid"
This reverts commit a758efd, reversing
changes made to 061322b.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Nicholas Renner <nr2185@nyu.edu>
Co-authored-by: Justin Cappos <justincappos@gmail.com>
Co-authored-by: Alice W <wenyaxuan0925@outlook.com>
Co-authored-by: Alice Wen <40227173+Yaxuan-w@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Natasha Hemmings <discount.yoyos@gmail.com>
Co-authored-by: Vidya Lakshmi Rajagopalan <vidyalakshmir@users.noreply.github.com>(arg, cageid) tuple independence from calling cages. (#913)1 parent d04cf8c commit 09ba91f
File tree
4 files changed
+192
-12
lines changed- src/glibc/lind_syscall
- tests/grate-tests
4 files changed
+192
-12
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
8 | 17 | | |
9 | 18 | | |
10 | 19 | | |
| |||
45 | 54 | | |
46 | 55 | | |
47 | 56 | | |
48 | | - | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
49 | 64 | | |
50 | 65 | | |
51 | 66 | | |
| |||
55 | 70 | | |
56 | 71 | | |
57 | 72 | | |
58 | | - | |
59 | | - | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
60 | 80 | | |
61 | | - | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
62 | 91 | | |
63 | 92 | | |
64 | 93 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
81 | 81 | | |
82 | 82 | | |
83 | 83 | | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
90 | 91 | | |
91 | 92 | | |
92 | 93 | | |
| |||
155 | 156 | | |
156 | 157 | | |
157 | 158 | | |
158 | | - | |
159 | | - | |
| 159 | + | |
| 160 | + | |
160 | 161 | | |
161 | 162 | | |
162 | 163 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
0 commit comments