document safety properties of the internal Process::new constructor · model-checking/verify-rust-std@bf06e43 (original) (raw)
File tree
1 file changed
lines changed
- std/src/sys/pal/unix/process
1 file changed
lines changed
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -877,6 +877,12 @@ pub struct Process { | ||
| 877 | 877 | |
| 878 | 878 | impl Process { |
| 879 | 879 | #[cfg(target_os = "linux")] |
| 880 | +/// # Safety | |
| 881 | + /// | |
| 882 | + /// `pidfd` must either be -1 (representing no file descriptor) or a valid, exclusively owned file | |
| 883 | + /// descriptor (See [I/O Safety]). | |
| 884 | + /// | |
| 885 | + /// [I/O Safety]: crate::io#io-safety | |
| 880 | 886 | unsafe fn new(pid: pid_t, pidfd: pid_t) -> Self { |
| 881 | 887 | use crate::os::unix::io::FromRawFd; |
| 882 | 888 | use crate::sys_common::FromInner; |