#![allow(unused_imports, dead_code)]
pub use libc::AF_XDP; pub use libc::SOL_XDP;
pub use libc::XDP_MMAP_OFFSETS; pub use libc::XDP_RX_RING; pub use libc::XDP_STATISTICS;
pub use libc::XDP_TX_RING; pub use libc::XDP_UMEM_COMPLETION_RING; pub use libc::XDP_UMEM_FILL_RING; pub use libc::XDP_UMEM_REG;
pub use libc::XDP_PGOFF_RX_RING; pub use libc::XDP_PGOFF_TX_RING; pub use libc::XDP_UMEM_PGOFF_COMPLETION_RING; pub use libc::XDP_UMEM_PGOFF_FILL_RING;
pub use libc::XDP_COPY; pub use libc::XDP_SHARED_UMEM; pub use libc::XDP_USE_NEED_WAKEUP; pub use libc::XDP_ZEROCOPY;
pub use libc::sockaddr_xdp; pub use libc::xdp_desc; pub use libc::xdp_mmap_offsets; pub use libc::xdp_ring_offset; pub use libc::xdp_statistics;
pub use libc::xdp_umem_reg;
pub const XDP_RING_NEED_WAKEUP: u32 = 1;
#[cfg(test)]
mod tests {
use super::*;
use std::mem::size_of;
#[test]
fn constant_values() {
assert_eq!(AF_XDP, 44);
assert_eq!(SOL_XDP, 283);
assert_eq!(XDP_MMAP_OFFSETS, 1);
assert_eq!(XDP_RX_RING, 2);
assert_eq!(XDP_TX_RING, 3);
assert_eq!(XDP_UMEM_REG, 4);
assert_eq!(XDP_UMEM_FILL_RING, 5);
assert_eq!(XDP_UMEM_COMPLETION_RING, 6);
assert_eq!(XDP_STATISTICS, 7);
}
#[test]
fn struct_sizes() {
assert_eq!(size_of::<xdp_umem_reg>(), 32);
assert_eq!(size_of::<sockaddr_xdp>(), 16);
assert_eq!(size_of::<xdp_desc>(), 16);
assert_eq!(size_of::<xdp_mmap_offsets>(), 128);
assert_eq!(size_of::<xdp_ring_offset>(), 32);
}
#[test]
fn bind_flag_values() {
assert_eq!(XDP_SHARED_UMEM, 1);
assert_eq!(XDP_COPY, 2);
assert_eq!(XDP_ZEROCOPY, 4);
assert_eq!(XDP_USE_NEED_WAKEUP, 8);
}
#[test]
fn ring_need_wakeup() {
assert_eq!(XDP_RING_NEED_WAKEUP, 1);
}
}