| { | ||
| "git": { | ||
| "sha1": "cb01fbe4660844b67fdd4eee2a5f769518f6a655" | ||
| "sha1": "5ce17db768040400846f92c9313ba29daa21ab3e" | ||
| }, | ||
| "path_in_vcs": "" | ||
| } |
+43
-37
@@ -127,5 +127,5 @@ # This file is automatically @generated by Cargo. | ||
| name = "compiler_builtins" | ||
| version = "0.1.151" | ||
| version = "0.1.155" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "abc30f1766d387c35f2405e586d3e7a88230dc728ff78cd1d0bc59ae0b63154b" | ||
| checksum = "341e0830ca6170a4fcf02e92e57daf4b6f10142d48da32a547023867a6c8b35e" | ||
| dependencies = [ | ||
@@ -232,5 +232,5 @@ "rustc-std-workspace-core", | ||
| name = "errno" | ||
| version = "0.3.10" | ||
| version = "0.3.11" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" | ||
| checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" | ||
| dependencies = [ | ||
@@ -249,5 +249,5 @@ "libc", | ||
| name = "flate2" | ||
| version = "1.1.0" | ||
| version = "1.1.1" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "11faaf5a5236997af9848be0bef4db95824b1d534ebc64d0f0c6cf3e67bd38dc" | ||
| checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" | ||
| dependencies = [ | ||
@@ -337,10 +337,10 @@ "crc32fast", | ||
| name = "getrandom" | ||
| version = "0.3.1" | ||
| version = "0.3.2" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" | ||
| checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" | ||
| dependencies = [ | ||
| "cfg-if", | ||
| "libc", | ||
| "r-efi", | ||
| "wasi", | ||
| "windows-targets", | ||
| ] | ||
@@ -350,5 +350,5 @@ | ||
| name = "half" | ||
| version = "2.5.0" | ||
| version = "2.6.0" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "7db2ff139bba50379da6aa0766b52fdcb62cb5b263009b09ed58ba604e14bbd1" | ||
| checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" | ||
| dependencies = [ | ||
@@ -423,11 +423,11 @@ "cfg-if", | ||
| name = "libc" | ||
| version = "0.2.171" | ||
| version = "0.2.172" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6" | ||
| checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" | ||
| [[package]] | ||
| name = "linux-raw-sys" | ||
| version = "0.9.3" | ||
| version = "0.9.4" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "fe7db12097d22ec582439daf8618b8fdd1a7bef6270e9af3b1ebcd30893cf413" | ||
| checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" | ||
| dependencies = [ | ||
@@ -450,5 +450,5 @@ "compiler_builtins", | ||
| name = "log" | ||
| version = "0.4.26" | ||
| version = "0.4.27" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" | ||
| checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" | ||
@@ -472,5 +472,5 @@ [[package]] | ||
| name = "miniz_oxide" | ||
| version = "0.8.5" | ||
| version = "0.8.8" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "8e3e04debbb59698c15bacbb6d93584a8c0ca9cc3213cb423d31f760d8843ce5" | ||
| checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" | ||
| dependencies = [ | ||
@@ -491,5 +491,5 @@ "adler2", | ||
| name = "once_cell" | ||
| version = "1.21.1" | ||
| version = "1.21.3" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "d75b0bedcc4fe52caa0e03d9f1151a323e4aa5e2d78ba3580400cd3c9e2bc4bc" | ||
| checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" | ||
@@ -573,5 +573,5 @@ [[package]] | ||
| name = "proc-macro2" | ||
| version = "1.0.94" | ||
| version = "1.0.95" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" | ||
| checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" | ||
| dependencies = [ | ||
@@ -591,2 +591,8 @@ "unicode-ident", | ||
| [[package]] | ||
| name = "r-efi" | ||
| version = "5.2.0" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" | ||
| [[package]] | ||
| name = "rayon" | ||
@@ -613,5 +619,5 @@ version = "1.10.0" | ||
| name = "redox_syscall" | ||
| version = "0.5.10" | ||
| version = "0.5.11" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1" | ||
| checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" | ||
| dependencies = [ | ||
@@ -664,5 +670,5 @@ "bitflags 2.9.0", | ||
| name = "rustix" | ||
| version = "1.0.2" | ||
| version = "1.0.5" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "f7178faa4b75a30e269c71e61c353ce2748cf3d76f0c44c393f4e60abf49b825" | ||
| checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" | ||
| dependencies = [ | ||
@@ -678,3 +684,3 @@ "bitflags 2.9.0", | ||
| name = "rustix" | ||
| version = "1.0.5" | ||
| version = "1.0.6" | ||
| dependencies = [ | ||
@@ -793,5 +799,5 @@ "bitflags 2.9.0", | ||
| name = "smallvec" | ||
| version = "1.14.0" | ||
| version = "1.15.0" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" | ||
| checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" | ||
@@ -817,5 +823,5 @@ [[package]] | ||
| name = "tempfile" | ||
| version = "3.19.0" | ||
| version = "3.19.1" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "488960f40a3fd53d72c2a29a58722561dee8afdd175bd88e3db4677d7b2ba600" | ||
| checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" | ||
| dependencies = [ | ||
@@ -825,3 +831,3 @@ "fastrand", | ||
| "once_cell", | ||
| "rustix 1.0.2", | ||
| "rustix 1.0.5", | ||
| "windows-sys", | ||
@@ -864,5 +870,5 @@ ] | ||
| name = "wasi" | ||
| version = "0.13.3+wasi-0.2.2" | ||
| version = "0.14.2+wasi-0.2.4" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2" | ||
| checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" | ||
| dependencies = [ | ||
@@ -1046,7 +1052,7 @@ "wit-bindgen-rt", | ||
| name = "wit-bindgen-rt" | ||
| version = "0.33.0" | ||
| version = "0.39.0" | ||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||
| checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" | ||
| checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" | ||
| dependencies = [ | ||
| "bitflags 2.9.0", | ||
| ] |
+1
-1
@@ -16,3 +16,3 @@ # THIS FILE IS AUTOMATICALLY GENERATED BY CARGO | ||
| name = "rustix" | ||
| version = "1.0.5" | ||
| version = "1.0.6" | ||
| authors = [ | ||
@@ -19,0 +19,0 @@ "Dan Gohman <dev@sunfishcode.online>", |
@@ -55,5 +55,4 @@ //! libc syscalls supporting `rustix::io`. | ||
| // ESP-IDF and Vita don't support 64-bit offsets. | ||
| #[cfg(any(target_os = "espidf", target_os = "vita"))] | ||
| let offset: i32 = offset.try_into().map_err(|_| io::Errno::OVERFLOW)?; | ||
| // ESP-IDF and Vita don't support 64-bit offsets, for example. | ||
| let offset = offset.try_into().map_err(|_| io::Errno::OVERFLOW)?; | ||
@@ -69,5 +68,4 @@ ret_usize(c::pread(borrowed_fd(fd), buf.0.cast(), len, offset)) | ||
| // ESP-IDF and Vita don't support 64-bit offsets. | ||
| #[cfg(any(target_os = "espidf", target_os = "vita"))] | ||
| let offset: i32 = offset.try_into().map_err(|_| io::Errno::OVERFLOW)?; | ||
| // ESP-IDF and Vita don't support 64-bit offsets, for example. | ||
| let offset = offset.try_into().map_err(|_| io::Errno::OVERFLOW)?; | ||
@@ -116,2 +114,6 @@ unsafe { ret_usize(c::pwrite(borrowed_fd(fd), buf.as_ptr().cast(), len, offset)) } | ||
| let offset = offset as i64; | ||
| // ESP-IDF and Vita don't support 64-bit offsets, for example. | ||
| let offset = offset.try_into().map_err(|_| io::Errno::OVERFLOW)?; | ||
| unsafe { | ||
@@ -140,2 +142,6 @@ ret_usize(c::preadv( | ||
| let offset = offset as i64; | ||
| // ESP-IDF and Vita don't support 64-bit offsets, for example. | ||
| let offset = offset.try_into().map_err(|_| io::Errno::OVERFLOW)?; | ||
| unsafe { | ||
@@ -142,0 +148,0 @@ ret_usize(c::pwritev( |
@@ -54,2 +54,3 @@ //! aarch64 Linux system calls. | ||
| "svc 0", | ||
| "brk #0x1", | ||
| in("x8") nr.to_asm(), | ||
@@ -56,0 +57,0 @@ in("x0") a0.to_asm(), |
@@ -51,2 +51,3 @@ //! arm Linux system calls. | ||
| "svc 0", | ||
| "udf #16", | ||
| in("r7") nr.to_asm(), | ||
@@ -53,0 +54,0 @@ in("r0") a0.to_asm(), |
@@ -104,2 +104,3 @@ //! mipsel Linux system calls. | ||
| "syscall", | ||
| "teq $0,$0", | ||
| in("$2" /*$v0*/) nr.to_asm(), | ||
@@ -106,0 +107,0 @@ in("$4" /*$a0*/) a0.to_asm(), |
@@ -104,2 +104,3 @@ //! mipsisa32r6el Linux system calls. | ||
| "syscall", | ||
| "teq $0,$0", | ||
| in("$2" /*$v0*/) nr.to_asm(), | ||
@@ -106,0 +107,0 @@ in("$4" /*$a0*/) a0.to_asm(), |
@@ -104,2 +104,3 @@ //! mips64el Linux system calls. | ||
| "syscall", | ||
| "teq $0,$0", | ||
| in("$2" /*$v0*/) nr.to_asm(), | ||
@@ -106,0 +107,0 @@ in("$4" /*$a0*/) a0.to_asm(), |
@@ -108,2 +108,3 @@ //! mipsisa64r6el Linux system calls. | ||
| "syscall", | ||
| "teq $0,$0", | ||
| in("$2" /*$v0*/) nr.to_asm(), | ||
@@ -110,0 +111,0 @@ in("$4" /*$a0*/) a0.to_asm(), |
@@ -99,2 +99,3 @@ //! powerpc Linux system calls. | ||
| "sc", | ||
| "trap", | ||
| in("r0") nr.to_asm(), | ||
@@ -101,0 +102,0 @@ in("r3") a0.to_asm(), |
@@ -99,2 +99,3 @@ //! powerpc64le Linux system calls. | ||
| "sc", | ||
| "trap", | ||
| in("r0") nr.to_asm(), | ||
@@ -101,0 +102,0 @@ in("r3") a0.to_asm(), |
@@ -51,2 +51,3 @@ //! riscv64 Linux system calls. | ||
| "ecall", | ||
| "unimp", | ||
| in("a7") nr.to_asm(), | ||
@@ -53,0 +54,0 @@ in("a0") a0.to_asm(), |
@@ -51,5 +51,6 @@ //! s390x Linux system calls. | ||
| "svc 0", | ||
| "j .+2", | ||
| in("r1") nr.to_asm(), | ||
| in("r2") a0.to_asm(), | ||
| options(nostack, preserves_flags, noreturn) | ||
| options(nostack, noreturn) | ||
| ) | ||
@@ -56,0 +57,0 @@ } |
@@ -68,2 +68,3 @@ //! arm Linux system calls, using thumb-mode. | ||
| "svc 0", | ||
| "udf #16", | ||
| nr = in(reg) nr.to_asm(), | ||
@@ -70,0 +71,0 @@ in("r0") a0.to_asm(), |
@@ -59,2 +59,3 @@ //! x86-64 Linux system calls. | ||
| "syscall", | ||
| "ud2", | ||
| in("rax") nr.to_asm(), | ||
@@ -61,0 +62,0 @@ in("rdi") a0.to_asm(), |
@@ -59,2 +59,3 @@ //! 32-bit x86 Linux system calls. | ||
| "call {callee}", | ||
| "ud2", | ||
| callee = in(reg) callee, | ||
@@ -249,2 +250,3 @@ in("eax") nr.to_asm(), | ||
| "int $$0x80", | ||
| "ud2", | ||
| in("eax") nr.to_asm(), | ||
@@ -251,0 +253,0 @@ in("ebx") a0.to_asm(), |
@@ -302,3 +302,2 @@ //! Documentation about unimplemented functions. | ||
| not_implemented!(signalfd); | ||
| not_implemented!(pidfd_send_signal); | ||
| not_implemented!(mount_setattr); | ||
@@ -305,0 +304,0 @@ not_implemented!(extattr_delete_fd); |
+9
-2
@@ -30,3 +30,3 @@ //! The `Pid` type. | ||
| /// | ||
| /// Returns `Some` for positive `RawPid`s. Otherwise, returns `None`. | ||
| /// Returns `Some` for positive values, and `None` for zero values. | ||
| /// | ||
@@ -39,5 +39,9 @@ /// This is safe because a `Pid` is a number without any guarantees for the | ||
| /// | ||
| /// Passing a negative number doesn't invoke undefined behavior, but it | ||
| /// may cause unexpected behavior. | ||
| /// | ||
| /// [pidfd]: https://man7.org/linux/man-pages/man2/pidfd_open.2.html | ||
| #[inline] | ||
| pub const fn from_raw(raw: RawPid) -> Option<Self> { | ||
| debug_assert!(raw > 0); | ||
| match NonZeroI32::new(raw) { | ||
@@ -51,5 +55,8 @@ Some(non_zero) => Some(Self(non_zero)), | ||
| /// | ||
| /// Passing a negative number doesn't invoke undefined behavior, but it | ||
| /// may cause unexpected behavior. | ||
| /// | ||
| /// # Safety | ||
| /// | ||
| /// The caller must guarantee `raw` is positive. | ||
| /// The caller must guarantee `raw` is non-zero. | ||
| #[inline] | ||
@@ -56,0 +63,0 @@ pub const unsafe fn from_raw_unchecked(raw: RawPid) -> Self { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display