summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-05-06 06:25:51 +0000
committerbors <bors@rust-lang.org>2023-05-06 06:25:51 +0000
commita11d63a0c747c8991bb488e62de0ebd14b86bae9 (patch)
treea9bc06d440f09a646794948b644ecfd1033fd7db
parent461807bbd16fb1bf8ad076cc839f57ca4ca0b9d1 (diff)
parent1abdc6158a5d200189fccb2f89c1b703ec86253e (diff)
downloadrust-libc-a11d63a0c747c8991bb488e62de0ebd14b86bae9.tar.gz
Auto merge of #3051 - tones111:rtnl_if_enum, r=JohnTitor
linux: add rtnetlink ifinfomsg attribute enumerals
-rw-r--r--libc-test/build.rs3
-rw-r--r--libc-test/semver/linux.txt10
-rw-r--r--src/unix/linux_like/linux/mod.rs13
3 files changed, 26 insertions, 0 deletions
diff --git a/libc-test/build.rs b/libc-test/build.rs
index e23b0d0a37..2b20745ee3 100644
--- a/libc-test/build.rs
+++ b/libc-test/build.rs
@@ -3683,6 +3683,9 @@ fn test_linux(target: &str) {
// FIXME: requires Linux >= 5.7:
"MREMAP_DONTUNMAP" if musl => true,
+ // FIXME: requires Linux >= v5.8
+ "IF_LINK_MODE_TESTING" if musl || sparc64 => true,
+
// FIXME: Requires more recent kernel headers (5.9 / 5.11):
| "CLOSE_RANGE_UNSHARE"
| "CLOSE_RANGE_CLOEXEC" if musl => true,
diff --git a/libc-test/semver/linux.txt b/libc-test/semver/linux.txt
index 4e9ff8d420..5d86647f08 100644
--- a/libc-test/semver/linux.txt
+++ b/libc-test/semver/linux.txt
@@ -839,6 +839,16 @@ HWTSTAMP_FILTER_PTP_V2_SYNC
HWTSTAMP_FILTER_PTP_V2_DELAY_REQ
HWTSTAMP_FILTER_NTP_ALL
IBSHIFT
+IF_LINK_MODE_DEFAULT
+IF_LINK_MODE_DORMANT
+IF_LINK_MODE_TESTING
+IF_OPER_DORMANT
+IF_OPER_DOWN
+IF_OPER_LOWERLAYERDOWN
+IF_OPER_NOTPRESENT
+IF_OPER_TESTING
+IF_OPER_UNKNOWN
+IF_OPER_UP
IFA_ADDRESS
IFA_ANYCAST
IFA_BROADCAST
diff --git a/src/unix/linux_like/linux/mod.rs b/src/unix/linux_like/linux/mod.rs
index dae589fd14..45a383b405 100644
--- a/src/unix/linux_like/linux/mod.rs
+++ b/src/unix/linux_like/linux/mod.rs
@@ -3192,6 +3192,19 @@ pub const ALG_SET_AEAD_AUTHSIZE: ::c_int = 5;
pub const ALG_OP_DECRYPT: ::c_int = 0;
pub const ALG_OP_ENCRYPT: ::c_int = 1;
+// include/uapi/linux/if.h
+pub const IF_OPER_UNKNOWN: ::c_int = 0;
+pub const IF_OPER_NOTPRESENT: ::c_int = 1;
+pub const IF_OPER_DOWN: ::c_int = 2;
+pub const IF_OPER_LOWERLAYERDOWN: ::c_int = 3;
+pub const IF_OPER_TESTING: ::c_int = 4;
+pub const IF_OPER_DORMANT: ::c_int = 5;
+pub const IF_OPER_UP: ::c_int = 6;
+
+pub const IF_LINK_MODE_DEFAULT: ::c_int = 0;
+pub const IF_LINK_MODE_DORMANT: ::c_int = 1;
+pub const IF_LINK_MODE_TESTING: ::c_int = 2;
+
// include/uapi/linux/udp.h
pub const UDP_CORK: ::c_int = 1;
pub const UDP_ENCAP: ::c_int = 100;