Auto merge of #3041 - devnexen:linux_kernel_version, r=JohnTitor

adding KERNEL_VERSION macro for linux.
This commit is contained in:
bors 2022-12-21 12:54:30 +00:00
commit c59ca73530
3 changed files with 26 additions and 0 deletions

View file

@ -1146,6 +1146,7 @@ J1939_PGN_ADDRESS_COMMANDED
J1939_PGN_MAX
J1939_PGN_PDU1_MAX
J1939_PGN_REQUEST
KERNEL_VERSION
KEYCTL_ASSUME_AUTHORITY
KEYCTL_CHOWN
KEYCTL_CLEAR

View file

@ -0,0 +1,17 @@
//! Compare libc's KERNEL_VERSION macro against a specific kernel version.
extern crate libc;
#[cfg(
target_os = "linux",
)]
mod t {
use libc;
#[test]
fn test_kernel_version() {
unsafe {
assert_eq!(libc::KERNEL_VERSION(6, 0, 0), 393216);
}
}
}

View file

@ -1615,6 +1615,14 @@ safe_f! {
pub {const} fn IPTOS_ECN(x: u8) -> u8 {
x & ::IPTOS_ECN_MASK
}
#[allow(ellipsis_inclusive_range_patterns)]
pub {const} fn KERNEL_VERSION(a: u32, b: u32, c: u32) -> u32 {
((a << 16) + (b << 8)) + match c {
0 ... 255 => c,
_ => 255,
}
}
}
extern "C" {