diff options
| author | Valentin Popov <valentin@popov.link> | 2024-07-19 15:37:58 +0300 | 
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2024-07-19 15:37:58 +0300 | 
| commit | a990de90fe41456a23e58bd087d2f107d321f3a1 (patch) | |
| tree | 15afc392522a9e85dc3332235e311b7d39352ea9 /vendor/rustix/src/backend/libc/io | |
| parent | 3d48cd3f81164bbfc1a755dc1d4a9a02f98c8ddd (diff) | |
| download | fparkan-a990de90fe41456a23e58bd087d2f107d321f3a1.tar.xz fparkan-a990de90fe41456a23e58bd087d2f107d321f3a1.zip  | |
Deleted vendor folder
Diffstat (limited to 'vendor/rustix/src/backend/libc/io')
| -rw-r--r-- | vendor/rustix/src/backend/libc/io/errno.rs | 1052 | ||||
| -rw-r--r-- | vendor/rustix/src/backend/libc/io/mod.rs | 6 | ||||
| -rw-r--r-- | vendor/rustix/src/backend/libc/io/syscalls.rs | 340 | ||||
| -rw-r--r-- | vendor/rustix/src/backend/libc/io/types.rs | 65 | ||||
| -rw-r--r-- | vendor/rustix/src/backend/libc/io/windows_syscalls.rs | 30 | 
5 files changed, 0 insertions, 1493 deletions
diff --git a/vendor/rustix/src/backend/libc/io/errno.rs b/vendor/rustix/src/backend/libc/io/errno.rs deleted file mode 100644 index 805ea67..0000000 --- a/vendor/rustix/src/backend/libc/io/errno.rs +++ /dev/null @@ -1,1052 +0,0 @@ -//! The `rustix` `Errno` type. -//! -//! This type holds an OS error code, which conceptually corresponds to an -//! `errno` value. - -use crate::backend::c; -use libc_errno::errno; - -/// `errno`—An error code. -/// -/// The error type for `rustix` APIs. This is similar to [`std::io::Error`], -/// but only holds an OS error code, and no extra error value. -/// -/// # References -///  - [POSIX] -///  - [Linux] -///  - [Winsock] -///  - [FreeBSD] -///  - [NetBSD] -///  - [OpenBSD] -///  - [DragonFly BSD] -///  - [illumos] -///  - [glibc] -/// -/// [POSIX]: https://pubs.opengroup.org/onlinepubs/9699919799/functions/errno.html -/// [Linux]: https://man7.org/linux/man-pages/man3/errno.3.html -/// [Winsock]: https://learn.microsoft.com/en-us/windows/win32/winsock/windows-sockets-error-codes-2 -/// [FreeBSD]: https://man.freebsd.org/cgi/man.cgi?errno -/// [NetBSD]: https://man.netbsd.org/errno.2 -/// [OpenBSD]: https://man.openbsd.org/errno.2 -/// [DragonFly BSD]: https://man.dragonflybsd.org/?command=errno§ion=2 -/// [illumos]: https://illumos.org/man/3C/errno -/// [glibc]: https://www.gnu.org/software/libc/manual/html_node/Error-Codes.html -/// [`std::io::Error`]: Result -#[repr(transparent)] -#[doc(alias = "errno")] -#[derive(Eq, PartialEq, Hash, Copy, Clone)] -pub struct Errno(pub(crate) c::c_int); - -impl Errno { -    /// `EACCES` -    #[doc(alias = "ACCES")] -    pub const ACCESS: Self = Self(c::EACCES); -    /// `EADDRINUSE` -    pub const ADDRINUSE: Self = Self(c::EADDRINUSE); -    /// `EADDRNOTAVAIL` -    pub const ADDRNOTAVAIL: Self = Self(c::EADDRNOTAVAIL); -    /// `EADV` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const ADV: Self = Self(c::EADV); -    /// `EAFNOSUPPORT` -    #[cfg(not(target_os = "l4re"))] -    pub const AFNOSUPPORT: Self = Self(c::EAFNOSUPPORT); -    /// `EAGAIN` -    pub const AGAIN: Self = Self(c::EAGAIN); -    /// `EALREADY` -    #[cfg(not(target_os = "l4re"))] -    pub const ALREADY: Self = Self(c::EALREADY); -    /// `EAUTH` -    #[cfg(bsd)] -    pub const AUTH: Self = Self(c::EAUTH); -    /// `EBADE` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const BADE: Self = Self(c::EBADE); -    /// `EBADF` -    pub const BADF: Self = Self(c::EBADF); -    /// `EBADFD` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const BADFD: Self = Self(c::EBADFD); -    /// `EBADMSG` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const BADMSG: Self = Self(c::EBADMSG); -    /// `EBADR` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const BADR: Self = Self(c::EBADR); -    /// `EBADRPC` -    #[cfg(bsd)] -    pub const BADRPC: Self = Self(c::EBADRPC); -    /// `EBADRQC` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const BADRQC: Self = Self(c::EBADRQC); -    /// `EBADSLT` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const BADSLT: Self = Self(c::EBADSLT); -    /// `EBFONT` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const BFONT: Self = Self(c::EBFONT); -    /// `EBUSY` -    #[cfg(not(windows))] -    pub const BUSY: Self = Self(c::EBUSY); -    /// `ECANCELED` -    #[cfg(not(target_os = "l4re"))] -    pub const CANCELED: Self = Self(c::ECANCELED); -    /// `ECAPMODE` -    #[cfg(target_os = "freebsd")] -    pub const CAPMODE: Self = Self(c::ECAPMODE); -    /// `ECHILD` -    #[cfg(not(windows))] -    pub const CHILD: Self = Self(c::ECHILD); -    /// `ECHRNG` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const CHRNG: Self = Self(c::ECHRNG); -    /// `ECOMM` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const COMM: Self = Self(c::ECOMM); -    /// `ECONNABORTED` -    pub const CONNABORTED: Self = Self(c::ECONNABORTED); -    /// `ECONNREFUSED` -    pub const CONNREFUSED: Self = Self(c::ECONNREFUSED); -    /// `ECONNRESET` -    pub const CONNRESET: Self = Self(c::ECONNRESET); -    /// `EDEADLK` -    #[cfg(not(windows))] -    pub const DEADLK: Self = Self(c::EDEADLK); -    /// `EDEADLOCK` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "android", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const DEADLOCK: Self = Self(c::EDEADLOCK); -    /// `EDESTADDRREQ` -    #[cfg(not(target_os = "l4re"))] -    pub const DESTADDRREQ: Self = Self(c::EDESTADDRREQ); -    /// `EDISCON` -    #[cfg(windows)] -    pub const DISCON: Self = Self(c::EDISCON); -    /// `EDOM` -    #[cfg(not(windows))] -    pub const DOM: Self = Self(c::EDOM); -    /// `EDOOFUS` -    #[cfg(freebsdlike)] -    pub const DOOFUS: Self = Self(c::EDOOFUS); -    /// `EDOTDOT` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const DOTDOT: Self = Self(c::EDOTDOT); -    /// `EDQUOT` -    pub const DQUOT: Self = Self(c::EDQUOT); -    /// `EEXIST` -    #[cfg(not(windows))] -    pub const EXIST: Self = Self(c::EEXIST); -    /// `EFAULT` -    pub const FAULT: Self = Self(c::EFAULT); -    /// `EFBIG` -    #[cfg(not(windows))] -    pub const FBIG: Self = Self(c::EFBIG); -    /// `EFTYPE` -    #[cfg(any(bsd, target_env = "newlib"))] -    pub const FTYPE: Self = Self(c::EFTYPE); -    /// `EHOSTDOWN` -    #[cfg(not(any(target_os = "l4re", target_os = "wasi")))] -    pub const HOSTDOWN: Self = Self(c::EHOSTDOWN); -    /// `EHOSTUNREACH` -    pub const HOSTUNREACH: Self = Self(c::EHOSTUNREACH); -    /// `EHWPOISON` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "android", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "redox", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const HWPOISON: Self = Self(c::EHWPOISON); -    /// `EIDRM` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const IDRM: Self = Self(c::EIDRM); -    /// `EILSEQ` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const ILSEQ: Self = Self(c::EILSEQ); -    /// `EINPROGRESS` -    #[cfg(not(target_os = "l4re"))] -    pub const INPROGRESS: Self = Self(c::EINPROGRESS); -    /// `EINTR` -    /// -    /// For a convenient way to retry system calls that exit with `INTR`, use -    /// [`retry_on_intr`]. -    /// -    /// [`retry_on_intr`]: crate::io::retry_on_intr -    pub const INTR: Self = Self(c::EINTR); -    /// `EINVAL` -    pub const INVAL: Self = Self(c::EINVAL); -    /// `EINVALIDPROCTABLE` -    #[cfg(windows)] -    pub const INVALIDPROCTABLE: Self = Self(c::EINVALIDPROCTABLE); -    /// `EINVALIDPROVIDER` -    #[cfg(windows)] -    pub const INVALIDPROVIDER: Self = Self(c::EINVALIDPROVIDER); -    /// `EIO` -    #[cfg(not(windows))] -    pub const IO: Self = Self(c::EIO); -    /// `EISCONN` -    #[cfg(not(target_os = "l4re"))] -    pub const ISCONN: Self = Self(c::EISCONN); -    /// `EISDIR` -    #[cfg(not(windows))] -    pub const ISDIR: Self = Self(c::EISDIR); -    /// `EISNAM` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const ISNAM: Self = Self(c::EISNAM); -    /// `EKEYEXPIRED` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const KEYEXPIRED: Self = Self(c::EKEYEXPIRED); -    /// `EKEYREJECTED` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const KEYREJECTED: Self = Self(c::EKEYREJECTED); -    /// `EKEYREVOKED` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const KEYREVOKED: Self = Self(c::EKEYREVOKED); -    /// `EL2HLT` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const L2HLT: Self = Self(c::EL2HLT); -    /// `EL2NSYNC` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const L2NSYNC: Self = Self(c::EL2NSYNC); -    /// `EL3HLT` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const L3HLT: Self = Self(c::EL3HLT); -    /// `EL3RST` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const L3RST: Self = Self(c::EL3RST); -    /// `ELIBACC` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const LIBACC: Self = Self(c::ELIBACC); -    /// `ELIBBAD` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const LIBBAD: Self = Self(c::ELIBBAD); -    /// `ELIBEXEC` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const LIBEXEC: Self = Self(c::ELIBEXEC); -    /// `ELIBMAX` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const LIBMAX: Self = Self(c::ELIBMAX); -    /// `ELIBSCN` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const LIBSCN: Self = Self(c::ELIBSCN); -    /// `ELNRNG` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const LNRNG: Self = Self(c::ELNRNG); -    /// `ELOOP` -    pub const LOOP: Self = Self(c::ELOOP); -    /// `EMEDIUMTYPE` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const MEDIUMTYPE: Self = Self(c::EMEDIUMTYPE); -    /// `EMFILE` -    pub const MFILE: Self = Self(c::EMFILE); -    /// `EMLINK` -    #[cfg(not(windows))] -    pub const MLINK: Self = Self(c::EMLINK); -    /// `EMSGSIZE` -    #[cfg(not(target_os = "l4re"))] -    pub const MSGSIZE: Self = Self(c::EMSGSIZE); -    /// `EMULTIHOP` -    #[cfg(not(any(windows, target_os = "l4re", target_os = "openbsd")))] -    pub const MULTIHOP: Self = Self(c::EMULTIHOP); -    /// `ENAMETOOLONG` -    pub const NAMETOOLONG: Self = Self(c::ENAMETOOLONG); -    /// `ENAVAIL` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NAVAIL: Self = Self(c::ENAVAIL); -    /// `ENEEDAUTH` -    #[cfg(bsd)] -    pub const NEEDAUTH: Self = Self(c::ENEEDAUTH); -    /// `ENETDOWN` -    pub const NETDOWN: Self = Self(c::ENETDOWN); -    /// `ENETRESET` -    #[cfg(not(target_os = "l4re"))] -    pub const NETRESET: Self = Self(c::ENETRESET); -    /// `ENETUNREACH` -    pub const NETUNREACH: Self = Self(c::ENETUNREACH); -    /// `ENFILE` -    #[cfg(not(windows))] -    pub const NFILE: Self = Self(c::ENFILE); -    /// `ENOANO` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NOANO: Self = Self(c::ENOANO); -    /// `ENOATTR` -    #[cfg(any(bsd, target_os = "haiku"))] -    pub const NOATTR: Self = Self(c::ENOATTR); -    /// `ENOBUFS` -    #[cfg(not(target_os = "l4re"))] -    pub const NOBUFS: Self = Self(c::ENOBUFS); -    /// `ENOCSI` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const NOCSI: Self = Self(c::ENOCSI); -    /// `ENODATA` -    #[cfg(not(any( -        freebsdlike, -        windows, -        target_os = "haiku", -        target_os = "openbsd", -        target_os = "wasi", -    )))] -    pub const NODATA: Self = Self(c::ENODATA); -    /// `ENODEV` -    #[cfg(not(windows))] -    pub const NODEV: Self = Self(c::ENODEV); -    /// `ENOENT` -    #[cfg(not(windows))] -    pub const NOENT: Self = Self(c::ENOENT); -    /// `ENOEXEC` -    #[cfg(not(windows))] -    pub const NOEXEC: Self = Self(c::ENOEXEC); -    /// `ENOKEY` -    #[cfg(not(any( -        solarish, -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NOKEY: Self = Self(c::ENOKEY); -    /// `ENOLCK` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const NOLCK: Self = Self(c::ENOLCK); -    /// `ENOLINK` -    #[cfg(not(any(windows, target_os = "l4re", target_os = "openbsd")))] -    pub const NOLINK: Self = Self(c::ENOLINK); -    /// `ENOMEDIUM` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NOMEDIUM: Self = Self(c::ENOMEDIUM); -    /// `ENOMEM` -    #[cfg(not(windows))] -    pub const NOMEM: Self = Self(c::ENOMEM); -    /// `ENOMORE` -    #[cfg(windows)] -    pub const NOMORE: Self = Self(c::ENOMORE); -    /// `ENOMSG` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const NOMSG: Self = Self(c::ENOMSG); -    /// `ENONET` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NONET: Self = Self(c::ENONET); -    /// `ENOPKG` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NOPKG: Self = Self(c::ENOPKG); -    /// `ENOPROTOOPT` -    #[cfg(not(target_os = "l4re"))] -    pub const NOPROTOOPT: Self = Self(c::ENOPROTOOPT); -    /// `ENOSPC` -    #[cfg(not(windows))] -    pub const NOSPC: Self = Self(c::ENOSPC); -    /// `ENOSR` -    #[cfg(not(any( -        freebsdlike, -        windows, -        target_os = "haiku", -        target_os = "l4re", -        target_os = "openbsd", -        target_os = "wasi", -    )))] -    pub const NOSR: Self = Self(c::ENOSR); -    /// `ENOSTR` -    #[cfg(not(any( -        freebsdlike, -        windows, -        target_os = "haiku", -        target_os = "l4re", -        target_os = "openbsd", -        target_os = "wasi", -    )))] -    pub const NOSTR: Self = Self(c::ENOSTR); -    /// `ENOSYS` -    #[cfg(not(windows))] -    pub const NOSYS: Self = Self(c::ENOSYS); -    /// `ENOTBLK` -    #[cfg(not(any( -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const NOTBLK: Self = Self(c::ENOTBLK); -    /// `ENOTCAPABLE` -    #[cfg(any(target_os = "freebsd", target_os = "wasi"))] -    pub const NOTCAPABLE: Self = Self(c::ENOTCAPABLE); -    /// `ENOTCONN` -    pub const NOTCONN: Self = Self(c::ENOTCONN); -    /// `ENOTDIR` -    #[cfg(not(windows))] -    pub const NOTDIR: Self = Self(c::ENOTDIR); -    /// `ENOTEMPTY` -    pub const NOTEMPTY: Self = Self(c::ENOTEMPTY); -    /// `ENOTNAM` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NOTNAM: Self = Self(c::ENOTNAM); -    /// `ENOTRECOVERABLE` -    #[cfg(not(any( -        freebsdlike, -        netbsdlike, -        windows, -        target_os = "haiku", -        target_os = "l4re" -    )))] -    pub const NOTRECOVERABLE: Self = Self(c::ENOTRECOVERABLE); -    /// `ENOTSOCK` -    #[cfg(not(target_os = "l4re"))] -    pub const NOTSOCK: Self = Self(c::ENOTSOCK); -    /// `ENOTSUP` -    #[cfg(not(any(windows, target_os = "haiku", target_os = "redox")))] -    pub const NOTSUP: Self = Self(c::ENOTSUP); -    /// `ENOTTY` -    #[cfg(not(windows))] -    pub const NOTTY: Self = Self(c::ENOTTY); -    /// `ENOTUNIQ` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const NOTUNIQ: Self = Self(c::ENOTUNIQ); -    /// `ENXIO` -    #[cfg(not(windows))] -    pub const NXIO: Self = Self(c::ENXIO); -    /// `EOPNOTSUPP` -    pub const OPNOTSUPP: Self = Self(c::EOPNOTSUPP); -    /// `EOVERFLOW` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const OVERFLOW: Self = Self(c::EOVERFLOW); -    /// `EOWNERDEAD` -    #[cfg(not(any( -        freebsdlike, -        netbsdlike, -        windows, -        target_os = "haiku", -        target_os = "l4re" -    )))] -    pub const OWNERDEAD: Self = Self(c::EOWNERDEAD); -    /// `EPERM` -    #[cfg(not(windows))] -    pub const PERM: Self = Self(c::EPERM); -    /// `EPFNOSUPPORT` -    #[cfg(not(any(target_os = "l4re", target_os = "wasi")))] -    pub const PFNOSUPPORT: Self = Self(c::EPFNOSUPPORT); -    /// `EPIPE` -    #[cfg(not(windows))] -    pub const PIPE: Self = Self(c::EPIPE); -    /// `EPROCLIM` -    #[cfg(bsd)] -    pub const PROCLIM: Self = Self(c::EPROCLIM); -    /// `EPROCUNAVAIL` -    #[cfg(bsd)] -    pub const PROCUNAVAIL: Self = Self(c::EPROCUNAVAIL); -    /// `EPROGMISMATCH` -    #[cfg(bsd)] -    pub const PROGMISMATCH: Self = Self(c::EPROGMISMATCH); -    /// `EPROGUNAVAIL` -    #[cfg(bsd)] -    pub const PROGUNAVAIL: Self = Self(c::EPROGUNAVAIL); -    /// `EPROTO` -    #[cfg(not(any(windows, target_os = "l4re")))] -    pub const PROTO: Self = Self(c::EPROTO); -    /// `EPROTONOSUPPORT` -    #[cfg(not(target_os = "l4re"))] -    pub const PROTONOSUPPORT: Self = Self(c::EPROTONOSUPPORT); -    /// `EPROTOTYPE` -    #[cfg(not(target_os = "l4re"))] -    pub const PROTOTYPE: Self = Self(c::EPROTOTYPE); -    /// `EPROVIDERFAILEDINIT` -    #[cfg(windows)] -    pub const PROVIDERFAILEDINIT: Self = Self(c::EPROVIDERFAILEDINIT); -    /// `ERANGE` -    #[cfg(not(windows))] -    pub const RANGE: Self = Self(c::ERANGE); -    /// `EREFUSED` -    #[cfg(windows)] -    pub const REFUSED: Self = Self(c::EREFUSED); -    /// `EREMCHG` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const REMCHG: Self = Self(c::EREMCHG); -    /// `EREMOTE` -    #[cfg(not(any( -        target_os = "espidf", -        target_os = "haiku", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const REMOTE: Self = Self(c::EREMOTE); -    /// `EREMOTEIO` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const REMOTEIO: Self = Self(c::EREMOTEIO); -    /// `ERESTART` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const RESTART: Self = Self(c::ERESTART); -    /// `ERFKILL` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "android", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "redox", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const RFKILL: Self = Self(c::ERFKILL); -    /// `EROFS` -    #[cfg(not(windows))] -    pub const ROFS: Self = Self(c::EROFS); -    /// `ERPCMISMATCH` -    #[cfg(bsd)] -    pub const RPCMISMATCH: Self = Self(c::ERPCMISMATCH); -    /// `ESHUTDOWN` -    #[cfg(not(any( -        target_os = "espidf", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const SHUTDOWN: Self = Self(c::ESHUTDOWN); -    /// `ESOCKTNOSUPPORT` -    #[cfg(not(any( -        target_os = "espidf", -        target_os = "haiku", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const SOCKTNOSUPPORT: Self = Self(c::ESOCKTNOSUPPORT); -    /// `ESPIPE` -    #[cfg(not(windows))] -    pub const SPIPE: Self = Self(c::ESPIPE); -    /// `ESRCH` -    #[cfg(not(windows))] -    pub const SRCH: Self = Self(c::ESRCH); -    /// `ESRMNT` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const SRMNT: Self = Self(c::ESRMNT); -    /// `ESTALE` -    pub const STALE: Self = Self(c::ESTALE); -    /// `ESTRPIPE` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const STRPIPE: Self = Self(c::ESTRPIPE); -    /// `ETIME` -    #[cfg(not(any( -        freebsdlike, -        windows, -        target_os = "l4re", -        target_os = "openbsd", -        target_os = "wasi" -    )))] -    pub const TIME: Self = Self(c::ETIME); -    /// `ETIMEDOUT` -    pub const TIMEDOUT: Self = Self(c::ETIMEDOUT); -    /// `E2BIG` -    #[cfg(not(windows))] -    #[doc(alias = "2BIG")] -    pub const TOOBIG: Self = Self(c::E2BIG); -    /// `ETOOMANYREFS` -    #[cfg(not(any(target_os = "haiku", target_os = "l4re", target_os = "wasi")))] -    pub const TOOMANYREFS: Self = Self(c::ETOOMANYREFS); -    /// `ETXTBSY` -    #[cfg(not(windows))] -    pub const TXTBSY: Self = Self(c::ETXTBSY); -    /// `EUCLEAN` -    #[cfg(not(any( -        bsd, -        solarish, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "nto", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const UCLEAN: Self = Self(c::EUCLEAN); -    /// `EUNATCH` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const UNATCH: Self = Self(c::EUNATCH); -    /// `EUSERS` -    #[cfg(not(any( -        target_os = "espidf", -        target_os = "haiku", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi" -    )))] -    pub const USERS: Self = Self(c::EUSERS); -    /// `EWOULDBLOCK` -    pub const WOULDBLOCK: Self = Self(c::EWOULDBLOCK); -    /// `EXDEV` -    #[cfg(not(windows))] -    pub const XDEV: Self = Self(c::EXDEV); -    /// `EXFULL` -    #[cfg(not(any( -        bsd, -        windows, -        target_os = "aix", -        target_os = "espidf", -        target_os = "haiku", -        target_os = "hurd", -        target_os = "l4re", -        target_os = "vita", -        target_os = "wasi", -    )))] -    pub const XFULL: Self = Self(c::EXFULL); -} - -impl Errno { -    /// Extract an `Errno` value from a `std::io::Error`. -    /// -    /// This isn't a `From` conversion because it's expected to be relatively -    /// uncommon. -    #[cfg(feature = "std")] -    #[inline] -    pub fn from_io_error(io_err: &std::io::Error) -> Option<Self> { -        io_err -            .raw_os_error() -            .and_then(|raw| if raw != 0 { Some(Self(raw)) } else { None }) -    } - -    /// Extract the raw OS error number from this error. -    #[inline] -    pub const fn raw_os_error(self) -> i32 { -        self.0 -    } - -    /// Construct an `Errno` from a raw OS error number. -    #[inline] -    pub const fn from_raw_os_error(raw: i32) -> Self { -        Self(raw) -    } - -    pub(crate) fn last_os_error() -> Self { -        Self(errno().0) -    } -} diff --git a/vendor/rustix/src/backend/libc/io/mod.rs b/vendor/rustix/src/backend/libc/io/mod.rs deleted file mode 100644 index 4873885..0000000 --- a/vendor/rustix/src/backend/libc/io/mod.rs +++ /dev/null @@ -1,6 +0,0 @@ -pub(crate) mod errno; -#[cfg(not(windows))] -pub(crate) mod types; - -#[cfg_attr(windows, path = "windows_syscalls.rs")] -pub(crate) mod syscalls; diff --git a/vendor/rustix/src/backend/libc/io/syscalls.rs b/vendor/rustix/src/backend/libc/io/syscalls.rs deleted file mode 100644 index e28e6be..0000000 --- a/vendor/rustix/src/backend/libc/io/syscalls.rs +++ /dev/null @@ -1,340 +0,0 @@ -//! libc syscalls supporting `rustix::io`. - -use crate::backend::c; -#[cfg(not(target_os = "wasi"))] -use crate::backend::conv::ret_discarded_fd; -use crate::backend::conv::{borrowed_fd, ret, ret_c_int, ret_owned_fd, ret_usize}; -use crate::fd::{AsFd, BorrowedFd, OwnedFd, RawFd}; -#[cfg(not(any( -    target_os = "aix", -    target_os = "espidf", -    target_os = "nto", -    target_os = "vita", -    target_os = "wasi" -)))] -use crate::io::DupFlags; -#[cfg(linux_kernel)] -use crate::io::ReadWriteFlags; -use crate::io::{self, FdFlags}; -use crate::ioctl::{IoctlOutput, RawOpcode}; -use core::cmp::min; -#[cfg(all(feature = "fs", feature = "net"))] -use libc_errno::errno; -#[cfg(not(target_os = "espidf"))] -use { -    crate::backend::MAX_IOV, -    crate::io::{IoSlice, IoSliceMut}, -}; - -pub(crate) unsafe fn read(fd: BorrowedFd<'_>, buf: *mut u8, len: usize) -> io::Result<usize> { -    ret_usize(c::read(borrowed_fd(fd), buf.cast(), min(len, READ_LIMIT))) -} - -pub(crate) fn write(fd: BorrowedFd<'_>, buf: &[u8]) -> io::Result<usize> { -    unsafe { -        ret_usize(c::write( -            borrowed_fd(fd), -            buf.as_ptr().cast(), -            min(buf.len(), READ_LIMIT), -        )) -    } -} - -pub(crate) unsafe fn pread( -    fd: BorrowedFd<'_>, -    buf: *mut u8, -    len: usize, -    offset: u64, -) -> io::Result<usize> { -    let len = min(len, READ_LIMIT); - -    // Silently cast; we'll get `EINVAL` if the value is negative. -    let offset = offset as i64; - -    // 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)?; - -    ret_usize(c::pread(borrowed_fd(fd), buf.cast(), len, offset)) -} - -pub(crate) fn pwrite(fd: BorrowedFd<'_>, buf: &[u8], offset: u64) -> io::Result<usize> { -    let len = min(buf.len(), READ_LIMIT); - -    // Silently cast; we'll get `EINVAL` if the value is negative. -    let offset = offset as i64; - -    // 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)?; - -    unsafe { ret_usize(c::pwrite(borrowed_fd(fd), buf.as_ptr().cast(), len, offset)) } -} - -#[cfg(not(target_os = "espidf"))] -pub(crate) fn readv(fd: BorrowedFd<'_>, bufs: &mut [IoSliceMut<'_>]) -> io::Result<usize> { -    unsafe { -        ret_usize(c::readv( -            borrowed_fd(fd), -            bufs.as_ptr().cast::<c::iovec>(), -            min(bufs.len(), MAX_IOV) as c::c_int, -        )) -    } -} - -#[cfg(not(target_os = "espidf"))] -pub(crate) fn writev(fd: BorrowedFd<'_>, bufs: &[IoSlice<'_>]) -> io::Result<usize> { -    unsafe { -        ret_usize(c::writev( -            borrowed_fd(fd), -            bufs.as_ptr().cast::<c::iovec>(), -            min(bufs.len(), MAX_IOV) as c::c_int, -        )) -    } -} - -#[cfg(not(any( -    target_os = "espidf", -    target_os = "haiku", -    target_os = "nto", -    target_os = "redox", -    target_os = "solaris", -    target_os = "vita" -)))] -pub(crate) fn preadv( -    fd: BorrowedFd<'_>, -    bufs: &mut [IoSliceMut<'_>], -    offset: u64, -) -> io::Result<usize> { -    // Silently cast; we'll get `EINVAL` if the value is negative. -    let offset = offset as i64; -    unsafe { -        ret_usize(c::preadv( -            borrowed_fd(fd), -            bufs.as_ptr().cast::<c::iovec>(), -            min(bufs.len(), MAX_IOV) as c::c_int, -            offset, -        )) -    } -} - -#[cfg(not(any( -    target_os = "espidf", -    target_os = "haiku", -    target_os = "nto", -    target_os = "redox", -    target_os = "solaris", -    target_os = "vita" -)))] -pub(crate) fn pwritev(fd: BorrowedFd<'_>, bufs: &[IoSlice<'_>], offset: u64) -> io::Result<usize> { -    // Silently cast; we'll get `EINVAL` if the value is negative. -    let offset = offset as i64; -    unsafe { -        ret_usize(c::pwritev( -            borrowed_fd(fd), -            bufs.as_ptr().cast::<c::iovec>(), -            min(bufs.len(), MAX_IOV) as c::c_int, -            offset, -        )) -    } -} - -#[cfg(linux_kernel)] -pub(crate) fn preadv2( -    fd: BorrowedFd<'_>, -    bufs: &mut [IoSliceMut<'_>], -    offset: u64, -    flags: ReadWriteFlags, -) -> io::Result<usize> { -    // Silently cast; we'll get `EINVAL` if the value is negative. -    let offset = offset as i64; -    unsafe { -        ret_usize(c::preadv2( -            borrowed_fd(fd), -            bufs.as_ptr().cast::<c::iovec>(), -            min(bufs.len(), MAX_IOV) as c::c_int, -            offset, -            bitflags_bits!(flags), -        )) -    } -} - -#[cfg(linux_kernel)] -pub(crate) fn pwritev2( -    fd: BorrowedFd<'_>, -    bufs: &[IoSlice<'_>], -    offset: u64, -    flags: ReadWriteFlags, -) -> io::Result<usize> { -    // Silently cast; we'll get `EINVAL` if the value is negative. -    let offset = offset as i64; -    unsafe { -        ret_usize(c::pwritev2( -            borrowed_fd(fd), -            bufs.as_ptr().cast::<c::iovec>(), -            min(bufs.len(), MAX_IOV) as c::c_int, -            offset, -            bitflags_bits!(flags), -        )) -    } -} - -// These functions are derived from Rust's library/std/src/sys/unix/fd.rs at -// revision 326ef470a8b379a180d6dc4bbef08990698a737a. - -// The maximum read limit on most POSIX-like systems is `SSIZE_MAX`, with the -// manual page quoting that if the count of bytes to read is greater than -// `SSIZE_MAX` the result is “unspecified”. -// -// On macOS, however, apparently the 64-bit libc is either buggy or -// intentionally showing odd behavior by rejecting any read with a size larger -// than or equal to `INT_MAX`. To handle both of these the read size is capped -// on both platforms. -#[cfg(target_os = "macos")] -const READ_LIMIT: usize = c::c_int::MAX as usize - 1; -#[cfg(not(target_os = "macos"))] -const READ_LIMIT: usize = c::ssize_t::MAX as usize; - -pub(crate) unsafe fn close(raw_fd: RawFd) { -    let _ = c::close(raw_fd as c::c_int); -} - -#[inline] -pub(crate) unsafe fn ioctl( -    fd: BorrowedFd<'_>, -    request: RawOpcode, -    arg: *mut c::c_void, -) -> io::Result<IoctlOutput> { -    ret_c_int(c::ioctl(borrowed_fd(fd), request, arg)) -} - -#[inline] -pub(crate) unsafe fn ioctl_readonly( -    fd: BorrowedFd<'_>, -    request: RawOpcode, -    arg: *mut c::c_void, -) -> io::Result<IoctlOutput> { -    ioctl(fd, request, arg) -} - -#[cfg(not(any(target_os = "redox", target_os = "wasi")))] -#[cfg(all(feature = "fs", feature = "net"))] -pub(crate) fn is_read_write(fd: BorrowedFd<'_>) -> io::Result<(bool, bool)> { -    use core::mem::MaybeUninit; - -    let (mut read, mut write) = crate::fs::fd::_is_file_read_write(fd)?; -    let mut not_socket = false; -    if read { -        // Do a `recv` with `PEEK` and `DONTWAIT` for 1 byte. A 0 indicates -        // the read side is shut down; an `EWOULDBLOCK` indicates the read -        // side is still open. -        match unsafe { -            c::recv( -                borrowed_fd(fd), -                MaybeUninit::<[u8; 1]>::uninit() -                    .as_mut_ptr() -                    .cast::<c::c_void>(), -                1, -                c::MSG_PEEK | c::MSG_DONTWAIT, -            ) -        } { -            0 => read = false, -            -1 => { -                #[allow(unreachable_patterns)] // `EAGAIN` may equal `EWOULDBLOCK` -                match errno().0 { -                    c::EAGAIN | c::EWOULDBLOCK => (), -                    c::ENOTSOCK => not_socket = true, -                    err => return Err(io::Errno(err)), -                } -            } -            _ => (), -        } -    } -    if write && !not_socket { -        // Do a `send` with `DONTWAIT` for 0 bytes. An `EPIPE` indicates -        // the write side is shut down. -        if unsafe { c::send(borrowed_fd(fd), [].as_ptr(), 0, c::MSG_DONTWAIT) } == -1 { -            #[allow(unreachable_patterns)] // `EAGAIN` may equal `EWOULDBLOCK` -            match errno().0 { -                c::EAGAIN | c::EWOULDBLOCK | c::ENOTSOCK => (), -                c::EPIPE => write = false, -                err => return Err(io::Errno(err)), -            } -        } -    } -    Ok((read, write)) -} - -#[cfg(target_os = "wasi")] -#[cfg(all(feature = "fs", feature = "net"))] -pub(crate) fn is_read_write(_fd: BorrowedFd<'_>) -> io::Result<(bool, bool)> { -    todo!("Implement is_read_write for WASI in terms of fd_fdstat_get"); -} - -pub(crate) fn fcntl_getfd(fd: BorrowedFd<'_>) -> io::Result<FdFlags> { -    let flags = unsafe { ret_c_int(c::fcntl(borrowed_fd(fd), c::F_GETFD))? }; -    Ok(FdFlags::from_bits_retain(bitcast!(flags))) -} - -pub(crate) fn fcntl_setfd(fd: BorrowedFd<'_>, flags: FdFlags) -> io::Result<()> { -    unsafe { ret(c::fcntl(borrowed_fd(fd), c::F_SETFD, flags.bits())) } -} - -#[cfg(not(any(target_os = "espidf", target_os = "wasi")))] -pub(crate) fn fcntl_dupfd_cloexec(fd: BorrowedFd<'_>, min: RawFd) -> io::Result<OwnedFd> { -    unsafe { ret_owned_fd(c::fcntl(borrowed_fd(fd), c::F_DUPFD_CLOEXEC, min)) } -} - -#[cfg(target_os = "espidf")] -pub(crate) fn fcntl_dupfd(fd: BorrowedFd<'_>, min: RawFd) -> io::Result<OwnedFd> { -    unsafe { ret_owned_fd(c::fcntl(borrowed_fd(fd), c::F_DUPFD, min)) } -} - -#[cfg(not(target_os = "wasi"))] -pub(crate) fn dup(fd: BorrowedFd<'_>) -> io::Result<OwnedFd> { -    unsafe { ret_owned_fd(c::dup(borrowed_fd(fd))) } -} - -#[allow(clippy::needless_pass_by_ref_mut)] -#[cfg(not(target_os = "wasi"))] -pub(crate) fn dup2(fd: BorrowedFd<'_>, new: &mut OwnedFd) -> io::Result<()> { -    unsafe { ret_discarded_fd(c::dup2(borrowed_fd(fd), borrowed_fd(new.as_fd()))) } -} - -#[allow(clippy::needless_pass_by_ref_mut)] -#[cfg(not(any( -    apple, -    target_os = "aix", -    target_os = "android", -    target_os = "dragonfly", -    target_os = "espidf", -    target_os = "haiku", -    target_os = "nto", -    target_os = "redox", -    target_os = "vita", -    target_os = "wasi", -)))] -pub(crate) fn dup3(fd: BorrowedFd<'_>, new: &mut OwnedFd, flags: DupFlags) -> io::Result<()> { -    unsafe { -        ret_discarded_fd(c::dup3( -            borrowed_fd(fd), -            borrowed_fd(new.as_fd()), -            bitflags_bits!(flags), -        )) -    } -} - -#[cfg(any( -    apple, -    target_os = "android", -    target_os = "dragonfly", -    target_os = "haiku", -    target_os = "redox", -))] -pub(crate) fn dup3(fd: BorrowedFd<'_>, new: &mut OwnedFd, _flags: DupFlags) -> io::Result<()> { -    // Android 5.0 has `dup3`, but libc doesn't have bindings. Emulate it -    // using `dup2`. We don't need to worry about the difference between -    // `dup2` and `dup3` when the file descriptors are equal because we -    // have an `&mut OwnedFd` which means `fd` doesn't alias it. -    dup2(fd, new) -} diff --git a/vendor/rustix/src/backend/libc/io/types.rs b/vendor/rustix/src/backend/libc/io/types.rs deleted file mode 100644 index 510206f..0000000 --- a/vendor/rustix/src/backend/libc/io/types.rs +++ /dev/null @@ -1,65 +0,0 @@ -use crate::backend::c; -use bitflags::bitflags; - -bitflags! { -    /// `FD_*` constants for use with [`fcntl_getfd`] and [`fcntl_setfd`]. -    /// -    /// [`fcntl_getfd`]: crate::io::fcntl_getfd -    /// [`fcntl_setfd`]: crate::io::fcntl_setfd -    #[repr(transparent)] -    #[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)] -    pub struct FdFlags: u32 { -        /// `FD_CLOEXEC` -        const CLOEXEC = bitcast!(c::FD_CLOEXEC); - -        /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> -        const _ = !0; -    } -} - -#[cfg(linux_kernel)] -bitflags! { -    /// `RWF_*` constants for use with [`preadv2`] and [`pwritev2`]. -    /// -    /// [`preadv2`]: crate::io::preadv2 -    /// [`pwritev2`]: crate::io::pwritev -    #[repr(transparent)] -    #[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)] -    pub struct ReadWriteFlags: u32 { -        /// `RWF_DSYNC` (since Linux 4.7) -        const DSYNC = linux_raw_sys::general::RWF_DSYNC; -        /// `RWF_HIPRI` (since Linux 4.6) -        const HIPRI = linux_raw_sys::general::RWF_HIPRI; -        /// `RWF_SYNC` (since Linux 4.7) -        const SYNC = linux_raw_sys::general::RWF_SYNC; -        /// `RWF_NOWAIT` (since Linux 4.14) -        const NOWAIT = linux_raw_sys::general::RWF_NOWAIT; -        /// `RWF_APPEND` (since Linux 4.16) -        const APPEND = linux_raw_sys::general::RWF_APPEND; - -        /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> -        const _ = !0; -    } -} - -#[cfg(not(target_os = "wasi"))] -bitflags! { -    /// `O_*` constants for use with [`dup2`]. -    /// -    /// [`dup2`]: crate::io::dup2 -    #[repr(transparent)] -    #[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)] -    pub struct DupFlags: u32 { -        /// `O_CLOEXEC` -        #[cfg(not(any( -            apple, -            target_os = "aix", -            target_os = "android", -            target_os = "redox", -        )))] // Android 5.0 has dup3, but libc doesn't have bindings -        const CLOEXEC = bitcast!(c::O_CLOEXEC); - -        /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> -        const _ = !0; -    } -} diff --git a/vendor/rustix/src/backend/libc/io/windows_syscalls.rs b/vendor/rustix/src/backend/libc/io/windows_syscalls.rs deleted file mode 100644 index 049221d..0000000 --- a/vendor/rustix/src/backend/libc/io/windows_syscalls.rs +++ /dev/null @@ -1,30 +0,0 @@ -//! Windows system calls in the `io` module. - -use crate::backend::c; -use crate::backend::conv::{borrowed_fd, ret_c_int}; -use crate::backend::fd::LibcFd; -use crate::fd::{BorrowedFd, RawFd}; -use crate::io; -use crate::ioctl::{IoctlOutput, RawOpcode}; - -pub(crate) unsafe fn close(raw_fd: RawFd) { -    let _ = c::close(raw_fd as LibcFd); -} - -#[inline] -pub(crate) unsafe fn ioctl( -    fd: BorrowedFd<'_>, -    request: RawOpcode, -    arg: *mut c::c_void, -) -> io::Result<IoctlOutput> { -    ret_c_int(c::ioctl(borrowed_fd(fd), request, arg.cast())) -} - -#[inline] -pub(crate) unsafe fn ioctl_readonly( -    fd: BorrowedFd<'_>, -    request: RawOpcode, -    arg: *mut c::c_void, -) -> io::Result<IoctlOutput> { -    ioctl(fd, request, arg) -}  | 
