diff options
author | Tamir Duberstein <tamird@google.com> | 2022-01-22 08:13:30 -0500 |
---|---|---|
committer | Tamir Duberstein <tamird@google.com> | 2022-01-23 15:52:27 -0500 |
commit | da84eefd712167bac47c904de3ac6056521c7f18 (patch) | |
tree | 359f7003b61054b27e70b35e7dcf30c14152d427 | |
parent | 8bba79c467c81073a9da736d00239f6dd70fc32b (diff) | |
download | rust-libc-da84eefd712167bac47c904de3ac6056521c7f18.tar.gz |
Define ip_mreqn on all Linux platforms
Updates #1558.
-rw-r--r-- | libc-test/build.rs | 5 | ||||
-rw-r--r-- | libc-test/semver/linux-aarch64.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-i686.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-mips.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-powerpc.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-powerpc64.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-powerpc64le.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-riscv64gc.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux-x86_64.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/linux.txt | 1 | ||||
-rw-r--r-- | src/unix/linux_like/android/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/linux/gnu/b32/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/linux/musl/mod.rs | 6 | ||||
-rw-r--r-- | src/unix/linux_like/mod.rs | 6 |
18 files changed, 12 insertions, 50 deletions
diff --git a/libc-test/build.rs b/libc-test/build.rs index 69231fc060..1820080051 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -2967,6 +2967,11 @@ fn test_linux(target: &str) { if (musl || sparc64) && ty.starts_with("uinput_") { return true; } + // FIXME(https://github.com/rust-lang/libc/issues/1558): passing by + // value corrupts the value for reasons not understood. + if (gnu && sparc64) && ty == "ip_mreqn" { + return true; + } match ty { // These cannot be tested when "resolv.h" is included and are tested // in the `linux_elf.rs` file. diff --git a/libc-test/semver/linux-aarch64.txt b/libc-test/semver/linux-aarch64.txt index 5a68d5e68b..18fa63fed7 100644 --- a/libc-test/semver/linux-aarch64.txt +++ b/libc-test/semver/linux-aarch64.txt @@ -87,7 +87,6 @@ TIOCGRS485 TIOCSBRK TIOCSRS485 flock64 -ip_mreqn max_align_t mcontext_t ucontext_t diff --git a/libc-test/semver/linux-i686.txt b/libc-test/semver/linux-i686.txt index 3529cd69bc..97e9f741a8 100644 --- a/libc-test/semver/linux-i686.txt +++ b/libc-test/semver/linux-i686.txt @@ -211,7 +211,6 @@ fsblkcnt64_t fsfilcnt64_t getcontext greg_t -ip_mreqn makecontext max_align_t mcontext_t diff --git a/libc-test/semver/linux-mips.txt b/libc-test/semver/linux-mips.txt index 3fed27958a..80aa25a60b 100644 --- a/libc-test/semver/linux-mips.txt +++ b/libc-test/semver/linux-mips.txt @@ -112,5 +112,4 @@ SYS_vserver SYS_waitpid TIOCCBRK TIOCSBRK -ip_mreqn max_align_t diff --git a/libc-test/semver/linux-powerpc.txt b/libc-test/semver/linux-powerpc.txt index b83ae9c798..1d16241760 100644 --- a/libc-test/semver/linux-powerpc.txt +++ b/libc-test/semver/linux-powerpc.txt @@ -155,5 +155,4 @@ TIOCSRS485 flock64 fsblkcnt64_t fsfilcnt64_t -ip_mreqn sysctl diff --git a/libc-test/semver/linux-powerpc64.txt b/libc-test/semver/linux-powerpc64.txt index 013a25d8cf..983c7e7d30 100644 --- a/libc-test/semver/linux-powerpc64.txt +++ b/libc-test/semver/linux-powerpc64.txt @@ -158,6 +158,5 @@ TIOCGRS485 TIOCSBRK TIOCSRS485 flock64 -ip_mreqn max_align_t sysctl diff --git a/libc-test/semver/linux-powerpc64le.txt b/libc-test/semver/linux-powerpc64le.txt index 013a25d8cf..983c7e7d30 100644 --- a/libc-test/semver/linux-powerpc64le.txt +++ b/libc-test/semver/linux-powerpc64le.txt @@ -158,6 +158,5 @@ TIOCGRS485 TIOCSBRK TIOCSRS485 flock64 -ip_mreqn max_align_t sysctl diff --git a/libc-test/semver/linux-riscv64gc.txt b/libc-test/semver/linux-riscv64gc.txt index 8397f37dbb..cc4d97fe6f 100644 --- a/libc-test/semver/linux-riscv64gc.txt +++ b/libc-test/semver/linux-riscv64gc.txt @@ -69,4 +69,3 @@ TIOCSRS485 flock64 fsblkcnt64_t fsfilcnt64_t -ip_mreqn diff --git a/libc-test/semver/linux-x86_64.txt b/libc-test/semver/linux-x86_64.txt index 9f5d9b734d..64126fbc84 100644 --- a/libc-test/semver/linux-x86_64.txt +++ b/libc-test/semver/linux-x86_64.txt @@ -136,7 +136,6 @@ TIOCGRS485 TIOCSBRK TIOCSRS485 greg_t -ip_mreqn max_align_t mcontext_t ucontext_t diff --git a/libc-test/semver/linux.txt b/libc-test/semver/linux.txt index 822405ab84..96e38bf005 100644 --- a/libc-test/semver/linux.txt +++ b/libc-test/semver/linux.txt @@ -2794,6 +2794,7 @@ input_event input_id input_keymap_entry input_mask +ip_mreqn ip_mreq_source ipc_perm itimerspec diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs index 3c614f5f9b..c39a70d33f 100644 --- a/src/unix/linux_like/android/mod.rs +++ b/src/unix/linux_like/android/mod.rs @@ -73,12 +73,6 @@ s! { pub cmsg_type: ::c_int, } - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } - pub struct termios { pub c_iflag: ::tcflag_t, pub c_oflag: ::tcflag_t, diff --git a/src/unix/linux_like/linux/gnu/b32/mod.rs b/src/unix/linux_like/linux/gnu/b32/mod.rs index 7a2603cbab..fe3836ca92 100644 --- a/src/unix/linux_like/linux/gnu/b32/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/mod.rs @@ -135,12 +135,6 @@ s! { pub _f: [::c_char; 8], } - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } - pub struct semid_ds { pub sem_perm: ipc_perm, #[cfg(target_arch = "powerpc")] diff --git a/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs b/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs index 9275e75253..dd7c058b67 100644 --- a/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs @@ -197,12 +197,6 @@ s! { pub ss_size: ::size_t } - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } - pub struct seccomp_notif_sizes { pub seccomp_notif: ::__u16, pub seccomp_notif_resp: ::__u16, diff --git a/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs b/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs index 0e3a7640d1..0a71e22402 100644 --- a/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs @@ -191,12 +191,6 @@ s! { pub ss_flags: ::c_int, pub ss_size: ::size_t } - - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } } pub const POSIX_FADV_DONTNEED: ::c_int = 4; diff --git a/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs b/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs index 3a5c1a626f..60d93a2780 100644 --- a/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs @@ -192,12 +192,6 @@ s! { pub l_len: ::off64_t, pub l_pid: ::pid_t, } - - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } } pub const POSIX_FADV_DONTNEED: ::c_int = 4; diff --git a/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs b/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs index d2d0867050..281f23e8a2 100644 --- a/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs @@ -260,12 +260,6 @@ s! { __unused5: u64 } - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } - pub struct seccomp_notif_sizes { pub seccomp_notif: ::__u16, pub seccomp_notif_resp: ::__u16, diff --git a/src/unix/linux_like/linux/musl/mod.rs b/src/unix/linux_like/linux/musl/mod.rs index 97d29ed718..5a20ae596f 100644 --- a/src/unix/linux_like/linux/musl/mod.rs +++ b/src/unix/linux_like/linux/musl/mod.rs @@ -218,12 +218,6 @@ s! { pub rt_irtt: ::c_ushort, } - pub struct ip_mreqn { - pub imr_multiaddr: ::in_addr, - pub imr_address: ::in_addr, - pub imr_ifindex: ::c_int, - } - pub struct __exit_status { pub e_termination: ::c_short, pub e_exit: ::c_short, diff --git a/src/unix/linux_like/mod.rs b/src/unix/linux_like/mod.rs index bdef476aa3..d749e11ae0 100644 --- a/src/unix/linux_like/mod.rs +++ b/src/unix/linux_like/mod.rs @@ -25,6 +25,12 @@ s! { pub imr_interface: in_addr, } + pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::c_int, + } + pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, |