feat: add msghdr (#13)

* feat: add msghdr

* regen

* add ip.h and ipv6.h

* include more from socket.h

* cleanup

* cleanup types and add mmsghdr
This commit is contained in:
Friedel Ziegelmayer
2022-01-10 21:16:43 +01:00
committed by GitHub
parent 279e8c04f5
commit f913f2ceb2
36 changed files with 16420 additions and 1226 deletions
+34
View File
@@ -13,7 +13,9 @@
#include <linux/fs.h>
#include <linux/futex.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <linux/in6.h>
#include <linux/ipv6.h>
#include <linux/limits.h>
#include <linux/magic.h>
#include <linux/mman.h>
@@ -279,3 +281,35 @@ struct user_desc {
#define BLKSSZGET 0x1268
#define BLKPBSZGET 0x127B
#endif
struct msghdr {
void *msg_name;
int msg_namelen;
struct iovec *msg_iov;
size_t msg_iovlen;
void *msg_control;
size_t msg_controllen;
unsigned int msg_flags;
};
struct cmsghdr {
size_t cmsg_len;
int cmsg_level;
int cmsg_type;
};
#define SCM_RIGHTS 0x01
#define SCM_CREDENTIALS 0x02
#define SCM_SECURITY 0x03
struct ucred {
__u32 pid;
__u32 uid;
__u32 gid;
};
struct mmsghdr {
struct msghdr msg_hdr;
unsigned int msg_len;
};
+338 -11
View File
@@ -493,6 +493,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -586,6 +632,10 @@ pub const IPV6_PREFER_SRC_COA: u32 = 4;
pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
pub const IPV6_PREFER_SRC_CGA: u32 = 8;
pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -1721,6 +1771,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -1969,6 +2022,90 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2007,6 +2144,165 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_MAX = 28,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2406,20 +2702,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_3 = _bindgen_ty_3::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_3 = _bindgen_ty_3::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_3 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -2887,3 +3183,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+338 -11
View File
@@ -490,6 +490,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -583,6 +629,10 @@ pub const IPV6_PREFER_SRC_COA: u32 = 4;
pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
pub const IPV6_PREFER_SRC_CGA: u32 = 8;
pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -1744,6 +1794,9 @@ pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const ARCH_SET_FS: u32 = 4098;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -1986,6 +2039,90 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2024,6 +2161,165 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_MAX = 28,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2405,20 +2701,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_3 = _bindgen_ty_3::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_3 = _bindgen_ty_3::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_3 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -2867,3 +3163,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+338 -11
View File
@@ -489,6 +489,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -582,6 +628,10 @@ pub const IPV6_PREFER_SRC_COA: u32 = 4;
pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
pub const IPV6_PREFER_SRC_CGA: u32 = 8;
pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -1707,6 +1757,9 @@ pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const ARCH_SET_FS: u32 = 4098;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -1949,6 +2002,90 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -1987,6 +2124,165 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_MAX = 28,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2367,20 +2663,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_3 = _bindgen_ty_3::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_3 = _bindgen_ty_3::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_3 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -2821,3 +3117,34 @@ lm as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+354 -16
View File
@@ -484,6 +484,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -585,6 +631,11 @@ pub const IPV6_ORIGDSTADDR: u32 = 74;
pub const IPV6_RECVORIGDSTADDR: u32 = 74;
pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -1814,6 +1865,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2070,6 +2124,90 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2108,6 +2246,175 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MAX = 30,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2509,20 +2816,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_3 = _bindgen_ty_3::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_3 = _bindgen_ty_3::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_3 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -2540,14 +2847,14 @@ pub struct tcp_repair_opt {
pub opt_code: __u32,
pub opt_val: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_4 = _bindgen_ty_4::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_4 = _bindgen_ty_4::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_4 = _bindgen_ty_4::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_4 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -2997,3 +3304,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+346 -11
View File
@@ -503,6 +503,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -603,6 +649,10 @@ pub const IPV6_MINHOPCOUNT: u32 = 73;
pub const IPV6_ORIGDSTADDR: u32 = 74;
pub const IPV6_RECVORIGDSTADDR: u32 = 74;
pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -1811,6 +1861,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2096,6 +2149,90 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2134,6 +2271,173 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_MAX = 29,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2520,20 +2824,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_3 = _bindgen_ty_3::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_3 = _bindgen_ty_3::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_3 = _bindgen_ty_3::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_3 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -2994,3 +3298,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+433 -16
View File
@@ -517,6 +517,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -623,6 +669,11 @@ pub const IPV6_ORIGDSTADDR: u32 = 74;
pub const IPV6_RECVORIGDSTADDR: u32 = 74;
pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -1830,6 +1881,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2088,6 +2142,155 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
__IPV4_DEVCONF_MAX = 30,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2126,6 +2329,189 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_MAX = 37,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2537,20 +2923,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -2568,14 +2954,14 @@ pub struct tcp_repair_opt {
pub opt_code: __u32,
pub opt_val: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -2990,3 +3376,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+491 -39
View File
@@ -544,6 +544,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -655,6 +701,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2020,6 +2072,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2334,6 +2389,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2372,6 +2582,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2856,20 +3277,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -2896,14 +3317,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3027,32 +3448,32 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3422,3 +3843,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+439 -16
View File
@@ -527,6 +527,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -633,6 +679,11 @@ pub const IPV6_ORIGDSTADDR: u32 = 74;
pub const IPV6_RECVORIGDSTADDR: u32 = 74;
pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2058,6 +2109,9 @@ pub const TFD_CREATE_FLAGS: u32 = 524416;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2318,6 +2372,155 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
__IPV4_DEVCONF_MAX = 30,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2356,6 +2559,195 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_MAX = 40,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2776,20 +3168,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -2807,14 +3199,14 @@ pub struct tcp_repair_opt {
pub opt_code: __u32,
pub opt_val: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3274,3 +3666,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+439 -16
View File
@@ -527,6 +527,52 @@ pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -633,6 +679,11 @@ pub const IPV6_ORIGDSTADDR: u32 = 74;
pub const IPV6_RECVORIGDSTADDR: u32 = 74;
pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2018,6 +2069,9 @@ pub const TFD_CREATE_FLAGS: u32 = 524416;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2276,6 +2330,155 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
__IPV4_DEVCONF_MAX = 30,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2314,6 +2517,195 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_MAX = 40,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -2734,20 +3126,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -2765,14 +3157,14 @@ pub struct tcp_repair_opt {
pub opt_code: __u32,
pub opt_val: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3224,3 +3616,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -617,6 +617,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -730,6 +776,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2196,6 +2249,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2614,6 +2670,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2652,6 +2863,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3172,20 +3596,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3212,14 +3636,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3369,36 +3793,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3785,3 +4209,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -615,6 +615,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -728,6 +774,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2280,6 +2333,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2698,6 +2754,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2736,6 +2947,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3257,20 +3681,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3297,14 +3721,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3454,36 +3878,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3906,3 +4330,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -625,6 +625,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -738,6 +784,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2422,6 +2475,9 @@ pub const TFD_CREATE_FLAGS: u32 = 524416;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2842,6 +2898,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2880,6 +3091,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3399,20 +3823,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3439,14 +3863,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3596,36 +4020,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -4050,3 +4474,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -625,6 +625,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -738,6 +784,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2360,6 +2413,9 @@ pub const TFD_CREATE_FLAGS: u32 = 524416;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2778,6 +2834,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2816,6 +3027,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3335,20 +3759,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3375,14 +3799,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3532,36 +3956,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3978,3 +4402,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -628,6 +628,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -741,6 +787,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2300,6 +2353,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2724,6 +2780,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2762,6 +2973,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3296,20 +3720,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3336,14 +3760,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3493,36 +3917,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3964,3 +4388,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -628,6 +628,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -741,6 +787,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2278,6 +2331,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2702,6 +2758,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2740,6 +2951,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3268,20 +3692,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3308,14 +3732,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3465,36 +3889,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3922,3 +4346,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -621,6 +621,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -734,6 +780,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2174,6 +2227,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2592,6 +2648,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2630,6 +2841,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3149,20 +3573,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3189,14 +3613,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3346,36 +3770,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3786,3 +4210,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -621,6 +621,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -734,6 +780,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2195,6 +2248,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2613,6 +2669,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2651,6 +2862,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3170,20 +3594,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3210,14 +3634,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3367,36 +3791,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3783,3 +4207,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -616,6 +616,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -729,6 +775,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2240,6 +2293,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2666,6 +2722,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2704,6 +2915,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3230,20 +3654,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3270,14 +3694,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3427,36 +3851,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3826,3 +4250,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -836,6 +836,52 @@ pub const ASI_BLK_PL: u32 = 248;
pub const ASI_BLK_SL: u32 = 249;
pub const ASI_ST_BLKINIT_MRU_PL: u32 = 250;
pub const ASI_ST_BLKINIT_MRU_SL: u32 = 251;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -949,6 +995,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2494,6 +2547,9 @@ pub const TFD_CREATE_FLAGS: u32 = 4210688;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2914,6 +2970,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2952,6 +3163,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3487,20 +3911,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3527,14 +3951,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3684,36 +4108,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -4121,3 +4545,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -836,6 +836,52 @@ pub const ASI_BLK_PL: u32 = 248;
pub const ASI_BLK_SL: u32 = 249;
pub const ASI_ST_BLKINIT_MRU_PL: u32 = 250;
pub const ASI_ST_BLKINIT_MRU_SL: u32 = 251;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -949,6 +995,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2464,6 +2517,9 @@ pub const TFD_CREATE_FLAGS: u32 = 4210688;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2890,6 +2946,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2928,6 +3139,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3457,20 +3881,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3497,14 +3921,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3654,36 +4078,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -4086,3 +4510,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -617,6 +617,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -730,6 +776,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2309,6 +2362,9 @@ pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const ARCH_SET_FS: u32 = 4098;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2727,6 +2783,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2765,6 +2976,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3287,20 +3711,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3327,14 +3751,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3484,36 +3908,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3936,3 +4360,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+498 -43
View File
@@ -616,6 +616,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -729,6 +775,13 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_3: u32 = 3;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2237,6 +2290,9 @@ pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const ARCH_SET_FS: u32 = 4098;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2655,6 +2711,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2693,6 +2904,219 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_RPL_SEG_ENABLED = 51,
DEVCONF_MAX = 52,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3208,20 +3632,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3248,14 +3672,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3405,36 +3829,36 @@ tcpi_fastopen_client_fail as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_EDT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3849,3 +4273,34 @@ lm as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -607,6 +607,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -719,6 +765,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2137,6 +2189,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2535,6 +2590,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2573,6 +2783,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3076,20 +3497,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3116,14 +3537,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3249,33 +3670,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3646,3 +4067,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -605,6 +605,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -717,6 +763,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2224,6 +2276,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2622,6 +2677,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2660,6 +2870,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3164,20 +3585,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3204,14 +3625,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3337,33 +3758,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3770,3 +4191,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -615,6 +615,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -727,6 +773,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2366,6 +2418,9 @@ pub const TFD_CREATE_FLAGS: u32 = 524416;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2766,6 +2821,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2804,6 +3014,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3306,20 +3727,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3346,14 +3767,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3479,33 +3900,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3914,3 +4335,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -615,6 +615,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -727,6 +773,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2304,6 +2356,9 @@ pub const TFD_CREATE_FLAGS: u32 = 524416;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2702,6 +2757,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2740,6 +2950,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3242,20 +3663,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3282,14 +3703,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3415,33 +3836,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3842,3 +4263,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -618,6 +618,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -730,6 +776,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2244,6 +2296,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2648,6 +2703,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2686,6 +2896,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3203,20 +3624,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3243,14 +3664,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3376,33 +3797,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3828,3 +4249,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -618,6 +618,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -730,6 +776,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2222,6 +2274,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2626,6 +2681,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2664,6 +2874,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3175,20 +3596,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3215,14 +3636,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3348,33 +3769,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3786,3 +4207,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -604,6 +604,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -716,6 +762,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2111,6 +2163,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2509,6 +2564,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2547,6 +2757,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3049,20 +3470,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3089,14 +3510,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3222,33 +3643,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3643,3 +4064,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -604,6 +604,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -716,6 +762,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2132,6 +2184,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2530,6 +2585,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2568,6 +2778,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3070,20 +3491,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3110,14 +3531,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3243,33 +3664,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3640,3 +4061,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -606,6 +606,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __BIG_ENDIAN: u32 = 4321;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -718,6 +764,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2184,6 +2236,9 @@ pub const TFD_CREATE_FLAGS: u32 = 526336;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2590,6 +2645,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2628,6 +2838,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3137,20 +3558,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3177,14 +3598,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3310,33 +3731,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3690,3 +4111,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -826,6 +826,52 @@ pub const ASI_BLK_PL: u32 = 248;
pub const ASI_BLK_SL: u32 = 249;
pub const ASI_ST_BLKINIT_MRU_PL: u32 = 250;
pub const ASI_ST_BLKINIT_MRU_SL: u32 = 251;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -938,6 +984,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2437,6 +2489,9 @@ pub const TFD_CREATE_FLAGS: u32 = 4210688;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2837,6 +2892,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2875,6 +3085,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3393,20 +3814,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3433,14 +3854,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3566,33 +3987,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3984,3 +4405,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -826,6 +826,52 @@ pub const ASI_BLK_PL: u32 = 248;
pub const ASI_BLK_SL: u32 = 249;
pub const ASI_ST_BLKINIT_MRU_PL: u32 = 250;
pub const ASI_ST_BLKINIT_MRU_SL: u32 = 251;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -938,6 +984,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2407,6 +2459,9 @@ pub const TFD_CREATE_FLAGS: u32 = 4210688;
pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const BLKSSZGET: u32 = 536875624;
pub const BLKPBSZGET: u32 = 536875643;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2813,6 +2868,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2851,6 +3061,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3363,20 +3784,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 8388608,
TCP_FLAG_ECE = 4194304,
TCP_FLAG_URG = 2097152,
@@ -3403,14 +3824,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3536,33 +3957,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3949,3 +4370,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -607,6 +607,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -719,6 +765,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2253,6 +2305,9 @@ pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const ARCH_SET_FS: u32 = 4098;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_uint;
pub type ssize_t = crate::ctypes::c_int;
pub type __s8 = crate::ctypes::c_schar;
@@ -2651,6 +2706,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2689,6 +2899,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3194,20 +3615,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3234,14 +3655,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3367,33 +3788,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3800,3 +4221,34 @@ useable as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}
+492 -40
View File
@@ -606,6 +606,52 @@ pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const IPTOS_TOS_MASK: u32 = 30;
pub const IPTOS_LOWDELAY: u32 = 16;
pub const IPTOS_THROUGHPUT: u32 = 8;
pub const IPTOS_RELIABILITY: u32 = 4;
pub const IPTOS_MINCOST: u32 = 2;
pub const IPTOS_PREC_MASK: u32 = 224;
pub const IPTOS_PREC_NETCONTROL: u32 = 224;
pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
pub const IPTOS_PREC_FLASH: u32 = 96;
pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
pub const IPTOS_PREC_PRIORITY: u32 = 32;
pub const IPTOS_PREC_ROUTINE: u32 = 0;
pub const IPOPT_COPY: u32 = 128;
pub const IPOPT_CLASS_MASK: u32 = 96;
pub const IPOPT_NUMBER_MASK: u32 = 31;
pub const IPOPT_CONTROL: u32 = 0;
pub const IPOPT_RESERVED1: u32 = 32;
pub const IPOPT_MEASUREMENT: u32 = 64;
pub const IPOPT_RESERVED2: u32 = 96;
pub const IPOPT_END: u32 = 0;
pub const IPOPT_NOOP: u32 = 1;
pub const IPOPT_SEC: u32 = 130;
pub const IPOPT_LSRR: u32 = 131;
pub const IPOPT_TIMESTAMP: u32 = 68;
pub const IPOPT_CIPSO: u32 = 134;
pub const IPOPT_RR: u32 = 7;
pub const IPOPT_SID: u32 = 136;
pub const IPOPT_SSRR: u32 = 137;
pub const IPOPT_RA: u32 = 148;
pub const IPVERSION: u32 = 4;
pub const MAXTTL: u32 = 255;
pub const IPDEFTTL: u32 = 64;
pub const IPOPT_OPTVAL: u32 = 0;
pub const IPOPT_OLEN: u32 = 1;
pub const IPOPT_OFFSET: u32 = 2;
pub const IPOPT_MINOFF: u32 = 4;
pub const MAX_IPOPTLEN: u32 = 40;
pub const IPOPT_NOP: u32 = 1;
pub const IPOPT_EOL: u32 = 0;
pub const IPOPT_TS: u32 = 68;
pub const IPOPT_TS_TSONLY: u32 = 0;
pub const IPOPT_TS_TSANDADDR: u32 = 1;
pub const IPOPT_TS_PRESPEC: u32 = 3;
pub const IPV4_BEET_PHMAXLEN: u32 = 8;
pub const IPV6_FL_A_GET: u32 = 0;
pub const IPV6_FL_A_PUT: u32 = 1;
pub const IPV6_FL_A_RENEW: u32 = 2;
@@ -718,6 +764,12 @@ pub const IPV6_TRANSPARENT: u32 = 75;
pub const IPV6_UNICAST_IF: u32 = 76;
pub const IPV6_RECVFRAGSIZE: u32 = 77;
pub const IPV6_FREEBIND: u32 = 78;
pub const IPV6_MIN_MTU: u32 = 1280;
pub const IPV6_SRCRT_STRICT: u32 = 1;
pub const IPV6_SRCRT_TYPE_0: u32 = 0;
pub const IPV6_SRCRT_TYPE_2: u32 = 2;
pub const IPV6_SRCRT_TYPE_4: u32 = 4;
pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
pub const ADFS_SUPER_MAGIC: u32 = 44533;
pub const AFFS_SUPER_MAGIC: u32 = 44543;
pub const AFS_SUPER_MAGIC: u32 = 1397113167;
@@ -2181,6 +2233,9 @@ pub const TFD_SETTIME_FLAGS: u32 = 1;
pub const ARCH_SET_FS: u32 = 4098;
pub const BLKSSZGET: u32 = 4712;
pub const BLKPBSZGET: u32 = 4731;
pub const SCM_RIGHTS: u32 = 1;
pub const SCM_CREDENTIALS: u32 = 2;
pub const SCM_SECURITY: u32 = 3;
pub type size_t = crate::ctypes::c_ulong;
pub type ssize_t = crate::ctypes::c_long;
pub type __s8 = crate::ctypes::c_schar;
@@ -2579,6 +2634,161 @@ pub sin_addr: in_addr,
pub __pad: [crate::ctypes::c_uchar; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iphdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub tos: __u8,
pub tot_len: __be16,
pub id: __be16,
pub frag_off: __be16,
pub ttl: __u8,
pub protocol: __u8,
pub check: __sum16,
pub saddr: __be32,
pub daddr: __be32,
}
impl iphdr {
#[inline]
pub fn ihl(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_ihl(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
ihl as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_auth_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub reserved: __be16,
pub spi: __be32,
pub seq_no: __be32,
pub auth_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug)]
pub struct ip_esp_hdr {
pub spi: __be32,
pub seq_no: __be32,
pub enc_data: __IncompleteArrayField<__u8>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_comp_hdr {
pub nexthdr: __u8,
pub flags: __u8,
pub cpi: __be16,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ip_beet_phdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub padlen: __u8,
pub reserved: __u8,
}
pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
IPV4_DEVCONF_FORWARDING = 1,
IPV4_DEVCONF_MC_FORWARDING = 2,
IPV4_DEVCONF_PROXY_ARP = 3,
IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
IPV4_DEVCONF_SECURE_REDIRECTS = 5,
IPV4_DEVCONF_SEND_REDIRECTS = 6,
IPV4_DEVCONF_SHARED_MEDIA = 7,
IPV4_DEVCONF_RP_FILTER = 8,
IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
IPV4_DEVCONF_BOOTP_RELAY = 10,
IPV4_DEVCONF_LOG_MARTIANS = 11,
IPV4_DEVCONF_TAG = 12,
IPV4_DEVCONF_ARPFILTER = 13,
IPV4_DEVCONF_MEDIUM_ID = 14,
IPV4_DEVCONF_NOXFRM = 15,
IPV4_DEVCONF_NOPOLICY = 16,
IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
IPV4_DEVCONF_ARP_ANNOUNCE = 18,
IPV4_DEVCONF_ARP_IGNORE = 19,
IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
IPV4_DEVCONF_ARP_ACCEPT = 21,
IPV4_DEVCONF_ARP_NOTIFY = 22,
IPV4_DEVCONF_ACCEPT_LOCAL = 23,
IPV4_DEVCONF_SRC_VMARK = 24,
IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
IPV4_DEVCONF_ROUTE_LOCALNET = 26,
IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
IPV4_DEVCONF_BC_FORWARDING = 32,
__IPV4_DEVCONF_MAX = 33,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_addr {
pub in6_u: in6_addr__bindgen_ty_1,
@@ -2617,6 +2827,217 @@ pub flr_expires: __u16,
pub flr_linger: __u16,
pub __flr_pad: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_pktinfo {
pub ipi6_addr: in6_addr,
pub ipi6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ip6_mtuinfo {
pub ip6m_addr: sockaddr_in6,
pub ip6m_mtu: __u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct in6_ifreq {
pub ifr6_addr: in6_addr,
pub ifr6_prefixlen: __u32,
pub ifr6_ifindex: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_rt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
pub type_: __u8,
pub segments_left: __u8,
}
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct ipv6_opt_hdr {
pub nexthdr: __u8,
pub hdrlen: __u8,
}
#[repr(C)]
pub struct rt0_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: __IncompleteArrayField<in6_addr>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct rt2_hdr {
pub rt_hdr: ipv6_rt_hdr,
pub reserved: __u32,
pub addr: in6_addr,
}
#[repr(C, packed)]
#[derive(Copy, Clone)]
pub struct ipv6_destopt_hao {
pub type_: __u8,
pub length: __u8,
pub addr: in6_addr,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ipv6hdr {
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub flow_lbl: [__u8; 3usize],
pub payload_len: __be16,
pub nexthdr: __u8,
pub hop_limit: __u8,
pub saddr: in6_addr,
pub daddr: in6_addr,
}
impl ipv6hdr {
#[inline]
pub fn priority(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
}
#[inline]
pub fn set_priority(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 4u8, val as u64)
}
}
#[inline]
pub fn version(&self) -> __u8 {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
}
#[inline]
pub fn set_version(&mut self, val: __u8) {
unsafe {
let val: u8 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 4u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 4u8, {
let priority: u8 = unsafe { ::core::mem::transmute(priority) };
priority as u64
});
__bindgen_bitfield_unit.set(4usize, 4u8, {
let version: u8 = unsafe { ::core::mem::transmute(version) };
version as u64
});
__bindgen_bitfield_unit
}
}
pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
DEVCONF_FORWARDING = 0,
DEVCONF_HOPLIMIT = 1,
DEVCONF_MTU6 = 2,
DEVCONF_ACCEPT_RA = 3,
DEVCONF_ACCEPT_REDIRECTS = 4,
DEVCONF_AUTOCONF = 5,
DEVCONF_DAD_TRANSMITS = 6,
DEVCONF_RTR_SOLICITS = 7,
DEVCONF_RTR_SOLICIT_INTERVAL = 8,
DEVCONF_RTR_SOLICIT_DELAY = 9,
DEVCONF_USE_TEMPADDR = 10,
DEVCONF_TEMP_VALID_LFT = 11,
DEVCONF_TEMP_PREFERED_LFT = 12,
DEVCONF_REGEN_MAX_RETRY = 13,
DEVCONF_MAX_DESYNC_FACTOR = 14,
DEVCONF_MAX_ADDRESSES = 15,
DEVCONF_FORCE_MLD_VERSION = 16,
DEVCONF_ACCEPT_RA_DEFRTR = 17,
DEVCONF_ACCEPT_RA_PINFO = 18,
DEVCONF_ACCEPT_RA_RTR_PREF = 19,
DEVCONF_RTR_PROBE_INTERVAL = 20,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
DEVCONF_PROXY_NDP = 22,
DEVCONF_OPTIMISTIC_DAD = 23,
DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
DEVCONF_MC_FORWARDING = 25,
DEVCONF_DISABLE_IPV6 = 26,
DEVCONF_ACCEPT_DAD = 27,
DEVCONF_FORCE_TLLAO = 28,
DEVCONF_NDISC_NOTIFY = 29,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
DEVCONF_SUPPRESS_FRAG_NDISC = 32,
DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
DEVCONF_USE_OPTIMISTIC = 34,
DEVCONF_ACCEPT_RA_MTU = 35,
DEVCONF_STABLE_SECRET = 36,
DEVCONF_USE_OIF_ADDRS_ONLY = 37,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
DEVCONF_DROP_UNSOLICITED_NA = 41,
DEVCONF_KEEP_ADDR_ON_DOWN = 42,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
DEVCONF_SEG6_ENABLED = 44,
DEVCONF_SEG6_REQUIRE_HMAC = 45,
DEVCONF_ENHANCED_DAD = 46,
DEVCONF_ADDR_GEN_MODE = 47,
DEVCONF_DISABLE_POLICY = 48,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
DEVCONF_NDISC_TCLASS = 50,
DEVCONF_MAX = 51,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
@@ -3115,20 +3536,20 @@ pub union tcp_word_hdr {
pub hdr: tcphdr,
pub words: [__be32; 5usize],
}
pub const TCP_FLAG_CWR: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_2 = _bindgen_ty_2::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_2 = _bindgen_ty_2::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_2 = _bindgen_ty_2::TCP_DATA_OFFSET;
pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_2 {
pub enum _bindgen_ty_4 {
TCP_FLAG_CWR = 32768,
TCP_FLAG_ECE = 16384,
TCP_FLAG_URG = 8192,
@@ -3155,14 +3576,14 @@ pub max_window: __u32,
pub rcv_wnd: __u32,
pub rcv_wup: __u32,
}
pub const TCP_NO_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_3 = _bindgen_ty_3::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_3 = _bindgen_ty_3::TCP_QUEUES_NR;
pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_3 {
pub enum _bindgen_ty_5 {
TCP_NO_QUEUE = 0,
TCP_RECV_QUEUE = 1,
TCP_SEND_QUEUE = 2,
@@ -3288,33 +3709,33 @@ tcpi_delivery_rate_app_limited as u64
__bindgen_bitfield_unit
}
}
pub const TCP_NLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_4 = _bindgen_ty_4::TCP_NLA_SRTT;
pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum _bindgen_ty_4 {
pub enum _bindgen_ty_6 {
TCP_NLA_PAD = 0,
TCP_NLA_BUSY = 1,
TCP_NLA_RWND_LIMITED = 2,
@@ -3713,3 +4134,34 @@ lm as u64
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut crate::ctypes::c_void,
pub msg_namelen: crate::ctypes::c_int,
pub msg_iov: *mut iovec,
pub msg_iovlen: size_t,
pub msg_control: *mut crate::ctypes::c_void,
pub msg_controllen: size_t,
pub msg_flags: crate::ctypes::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cmsghdr {
pub cmsg_len: size_t,
pub cmsg_level: crate::ctypes::c_int,
pub cmsg_type: crate::ctypes::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucred {
pub pid: __u32,
pub uid: __u32,
pub gid: __u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mmsghdr {
pub msg_hdr: msghdr,
pub msg_len: crate::ctypes::c_uint,
}