Stop returning NOTCAPABLE errors from WASI calls. (#4666)
* Stop returning `NOTCAPABLE` errors from WASI calls. `ENOTCAPABLE` was an error code that is used as part of the rights system, from CloudABI. There is a set of flags associated with each file descriptor listing which operations can be performed with the file descriptor, and if an attempt is made to perform an operation with a file descriptor that isn't permitted by its rights flags, it fails with `ENOTCAPABLE`. WASI is removing the rights system. For example, WebAssembly/wasi-libc#294 removed support for translating `ENOTCAPABLE` into POSIX error codes, on the assumption that engines should stop using it. So as another step to migrating away from the rights system, remove uses of the `ENOTCAPABLE` error. * Update crates/wasi-common/src/file.rs Co-authored-by: Jamey Sharp <jamey@minilop.net> * Update crates/wasi-common/src/dir.rs Co-authored-by: Jamey Sharp <jamey@minilop.net> Co-authored-by: Jamey Sharp <jamey@minilop.net>
This commit is contained in:
@@ -30,7 +30,7 @@ unsafe fn try_read_file(dir_fd: wasi::Fd) {
|
||||
wasi::fd_read(fd, &[iovec])
|
||||
.expect_err("reading bytes from file should fail")
|
||||
.raw_error(),
|
||||
wasi::ERRNO_NOTCAPABLE
|
||||
wasi::ERRNO_BADF
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ unsafe fn test_truncation_rights(dir_fd: wasi::Fd) {
|
||||
wasi::path_open(dir_fd, 0, "file", wasi::OFLAGS_TRUNC, 0, 0, 0)
|
||||
.expect_err("truncating a file without path_filestat_set_size right")
|
||||
.raw_error(),
|
||||
wasi::ERRNO_NOTCAPABLE
|
||||
wasi::ERRNO_PERM
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user