/* automatically generated by rust-bindgen 0.72.1 */
#[repr(C)]
#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct __BindgenBitfieldUnit<Storage> {
storage: Storage,
}
impl<Storage> __BindgenBitfieldUnit<Storage> {
#[inline]
pub const fn new(storage: Storage) -> Self {
Self { storage }
}
}
impl<Storage> __BindgenBitfieldUnit<Storage>
where
Storage: AsRef<[u8]> + AsMut<[u8]>,
{
#[inline]
fn extract_bit(byte: u8, index: usize) -> bool {
let bit_index = if cfg!(target_endian = "big") {
7 - (index % 8)
} else {
index % 8
};
let mask = 1 << bit_index;
byte & mask == mask
}
#[inline]
pub fn get_bit(&self, index: usize) -> bool {
debug_assert!(index / 8 < self.storage.as_ref().len());
let byte_index = index / 8;
let byte = self.storage.as_ref()[byte_index];
Self::extract_bit(byte, index)
}
#[inline]
pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
debug_assert!(index / 8 < core::mem::size_of::<Storage>());
let byte_index = index / 8;
let byte = unsafe {
*(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize)
};
Self::extract_bit(byte, index)
}
#[inline]
fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
let bit_index = if cfg!(target_endian = "big") {
7 - (index % 8)
} else {
index % 8
};
let mask = 1 << bit_index;
if val { byte | mask } else { byte & !mask }
}
#[inline]
pub fn set_bit(&mut self, index: usize, val: bool) {
debug_assert!(index / 8 < self.storage.as_ref().len());
let byte_index = index / 8;
let byte = &mut self.storage.as_mut()[byte_index];
*byte = Self::change_bit(*byte, index, val);
}
#[inline]
pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
debug_assert!(index / 8 < core::mem::size_of::<Storage>());
let byte_index = index / 8;
let byte = unsafe {
(core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize)
};
unsafe { *byte = Self::change_bit(*byte, index, val) };
}
#[inline]
pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
let mut val = 0;
for i in 0..(bit_width as usize) {
if self.get_bit(i + bit_offset) {
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
val |= 1 << index;
}
}
val
}
#[inline]
pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
let mut val = 0;
for i in 0..(bit_width as usize) {
if unsafe { Self::raw_get_bit(this, i + bit_offset) } {
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
val |= 1 << index;
}
}
val
}
#[inline]
pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
for i in 0..(bit_width as usize) {
let mask = 1 << i;
let val_bit_is_set = val & mask == mask;
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
self.set_bit(index + bit_offset, val_bit_is_set);
}
}
#[inline]
pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
for i in 0..(bit_width as usize) {
let mask = 1 << i;
let val_bit_is_set = val & mask == mask;
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
unsafe { Self::raw_set_bit(this, index + bit_offset, val_bit_is_set) };
}
}
}
#[derive(PartialEq, Copy, Clone, Hash, Debug, Default)]
#[repr(C)]
pub struct __BindgenComplex<T> {
pub re: T,
pub im: T,
}
#[repr(C)]
#[derive(Default)]
pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]);
impl<T> __IncompleteArrayField<T> {
#[inline]
pub const fn new() -> Self {
__IncompleteArrayField(::std::marker::PhantomData, [])
}
#[inline]
pub fn as_ptr(&self) -> *const T {
self as *const _ as *const T
}
#[inline]
pub fn as_mut_ptr(&mut self) -> *mut T {
self as *mut _ as *mut T
}
#[inline]
pub unsafe fn as_slice(&self, len: usize) -> &[T] {
::std::slice::from_raw_parts(self.as_ptr(), len)
}
#[inline]
pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
}
}
impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> {
fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
fmt.write_str("__IncompleteArrayField")
}
}
pub const _SYS_SOCKET_H: u32 = 1;
pub const _FEATURES_H: u32 = 1;
pub const _DEFAULT_SOURCE: u32 = 1;
pub const __GLIBC_USE_ISOC2Y: u32 = 0;
pub const __GLIBC_USE_ISOC23: u32 = 0;
pub const __USE_ISOC11: u32 = 1;
pub const __USE_ISOC99: u32 = 1;
pub const __USE_ISOC95: u32 = 1;
pub const __USE_POSIX_IMPLICITLY: u32 = 1;
pub const _POSIX_SOURCE: u32 = 1;
pub const _POSIX_C_SOURCE: u32 = 202405;
pub const __USE_POSIX: u32 = 1;
pub const __USE_POSIX2: u32 = 1;
pub const __USE_POSIX199309: u32 = 1;
pub const __USE_POSIX199506: u32 = 1;
pub const __USE_XOPEN2K: u32 = 1;
pub const __USE_XOPEN2K8: u32 = 1;
pub const _ATFILE_SOURCE: u32 = 1;
pub const __USE_XOPEN2K24: u32 = 1;
pub const __WORDSIZE: u32 = 64;
pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
pub const __SYSCALL_WORDSIZE: u32 = 64;
pub const __TIMESIZE: u32 = 64;
pub const __USE_TIME_BITS64: u32 = 1;
pub const __USE_MISC: u32 = 1;
pub const __USE_ATFILE: u32 = 1;
pub const __USE_FORTIFY_LEVEL: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
pub const __GLIBC_USE_C23_STRTOL: u32 = 0;
pub const _STDC_PREDEF_H: u32 = 1;
pub const __STDC_IEC_559__: u32 = 1;
pub const __STDC_IEC_60559_BFP__: u32 = 201404;
pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
pub const __STDC_ISO_10646__: u32 = 201706;
pub const __GNU_LIBRARY__: u32 = 6;
pub const __GLIBC__: u32 = 2;
pub const __GLIBC_MINOR__: u32 = 43;
pub const _SYS_CDEFS_H: u32 = 1;
pub const __glibc_c99_flexarr_available: u32 = 1;
pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
pub const __HAVE_GENERIC_SELECTION: u32 = 1;
pub const __iovec_defined: u32 = 1;
pub const _SYS_TYPES_H: u32 = 1;
pub const _BITS_TYPES_H: u32 = 1;
pub const _BITS_TYPESIZES_H: u32 = 1;
pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
pub const __INO_T_MATCHES_INO64_T: u32 = 1;
pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
pub const __STATFS_MATCHES_STATFS64: u32 = 1;
pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
pub const __FD_SETSIZE: u32 = 1024;
pub const _BITS_TIME64_H: u32 = 1;
pub const __clock_t_defined: u32 = 1;
pub const __clockid_t_defined: u32 = 1;
pub const __time_t_defined: u32 = 1;
pub const __timer_t_defined: u32 = 1;
pub const _BITS_STDINT_INTN_H: u32 = 1;
pub const __BIT_TYPES_DEFINED__: u32 = 1;
pub const _ENDIAN_H: u32 = 1;
pub const _BITS_ENDIAN_H: u32 = 1;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const __BIG_ENDIAN: u32 = 4321;
pub const __PDP_ENDIAN: u32 = 3412;
pub const _BITS_ENDIANNESS_H: u32 = 1;
pub const __BYTE_ORDER: u32 = 1234;
pub const __FLOAT_WORD_ORDER: u32 = 1234;
pub const LITTLE_ENDIAN: u32 = 1234;
pub const BIG_ENDIAN: u32 = 4321;
pub const PDP_ENDIAN: u32 = 3412;
pub const BYTE_ORDER: u32 = 1234;
pub const _BITS_BYTESWAP_H: u32 = 1;
pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
pub const _SYS_SELECT_H: u32 = 1;
pub const __sigset_t_defined: u32 = 1;
pub const __timeval_defined: u32 = 1;
pub const _STRUCT_TIMESPEC: u32 = 1;
pub const FD_SETSIZE: u32 = 1024;
pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
pub const _THREAD_SHARED_TYPES_H: u32 = 1;
pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
pub const __have_pthread_attr_t: u32 = 1;
pub const PF_UNSPEC: u32 = 0;
pub const PF_LOCAL: u32 = 1;
pub const PF_UNIX: u32 = 1;
pub const PF_FILE: u32 = 1;
pub const PF_INET: u32 = 2;
pub const PF_AX25: u32 = 3;
pub const PF_IPX: u32 = 4;
pub const PF_APPLETALK: u32 = 5;
pub const PF_NETROM: u32 = 6;
pub const PF_BRIDGE: u32 = 7;
pub const PF_ATMPVC: u32 = 8;
pub const PF_X25: u32 = 9;
pub const PF_INET6: u32 = 10;
pub const PF_ROSE: u32 = 11;
pub const PF_DECnet: u32 = 12;
pub const PF_NETBEUI: u32 = 13;
pub const PF_SECURITY: u32 = 14;
pub const PF_KEY: u32 = 15;
pub const PF_NETLINK: u32 = 16;
pub const PF_ROUTE: u32 = 16;
pub const PF_PACKET: u32 = 17;
pub const PF_ASH: u32 = 18;
pub const PF_ECONET: u32 = 19;
pub const PF_ATMSVC: u32 = 20;
pub const PF_RDS: u32 = 21;
pub const PF_SNA: u32 = 22;
pub const PF_IRDA: u32 = 23;
pub const PF_PPPOX: u32 = 24;
pub const PF_WANPIPE: u32 = 25;
pub const PF_LLC: u32 = 26;
pub const PF_IB: u32 = 27;
pub const PF_MPLS: u32 = 28;
pub const PF_CAN: u32 = 29;
pub const PF_TIPC: u32 = 30;
pub const PF_BLUETOOTH: u32 = 31;
pub const PF_IUCV: u32 = 32;
pub const PF_RXRPC: u32 = 33;
pub const PF_ISDN: u32 = 34;
pub const PF_PHONET: u32 = 35;
pub const PF_IEEE802154: u32 = 36;
pub const PF_CAIF: u32 = 37;
pub const PF_ALG: u32 = 38;
pub const PF_NFC: u32 = 39;
pub const PF_VSOCK: u32 = 40;
pub const PF_KCM: u32 = 41;
pub const PF_QIPCRTR: u32 = 42;
pub const PF_SMC: u32 = 43;
pub const PF_XDP: u32 = 44;
pub const PF_MCTP: u32 = 45;
pub const PF_MAX: u32 = 46;
pub const AF_UNSPEC: u32 = 0;
pub const AF_LOCAL: u32 = 1;
pub const AF_UNIX: u32 = 1;
pub const AF_FILE: u32 = 1;
pub const AF_INET: u32 = 2;
pub const AF_AX25: u32 = 3;
pub const AF_IPX: u32 = 4;
pub const AF_APPLETALK: u32 = 5;
pub const AF_NETROM: u32 = 6;
pub const AF_BRIDGE: u32 = 7;
pub const AF_ATMPVC: u32 = 8;
pub const AF_X25: u32 = 9;
pub const AF_INET6: u32 = 10;
pub const AF_ROSE: u32 = 11;
pub const AF_DECnet: u32 = 12;
pub const AF_NETBEUI: u32 = 13;
pub const AF_SECURITY: u32 = 14;
pub const AF_KEY: u32 = 15;
pub const AF_NETLINK: u32 = 16;
pub const AF_ROUTE: u32 = 16;
pub const AF_PACKET: u32 = 17;
pub const AF_ASH: u32 = 18;
pub const AF_ECONET: u32 = 19;
pub const AF_ATMSVC: u32 = 20;
pub const AF_RDS: u32 = 21;
pub const AF_SNA: u32 = 22;
pub const AF_IRDA: u32 = 23;
pub const AF_PPPOX: u32 = 24;
pub const AF_WANPIPE: u32 = 25;
pub const AF_LLC: u32 = 26;
pub const AF_IB: u32 = 27;
pub const AF_MPLS: u32 = 28;
pub const AF_CAN: u32 = 29;
pub const AF_TIPC: u32 = 30;
pub const AF_BLUETOOTH: u32 = 31;
pub const AF_IUCV: u32 = 32;
pub const AF_RXRPC: u32 = 33;
pub const AF_ISDN: u32 = 34;
pub const AF_PHONET: u32 = 35;
pub const AF_IEEE802154: u32 = 36;
pub const AF_CAIF: u32 = 37;
pub const AF_ALG: u32 = 38;
pub const AF_NFC: u32 = 39;
pub const AF_VSOCK: u32 = 40;
pub const AF_KCM: u32 = 41;
pub const AF_QIPCRTR: u32 = 42;
pub const AF_SMC: u32 = 43;
pub const AF_XDP: u32 = 44;
pub const AF_MCTP: u32 = 45;
pub const AF_MAX: u32 = 46;
pub const SOL_RAW: u32 = 255;
pub const SOL_DECNET: u32 = 261;
pub const SOL_X25: u32 = 262;
pub const SOL_PACKET: u32 = 263;
pub const SOL_ATM: u32 = 264;
pub const SOL_AAL: u32 = 265;
pub const SOL_IRDA: u32 = 266;
pub const SOL_NETBEUI: u32 = 267;
pub const SOL_LLC: u32 = 268;
pub const SOL_DCCP: u32 = 269;
pub const SOL_NETLINK: u32 = 270;
pub const SOL_TIPC: u32 = 271;
pub const SOL_RXRPC: u32 = 272;
pub const SOL_PPPOL2TP: u32 = 273;
pub const SOL_BLUETOOTH: u32 = 274;
pub const SOL_PNPIPE: u32 = 275;
pub const SOL_RDS: u32 = 276;
pub const SOL_IUCV: u32 = 277;
pub const SOL_CAIF: u32 = 278;
pub const SOL_ALG: u32 = 279;
pub const SOL_NFC: u32 = 280;
pub const SOL_KCM: u32 = 281;
pub const SOL_TLS: u32 = 282;
pub const SOL_XDP: u32 = 283;
pub const SOL_MPTCP: u32 = 284;
pub const SOL_MCTP: u32 = 285;
pub const SOL_SMC: u32 = 286;
pub const SOL_VSOCK: u32 = 287;
pub const SOMAXCONN: u32 = 4096;
pub const _BITS_SOCKADDR_H: u32 = 1;
pub const _SS_SIZE: u32 = 128;
pub const __BITS_PER_LONG: u32 = 64;
pub const __BITS_PER_LONG_LONG: u32 = 64;
pub const FIOSETOWN: u32 = 35073;
pub const SIOCSPGRP: u32 = 35074;
pub const FIOGETOWN: u32 = 35075;
pub const SIOCGPGRP: u32 = 35076;
pub const SIOCATMARK: u32 = 35077;
pub const SIOCGSTAMP_OLD: u32 = 35078;
pub const SIOCGSTAMPNS_OLD: u32 = 35079;
pub const SOL_SOCKET: u32 = 1;
pub const SO_DEBUG: u32 = 1;
pub const SO_REUSEADDR: u32 = 2;
pub const SO_TYPE: u32 = 3;
pub const SO_ERROR: u32 = 4;
pub const SO_DONTROUTE: u32 = 5;
pub const SO_BROADCAST: u32 = 6;
pub const SO_SNDBUF: u32 = 7;
pub const SO_RCVBUF: u32 = 8;
pub const SO_SNDBUFFORCE: u32 = 32;
pub const SO_RCVBUFFORCE: u32 = 33;
pub const SO_KEEPALIVE: u32 = 9;
pub const SO_OOBINLINE: u32 = 10;
pub const SO_NO_CHECK: u32 = 11;
pub const SO_PRIORITY: u32 = 12;
pub const SO_LINGER: u32 = 13;
pub const SO_BSDCOMPAT: u32 = 14;
pub const SO_REUSEPORT: u32 = 15;
pub const SO_PASSCRED: u32 = 16;
pub const SO_PEERCRED: u32 = 17;
pub const SO_RCVLOWAT: u32 = 18;
pub const SO_SNDLOWAT: u32 = 19;
pub const SO_RCVTIMEO_OLD: u32 = 20;
pub const SO_SNDTIMEO_OLD: u32 = 21;
pub const SO_SECURITY_AUTHENTICATION: u32 = 22;
pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23;
pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24;
pub const SO_BINDTODEVICE: u32 = 25;
pub const SO_ATTACH_FILTER: u32 = 26;
pub const SO_DETACH_FILTER: u32 = 27;
pub const SO_GET_FILTER: u32 = 26;
pub const SO_PEERNAME: u32 = 28;
pub const SO_ACCEPTCONN: u32 = 30;
pub const SO_PEERSEC: u32 = 31;
pub const SO_PASSSEC: u32 = 34;
pub const SO_MARK: u32 = 36;
pub const SO_PROTOCOL: u32 = 38;
pub const SO_DOMAIN: u32 = 39;
pub const SO_RXQ_OVFL: u32 = 40;
pub const SO_WIFI_STATUS: u32 = 41;
pub const SCM_WIFI_STATUS: u32 = 41;
pub const SO_PEEK_OFF: u32 = 42;
pub const SO_NOFCS: u32 = 43;
pub const SO_LOCK_FILTER: u32 = 44;
pub const SO_SELECT_ERR_QUEUE: u32 = 45;
pub const SO_BUSY_POLL: u32 = 46;
pub const SO_MAX_PACING_RATE: u32 = 47;
pub const SO_BPF_EXTENSIONS: u32 = 48;
pub const SO_INCOMING_CPU: u32 = 49;
pub const SO_ATTACH_BPF: u32 = 50;
pub const SO_DETACH_BPF: u32 = 27;
pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51;
pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52;
pub const SO_CNX_ADVICE: u32 = 53;
pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54;
pub const SO_MEMINFO: u32 = 55;
pub const SO_INCOMING_NAPI_ID: u32 = 56;
pub const SO_COOKIE: u32 = 57;
pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58;
pub const SO_PEERGROUPS: u32 = 59;
pub const SO_ZEROCOPY: u32 = 60;
pub const SO_TXTIME: u32 = 61;
pub const SCM_TXTIME: u32 = 61;
pub const SO_BINDTOIFINDEX: u32 = 62;
pub const SO_TIMESTAMP_OLD: u32 = 29;
pub const SO_TIMESTAMPNS_OLD: u32 = 35;
pub const SO_TIMESTAMPING_OLD: u32 = 37;
pub const SO_TIMESTAMP_NEW: u32 = 63;
pub const SO_TIMESTAMPNS_NEW: u32 = 64;
pub const SO_TIMESTAMPING_NEW: u32 = 65;
pub const SO_RCVTIMEO_NEW: u32 = 66;
pub const SO_SNDTIMEO_NEW: u32 = 67;
pub const SO_DETACH_REUSEPORT_BPF: u32 = 68;
pub const SO_PREFER_BUSY_POLL: u32 = 69;
pub const SO_BUSY_POLL_BUDGET: u32 = 70;
pub const SO_NETNS_COOKIE: u32 = 71;
pub const SO_BUF_LOCK: u32 = 72;
pub const SO_RESERVE_MEM: u32 = 73;
pub const SO_TXREHASH: u32 = 74;
pub const SO_RCVMARK: u32 = 75;
pub const SO_PASSPIDFD: u32 = 76;
pub const SO_PEERPIDFD: u32 = 77;
pub const SO_DEVMEM_LINEAR: u32 = 78;
pub const SCM_DEVMEM_LINEAR: u32 = 78;
pub const SO_DEVMEM_DMABUF: u32 = 79;
pub const SCM_DEVMEM_DMABUF: u32 = 79;
pub const SO_DEVMEM_DONTNEED: u32 = 80;
pub const SCM_TS_OPT_ID: u32 = 81;
pub const SO_RCVPRIORITY: u32 = 82;
pub const SO_PASSRIGHTS: u32 = 83;
pub const SO_INQ: u32 = 84;
pub const SCM_INQ: u32 = 84;
pub const SO_TIMESTAMP: u32 = 29;
pub const SO_TIMESTAMPNS: u32 = 35;
pub const SO_TIMESTAMPING: u32 = 37;
pub const SO_RCVTIMEO: u32 = 20;
pub const SO_SNDTIMEO: u32 = 21;
pub const SCM_TIMESTAMP: u32 = 29;
pub const SCM_TIMESTAMPNS: u32 = 35;
pub const SCM_TIMESTAMPING: u32 = 37;
pub const __osockaddr_defined: u32 = 1;
pub const _STRING_H: u32 = 1;
pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23: u32 = 0;
pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23: u32 = 0;
pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
pub const _BITS_TYPES_LOCALE_T_H: u32 = 1;
pub const _BITS_TYPES___LOCALE_T_H: u32 = 1;
pub const _STRINGS_H: u32 = 1;
pub const _MATH_H: u32 = 1;
pub const _BITS_LIBM_SIMD_DECL_STUBS_H: u32 = 1;
pub const __HAVE_FLOAT128: u32 = 1;
pub const __HAVE_DISTINCT_FLOAT128: u32 = 1;
pub const __HAVE_FLOAT64X: u32 = 1;
pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1;
pub const __HAVE_FLOAT16: u32 = 0;
pub const __HAVE_FLOAT32: u32 = 1;
pub const __HAVE_FLOAT64: u32 = 1;
pub const __HAVE_FLOAT32X: u32 = 1;
pub const __HAVE_FLOAT128X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT16: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT32: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT64: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0;
pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0;
pub const __FP_LOGB0_IS_MIN: u32 = 1;
pub const __FP_LOGBNAN_IS_MIN: u32 = 1;
pub const __MATH_DECLARING_DOUBLE: u32 = 1;
pub const __MATH_DECLARING_FLOATN: u32 = 0;
pub const __MATH_DECLARE_LDOUBLE: u32 = 1;
pub const MATH_ERRNO: u32 = 1;
pub const MATH_ERREXCEPT: u32 = 2;
pub const math_errhandling: u32 = 3;
pub const M_E: f64 = 2.718281828459045;
pub const M_LOG2E: f64 = 1.4426950408889634;
pub const M_LOG10E: f64 = 0.4342944819032518;
pub const M_LN2: f64 = 0.6931471805599453;
pub const M_LN10: f64 = 2.302585092994046;
pub const M_PI: f64 = 3.141592653589793;
pub const M_PI_2: f64 = 1.5707963267948966;
pub const M_PI_4: f64 = 0.7853981633974483;
pub const M_1_PI: f64 = 0.3183098861837907;
pub const M_2_PI: f64 = 0.6366197723675814;
pub const M_2_SQRTPI: f64 = 1.1283791670955126;
pub const M_SQRT2: f64 = 1.4142135623730951;
pub const M_SQRT1_2: f64 = 0.7071067811865476;
pub const _PTHREAD_H: u32 = 1;
pub const _SCHED_H: u32 = 1;
pub const _BITS_SCHED_H: u32 = 1;
pub const SCHED_OTHER: u32 = 0;
pub const SCHED_FIFO: u32 = 1;
pub const SCHED_RR: u32 = 2;
pub const _BITS_TYPES_STRUCT_SCHED_PARAM: u32 = 1;
pub const _BITS_CPU_SET_H: u32 = 1;
pub const __CPU_SETSIZE: u32 = 1024;
pub const _TIME_H: u32 = 1;
pub const _BITS_TIME_H: u32 = 1;
pub const CLOCK_REALTIME: u32 = 0;
pub const CLOCK_MONOTONIC: u32 = 1;
pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2;
pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3;
pub const CLOCK_MONOTONIC_RAW: u32 = 4;
pub const CLOCK_REALTIME_COARSE: u32 = 5;
pub const CLOCK_MONOTONIC_COARSE: u32 = 6;
pub const CLOCK_BOOTTIME: u32 = 7;
pub const CLOCK_REALTIME_ALARM: u32 = 8;
pub const CLOCK_BOOTTIME_ALARM: u32 = 9;
pub const CLOCK_TAI: u32 = 11;
pub const TIMER_ABSTIME: u32 = 1;
pub const __struct_tm_defined: u32 = 1;
pub const __itimerspec_defined: u32 = 1;
pub const TIME_UTC: u32 = 1;
pub const _BITS_SETJMP_H: u32 = 1;
pub const __jmp_buf_tag_defined: u32 = 1;
pub const PTHREAD_STACK_MIN: u32 = 16384;
pub const PTHREAD_ONCE_INIT: u32 = 0;
pub const PTHREAD_BARRIER_SERIAL_THREAD: i32 = -1;
pub const _SYS_UIO_H: u32 = 1;
pub const _BITS_UIO_LIM_H: u32 = 1;
pub const __IOV_MAX: u32 = 1024;
pub const UIO_MAXIOV: u32 = 1024;
pub const _STDINT_H: u32 = 1;
pub const _BITS_WCHAR_H: u32 = 1;
pub const _BITS_STDINT_UINTN_H: u32 = 1;
pub const _BITS_STDINT_LEAST_H: u32 = 1;
pub const INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT8_MAX: u32 = 127;
pub const INT16_MAX: u32 = 32767;
pub const INT32_MAX: u32 = 2147483647;
pub const UINT8_MAX: u32 = 255;
pub const UINT16_MAX: u32 = 65535;
pub const UINT32_MAX: u32 = 4294967295;
pub const INT_LEAST8_MIN: i32 = -128;
pub const INT_LEAST16_MIN: i32 = -32768;
pub const INT_LEAST32_MIN: i32 = -2147483648;
pub const INT_LEAST8_MAX: u32 = 127;
pub const INT_LEAST16_MAX: u32 = 32767;
pub const INT_LEAST32_MAX: u32 = 2147483647;
pub const UINT_LEAST8_MAX: u32 = 255;
pub const UINT_LEAST16_MAX: u32 = 65535;
pub const UINT_LEAST32_MAX: u32 = 4294967295;
pub const INT_FAST8_MIN: i32 = -128;
pub const INT_FAST16_MIN: i64 = -9223372036854775808;
pub const INT_FAST32_MIN: i64 = -9223372036854775808;
pub const INT_FAST8_MAX: u32 = 127;
pub const INT_FAST16_MAX: u64 = 9223372036854775807;
pub const INT_FAST32_MAX: u64 = 9223372036854775807;
pub const UINT_FAST8_MAX: u32 = 255;
pub const UINT_FAST16_MAX: i32 = -1;
pub const UINT_FAST32_MAX: i32 = -1;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const INTPTR_MAX: u64 = 9223372036854775807;
pub const UINTPTR_MAX: i32 = -1;
pub const PTRDIFF_MIN: i64 = -9223372036854775808;
pub const PTRDIFF_MAX: u64 = 9223372036854775807;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
pub const SIZE_MAX: i32 = -1;
pub const WINT_MIN: u32 = 0;
pub const WINT_MAX: u32 = 4294967295;
pub const VRT_INTEGER_MAX: u64 = 999999999999999;
pub const VRT_INTEGER_MIN: i64 = -999999999999999;
pub const VRT_MAJOR_VERSION: u32 = 23;
pub const VRT_MINOR_VERSION: u32 = 1;
pub const STRANDS_MAGIC: u32 = 1566224790;
pub const VRT_BLOB_MAGIC: u32 = 3776240542;
pub const VRT_NULL_BLOB_TYPE: u32 = 4208873376;
pub const VRT_CTX_MAGIC: u32 = 1807282395;
pub const BSSL_F_ENABLE: u32 = 1;
pub const BSSL_F_NOSNI: u32 = 2;
pub const BSSL_F_NOVERIFY: u32 = 4;
pub const BSSL_F_VERIFY_HOST: u32 = 8;
pub const VRT_ENDPOINT_MAGIC: u32 = 3426849607;
pub const VRT_BACKEND_MAGIC: u32 = 1201262188;
pub const VRT_BACKEND_PROBE_MAGIC: u32 = 2224653456;
pub const VDI_METHODS_MAGIC: u32 = 1321256123;
pub const DIRECTOR_MAGIC: u32 = 859190557;
pub const VMOD_PRIV_METHODS_MAGIC: u32 = 3466985369;
pub const _ERRNO_H: u32 = 1;
pub const _BITS_ERRNO_H: u32 = 1;
pub const EPERM: u32 = 1;
pub const ENOENT: u32 = 2;
pub const ESRCH: u32 = 3;
pub const EINTR: u32 = 4;
pub const EIO: u32 = 5;
pub const ENXIO: u32 = 6;
pub const E2BIG: u32 = 7;
pub const ENOEXEC: u32 = 8;
pub const EBADF: u32 = 9;
pub const ECHILD: u32 = 10;
pub const EAGAIN: u32 = 11;
pub const ENOMEM: u32 = 12;
pub const EACCES: u32 = 13;
pub const EFAULT: u32 = 14;
pub const ENOTBLK: u32 = 15;
pub const EBUSY: u32 = 16;
pub const EEXIST: u32 = 17;
pub const EXDEV: u32 = 18;
pub const ENODEV: u32 = 19;
pub const ENOTDIR: u32 = 20;
pub const EISDIR: u32 = 21;
pub const EINVAL: u32 = 22;
pub const ENFILE: u32 = 23;
pub const EMFILE: u32 = 24;
pub const ENOTTY: u32 = 25;
pub const ETXTBSY: u32 = 26;
pub const EFBIG: u32 = 27;
pub const ENOSPC: u32 = 28;
pub const ESPIPE: u32 = 29;
pub const EROFS: u32 = 30;
pub const EMLINK: u32 = 31;
pub const EPIPE: u32 = 32;
pub const EDOM: u32 = 33;
pub const ERANGE: u32 = 34;
pub const EDEADLK: u32 = 35;
pub const ENAMETOOLONG: u32 = 36;
pub const ENOLCK: u32 = 37;
pub const ENOSYS: u32 = 38;
pub const ENOTEMPTY: u32 = 39;
pub const ELOOP: u32 = 40;
pub const EWOULDBLOCK: u32 = 11;
pub const ENOMSG: u32 = 42;
pub const EIDRM: u32 = 43;
pub const ECHRNG: u32 = 44;
pub const EL2NSYNC: u32 = 45;
pub const EL3HLT: u32 = 46;
pub const EL3RST: u32 = 47;
pub const ELNRNG: u32 = 48;
pub const EUNATCH: u32 = 49;
pub const ENOCSI: u32 = 50;
pub const EL2HLT: u32 = 51;
pub const EBADE: u32 = 52;
pub const EBADR: u32 = 53;
pub const EXFULL: u32 = 54;
pub const ENOANO: u32 = 55;
pub const EBADRQC: u32 = 56;
pub const EBADSLT: u32 = 57;
pub const EDEADLOCK: u32 = 35;
pub const EBFONT: u32 = 59;
pub const ENOSTR: u32 = 60;
pub const ENODATA: u32 = 61;
pub const ETIME: u32 = 62;
pub const ENOSR: u32 = 63;
pub const ENONET: u32 = 64;
pub const ENOPKG: u32 = 65;
pub const EREMOTE: u32 = 66;
pub const ENOLINK: u32 = 67;
pub const EADV: u32 = 68;
pub const ESRMNT: u32 = 69;
pub const ECOMM: u32 = 70;
pub const EPROTO: u32 = 71;
pub const EMULTIHOP: u32 = 72;
pub const EDOTDOT: u32 = 73;
pub const EBADMSG: u32 = 74;
pub const EOVERFLOW: u32 = 75;
pub const ENOTUNIQ: u32 = 76;
pub const EBADFD: u32 = 77;
pub const EREMCHG: u32 = 78;
pub const ELIBACC: u32 = 79;
pub const ELIBBAD: u32 = 80;
pub const ELIBSCN: u32 = 81;
pub const ELIBMAX: u32 = 82;
pub const ELIBEXEC: u32 = 83;
pub const EILSEQ: u32 = 84;
pub const ERESTART: u32 = 85;
pub const ESTRPIPE: u32 = 86;
pub const EUSERS: u32 = 87;
pub const ENOTSOCK: u32 = 88;
pub const EDESTADDRREQ: u32 = 89;
pub const EMSGSIZE: u32 = 90;
pub const EPROTOTYPE: u32 = 91;
pub const ENOPROTOOPT: u32 = 92;
pub const EPROTONOSUPPORT: u32 = 93;
pub const ESOCKTNOSUPPORT: u32 = 94;
pub const EOPNOTSUPP: u32 = 95;
pub const EPFNOSUPPORT: u32 = 96;
pub const EAFNOSUPPORT: u32 = 97;
pub const EADDRINUSE: u32 = 98;
pub const EADDRNOTAVAIL: u32 = 99;
pub const ENETDOWN: u32 = 100;
pub const ENETUNREACH: u32 = 101;
pub const ENETRESET: u32 = 102;
pub const ECONNABORTED: u32 = 103;
pub const ECONNRESET: u32 = 104;
pub const ENOBUFS: u32 = 105;
pub const EISCONN: u32 = 106;
pub const ENOTCONN: u32 = 107;
pub const ESHUTDOWN: u32 = 108;
pub const ETOOMANYREFS: u32 = 109;
pub const ETIMEDOUT: u32 = 110;
pub const ECONNREFUSED: u32 = 111;
pub const EHOSTDOWN: u32 = 112;
pub const EHOSTUNREACH: u32 = 113;
pub const EALREADY: u32 = 114;
pub const EINPROGRESS: u32 = 115;
pub const ESTALE: u32 = 116;
pub const EUCLEAN: u32 = 117;
pub const ENOTNAM: u32 = 118;
pub const ENAVAIL: u32 = 119;
pub const EISNAM: u32 = 120;
pub const EREMOTEIO: u32 = 121;
pub const EDQUOT: u32 = 122;
pub const ENOMEDIUM: u32 = 123;
pub const EMEDIUMTYPE: u32 = 124;
pub const ECANCELED: u32 = 125;
pub const ENOKEY: u32 = 126;
pub const EKEYEXPIRED: u32 = 127;
pub const EKEYREVOKED: u32 = 128;
pub const EKEYREJECTED: u32 = 129;
pub const EOWNERDEAD: u32 = 130;
pub const ENOTRECOVERABLE: u32 = 131;
pub const ERFKILL: u32 = 132;
pub const EHWPOISON: u32 = 133;
pub const ENOTSUP: u32 = 95;
pub const VSPLAY_NEGINF: i32 = -1;
pub const VSPLAY_INF: u32 = 1;
pub const VRBT_STRICT_HST: u32 = 0;
pub const VRBT_NEGINF: i32 = -1;
pub const VRBT_INF: u32 = 1;
pub const VSL_CLASS: &::std::ffi::CStr = c"Log";
pub const VSL_SEGMENTS: u32 = 8;
pub const VSL_CLIENTMARKER: u64 = 4611686018427387904;
pub const VSL_BACKENDMARKER: i64 = -9223372036854775808;
pub const VSL_IDENTMASK: u64 = 2251799813685247;
pub const VSL_LENMASK: u32 = 65535;
pub const VSL_VERMASK: u32 = 3;
pub const VSL_VERSHIFT: u32 = 16;
pub const VSL_IDMASK: u32 = 255;
pub const VSL_IDSHIFT: u32 = 24;
pub const VSL_OVERHEAD: u32 = 3;
pub const VSL_VERSION_2: u32 = 0;
pub const VSL_VERSION_3: u32 = 1;
pub const SLT__MAX: u32 = 256;
pub const NODEF_NOTICE: &::std::ffi::CStr = c"NB: This log record is masked by default.\n\n";
pub const NOSUP_NOTICE : & :: std :: ffi :: CStr = c"NOTE: This tag is currently not in use in the Varnish log.\nIt is mentioned here to document legacy versions of the log,\nor reserved for possible use in future versions.\n\n" ;
pub const HEADER_NOTICE : & :: std :: ffi :: CStr = c"NOTE: HTTP header fields are free form records and not strictly\nmade of 2 fields. Accessing a specific header with the prefix\nnotation helps treating the header value as a single string.\n\n" ;
pub const SLT_F_UNUSED: u32 = 1;
pub const SLT_F_UNSAFE: u32 = 2;
pub const SLT_F_BINARY: u32 = 4;
pub const STREAM_CLOSE_MAGIC: u32 = 3363424573;
pub const DIGEST_LEN: u32 = 32;
pub const WS_ID_SIZE: u32 = 4;
pub const WS_MAGIC: u32 = 905626964;
pub const HTTP_MAGIC: u32 = 1680389577;
pub const HDF_FILTER: u32 = 1;
pub const VSL_LOG_MAGIC: u32 = 40756;
pub const VSL_LOG_F_MALLOCED: u32 = 1;
pub const WORKER_MAGIC: u32 = 1670491599;
pub const BOC_MAGIC: u32 = 1892254838;
pub const OBJCORE_MAGIC: u32 = 1294996226;
pub const BUSYOBJ_MAGIC: u32 = 599348583;
pub const REQTOP_MAGIC: u32 = 1476123218;
pub const REQ_MAGIC: u32 = 4215979885;
pub const SESS_MAGIC: u32 = 741317722;
pub const HTTPH_R_PASS: u32 = 1;
pub const HTTPH_R_FETCH: u32 = 2;
pub const HTTPH_A_INS: u32 = 4;
pub const HTTPH_A_PASS: u32 = 8;
pub const HTTPH_C_SPECIFIC: u32 = 16;
pub const P: u32 = 1;
pub const F: u32 = 2;
pub const I: u32 = 4;
pub const S: u32 = 8;
pub const K: u32 = 16;
pub const OBJ_ITER_FLUSH: u32 = 1;
pub const OBJ_ITER_END: u32 = 2;
pub const VSCARAB_MAGIC: u32 = 97155760;
pub const VSCARAB_F_END: u32 = 1;
pub const VSCARET_MAGIC: u32 = 2619293051;
pub const VSB_MAGIC: u32 = 1250090378;
pub const VSB_FIXEDLEN: u32 = 0;
pub const VSB_AUTOEXTEND: u32 = 1;
pub const VSB_USRFLAGMSK: u32 = 65535;
pub const VSB_DYNAMIC: u32 = 65536;
pub const VSB_FINISHED: u32 = 131072;
pub const VSB_DYNSTRUCT: u32 = 524288;
pub const VSB_QUOTE_PLAIN: u32 = 0;
pub const VSB_QUOTE_JSON: u32 = 2;
pub const VSB_QUOTE_HEX: u32 = 4;
pub const VSB_QUOTE_CSTR: u32 = 8;
pub const VSB_QUOTE_UNSAFE: u32 = 16;
pub const VSB_QUOTE_NONL: u32 = 1;
pub const VSB_QUOTE_ESCHEX: u32 = 32;
pub const VSB_QUOTE_ABBREVIATE: u32 = 64;
pub const _LIBC_LIMITS_H_: u32 = 1;
pub const MB_LEN_MAX: u32 = 16;
pub const _BITS_POSIX1_LIM_H: u32 = 1;
pub const _POSIX_AIO_LISTIO_MAX: u32 = 2;
pub const _POSIX_AIO_MAX: u32 = 1;
pub const _POSIX_ARG_MAX: u32 = 4096;
pub const _POSIX_CHILD_MAX: u32 = 25;
pub const _POSIX_DELAYTIMER_MAX: u32 = 32;
pub const _POSIX_HOST_NAME_MAX: u32 = 255;
pub const _POSIX_LINK_MAX: u32 = 8;
pub const _POSIX_LOGIN_NAME_MAX: u32 = 9;
pub const _POSIX_MAX_CANON: u32 = 255;
pub const _POSIX_MAX_INPUT: u32 = 255;
pub const _POSIX_MQ_OPEN_MAX: u32 = 8;
pub const _POSIX_MQ_PRIO_MAX: u32 = 32;
pub const _POSIX_NAME_MAX: u32 = 14;
pub const _POSIX_NGROUPS_MAX: u32 = 8;
pub const _POSIX_OPEN_MAX: u32 = 20;
pub const _POSIX_PATH_MAX: u32 = 256;
pub const _POSIX_PIPE_BUF: u32 = 512;
pub const _POSIX_RE_DUP_MAX: u32 = 255;
pub const _POSIX_RTSIG_MAX: u32 = 8;
pub const _POSIX_SEM_NSEMS_MAX: u32 = 256;
pub const _POSIX_SEM_VALUE_MAX: u32 = 32767;
pub const _POSIX_SIGQUEUE_MAX: u32 = 32;
pub const _POSIX_SSIZE_MAX: u32 = 32767;
pub const _POSIX_STREAM_MAX: u32 = 8;
pub const _POSIX_SYMLINK_MAX: u32 = 255;
pub const _POSIX_SYMLOOP_MAX: u32 = 8;
pub const _POSIX_TIMER_MAX: u32 = 32;
pub const _POSIX_TTY_NAME_MAX: u32 = 9;
pub const _POSIX_TZNAME_MAX: u32 = 6;
pub const _POSIX_CLOCKRES_MIN: u32 = 20000000;
pub const NR_OPEN: u32 = 1024;
pub const NGROUPS_MAX: u32 = 65536;
pub const ARG_MAX: u32 = 131072;
pub const LINK_MAX: u32 = 127;
pub const MAX_CANON: u32 = 255;
pub const MAX_INPUT: u32 = 255;
pub const NAME_MAX: u32 = 255;
pub const PATH_MAX: u32 = 4096;
pub const PIPE_BUF: u32 = 4096;
pub const XATTR_NAME_MAX: u32 = 255;
pub const XATTR_SIZE_MAX: u32 = 65536;
pub const XATTR_LIST_MAX: u32 = 65536;
pub const RTSIG_MAX: u32 = 32;
pub const _POSIX_THREAD_KEYS_MAX: u32 = 128;
pub const PTHREAD_KEYS_MAX: u32 = 1024;
pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
pub const PTHREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
pub const _POSIX_THREAD_THREADS_MAX: u32 = 64;
pub const AIO_PRIO_DELTA_MAX: u32 = 20;
pub const DELAYTIMER_MAX: u32 = 2147483647;
pub const TTY_NAME_MAX: u32 = 32;
pub const LOGIN_NAME_MAX: u32 = 256;
pub const HOST_NAME_MAX: u32 = 64;
pub const MQ_PRIO_MAX: u32 = 32768;
pub const SEM_VALUE_MAX: u32 = 2147483647;
pub const _BITS_POSIX2_LIM_H: u32 = 1;
pub const _POSIX2_BC_BASE_MAX: u32 = 99;
pub const _POSIX2_BC_DIM_MAX: u32 = 2048;
pub const _POSIX2_BC_SCALE_MAX: u32 = 99;
pub const _POSIX2_BC_STRING_MAX: u32 = 1000;
pub const _POSIX2_COLL_WEIGHTS_MAX: u32 = 2;
pub const _POSIX2_EXPR_NEST_MAX: u32 = 32;
pub const _POSIX2_LINE_MAX: u32 = 2048;
pub const _POSIX2_RE_DUP_MAX: u32 = 255;
pub const _POSIX2_CHARCLASS_NAME_MAX: u32 = 14;
pub const BC_BASE_MAX: u32 = 99;
pub const BC_DIM_MAX: u32 = 2048;
pub const BC_SCALE_MAX: u32 = 99;
pub const BC_STRING_MAX: u32 = 1000;
pub const COLL_WEIGHTS_MAX: u32 = 255;
pub const EXPR_NEST_MAX: u32 = 32;
pub const LINE_MAX: u32 = 2048;
pub const CHARCLASS_NAME_MAX: u32 = 2048;
pub const RE_DUP_MAX: u32 = 32767;
pub const _UNISTD_H: u32 = 1;
pub const _POSIX_VERSION: u32 = 200809;
pub const __POSIX2_THIS_VERSION: u32 = 200809;
pub const _POSIX2_VERSION: u32 = 200809;
pub const _POSIX2_C_VERSION: u32 = 200809;
pub const _POSIX2_C_BIND: u32 = 200809;
pub const _POSIX2_C_DEV: u32 = 200809;
pub const _POSIX2_SW_DEV: u32 = 200809;
pub const _POSIX2_LOCALEDEF: u32 = 200809;
pub const _XOPEN_VERSION: u32 = 700;
pub const _XOPEN_XCU_VERSION: u32 = 4;
pub const _XOPEN_XPG2: u32 = 1;
pub const _XOPEN_XPG3: u32 = 1;
pub const _XOPEN_XPG4: u32 = 1;
pub const _XOPEN_UNIX: u32 = 1;
pub const _XOPEN_ENH_I18N: u32 = 1;
pub const _XOPEN_LEGACY: u32 = 1;
pub const _BITS_POSIX_OPT_H: u32 = 1;
pub const _POSIX_JOB_CONTROL: u32 = 1;
pub const _POSIX_SAVED_IDS: u32 = 1;
pub const _POSIX_PRIORITY_SCHEDULING: u32 = 200809;
pub const _POSIX_SYNCHRONIZED_IO: u32 = 200809;
pub const _POSIX_FSYNC: u32 = 200809;
pub const _POSIX_MAPPED_FILES: u32 = 200809;
pub const _POSIX_MEMLOCK: u32 = 200809;
pub const _POSIX_MEMLOCK_RANGE: u32 = 200809;
pub const _POSIX_MEMORY_PROTECTION: u32 = 200809;
pub const _POSIX_CHOWN_RESTRICTED: u32 = 0;
pub const _POSIX_VDISABLE: u32 = 0;
pub const _POSIX_NO_TRUNC: u32 = 1;
pub const _XOPEN_REALTIME: u32 = 1;
pub const _XOPEN_REALTIME_THREADS: u32 = 1;
pub const _XOPEN_SHM: u32 = 1;
pub const _POSIX_THREADS: u32 = 200809;
pub const _POSIX_REENTRANT_FUNCTIONS: u32 = 1;
pub const _POSIX_THREAD_SAFE_FUNCTIONS: u32 = 200809;
pub const _POSIX_THREAD_PRIORITY_SCHEDULING: u32 = 200809;
pub const _POSIX_THREAD_ATTR_STACKSIZE: u32 = 200809;
pub const _POSIX_THREAD_ATTR_STACKADDR: u32 = 200809;
pub const _POSIX_THREAD_PRIO_INHERIT: u32 = 200809;
pub const _POSIX_THREAD_PRIO_PROTECT: u32 = 200809;
pub const _POSIX_THREAD_ROBUST_PRIO_INHERIT: u32 = 200809;
pub const _POSIX_THREAD_ROBUST_PRIO_PROTECT: i32 = -1;
pub const _POSIX_SEMAPHORES: u32 = 200809;
pub const _POSIX_REALTIME_SIGNALS: u32 = 200809;
pub const _POSIX_ASYNCHRONOUS_IO: u32 = 200809;
pub const _POSIX_ASYNC_IO: u32 = 1;
pub const _LFS_ASYNCHRONOUS_IO: u32 = 1;
pub const _POSIX_PRIORITIZED_IO: u32 = 200809;
pub const _LFS64_ASYNCHRONOUS_IO: u32 = 1;
pub const _LFS_LARGEFILE: u32 = 1;
pub const _LFS64_LARGEFILE: u32 = 1;
pub const _LFS64_STDIO: u32 = 1;
pub const _POSIX_SHARED_MEMORY_OBJECTS: u32 = 200809;
pub const _POSIX_CPUTIME: u32 = 0;
pub const _POSIX_THREAD_CPUTIME: u32 = 0;
pub const _POSIX_REGEXP: u32 = 1;
pub const _POSIX_READER_WRITER_LOCKS: u32 = 200809;
pub const _POSIX_SHELL: u32 = 1;
pub const _POSIX_TIMEOUTS: u32 = 200809;
pub const _POSIX_SPIN_LOCKS: u32 = 200809;
pub const _POSIX_SPAWN: u32 = 200809;
pub const _POSIX_TIMERS: u32 = 200809;
pub const _POSIX_BARRIERS: u32 = 200809;
pub const _POSIX_MESSAGE_PASSING: u32 = 200809;
pub const _POSIX_THREAD_PROCESS_SHARED: u32 = 200809;
pub const _POSIX_MONOTONIC_CLOCK: u32 = 0;
pub const _POSIX_CLOCK_SELECTION: u32 = 200809;
pub const _POSIX_ADVISORY_INFO: u32 = 200809;
pub const _POSIX_IPV6: u32 = 200809;
pub const _POSIX_RAW_SOCKETS: u32 = 200809;
pub const _POSIX2_CHAR_TERM: u32 = 200809;
pub const _POSIX_SPORADIC_SERVER: i32 = -1;
pub const _POSIX_THREAD_SPORADIC_SERVER: i32 = -1;
pub const _POSIX_TRACE: i32 = -1;
pub const _POSIX_TRACE_EVENT_FILTER: i32 = -1;
pub const _POSIX_TRACE_INHERIT: i32 = -1;
pub const _POSIX_TRACE_LOG: i32 = -1;
pub const _POSIX_TYPED_MEMORY_OBJECTS: i32 = -1;
pub const _POSIX_V7_LPBIG_OFFBIG: i32 = -1;
pub const _POSIX_V6_LPBIG_OFFBIG: i32 = -1;
pub const _XBS5_LPBIG_OFFBIG: i32 = -1;
pub const _POSIX_V7_LP64_OFF64: u32 = 1;
pub const _POSIX_V6_LP64_OFF64: u32 = 1;
pub const _XBS5_LP64_OFF64: u32 = 1;
pub const __ILP32_OFF32_CFLAGS: &::std::ffi::CStr = c"-m32";
pub const __ILP32_OFF32_LDFLAGS: &::std::ffi::CStr = c"-m32";
pub const __ILP32_OFFBIG_CFLAGS: &::std::ffi::CStr =
c"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64";
pub const __ILP32_OFFBIG_LDFLAGS: &::std::ffi::CStr = c"-m32";
pub const __LP64_OFF64_CFLAGS: &::std::ffi::CStr = c"-m64";
pub const __LP64_OFF64_LDFLAGS: &::std::ffi::CStr = c"-m64";
pub const STDIN_FILENO: u32 = 0;
pub const STDOUT_FILENO: u32 = 1;
pub const STDERR_FILENO: u32 = 2;
pub const R_OK: u32 = 4;
pub const W_OK: u32 = 2;
pub const X_OK: u32 = 1;
pub const F_OK: u32 = 0;
pub const SEEK_SET: u32 = 0;
pub const SEEK_CUR: u32 = 1;
pub const SEEK_END: u32 = 2;
pub const L_SET: u32 = 0;
pub const L_INCR: u32 = 1;
pub const L_XTND: u32 = 2;
pub const _GETOPT_POSIX_H: u32 = 1;
pub const _GETOPT_CORE_H: u32 = 1;
pub const F_ULOCK: u32 = 0;
pub const F_LOCK: u32 = 1;
pub const F_TLOCK: u32 = 2;
pub const F_TEST: u32 = 3;
pub const VRE_ERROR_LEN: u32 = 128;
pub const VSM_CLASS_PARAM: &::std::ffi::CStr = c"Params";
pub const H2_RR_INFO : & :: std :: ffi :: CStr = c"Changes to this parameter affect the default for new HTTP2 sessions. vmod_h2(3) can be used to adjust it from VCL." ;
pub const WORKER_PRIV_MAGIC: u32 = 810015641;
pub const HTTP_CONN_MAGIC: u32 = 1041886673;
pub const VCF_MAGIC: u32 = 405964241;
pub const OEV_INSERT: u32 = 2;
pub const OEV_BANCHG: u32 = 4;
pub const OEV_TTLCHG: u32 = 8;
pub const OEV_EXPIRE: u32 = 16;
pub const OEV_MASK: u32 = 30;
pub const BACKEND_MAGIC: u32 = 1690617798;
pub const VCLDIR_MAGIC: u32 = 3211947133;
pub const VDIR_FLG_NOREFCNT: u32 = 1;
pub const VFP_ENTRY_MAGIC: u32 = 3190988839;
pub const VFP_CTX_MAGIC: u32 = 1641665509;
pub const VDP_ENTRY_MAGIC: u32 = 893302657;
pub const VDP_CTX_MAGIC: u32 = 3998227959;
pub const VMOD_ABI_Version: &::std::ffi::CStr =
c"Varnish 9.0.3 0a625649cd40af4b6c10be5e58a2e89a5e275baa";
pub const VSM_n_USAGE: &::std::ffi::CStr = c"[-n varnish_name]";
pub const VSM_t_USAGE: &::std::ffi::CStr = c"[-t <seconds|off>]";
pub const VSM_MGT_RUNNING: u32 = 2;
pub const VSM_MGT_CHANGED: u32 = 4;
pub const VSM_MGT_RESTARTED: u32 = 8;
pub const VSM_WRK_RUNNING: u32 = 512;
pub const VSM_WRK_CHANGED: u32 = 1024;
pub const VSM_WRK_RESTARTED: u32 = 2048;
pub const VSM_MGT_MASK: u32 = 255;
pub const VSM_WRK_MASK: u32 = 65280;
pub const VCL_MET_RECV: u32 = 2;
pub const VCL_MET_PIPE: u32 = 4;
pub const VCL_MET_PASS: u32 = 8;
pub const VCL_MET_HASH: u32 = 16;
pub const VCL_MET_PURGE: u32 = 32;
pub const VCL_MET_MISS: u32 = 64;
pub const VCL_MET_HIT: u32 = 128;
pub const VCL_MET_DELIVER: u32 = 256;
pub const VCL_MET_SYNTH: u32 = 512;
pub const VCL_MET_BACKEND_FETCH: u32 = 1024;
pub const VCL_MET_BACKEND_REFRESH: u32 = 2048;
pub const VCL_MET_BACKEND_RESPONSE: u32 = 4096;
pub const VCL_MET_BACKEND_ERROR: u32 = 8192;
pub const VCL_MET_INIT: u32 = 16384;
pub const VCL_MET_FINI: u32 = 32768;
pub const VCL_MET_MAX: u32 = 16;
pub const VCL_MET_MASK: u32 = 65535;
pub const VCL_MET_TASK_B: u32 = 15360;
pub const VCL_MET_TASK_C: u32 = 1022;
pub const VCL_MET_TASK_H: u32 = 49152;
pub const VCL_MET_TASK_ALL: u32 = 65534;
pub const VCL_RET_ABANDON: u32 = 1;
pub const VCL_RET_BERESP: u32 = 2;
pub const VCL_RET_DELIVER: u32 = 3;
pub const VCL_RET_ERROR: u32 = 4;
pub const VCL_RET_FAIL: u32 = 5;
pub const VCL_RET_FETCH: u32 = 6;
pub const VCL_RET_HASH: u32 = 7;
pub const VCL_RET_LOOKUP: u32 = 8;
pub const VCL_RET_MERGE: u32 = 9;
pub const VCL_RET_OBJ_STALE: u32 = 10;
pub const VCL_RET_OK: u32 = 11;
pub const VCL_RET_PASS: u32 = 12;
pub const VCL_RET_PIPE: u32 = 13;
pub const VCL_RET_PURGE: u32 = 14;
pub const VCL_RET_RESTART: u32 = 15;
pub const VCL_RET_RETRY: u32 = 16;
pub const VCL_RET_SYNTH: u32 = 17;
pub const VCL_RET_VCL: u32 = 18;
pub const VCL_RET_MAX: u32 = 19;
pub const VRT_TYPE_MAGIC: u32 = 2839788594;
pub const VCL_CONF_MAGIC: u32 = 1946600713;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct iovec {
pub iov_base: *mut ::std::ffi::c_void,
pub iov_len: usize,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of iovec"][::std::mem::size_of::<iovec>() - 16usize];
["Alignment of iovec"][::std::mem::align_of::<iovec>() - 8usize];
["Offset of field: iovec::iov_base"][::std::mem::offset_of!(iovec, iov_base) - 0usize];
["Offset of field: iovec::iov_len"][::std::mem::offset_of!(iovec, iov_len) - 8usize];
};
impl Default for iovec {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __u_char = ::std::ffi::c_uchar;
pub type __u_short = ::std::ffi::c_ushort;
pub type __u_int = ::std::ffi::c_uint;
pub type __u_long = ::std::ffi::c_ulong;
pub type __int8_t = ::std::ffi::c_schar;
pub type __uint8_t = ::std::ffi::c_uchar;
pub type __int16_t = ::std::ffi::c_short;
pub type __uint16_t = ::std::ffi::c_ushort;
pub type __int32_t = ::std::ffi::c_int;
pub type __uint32_t = ::std::ffi::c_uint;
pub type __int64_t = ::std::ffi::c_long;
pub type __uint64_t = ::std::ffi::c_ulong;
pub type __int_least8_t = __int8_t;
pub type __uint_least8_t = __uint8_t;
pub type __int_least16_t = __int16_t;
pub type __uint_least16_t = __uint16_t;
pub type __int_least32_t = __int32_t;
pub type __uint_least32_t = __uint32_t;
pub type __int_least64_t = __int64_t;
pub type __uint_least64_t = __uint64_t;
pub type __quad_t = ::std::ffi::c_long;
pub type __u_quad_t = ::std::ffi::c_ulong;
pub type __intmax_t = ::std::ffi::c_long;
pub type __uintmax_t = ::std::ffi::c_ulong;
pub type __dev_t = ::std::ffi::c_ulong;
pub type __uid_t = ::std::ffi::c_uint;
pub type __gid_t = ::std::ffi::c_uint;
pub type __ino_t = ::std::ffi::c_ulong;
pub type __ino64_t = ::std::ffi::c_ulong;
pub type __mode_t = ::std::ffi::c_uint;
pub type __nlink_t = ::std::ffi::c_ulong;
pub type __off_t = ::std::ffi::c_long;
pub type __off64_t = ::std::ffi::c_long;
pub type __pid_t = ::std::ffi::c_int;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __fsid_t {
pub __val: [::std::ffi::c_int; 2usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __fsid_t"][::std::mem::size_of::<__fsid_t>() - 8usize];
["Alignment of __fsid_t"][::std::mem::align_of::<__fsid_t>() - 4usize];
["Offset of field: __fsid_t::__val"][::std::mem::offset_of!(__fsid_t, __val) - 0usize];
};
pub type __clock_t = ::std::ffi::c_long;
pub type __rlim_t = ::std::ffi::c_ulong;
pub type __rlim64_t = ::std::ffi::c_ulong;
pub type __id_t = ::std::ffi::c_uint;
pub type __time_t = ::std::ffi::c_long;
pub type __useconds_t = ::std::ffi::c_uint;
pub type __suseconds_t = ::std::ffi::c_long;
pub type __suseconds64_t = ::std::ffi::c_long;
pub type __daddr_t = ::std::ffi::c_int;
pub type __key_t = ::std::ffi::c_int;
pub type __clockid_t = ::std::ffi::c_int;
pub type __timer_t = *mut ::std::ffi::c_void;
pub type __blksize_t = ::std::ffi::c_long;
pub type __blkcnt_t = ::std::ffi::c_long;
pub type __blkcnt64_t = ::std::ffi::c_long;
pub type __fsblkcnt_t = ::std::ffi::c_ulong;
pub type __fsblkcnt64_t = ::std::ffi::c_ulong;
pub type __fsfilcnt_t = ::std::ffi::c_ulong;
pub type __fsfilcnt64_t = ::std::ffi::c_ulong;
pub type __fsword_t = ::std::ffi::c_long;
pub type __ssize_t = ::std::ffi::c_long;
pub type __syscall_slong_t = ::std::ffi::c_long;
pub type __syscall_ulong_t = ::std::ffi::c_ulong;
pub type __loff_t = __off64_t;
pub type __caddr_t = *mut ::std::ffi::c_char;
pub type __intptr_t = ::std::ffi::c_long;
pub type __socklen_t = ::std::ffi::c_uint;
pub type __sig_atomic_t = ::std::ffi::c_int;
pub type u_char = __u_char;
pub type u_short = __u_short;
pub type u_int = __u_int;
pub type u_long = __u_long;
pub type quad_t = __quad_t;
pub type u_quad_t = __u_quad_t;
pub type fsid_t = __fsid_t;
pub type loff_t = __loff_t;
pub type ino_t = __ino_t;
pub type dev_t = __dev_t;
pub type gid_t = __gid_t;
pub type mode_t = __mode_t;
pub type nlink_t = __nlink_t;
pub type uid_t = __uid_t;
pub type off_t = __off_t;
pub type pid_t = __pid_t;
pub type id_t = __id_t;
pub type daddr_t = __daddr_t;
pub type caddr_t = __caddr_t;
pub type key_t = __key_t;
pub type clock_t = __clock_t;
pub type clockid_t = __clockid_t;
pub type time_t = __time_t;
pub type timer_t = __timer_t;
pub type ulong = ::std::ffi::c_ulong;
pub type ushort = ::std::ffi::c_ushort;
pub type uint = ::std::ffi::c_uint;
pub type u_int8_t = __uint8_t;
pub type u_int16_t = __uint16_t;
pub type u_int32_t = __uint32_t;
pub type u_int64_t = __uint64_t;
pub type register_t = ::std::ffi::c_long;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __sigset_t {
pub __val: [::std::ffi::c_ulong; 16usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __sigset_t"][::std::mem::size_of::<__sigset_t>() - 128usize];
["Alignment of __sigset_t"][::std::mem::align_of::<__sigset_t>() - 8usize];
["Offset of field: __sigset_t::__val"][::std::mem::offset_of!(__sigset_t, __val) - 0usize];
};
pub type sigset_t = __sigset_t;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct timeval {
pub tv_sec: __time_t,
pub tv_usec: __suseconds_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of timeval"][::std::mem::size_of::<timeval>() - 16usize];
["Alignment of timeval"][::std::mem::align_of::<timeval>() - 8usize];
["Offset of field: timeval::tv_sec"][::std::mem::offset_of!(timeval, tv_sec) - 0usize];
["Offset of field: timeval::tv_usec"][::std::mem::offset_of!(timeval, tv_usec) - 8usize];
};
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct timespec {
pub tv_sec: __time_t,
pub tv_nsec: __syscall_slong_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of timespec"][::std::mem::size_of::<timespec>() - 16usize];
["Alignment of timespec"][::std::mem::align_of::<timespec>() - 8usize];
["Offset of field: timespec::tv_sec"][::std::mem::offset_of!(timespec, tv_sec) - 0usize];
["Offset of field: timespec::tv_nsec"][::std::mem::offset_of!(timespec, tv_nsec) - 8usize];
};
pub type suseconds_t = __suseconds_t;
pub type __fd_mask = ::std::ffi::c_long;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct fd_set {
pub __fds_bits: [__fd_mask; 16usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fd_set"][::std::mem::size_of::<fd_set>() - 128usize];
["Alignment of fd_set"][::std::mem::align_of::<fd_set>() - 8usize];
["Offset of field: fd_set::__fds_bits"][::std::mem::offset_of!(fd_set, __fds_bits) - 0usize];
};
pub type fd_mask = __fd_mask;
unsafe extern "C" {
pub fn select(
__nfds: ::std::ffi::c_int,
__readfds: *mut fd_set,
__writefds: *mut fd_set,
__exceptfds: *mut fd_set,
__timeout: *mut timeval,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pselect(
__nfds: ::std::ffi::c_int,
__readfds: *mut fd_set,
__writefds: *mut fd_set,
__exceptfds: *mut fd_set,
__timeout: *const timespec,
__sigmask: *const __sigset_t,
) -> ::std::ffi::c_int;
}
pub type blksize_t = __blksize_t;
pub type blkcnt_t = __blkcnt_t;
pub type fsblkcnt_t = __fsblkcnt_t;
pub type fsfilcnt_t = __fsfilcnt_t;
#[repr(C)]
#[derive(Copy, Clone)]
pub union __atomic_wide_counter {
pub __value64: ::std::ffi::c_ulonglong,
pub __value32: __atomic_wide_counter__bindgen_ty_1,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __atomic_wide_counter__bindgen_ty_1 {
pub __low: ::std::ffi::c_uint,
pub __high: ::std::ffi::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __atomic_wide_counter__bindgen_ty_1"]
[::std::mem::size_of::<__atomic_wide_counter__bindgen_ty_1>() - 8usize];
["Alignment of __atomic_wide_counter__bindgen_ty_1"]
[::std::mem::align_of::<__atomic_wide_counter__bindgen_ty_1>() - 4usize];
["Offset of field: __atomic_wide_counter__bindgen_ty_1::__low"]
[::std::mem::offset_of!(__atomic_wide_counter__bindgen_ty_1, __low) - 0usize];
["Offset of field: __atomic_wide_counter__bindgen_ty_1::__high"]
[::std::mem::offset_of!(__atomic_wide_counter__bindgen_ty_1, __high) - 4usize];
};
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __atomic_wide_counter"][::std::mem::size_of::<__atomic_wide_counter>() - 8usize];
["Alignment of __atomic_wide_counter"]
[::std::mem::align_of::<__atomic_wide_counter>() - 8usize];
["Offset of field: __atomic_wide_counter::__value64"]
[::std::mem::offset_of!(__atomic_wide_counter, __value64) - 0usize];
["Offset of field: __atomic_wide_counter::__value32"]
[::std::mem::offset_of!(__atomic_wide_counter, __value32) - 0usize];
};
impl Default for __atomic_wide_counter {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_internal_list {
pub __prev: *mut __pthread_internal_list,
pub __next: *mut __pthread_internal_list,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_internal_list"][::std::mem::size_of::<__pthread_internal_list>() - 16usize];
["Alignment of __pthread_internal_list"]
[::std::mem::align_of::<__pthread_internal_list>() - 8usize];
["Offset of field: __pthread_internal_list::__prev"]
[::std::mem::offset_of!(__pthread_internal_list, __prev) - 0usize];
["Offset of field: __pthread_internal_list::__next"]
[::std::mem::offset_of!(__pthread_internal_list, __next) - 8usize];
};
impl Default for __pthread_internal_list {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __pthread_list_t = __pthread_internal_list;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_internal_slist {
pub __next: *mut __pthread_internal_slist,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_internal_slist"]
[::std::mem::size_of::<__pthread_internal_slist>() - 8usize];
["Alignment of __pthread_internal_slist"]
[::std::mem::align_of::<__pthread_internal_slist>() - 8usize];
["Offset of field: __pthread_internal_slist::__next"]
[::std::mem::offset_of!(__pthread_internal_slist, __next) - 0usize];
};
impl Default for __pthread_internal_slist {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __pthread_slist_t = __pthread_internal_slist;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_mutex_s {
pub __lock: ::std::ffi::c_int,
pub __count: ::std::ffi::c_uint,
pub __owner: ::std::ffi::c_int,
pub __nusers: ::std::ffi::c_uint,
pub __kind: ::std::ffi::c_int,
pub __spins: ::std::ffi::c_short,
pub __unused: ::std::ffi::c_short,
pub __list: __pthread_list_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_mutex_s"][::std::mem::size_of::<__pthread_mutex_s>() - 40usize];
["Alignment of __pthread_mutex_s"][::std::mem::align_of::<__pthread_mutex_s>() - 8usize];
["Offset of field: __pthread_mutex_s::__lock"]
[::std::mem::offset_of!(__pthread_mutex_s, __lock) - 0usize];
["Offset of field: __pthread_mutex_s::__count"]
[::std::mem::offset_of!(__pthread_mutex_s, __count) - 4usize];
["Offset of field: __pthread_mutex_s::__owner"]
[::std::mem::offset_of!(__pthread_mutex_s, __owner) - 8usize];
["Offset of field: __pthread_mutex_s::__nusers"]
[::std::mem::offset_of!(__pthread_mutex_s, __nusers) - 12usize];
["Offset of field: __pthread_mutex_s::__kind"]
[::std::mem::offset_of!(__pthread_mutex_s, __kind) - 16usize];
["Offset of field: __pthread_mutex_s::__spins"]
[::std::mem::offset_of!(__pthread_mutex_s, __spins) - 20usize];
["Offset of field: __pthread_mutex_s::__unused"]
[::std::mem::offset_of!(__pthread_mutex_s, __unused) - 22usize];
["Offset of field: __pthread_mutex_s::__list"]
[::std::mem::offset_of!(__pthread_mutex_s, __list) - 24usize];
};
impl Default for __pthread_mutex_s {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __pthread_rwlock_arch_t {
pub __readers: ::std::ffi::c_uint,
pub __writers: ::std::ffi::c_uint,
pub __wrphase_futex: ::std::ffi::c_uint,
pub __writers_futex: ::std::ffi::c_uint,
pub __pad3: ::std::ffi::c_uint,
pub __pad4: ::std::ffi::c_uint,
pub __cur_writer: ::std::ffi::c_int,
pub __shared: ::std::ffi::c_int,
pub __pad1: ::std::ffi::c_ulong,
pub __pad2: ::std::ffi::c_ulong,
pub __flags: ::std::ffi::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_rwlock_arch_t"][::std::mem::size_of::<__pthread_rwlock_arch_t>() - 56usize];
["Alignment of __pthread_rwlock_arch_t"]
[::std::mem::align_of::<__pthread_rwlock_arch_t>() - 8usize];
["Offset of field: __pthread_rwlock_arch_t::__readers"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __readers) - 0usize];
["Offset of field: __pthread_rwlock_arch_t::__writers"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __writers) - 4usize];
["Offset of field: __pthread_rwlock_arch_t::__wrphase_futex"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __wrphase_futex) - 8usize];
["Offset of field: __pthread_rwlock_arch_t::__writers_futex"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __writers_futex) - 12usize];
["Offset of field: __pthread_rwlock_arch_t::__pad3"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad3) - 16usize];
["Offset of field: __pthread_rwlock_arch_t::__pad4"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad4) - 20usize];
["Offset of field: __pthread_rwlock_arch_t::__cur_writer"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __cur_writer) - 24usize];
["Offset of field: __pthread_rwlock_arch_t::__shared"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __shared) - 28usize];
["Offset of field: __pthread_rwlock_arch_t::__pad1"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad1) - 32usize];
["Offset of field: __pthread_rwlock_arch_t::__pad2"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad2) - 40usize];
["Offset of field: __pthread_rwlock_arch_t::__flags"]
[::std::mem::offset_of!(__pthread_rwlock_arch_t, __flags) - 48usize];
};
#[repr(C)]
#[derive(Copy, Clone)]
pub struct __pthread_cond_s {
pub __wseq: __atomic_wide_counter,
pub __g1_start: __atomic_wide_counter,
pub __g_size: [::std::ffi::c_uint; 2usize],
pub __g1_orig_size: ::std::ffi::c_uint,
pub __wrefs: ::std::ffi::c_uint,
pub __g_signals: [::std::ffi::c_uint; 2usize],
pub __unused_initialized_1: ::std::ffi::c_uint,
pub __unused_initialized_2: ::std::ffi::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_cond_s"][::std::mem::size_of::<__pthread_cond_s>() - 48usize];
["Alignment of __pthread_cond_s"][::std::mem::align_of::<__pthread_cond_s>() - 8usize];
["Offset of field: __pthread_cond_s::__wseq"]
[::std::mem::offset_of!(__pthread_cond_s, __wseq) - 0usize];
["Offset of field: __pthread_cond_s::__g1_start"]
[::std::mem::offset_of!(__pthread_cond_s, __g1_start) - 8usize];
["Offset of field: __pthread_cond_s::__g_size"]
[::std::mem::offset_of!(__pthread_cond_s, __g_size) - 16usize];
["Offset of field: __pthread_cond_s::__g1_orig_size"]
[::std::mem::offset_of!(__pthread_cond_s, __g1_orig_size) - 24usize];
["Offset of field: __pthread_cond_s::__wrefs"]
[::std::mem::offset_of!(__pthread_cond_s, __wrefs) - 28usize];
["Offset of field: __pthread_cond_s::__g_signals"]
[::std::mem::offset_of!(__pthread_cond_s, __g_signals) - 32usize];
["Offset of field: __pthread_cond_s::__unused_initialized_1"]
[::std::mem::offset_of!(__pthread_cond_s, __unused_initialized_1) - 40usize];
["Offset of field: __pthread_cond_s::__unused_initialized_2"]
[::std::mem::offset_of!(__pthread_cond_s, __unused_initialized_2) - 44usize];
};
impl Default for __pthread_cond_s {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __tss_t = ::std::ffi::c_uint;
pub type __thrd_t = ::std::ffi::c_ulong;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __once_flag {
pub __data: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __once_flag"][::std::mem::size_of::<__once_flag>() - 4usize];
["Alignment of __once_flag"][::std::mem::align_of::<__once_flag>() - 4usize];
["Offset of field: __once_flag::__data"][::std::mem::offset_of!(__once_flag, __data) - 0usize];
};
pub type pthread_t = ::std::ffi::c_ulong;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_mutexattr_t {
pub __size: [::std::ffi::c_char; 4usize],
pub __align: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_mutexattr_t"][::std::mem::size_of::<pthread_mutexattr_t>() - 4usize];
["Alignment of pthread_mutexattr_t"][::std::mem::align_of::<pthread_mutexattr_t>() - 4usize];
["Offset of field: pthread_mutexattr_t::__size"]
[::std::mem::offset_of!(pthread_mutexattr_t, __size) - 0usize];
["Offset of field: pthread_mutexattr_t::__align"]
[::std::mem::offset_of!(pthread_mutexattr_t, __align) - 0usize];
};
impl Default for pthread_mutexattr_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_condattr_t {
pub __size: [::std::ffi::c_char; 4usize],
pub __align: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_condattr_t"][::std::mem::size_of::<pthread_condattr_t>() - 4usize];
["Alignment of pthread_condattr_t"][::std::mem::align_of::<pthread_condattr_t>() - 4usize];
["Offset of field: pthread_condattr_t::__size"]
[::std::mem::offset_of!(pthread_condattr_t, __size) - 0usize];
["Offset of field: pthread_condattr_t::__align"]
[::std::mem::offset_of!(pthread_condattr_t, __align) - 0usize];
};
impl Default for pthread_condattr_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type pthread_key_t = ::std::ffi::c_uint;
pub type pthread_once_t = ::std::ffi::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_attr_t {
pub __size: [::std::ffi::c_char; 56usize],
pub __align: ::std::ffi::c_long,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_attr_t"][::std::mem::size_of::<pthread_attr_t>() - 56usize];
["Alignment of pthread_attr_t"][::std::mem::align_of::<pthread_attr_t>() - 8usize];
["Offset of field: pthread_attr_t::__size"]
[::std::mem::offset_of!(pthread_attr_t, __size) - 0usize];
["Offset of field: pthread_attr_t::__align"]
[::std::mem::offset_of!(pthread_attr_t, __align) - 0usize];
};
impl Default for pthread_attr_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_mutex_t {
pub __data: __pthread_mutex_s,
pub __size: [::std::ffi::c_char; 40usize],
pub __align: ::std::ffi::c_long,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_mutex_t"][::std::mem::size_of::<pthread_mutex_t>() - 40usize];
["Alignment of pthread_mutex_t"][::std::mem::align_of::<pthread_mutex_t>() - 8usize];
["Offset of field: pthread_mutex_t::__data"]
[::std::mem::offset_of!(pthread_mutex_t, __data) - 0usize];
["Offset of field: pthread_mutex_t::__size"]
[::std::mem::offset_of!(pthread_mutex_t, __size) - 0usize];
["Offset of field: pthread_mutex_t::__align"]
[::std::mem::offset_of!(pthread_mutex_t, __align) - 0usize];
};
impl Default for pthread_mutex_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_cond_t {
pub __data: __pthread_cond_s,
pub __size: [::std::ffi::c_char; 48usize],
pub __align: ::std::ffi::c_longlong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_cond_t"][::std::mem::size_of::<pthread_cond_t>() - 48usize];
["Alignment of pthread_cond_t"][::std::mem::align_of::<pthread_cond_t>() - 8usize];
["Offset of field: pthread_cond_t::__data"]
[::std::mem::offset_of!(pthread_cond_t, __data) - 0usize];
["Offset of field: pthread_cond_t::__size"]
[::std::mem::offset_of!(pthread_cond_t, __size) - 0usize];
["Offset of field: pthread_cond_t::__align"]
[::std::mem::offset_of!(pthread_cond_t, __align) - 0usize];
};
impl Default for pthread_cond_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_rwlock_t {
pub __data: __pthread_rwlock_arch_t,
pub __size: [::std::ffi::c_char; 56usize],
pub __align: ::std::ffi::c_long,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_rwlock_t"][::std::mem::size_of::<pthread_rwlock_t>() - 56usize];
["Alignment of pthread_rwlock_t"][::std::mem::align_of::<pthread_rwlock_t>() - 8usize];
["Offset of field: pthread_rwlock_t::__data"]
[::std::mem::offset_of!(pthread_rwlock_t, __data) - 0usize];
["Offset of field: pthread_rwlock_t::__size"]
[::std::mem::offset_of!(pthread_rwlock_t, __size) - 0usize];
["Offset of field: pthread_rwlock_t::__align"]
[::std::mem::offset_of!(pthread_rwlock_t, __align) - 0usize];
};
impl Default for pthread_rwlock_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_rwlockattr_t {
pub __size: [::std::ffi::c_char; 8usize],
pub __align: ::std::ffi::c_long,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_rwlockattr_t"][::std::mem::size_of::<pthread_rwlockattr_t>() - 8usize];
["Alignment of pthread_rwlockattr_t"][::std::mem::align_of::<pthread_rwlockattr_t>() - 8usize];
["Offset of field: pthread_rwlockattr_t::__size"]
[::std::mem::offset_of!(pthread_rwlockattr_t, __size) - 0usize];
["Offset of field: pthread_rwlockattr_t::__align"]
[::std::mem::offset_of!(pthread_rwlockattr_t, __align) - 0usize];
};
impl Default for pthread_rwlockattr_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type pthread_spinlock_t = ::std::ffi::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_barrier_t {
pub __size: [::std::ffi::c_char; 32usize],
pub __align: ::std::ffi::c_long,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_barrier_t"][::std::mem::size_of::<pthread_barrier_t>() - 32usize];
["Alignment of pthread_barrier_t"][::std::mem::align_of::<pthread_barrier_t>() - 8usize];
["Offset of field: pthread_barrier_t::__size"]
[::std::mem::offset_of!(pthread_barrier_t, __size) - 0usize];
["Offset of field: pthread_barrier_t::__align"]
[::std::mem::offset_of!(pthread_barrier_t, __align) - 0usize];
};
impl Default for pthread_barrier_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_barrierattr_t {
pub __size: [::std::ffi::c_char; 4usize],
pub __align: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pthread_barrierattr_t"][::std::mem::size_of::<pthread_barrierattr_t>() - 4usize];
["Alignment of pthread_barrierattr_t"]
[::std::mem::align_of::<pthread_barrierattr_t>() - 4usize];
["Offset of field: pthread_barrierattr_t::__size"]
[::std::mem::offset_of!(pthread_barrierattr_t, __size) - 0usize];
["Offset of field: pthread_barrierattr_t::__align"]
[::std::mem::offset_of!(pthread_barrierattr_t, __align) - 0usize];
};
impl Default for pthread_barrierattr_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type socklen_t = __socklen_t;
pub const __socket_type_SOCK_STREAM: __socket_type = 1;
pub const __socket_type_SOCK_DGRAM: __socket_type = 2;
pub const __socket_type_SOCK_RAW: __socket_type = 3;
pub const __socket_type_SOCK_RDM: __socket_type = 4;
pub const __socket_type_SOCK_SEQPACKET: __socket_type = 5;
pub const __socket_type_SOCK_DCCP: __socket_type = 6;
pub const __socket_type_SOCK_PACKET: __socket_type = 10;
pub const __socket_type_SOCK_CLOEXEC: __socket_type = 524288;
pub const __socket_type_SOCK_NONBLOCK: __socket_type = 2048;
pub type __socket_type = ::std::ffi::c_uint;
pub type sa_family_t = ::std::ffi::c_ushort;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct sockaddr {
pub sa_family: sa_family_t,
pub sa_data: [::std::ffi::c_char; 14usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of sockaddr"][::std::mem::size_of::<sockaddr>() - 16usize];
["Alignment of sockaddr"][::std::mem::align_of::<sockaddr>() - 2usize];
["Offset of field: sockaddr::sa_family"][::std::mem::offset_of!(sockaddr, sa_family) - 0usize];
["Offset of field: sockaddr::sa_data"][::std::mem::offset_of!(sockaddr, sa_data) - 2usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sockaddr_storage {
pub ss_family: sa_family_t,
pub __ss_padding: [::std::ffi::c_char; 118usize],
pub __ss_align: ::std::ffi::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of sockaddr_storage"][::std::mem::size_of::<sockaddr_storage>() - 128usize];
["Alignment of sockaddr_storage"][::std::mem::align_of::<sockaddr_storage>() - 8usize];
["Offset of field: sockaddr_storage::ss_family"]
[::std::mem::offset_of!(sockaddr_storage, ss_family) - 0usize];
["Offset of field: sockaddr_storage::__ss_padding"]
[::std::mem::offset_of!(sockaddr_storage, __ss_padding) - 2usize];
["Offset of field: sockaddr_storage::__ss_align"]
[::std::mem::offset_of!(sockaddr_storage, __ss_align) - 120usize];
};
impl Default for sockaddr_storage {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const MSG_OOB: _bindgen_ty_1 = 1;
pub const MSG_PEEK: _bindgen_ty_1 = 2;
pub const MSG_DONTROUTE: _bindgen_ty_1 = 4;
pub const MSG_CTRUNC: _bindgen_ty_1 = 8;
pub const MSG_PROXY: _bindgen_ty_1 = 16;
pub const MSG_TRUNC: _bindgen_ty_1 = 32;
pub const MSG_DONTWAIT: _bindgen_ty_1 = 64;
pub const MSG_EOR: _bindgen_ty_1 = 128;
pub const MSG_WAITALL: _bindgen_ty_1 = 256;
pub const MSG_FIN: _bindgen_ty_1 = 512;
pub const MSG_SYN: _bindgen_ty_1 = 1024;
pub const MSG_CONFIRM: _bindgen_ty_1 = 2048;
pub const MSG_RST: _bindgen_ty_1 = 4096;
pub const MSG_ERRQUEUE: _bindgen_ty_1 = 8192;
pub const MSG_NOSIGNAL: _bindgen_ty_1 = 16384;
pub const MSG_MORE: _bindgen_ty_1 = 32768;
pub const MSG_WAITFORONE: _bindgen_ty_1 = 65536;
pub const MSG_BATCH: _bindgen_ty_1 = 262144;
pub const MSG_SOCK_DEVMEM: _bindgen_ty_1 = 33554432;
pub const MSG_ZEROCOPY: _bindgen_ty_1 = 67108864;
pub const MSG_FASTOPEN: _bindgen_ty_1 = 536870912;
pub const MSG_CMSG_CLOEXEC: _bindgen_ty_1 = 1073741824;
pub type _bindgen_ty_1 = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct msghdr {
pub msg_name: *mut ::std::ffi::c_void,
pub msg_namelen: socklen_t,
pub msg_iov: *mut iovec,
pub msg_iovlen: usize,
pub msg_control: *mut ::std::ffi::c_void,
pub msg_controllen: usize,
pub msg_flags: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of msghdr"][::std::mem::size_of::<msghdr>() - 56usize];
["Alignment of msghdr"][::std::mem::align_of::<msghdr>() - 8usize];
["Offset of field: msghdr::msg_name"][::std::mem::offset_of!(msghdr, msg_name) - 0usize];
["Offset of field: msghdr::msg_namelen"][::std::mem::offset_of!(msghdr, msg_namelen) - 8usize];
["Offset of field: msghdr::msg_iov"][::std::mem::offset_of!(msghdr, msg_iov) - 16usize];
["Offset of field: msghdr::msg_iovlen"][::std::mem::offset_of!(msghdr, msg_iovlen) - 24usize];
["Offset of field: msghdr::msg_control"][::std::mem::offset_of!(msghdr, msg_control) - 32usize];
["Offset of field: msghdr::msg_controllen"]
[::std::mem::offset_of!(msghdr, msg_controllen) - 40usize];
["Offset of field: msghdr::msg_flags"][::std::mem::offset_of!(msghdr, msg_flags) - 48usize];
};
impl Default for msghdr {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default)]
pub struct cmsghdr {
pub cmsg_len: usize,
pub cmsg_level: ::std::ffi::c_int,
pub cmsg_type: ::std::ffi::c_int,
pub __cmsg_data: __IncompleteArrayField<::std::ffi::c_uchar>,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of cmsghdr"][::std::mem::size_of::<cmsghdr>() - 16usize];
["Alignment of cmsghdr"][::std::mem::align_of::<cmsghdr>() - 8usize];
["Offset of field: cmsghdr::cmsg_len"][::std::mem::offset_of!(cmsghdr, cmsg_len) - 0usize];
["Offset of field: cmsghdr::cmsg_level"][::std::mem::offset_of!(cmsghdr, cmsg_level) - 8usize];
["Offset of field: cmsghdr::cmsg_type"][::std::mem::offset_of!(cmsghdr, cmsg_type) - 12usize];
["Offset of field: cmsghdr::__cmsg_data"]
[::std::mem::offset_of!(cmsghdr, __cmsg_data) - 16usize];
};
unsafe extern "C" {
pub fn __cmsg_nxthdr(__mhdr: *mut msghdr, __cmsg: *mut cmsghdr) -> *mut cmsghdr;
}
pub const SCM_RIGHTS: _bindgen_ty_2 = 1;
pub type _bindgen_ty_2 = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __kernel_fd_set {
pub fds_bits: [::std::ffi::c_ulong; 16usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __kernel_fd_set"][::std::mem::size_of::<__kernel_fd_set>() - 128usize];
["Alignment of __kernel_fd_set"][::std::mem::align_of::<__kernel_fd_set>() - 8usize];
["Offset of field: __kernel_fd_set::fds_bits"]
[::std::mem::offset_of!(__kernel_fd_set, fds_bits) - 0usize];
};
pub type __kernel_sighandler_t =
::std::option::Option<unsafe extern "C" fn(arg1: ::std::ffi::c_int)>;
pub type __kernel_key_t = ::std::ffi::c_int;
pub type __kernel_mqd_t = ::std::ffi::c_int;
pub type __kernel_old_uid_t = ::std::ffi::c_ushort;
pub type __kernel_old_gid_t = ::std::ffi::c_ushort;
pub type __kernel_old_dev_t = ::std::ffi::c_ulong;
pub type __kernel_long_t = ::std::ffi::c_long;
pub type __kernel_ulong_t = ::std::ffi::c_ulong;
pub type __kernel_ino_t = __kernel_ulong_t;
pub type __kernel_mode_t = ::std::ffi::c_uint;
pub type __kernel_pid_t = ::std::ffi::c_int;
pub type __kernel_ipc_pid_t = ::std::ffi::c_int;
pub type __kernel_uid_t = ::std::ffi::c_uint;
pub type __kernel_gid_t = ::std::ffi::c_uint;
pub type __kernel_suseconds_t = __kernel_long_t;
pub type __kernel_daddr_t = ::std::ffi::c_int;
pub type __kernel_uid32_t = ::std::ffi::c_uint;
pub type __kernel_gid32_t = ::std::ffi::c_uint;
pub type __kernel_size_t = __kernel_ulong_t;
pub type __kernel_ssize_t = __kernel_long_t;
pub type __kernel_ptrdiff_t = __kernel_long_t;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __kernel_fsid_t {
pub val: [::std::ffi::c_int; 2usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __kernel_fsid_t"][::std::mem::size_of::<__kernel_fsid_t>() - 8usize];
["Alignment of __kernel_fsid_t"][::std::mem::align_of::<__kernel_fsid_t>() - 4usize];
["Offset of field: __kernel_fsid_t::val"]
[::std::mem::offset_of!(__kernel_fsid_t, val) - 0usize];
};
pub type __kernel_off_t = __kernel_long_t;
pub type __kernel_loff_t = ::std::ffi::c_longlong;
pub type __kernel_uoff_t = ::std::ffi::c_ulonglong;
pub type __kernel_old_time_t = __kernel_long_t;
pub type __kernel_time_t = __kernel_long_t;
pub type __kernel_time64_t = ::std::ffi::c_longlong;
pub type __kernel_clock_t = __kernel_long_t;
pub type __kernel_timer_t = ::std::ffi::c_int;
pub type __kernel_clockid_t = ::std::ffi::c_int;
pub type __kernel_caddr_t = *mut ::std::ffi::c_char;
pub type __kernel_uid16_t = ::std::ffi::c_ushort;
pub type __kernel_gid16_t = ::std::ffi::c_ushort;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct linger {
pub l_onoff: ::std::ffi::c_int,
pub l_linger: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of linger"][::std::mem::size_of::<linger>() - 8usize];
["Alignment of linger"][::std::mem::align_of::<linger>() - 4usize];
["Offset of field: linger::l_onoff"][::std::mem::offset_of!(linger, l_onoff) - 0usize];
["Offset of field: linger::l_linger"][::std::mem::offset_of!(linger, l_linger) - 4usize];
};
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct osockaddr {
pub sa_family: ::std::ffi::c_ushort,
pub sa_data: [::std::ffi::c_uchar; 14usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of osockaddr"][::std::mem::size_of::<osockaddr>() - 16usize];
["Alignment of osockaddr"][::std::mem::align_of::<osockaddr>() - 2usize];
["Offset of field: osockaddr::sa_family"]
[::std::mem::offset_of!(osockaddr, sa_family) - 0usize];
["Offset of field: osockaddr::sa_data"][::std::mem::offset_of!(osockaddr, sa_data) - 2usize];
};
pub const SHUT_RD: _bindgen_ty_3 = 0;
pub const SHUT_WR: _bindgen_ty_3 = 1;
pub const SHUT_RDWR: _bindgen_ty_3 = 2;
pub type _bindgen_ty_3 = ::std::ffi::c_uint;
unsafe extern "C" {
pub fn socket(
__domain: ::std::ffi::c_int,
__type: ::std::ffi::c_int,
__protocol: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn socketpair(
__domain: ::std::ffi::c_int,
__type: ::std::ffi::c_int,
__protocol: ::std::ffi::c_int,
__fds: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn bind(
__fd: ::std::ffi::c_int,
__addr: *const sockaddr,
__len: socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getsockname(
__fd: ::std::ffi::c_int,
__addr: *mut sockaddr,
__len: *mut socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn connect(
__fd: ::std::ffi::c_int,
__addr: *const sockaddr,
__len: socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getpeername(
__fd: ::std::ffi::c_int,
__addr: *mut sockaddr,
__len: *mut socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn send(
__fd: ::std::ffi::c_int,
__buf: *const ::std::ffi::c_void,
__n: usize,
__flags: ::std::ffi::c_int,
) -> isize;
}
unsafe extern "C" {
pub fn recv(
__fd: ::std::ffi::c_int,
__buf: *mut ::std::ffi::c_void,
__n: usize,
__flags: ::std::ffi::c_int,
) -> isize;
}
unsafe extern "C" {
pub fn sendto(
__fd: ::std::ffi::c_int,
__buf: *const ::std::ffi::c_void,
__n: usize,
__flags: ::std::ffi::c_int,
__addr: *const sockaddr,
__addr_len: socklen_t,
) -> isize;
}
unsafe extern "C" {
pub fn recvfrom(
__fd: ::std::ffi::c_int,
__buf: *mut ::std::ffi::c_void,
__n: usize,
__flags: ::std::ffi::c_int,
__addr: *mut sockaddr,
__addr_len: *mut socklen_t,
) -> isize;
}
unsafe extern "C" {
pub fn sendmsg(
__fd: ::std::ffi::c_int,
__message: *const msghdr,
__flags: ::std::ffi::c_int,
) -> isize;
}
unsafe extern "C" {
pub fn recvmsg(
__fd: ::std::ffi::c_int,
__message: *mut msghdr,
__flags: ::std::ffi::c_int,
) -> isize;
}
unsafe extern "C" {
pub fn getsockopt(
__fd: ::std::ffi::c_int,
__level: ::std::ffi::c_int,
__optname: ::std::ffi::c_int,
__optval: *mut ::std::ffi::c_void,
__optlen: *mut socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setsockopt(
__fd: ::std::ffi::c_int,
__level: ::std::ffi::c_int,
__optname: ::std::ffi::c_int,
__optval: *const ::std::ffi::c_void,
__optlen: socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn listen(__fd: ::std::ffi::c_int, __n: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn accept(
__fd: ::std::ffi::c_int,
__addr: *mut sockaddr,
__addr_len: *mut socklen_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn shutdown(__fd: ::std::ffi::c_int, __how: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sockatmark(__fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn isfdtype(__fd: ::std::ffi::c_int, __fdtype: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn memcpy(
__dest: *mut ::std::ffi::c_void,
__src: *const ::std::ffi::c_void,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn memmove(
__dest: *mut ::std::ffi::c_void,
__src: *const ::std::ffi::c_void,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn memccpy(
__dest: *mut ::std::ffi::c_void,
__src: *const ::std::ffi::c_void,
__c: ::std::ffi::c_int,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn memset(
__s: *mut ::std::ffi::c_void,
__c: ::std::ffi::c_int,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn memset_explicit(
__s: *mut ::std::ffi::c_void,
__c: ::std::ffi::c_int,
__n: usize,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn memcmp(
__s1: *const ::std::ffi::c_void,
__s2: *const ::std::ffi::c_void,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __memcmpeq(
__s1: *const ::std::ffi::c_void,
__s2: *const ::std::ffi::c_void,
__n: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn memchr(
__s: *const ::std::ffi::c_void,
__c: ::std::ffi::c_int,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn strcpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strncpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strcat(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strncat(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strcmp(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strncmp(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strcoll(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strxfrm(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_ulong;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __locale_struct {
pub __locales: [*mut __locale_data; 13usize],
pub __ctype_b: *const ::std::ffi::c_ushort,
pub __ctype_tolower: *const ::std::ffi::c_int,
pub __ctype_toupper: *const ::std::ffi::c_int,
pub __names: [*const ::std::ffi::c_char; 13usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __locale_struct"][::std::mem::size_of::<__locale_struct>() - 232usize];
["Alignment of __locale_struct"][::std::mem::align_of::<__locale_struct>() - 8usize];
["Offset of field: __locale_struct::__locales"]
[::std::mem::offset_of!(__locale_struct, __locales) - 0usize];
["Offset of field: __locale_struct::__ctype_b"]
[::std::mem::offset_of!(__locale_struct, __ctype_b) - 104usize];
["Offset of field: __locale_struct::__ctype_tolower"]
[::std::mem::offset_of!(__locale_struct, __ctype_tolower) - 112usize];
["Offset of field: __locale_struct::__ctype_toupper"]
[::std::mem::offset_of!(__locale_struct, __ctype_toupper) - 120usize];
["Offset of field: __locale_struct::__names"]
[::std::mem::offset_of!(__locale_struct, __names) - 128usize];
};
impl Default for __locale_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __locale_t = *mut __locale_struct;
pub type locale_t = __locale_t;
unsafe extern "C" {
pub fn strcoll_l(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
__l: locale_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strxfrm_l(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: usize,
__l: locale_t,
) -> usize;
}
unsafe extern "C" {
pub fn strdup(__s: *const ::std::ffi::c_char) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strndup(
__string: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strchr(
__s: *const ::std::ffi::c_char,
__c: ::std::ffi::c_int,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strrchr(
__s: *const ::std::ffi::c_char,
__c: ::std::ffi::c_int,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strchrnul(
__s: *const ::std::ffi::c_char,
__c: ::std::ffi::c_int,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strcspn(
__s: *const ::std::ffi::c_char,
__reject: *const ::std::ffi::c_char,
) -> ::std::ffi::c_ulong;
}
unsafe extern "C" {
pub fn strspn(
__s: *const ::std::ffi::c_char,
__accept: *const ::std::ffi::c_char,
) -> ::std::ffi::c_ulong;
}
unsafe extern "C" {
pub fn strpbrk(
__s: *const ::std::ffi::c_char,
__accept: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strstr(
__haystack: *const ::std::ffi::c_char,
__needle: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strtok(
__s: *mut ::std::ffi::c_char,
__delim: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn __strtok_r(
__s: *mut ::std::ffi::c_char,
__delim: *const ::std::ffi::c_char,
__save_ptr: *mut *mut ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strtok_r(
__s: *mut ::std::ffi::c_char,
__delim: *const ::std::ffi::c_char,
__save_ptr: *mut *mut ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strcasestr(
__haystack: *const ::std::ffi::c_char,
__needle: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn memmem(
__haystack: *const ::std::ffi::c_void,
__haystacklen: usize,
__needle: *const ::std::ffi::c_void,
__needlelen: usize,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn __mempcpy(
__dest: *mut ::std::ffi::c_void,
__src: *const ::std::ffi::c_void,
__n: usize,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn mempcpy(
__dest: *mut ::std::ffi::c_void,
__src: *const ::std::ffi::c_void,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn strlen(__s: *const ::std::ffi::c_char) -> ::std::ffi::c_ulong;
}
unsafe extern "C" {
pub fn strnlen(__string: *const ::std::ffi::c_char, __maxlen: usize) -> usize;
}
unsafe extern "C" {
pub fn strerror(__errnum: ::std::ffi::c_int) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
#[link_name = "\u{1}__xpg_strerror_r"]
pub fn strerror_r(
__errnum: ::std::ffi::c_int,
__buf: *mut ::std::ffi::c_char,
__buflen: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strerror_l(__errnum: ::std::ffi::c_int, __l: locale_t) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn bcmp(
__s1: *const ::std::ffi::c_void,
__s2: *const ::std::ffi::c_void,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn bcopy(
__src: *const ::std::ffi::c_void,
__dest: *mut ::std::ffi::c_void,
__n: ::std::ffi::c_ulong,
);
}
unsafe extern "C" {
pub fn bzero(__s: *mut ::std::ffi::c_void, __n: ::std::ffi::c_ulong);
}
unsafe extern "C" {
pub fn index(__s: *const ::std::ffi::c_char, __c: ::std::ffi::c_int)
-> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn rindex(
__s: *const ::std::ffi::c_char,
__c: ::std::ffi::c_int,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn ffs(__i: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ffsl(__l: ::std::ffi::c_long) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ffsll(__ll: ::std::ffi::c_longlong) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strcasecmp(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strncasecmp(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strcasecmp_l(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
__loc: locale_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn strncasecmp_l(
__s1: *const ::std::ffi::c_char,
__s2: *const ::std::ffi::c_char,
__n: usize,
__loc: locale_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn explicit_bzero(__s: *mut ::std::ffi::c_void, __n: usize);
}
unsafe extern "C" {
pub fn strsep(
__stringp: *mut *mut ::std::ffi::c_char,
__delim: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strsignal(__sig: ::std::ffi::c_int) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn __stpcpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn stpcpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn __stpncpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: usize,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn stpncpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn strlcpy(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_ulong;
}
unsafe extern "C" {
pub fn strlcat(
__dest: *mut ::std::ffi::c_char,
__src: *const ::std::ffi::c_char,
__n: ::std::ffi::c_ulong,
) -> ::std::ffi::c_ulong;
}
pub type __cfloat128 = __BindgenComplex<u128>;
pub type _Float128 = u128;
pub type _Float32 = f32;
pub type _Float64 = f64;
pub type _Float32x = f64;
pub type _Float64x = u128;
pub type float_t = f32;
pub type double_t = f64;
unsafe extern "C" {
pub fn __fpclassify(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __signbit(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isinf(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __finite(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isnan(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __iseqsig(__x: f64, __y: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __issignaling(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn acos(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __acos(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn asin(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __asin(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn atan(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __atan(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn atan2(__y: f64, __x: f64) -> f64;
}
unsafe extern "C" {
pub fn __atan2(__y: f64, __x: f64) -> f64;
}
unsafe extern "C" {
pub fn cos(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __cos(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn sin(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __sin(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn tan(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __tan(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn cosh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __cosh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn sinh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __sinh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn tanh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __tanh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn acosh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __acosh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn asinh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __asinh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn atanh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __atanh(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn exp(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __exp(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn frexp(__x: f64, __exponent: *mut ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn __frexp(__x: f64, __exponent: *mut ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn ldexp(__x: f64, __exponent: ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn __ldexp(__x: f64, __exponent: ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn log(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __log(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn log10(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __log10(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn modf(__x: f64, __iptr: *mut f64) -> f64;
}
unsafe extern "C" {
pub fn __modf(__x: f64, __iptr: *mut f64) -> f64;
}
unsafe extern "C" {
pub fn expm1(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __expm1(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn log1p(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __log1p(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn logb(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __logb(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn exp2(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __exp2(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn log2(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __log2(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn pow(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __pow(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn sqrt(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __sqrt(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn hypot(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __hypot(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn cbrt(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __cbrt(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn ceil(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn fabs(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn floor(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn fmod(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __fmod(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn isinf(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn finite(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn drem(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __drem(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn significand(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __significand(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn copysign(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn nan(__tagb: *const ::std::ffi::c_char) -> f64;
}
unsafe extern "C" {
pub fn __nan(__tagb: *const ::std::ffi::c_char) -> f64;
}
unsafe extern "C" {
pub fn isnan(__value: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn j0(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __j0(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn j1(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __j1(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn jn(arg1: ::std::ffi::c_int, arg2: f64) -> f64;
}
unsafe extern "C" {
pub fn __jn(arg1: ::std::ffi::c_int, arg2: f64) -> f64;
}
unsafe extern "C" {
pub fn y0(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __y0(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn y1(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __y1(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn yn(arg1: ::std::ffi::c_int, arg2: f64) -> f64;
}
unsafe extern "C" {
pub fn __yn(arg1: ::std::ffi::c_int, arg2: f64) -> f64;
}
unsafe extern "C" {
pub fn erf(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __erf(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn erfc(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __erfc(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn lgamma(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __lgamma(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn tgamma(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __tgamma(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn gamma(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn __gamma(arg1: f64) -> f64;
}
unsafe extern "C" {
pub fn lgamma_r(arg1: f64, __signgamp: *mut ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn __lgamma_r(arg1: f64, __signgamp: *mut ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn rint(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __rint(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn nextafter(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __nextafter(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn nexttoward(__x: f64, __y: u128) -> f64;
}
unsafe extern "C" {
pub fn __nexttoward(__x: f64, __y: u128) -> f64;
}
unsafe extern "C" {
pub fn remainder(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __remainder(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn scalbn(__x: f64, __n: ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn __scalbn(__x: f64, __n: ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn ilogb(__x: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __ilogb(__x: f64) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn scalbln(__x: f64, __n: ::std::ffi::c_long) -> f64;
}
unsafe extern "C" {
pub fn __scalbln(__x: f64, __n: ::std::ffi::c_long) -> f64;
}
unsafe extern "C" {
pub fn nearbyint(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn __nearbyint(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn round(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn trunc(__x: f64) -> f64;
}
unsafe extern "C" {
pub fn remquo(__x: f64, __y: f64, __quo: *mut ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn __remquo(__x: f64, __y: f64, __quo: *mut ::std::ffi::c_int) -> f64;
}
unsafe extern "C" {
pub fn lrint(__x: f64) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn __lrint(__x: f64) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn llrint(__x: f64) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn __llrint(__x: f64) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn lround(__x: f64) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn __lround(__x: f64) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn llround(__x: f64) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn __llround(__x: f64) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn fdim(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn __fdim(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn fmax(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn fmin(__x: f64, __y: f64) -> f64;
}
unsafe extern "C" {
pub fn fma(__x: f64, __y: f64, __z: f64) -> f64;
}
unsafe extern "C" {
pub fn __fma(__x: f64, __y: f64, __z: f64) -> f64;
}
unsafe extern "C" {
pub fn scalb(__x: f64, __n: f64) -> f64;
}
unsafe extern "C" {
pub fn __scalb(__x: f64, __n: f64) -> f64;
}
unsafe extern "C" {
pub fn __fpclassifyf(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __signbitf(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isinff(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __finitef(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isnanf(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __iseqsigf(__x: f32, __y: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __issignalingf(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn acosf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __acosf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn asinf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __asinf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn atanf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __atanf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn atan2f(__y: f32, __x: f32) -> f32;
}
unsafe extern "C" {
pub fn __atan2f(__y: f32, __x: f32) -> f32;
}
unsafe extern "C" {
pub fn cosf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __cosf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn sinf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __sinf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn tanf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __tanf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn coshf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __coshf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn sinhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __sinhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn tanhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __tanhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn acoshf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __acoshf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn asinhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __asinhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn atanhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __atanhf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn expf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __expf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn frexpf(__x: f32, __exponent: *mut ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn __frexpf(__x: f32, __exponent: *mut ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn ldexpf(__x: f32, __exponent: ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn __ldexpf(__x: f32, __exponent: ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn logf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __logf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn log10f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __log10f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn modff(__x: f32, __iptr: *mut f32) -> f32;
}
unsafe extern "C" {
pub fn __modff(__x: f32, __iptr: *mut f32) -> f32;
}
unsafe extern "C" {
pub fn expm1f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __expm1f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn log1pf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __log1pf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn logbf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __logbf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn exp2f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __exp2f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn log2f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __log2f(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn powf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __powf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn sqrtf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __sqrtf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn hypotf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __hypotf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn cbrtf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __cbrtf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn ceilf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn fabsf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn floorf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn fmodf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __fmodf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn isinff(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn finitef(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn dremf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __dremf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn significandf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __significandf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn copysignf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn nanf(__tagb: *const ::std::ffi::c_char) -> f32;
}
unsafe extern "C" {
pub fn __nanf(__tagb: *const ::std::ffi::c_char) -> f32;
}
unsafe extern "C" {
pub fn isnanf(__value: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn j0f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __j0f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn j1f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __j1f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn jnf(arg1: ::std::ffi::c_int, arg2: f32) -> f32;
}
unsafe extern "C" {
pub fn __jnf(arg1: ::std::ffi::c_int, arg2: f32) -> f32;
}
unsafe extern "C" {
pub fn y0f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __y0f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn y1f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __y1f(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn ynf(arg1: ::std::ffi::c_int, arg2: f32) -> f32;
}
unsafe extern "C" {
pub fn __ynf(arg1: ::std::ffi::c_int, arg2: f32) -> f32;
}
unsafe extern "C" {
pub fn erff(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __erff(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn erfcf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __erfcf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn lgammaf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __lgammaf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn tgammaf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __tgammaf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn gammaf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn __gammaf(arg1: f32) -> f32;
}
unsafe extern "C" {
pub fn lgammaf_r(arg1: f32, __signgamp: *mut ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn __lgammaf_r(arg1: f32, __signgamp: *mut ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn rintf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __rintf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn nextafterf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __nextafterf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn nexttowardf(__x: f32, __y: u128) -> f32;
}
unsafe extern "C" {
pub fn __nexttowardf(__x: f32, __y: u128) -> f32;
}
unsafe extern "C" {
pub fn remainderf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __remainderf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn scalbnf(__x: f32, __n: ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn __scalbnf(__x: f32, __n: ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn ilogbf(__x: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __ilogbf(__x: f32) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn scalblnf(__x: f32, __n: ::std::ffi::c_long) -> f32;
}
unsafe extern "C" {
pub fn __scalblnf(__x: f32, __n: ::std::ffi::c_long) -> f32;
}
unsafe extern "C" {
pub fn nearbyintf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn __nearbyintf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn roundf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn truncf(__x: f32) -> f32;
}
unsafe extern "C" {
pub fn remquof(__x: f32, __y: f32, __quo: *mut ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn __remquof(__x: f32, __y: f32, __quo: *mut ::std::ffi::c_int) -> f32;
}
unsafe extern "C" {
pub fn lrintf(__x: f32) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn __lrintf(__x: f32) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn llrintf(__x: f32) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn __llrintf(__x: f32) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn lroundf(__x: f32) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn __lroundf(__x: f32) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn llroundf(__x: f32) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn __llroundf(__x: f32) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn fdimf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn __fdimf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn fmaxf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn fminf(__x: f32, __y: f32) -> f32;
}
unsafe extern "C" {
pub fn fmaf(__x: f32, __y: f32, __z: f32) -> f32;
}
unsafe extern "C" {
pub fn __fmaf(__x: f32, __y: f32, __z: f32) -> f32;
}
unsafe extern "C" {
pub fn scalbf(__x: f32, __n: f32) -> f32;
}
unsafe extern "C" {
pub fn __scalbf(__x: f32, __n: f32) -> f32;
}
unsafe extern "C" {
pub fn __fpclassifyl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __signbitl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isinfl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __finitel(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isnanl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __iseqsigl(__x: u128, __y: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __issignalingl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn acosl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __acosl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn asinl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __asinl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn atanl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __atanl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn atan2l(__y: u128, __x: u128) -> u128;
}
unsafe extern "C" {
pub fn __atan2l(__y: u128, __x: u128) -> u128;
}
unsafe extern "C" {
pub fn cosl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __cosl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn sinl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __sinl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn tanl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __tanl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn coshl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __coshl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn sinhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __sinhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn tanhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __tanhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn acoshl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __acoshl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn asinhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __asinhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn atanhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __atanhl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn expl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __expl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn frexpl(__x: u128, __exponent: *mut ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn __frexpl(__x: u128, __exponent: *mut ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn ldexpl(__x: u128, __exponent: ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn __ldexpl(__x: u128, __exponent: ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn logl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __logl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn log10l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __log10l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn modfl(__x: u128, __iptr: *mut u128) -> u128;
}
unsafe extern "C" {
pub fn __modfl(__x: u128, __iptr: *mut u128) -> u128;
}
unsafe extern "C" {
pub fn expm1l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __expm1l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn log1pl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __log1pl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn logbl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __logbl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn exp2l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __exp2l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn log2l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __log2l(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn powl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __powl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn sqrtl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __sqrtl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn hypotl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __hypotl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn cbrtl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __cbrtl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn ceill(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn fabsl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn floorl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn fmodl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __fmodl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn isinfl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn finitel(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn dreml(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __dreml(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn significandl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __significandl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn copysignl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn nanl(__tagb: *const ::std::ffi::c_char) -> u128;
}
unsafe extern "C" {
pub fn __nanl(__tagb: *const ::std::ffi::c_char) -> u128;
}
unsafe extern "C" {
pub fn isnanl(__value: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn j0l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __j0l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn j1l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __j1l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn jnl(arg1: ::std::ffi::c_int, arg2: u128) -> u128;
}
unsafe extern "C" {
pub fn __jnl(arg1: ::std::ffi::c_int, arg2: u128) -> u128;
}
unsafe extern "C" {
pub fn y0l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __y0l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn y1l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __y1l(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn ynl(arg1: ::std::ffi::c_int, arg2: u128) -> u128;
}
unsafe extern "C" {
pub fn __ynl(arg1: ::std::ffi::c_int, arg2: u128) -> u128;
}
unsafe extern "C" {
pub fn erfl(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __erfl(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn erfcl(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __erfcl(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn lgammal(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __lgammal(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn tgammal(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __tgammal(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn gammal(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn __gammal(arg1: u128) -> u128;
}
unsafe extern "C" {
pub fn lgammal_r(arg1: u128, __signgamp: *mut ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn __lgammal_r(arg1: u128, __signgamp: *mut ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn rintl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __rintl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn nextafterl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __nextafterl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn nexttowardl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __nexttowardl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn remainderl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __remainderl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn scalbnl(__x: u128, __n: ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn __scalbnl(__x: u128, __n: ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn ilogbl(__x: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __ilogbl(__x: u128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn scalblnl(__x: u128, __n: ::std::ffi::c_long) -> u128;
}
unsafe extern "C" {
pub fn __scalblnl(__x: u128, __n: ::std::ffi::c_long) -> u128;
}
unsafe extern "C" {
pub fn nearbyintl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn __nearbyintl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn roundl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn truncl(__x: u128) -> u128;
}
unsafe extern "C" {
pub fn remquol(__x: u128, __y: u128, __quo: *mut ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn __remquol(__x: u128, __y: u128, __quo: *mut ::std::ffi::c_int) -> u128;
}
unsafe extern "C" {
pub fn lrintl(__x: u128) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn __lrintl(__x: u128) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn llrintl(__x: u128) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn __llrintl(__x: u128) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn lroundl(__x: u128) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn __lroundl(__x: u128) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn llroundl(__x: u128) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn __llroundl(__x: u128) -> ::std::ffi::c_longlong;
}
unsafe extern "C" {
pub fn fdiml(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn __fdiml(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn fmaxl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn fminl(__x: u128, __y: u128) -> u128;
}
unsafe extern "C" {
pub fn fmal(__x: u128, __y: u128, __z: u128) -> u128;
}
unsafe extern "C" {
pub fn __fmal(__x: u128, __y: u128, __z: u128) -> u128;
}
unsafe extern "C" {
pub fn scalbl(__x: u128, __n: u128) -> u128;
}
unsafe extern "C" {
pub fn __scalbl(__x: u128, __n: u128) -> u128;
}
unsafe extern "C" {
pub fn __fpclassifyf128(__value: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __signbitf128(__value: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isinff128(__value: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __finitef128(__value: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __isnanf128(__value: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __iseqsigf128(__x: _Float128, __y: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __issignalingf128(__value: _Float128) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut signgam: ::std::ffi::c_int;
}
pub const FP_NAN: _bindgen_ty_4 = 0;
pub const FP_INFINITE: _bindgen_ty_4 = 1;
pub const FP_ZERO: _bindgen_ty_4 = 2;
pub const FP_SUBNORMAL: _bindgen_ty_4 = 3;
pub const FP_NORMAL: _bindgen_ty_4 = 4;
pub type _bindgen_ty_4 = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct sched_param {
pub sched_priority: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of sched_param"][::std::mem::size_of::<sched_param>() - 4usize];
["Alignment of sched_param"][::std::mem::align_of::<sched_param>() - 4usize];
["Offset of field: sched_param::sched_priority"]
[::std::mem::offset_of!(sched_param, sched_priority) - 0usize];
};
pub type __cpu_mask = ::std::ffi::c_ulong;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct cpu_set_t {
pub __bits: [__cpu_mask; 16usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of cpu_set_t"][::std::mem::size_of::<cpu_set_t>() - 128usize];
["Alignment of cpu_set_t"][::std::mem::align_of::<cpu_set_t>() - 8usize];
["Offset of field: cpu_set_t::__bits"][::std::mem::offset_of!(cpu_set_t, __bits) - 0usize];
};
unsafe extern "C" {
pub fn __sched_cpucount(__setsize: usize, __setp: *const cpu_set_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __sched_cpualloc(__count: usize) -> *mut cpu_set_t;
}
unsafe extern "C" {
pub fn __sched_cpufree(__set: *mut cpu_set_t);
}
unsafe extern "C" {
pub fn sched_setparam(__pid: __pid_t, __param: *const sched_param) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_getparam(__pid: __pid_t, __param: *mut sched_param) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_setscheduler(
__pid: __pid_t,
__policy: ::std::ffi::c_int,
__param: *const sched_param,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_getscheduler(__pid: __pid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_yield() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_get_priority_max(__algorithm: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_get_priority_min(__algorithm: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sched_rr_get_interval(__pid: __pid_t, __t: *mut timespec) -> ::std::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tm {
pub tm_sec: ::std::ffi::c_int,
pub tm_min: ::std::ffi::c_int,
pub tm_hour: ::std::ffi::c_int,
pub tm_mday: ::std::ffi::c_int,
pub tm_mon: ::std::ffi::c_int,
pub tm_year: ::std::ffi::c_int,
pub tm_wday: ::std::ffi::c_int,
pub tm_yday: ::std::ffi::c_int,
pub tm_isdst: ::std::ffi::c_int,
pub tm_gmtoff: ::std::ffi::c_long,
pub tm_zone: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of tm"][::std::mem::size_of::<tm>() - 56usize];
["Alignment of tm"][::std::mem::align_of::<tm>() - 8usize];
["Offset of field: tm::tm_sec"][::std::mem::offset_of!(tm, tm_sec) - 0usize];
["Offset of field: tm::tm_min"][::std::mem::offset_of!(tm, tm_min) - 4usize];
["Offset of field: tm::tm_hour"][::std::mem::offset_of!(tm, tm_hour) - 8usize];
["Offset of field: tm::tm_mday"][::std::mem::offset_of!(tm, tm_mday) - 12usize];
["Offset of field: tm::tm_mon"][::std::mem::offset_of!(tm, tm_mon) - 16usize];
["Offset of field: tm::tm_year"][::std::mem::offset_of!(tm, tm_year) - 20usize];
["Offset of field: tm::tm_wday"][::std::mem::offset_of!(tm, tm_wday) - 24usize];
["Offset of field: tm::tm_yday"][::std::mem::offset_of!(tm, tm_yday) - 28usize];
["Offset of field: tm::tm_isdst"][::std::mem::offset_of!(tm, tm_isdst) - 32usize];
["Offset of field: tm::tm_gmtoff"][::std::mem::offset_of!(tm, tm_gmtoff) - 40usize];
["Offset of field: tm::tm_zone"][::std::mem::offset_of!(tm, tm_zone) - 48usize];
};
impl Default for tm {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct itimerspec {
pub it_interval: timespec,
pub it_value: timespec,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of itimerspec"][::std::mem::size_of::<itimerspec>() - 32usize];
["Alignment of itimerspec"][::std::mem::align_of::<itimerspec>() - 8usize];
["Offset of field: itimerspec::it_interval"]
[::std::mem::offset_of!(itimerspec, it_interval) - 0usize];
["Offset of field: itimerspec::it_value"]
[::std::mem::offset_of!(itimerspec, it_value) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sigevent {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn clock() -> clock_t;
}
unsafe extern "C" {
pub fn time(__timer: *mut time_t) -> time_t;
}
unsafe extern "C" {
pub fn difftime(__time1: time_t, __time0: time_t) -> f64;
}
unsafe extern "C" {
pub fn mktime(__tp: *mut tm) -> time_t;
}
unsafe extern "C" {
pub fn strftime(
__s: *mut ::std::ffi::c_char,
__maxsize: usize,
__format: *const ::std::ffi::c_char,
__tp: *const tm,
) -> usize;
}
unsafe extern "C" {
pub fn strftime_l(
__s: *mut ::std::ffi::c_char,
__maxsize: usize,
__format: *const ::std::ffi::c_char,
__tp: *const tm,
__loc: locale_t,
) -> usize;
}
unsafe extern "C" {
pub fn gmtime(__timer: *const time_t) -> *mut tm;
}
unsafe extern "C" {
pub fn localtime(__timer: *const time_t) -> *mut tm;
}
unsafe extern "C" {
pub fn gmtime_r(__timer: *const time_t, __tp: *mut tm) -> *mut tm;
}
unsafe extern "C" {
pub fn localtime_r(__timer: *const time_t, __tp: *mut tm) -> *mut tm;
}
unsafe extern "C" {
pub fn asctime(__tp: *const tm) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn ctime(__timer: *const time_t) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn asctime_r(__tp: *const tm, __buf: *mut ::std::ffi::c_char) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn ctime_r(
__timer: *const time_t,
__buf: *mut ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub static mut __tzname: [*mut ::std::ffi::c_char; 2usize];
}
unsafe extern "C" {
pub static mut __daylight: ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut __timezone: ::std::ffi::c_long;
}
unsafe extern "C" {
pub static mut tzname: [*mut ::std::ffi::c_char; 2usize];
}
unsafe extern "C" {
pub fn tzset();
}
unsafe extern "C" {
pub static mut daylight: ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut timezone: ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn timegm(__tp: *mut tm) -> time_t;
}
unsafe extern "C" {
pub fn timelocal(__tp: *mut tm) -> time_t;
}
unsafe extern "C" {
pub fn dysize(__year: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn nanosleep(
__requested_time: *const timespec,
__remaining: *mut timespec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn clock_getres(__clock_id: clockid_t, __res: *mut timespec) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn clock_gettime(__clock_id: clockid_t, __tp: *mut timespec) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn clock_settime(__clock_id: clockid_t, __tp: *const timespec) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn clock_nanosleep(
__clock_id: clockid_t,
__flags: ::std::ffi::c_int,
__req: *const timespec,
__rem: *mut timespec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn clock_getcpuclockid(__pid: pid_t, __clock_id: *mut clockid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn timer_create(
__clock_id: clockid_t,
__evp: *mut sigevent,
__timerid: *mut timer_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn timer_delete(__timerid: timer_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn timer_settime(
__timerid: timer_t,
__flags: ::std::ffi::c_int,
__value: *const itimerspec,
__ovalue: *mut itimerspec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn timer_gettime(__timerid: timer_t, __value: *mut itimerspec) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn timer_getoverrun(__timerid: timer_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn timespec_get(__ts: *mut timespec, __base: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
pub type __jmp_buf = [::std::ffi::c_long; 8usize];
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __jmp_buf_tag {
pub __jmpbuf: __jmp_buf,
pub __mask_was_saved: ::std::ffi::c_int,
pub __saved_mask: __sigset_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __jmp_buf_tag"][::std::mem::size_of::<__jmp_buf_tag>() - 200usize];
["Alignment of __jmp_buf_tag"][::std::mem::align_of::<__jmp_buf_tag>() - 8usize];
["Offset of field: __jmp_buf_tag::__jmpbuf"]
[::std::mem::offset_of!(__jmp_buf_tag, __jmpbuf) - 0usize];
["Offset of field: __jmp_buf_tag::__mask_was_saved"]
[::std::mem::offset_of!(__jmp_buf_tag, __mask_was_saved) - 64usize];
["Offset of field: __jmp_buf_tag::__saved_mask"]
[::std::mem::offset_of!(__jmp_buf_tag, __saved_mask) - 72usize];
};
pub const PTHREAD_CREATE_JOINABLE: _bindgen_ty_5 = 0;
pub const PTHREAD_CREATE_DETACHED: _bindgen_ty_5 = 1;
pub type _bindgen_ty_5 = ::std::ffi::c_uint;
pub const PTHREAD_MUTEX_TIMED_NP: _bindgen_ty_6 = 0;
pub const PTHREAD_MUTEX_RECURSIVE_NP: _bindgen_ty_6 = 1;
pub const PTHREAD_MUTEX_ERRORCHECK_NP: _bindgen_ty_6 = 2;
pub const PTHREAD_MUTEX_ADAPTIVE_NP: _bindgen_ty_6 = 3;
pub const PTHREAD_MUTEX_NORMAL: _bindgen_ty_6 = 0;
pub const PTHREAD_MUTEX_RECURSIVE: _bindgen_ty_6 = 1;
pub const PTHREAD_MUTEX_ERRORCHECK: _bindgen_ty_6 = 2;
pub const PTHREAD_MUTEX_DEFAULT: _bindgen_ty_6 = 0;
pub type _bindgen_ty_6 = ::std::ffi::c_uint;
pub const PTHREAD_MUTEX_STALLED: _bindgen_ty_7 = 0;
pub const PTHREAD_MUTEX_STALLED_NP: _bindgen_ty_7 = 0;
pub const PTHREAD_MUTEX_ROBUST: _bindgen_ty_7 = 1;
pub const PTHREAD_MUTEX_ROBUST_NP: _bindgen_ty_7 = 1;
pub type _bindgen_ty_7 = ::std::ffi::c_uint;
pub const PTHREAD_PRIO_NONE: _bindgen_ty_8 = 0;
pub const PTHREAD_PRIO_INHERIT: _bindgen_ty_8 = 1;
pub const PTHREAD_PRIO_PROTECT: _bindgen_ty_8 = 2;
pub type _bindgen_ty_8 = ::std::ffi::c_uint;
pub const PTHREAD_RWLOCK_PREFER_READER_NP: _bindgen_ty_9 = 0;
pub const PTHREAD_RWLOCK_PREFER_WRITER_NP: _bindgen_ty_9 = 1;
pub const PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP: _bindgen_ty_9 = 2;
pub const PTHREAD_RWLOCK_DEFAULT_NP: _bindgen_ty_9 = 0;
pub type _bindgen_ty_9 = ::std::ffi::c_uint;
pub const PTHREAD_INHERIT_SCHED: _bindgen_ty_10 = 0;
pub const PTHREAD_EXPLICIT_SCHED: _bindgen_ty_10 = 1;
pub type _bindgen_ty_10 = ::std::ffi::c_uint;
pub const PTHREAD_SCOPE_SYSTEM: _bindgen_ty_11 = 0;
pub const PTHREAD_SCOPE_PROCESS: _bindgen_ty_11 = 1;
pub type _bindgen_ty_11 = ::std::ffi::c_uint;
pub const PTHREAD_PROCESS_PRIVATE: _bindgen_ty_12 = 0;
pub const PTHREAD_PROCESS_SHARED: _bindgen_ty_12 = 1;
pub type _bindgen_ty_12 = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _pthread_cleanup_buffer {
pub __routine: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::ffi::c_void)>,
pub __arg: *mut ::std::ffi::c_void,
pub __canceltype: ::std::ffi::c_int,
pub __prev: *mut _pthread_cleanup_buffer,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of _pthread_cleanup_buffer"][::std::mem::size_of::<_pthread_cleanup_buffer>() - 32usize];
["Alignment of _pthread_cleanup_buffer"]
[::std::mem::align_of::<_pthread_cleanup_buffer>() - 8usize];
["Offset of field: _pthread_cleanup_buffer::__routine"]
[::std::mem::offset_of!(_pthread_cleanup_buffer, __routine) - 0usize];
["Offset of field: _pthread_cleanup_buffer::__arg"]
[::std::mem::offset_of!(_pthread_cleanup_buffer, __arg) - 8usize];
["Offset of field: _pthread_cleanup_buffer::__canceltype"]
[::std::mem::offset_of!(_pthread_cleanup_buffer, __canceltype) - 16usize];
["Offset of field: _pthread_cleanup_buffer::__prev"]
[::std::mem::offset_of!(_pthread_cleanup_buffer, __prev) - 24usize];
};
impl Default for _pthread_cleanup_buffer {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const PTHREAD_CANCEL_ENABLE: _bindgen_ty_13 = 0;
pub const PTHREAD_CANCEL_DISABLE: _bindgen_ty_13 = 1;
pub type _bindgen_ty_13 = ::std::ffi::c_uint;
pub const PTHREAD_CANCEL_DEFERRED: _bindgen_ty_14 = 0;
pub const PTHREAD_CANCEL_ASYNCHRONOUS: _bindgen_ty_14 = 1;
pub type _bindgen_ty_14 = ::std::ffi::c_uint;
unsafe extern "C" {
pub fn pthread_create(
__newthread: *mut pthread_t,
__attr: *const pthread_attr_t,
__start_routine: ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::ffi::c_void) -> *mut ::std::ffi::c_void,
>,
__arg: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_exit(__retval: *mut ::std::ffi::c_void) -> !;
}
unsafe extern "C" {
pub fn pthread_join(
__th: pthread_t,
__thread_return: *mut *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_detach(__th: pthread_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_self() -> pthread_t;
}
unsafe extern "C" {
pub fn pthread_equal(__thread1: pthread_t, __thread2: pthread_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_init(__attr: *mut pthread_attr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_destroy(__attr: *mut pthread_attr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getdetachstate(
__attr: *const pthread_attr_t,
__detachstate: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setdetachstate(
__attr: *mut pthread_attr_t,
__detachstate: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getguardsize(
__attr: *const pthread_attr_t,
__guardsize: *mut usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setguardsize(
__attr: *mut pthread_attr_t,
__guardsize: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getschedparam(
__attr: *const pthread_attr_t,
__param: *mut sched_param,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setschedparam(
__attr: *mut pthread_attr_t,
__param: *const sched_param,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getschedpolicy(
__attr: *const pthread_attr_t,
__policy: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setschedpolicy(
__attr: *mut pthread_attr_t,
__policy: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getinheritsched(
__attr: *const pthread_attr_t,
__inherit: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setinheritsched(
__attr: *mut pthread_attr_t,
__inherit: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getscope(
__attr: *const pthread_attr_t,
__scope: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setscope(
__attr: *mut pthread_attr_t,
__scope: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getstackaddr(
__attr: *const pthread_attr_t,
__stackaddr: *mut *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setstackaddr(
__attr: *mut pthread_attr_t,
__stackaddr: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getstacksize(
__attr: *const pthread_attr_t,
__stacksize: *mut usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setstacksize(
__attr: *mut pthread_attr_t,
__stacksize: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_getstack(
__attr: *const pthread_attr_t,
__stackaddr: *mut *mut ::std::ffi::c_void,
__stacksize: *mut usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_attr_setstack(
__attr: *mut pthread_attr_t,
__stackaddr: *mut ::std::ffi::c_void,
__stacksize: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_setschedparam(
__target_thread: pthread_t,
__policy: ::std::ffi::c_int,
__param: *const sched_param,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_getschedparam(
__target_thread: pthread_t,
__policy: *mut ::std::ffi::c_int,
__param: *mut sched_param,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_setschedprio(
__target_thread: pthread_t,
__prio: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_once(
__once_control: *mut pthread_once_t,
__init_routine: ::std::option::Option<unsafe extern "C" fn()>,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_setcancelstate(
__state: ::std::ffi::c_int,
__oldstate: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_setcanceltype(
__type: ::std::ffi::c_int,
__oldtype: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cancel(__th: pthread_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_testcancel();
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __cancel_jmp_buf_tag {
pub __cancel_jmp_buf: __jmp_buf,
pub __mask_was_saved: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __cancel_jmp_buf_tag"][::std::mem::size_of::<__cancel_jmp_buf_tag>() - 72usize];
["Alignment of __cancel_jmp_buf_tag"][::std::mem::align_of::<__cancel_jmp_buf_tag>() - 8usize];
["Offset of field: __cancel_jmp_buf_tag::__cancel_jmp_buf"]
[::std::mem::offset_of!(__cancel_jmp_buf_tag, __cancel_jmp_buf) - 0usize];
["Offset of field: __cancel_jmp_buf_tag::__mask_was_saved"]
[::std::mem::offset_of!(__cancel_jmp_buf_tag, __mask_was_saved) - 64usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_unwind_buf_t {
pub __cancel_jmp_buf: [__cancel_jmp_buf_tag; 1usize],
pub __pad: [*mut ::std::ffi::c_void; 4usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_unwind_buf_t"][::std::mem::size_of::<__pthread_unwind_buf_t>() - 104usize];
["Alignment of __pthread_unwind_buf_t"]
[::std::mem::align_of::<__pthread_unwind_buf_t>() - 8usize];
["Offset of field: __pthread_unwind_buf_t::__cancel_jmp_buf"]
[::std::mem::offset_of!(__pthread_unwind_buf_t, __cancel_jmp_buf) - 0usize];
["Offset of field: __pthread_unwind_buf_t::__pad"]
[::std::mem::offset_of!(__pthread_unwind_buf_t, __pad) - 72usize];
};
impl Default for __pthread_unwind_buf_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_cleanup_frame {
pub __cancel_routine:
::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::ffi::c_void)>,
pub __cancel_arg: *mut ::std::ffi::c_void,
pub __do_it: ::std::ffi::c_int,
pub __cancel_type: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __pthread_cleanup_frame"][::std::mem::size_of::<__pthread_cleanup_frame>() - 24usize];
["Alignment of __pthread_cleanup_frame"]
[::std::mem::align_of::<__pthread_cleanup_frame>() - 8usize];
["Offset of field: __pthread_cleanup_frame::__cancel_routine"]
[::std::mem::offset_of!(__pthread_cleanup_frame, __cancel_routine) - 0usize];
["Offset of field: __pthread_cleanup_frame::__cancel_arg"]
[::std::mem::offset_of!(__pthread_cleanup_frame, __cancel_arg) - 8usize];
["Offset of field: __pthread_cleanup_frame::__do_it"]
[::std::mem::offset_of!(__pthread_cleanup_frame, __do_it) - 16usize];
["Offset of field: __pthread_cleanup_frame::__cancel_type"]
[::std::mem::offset_of!(__pthread_cleanup_frame, __cancel_type) - 20usize];
};
impl Default for __pthread_cleanup_frame {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn __pthread_register_cancel(__buf: *mut __pthread_unwind_buf_t);
}
unsafe extern "C" {
pub fn __pthread_unregister_cancel(__buf: *mut __pthread_unwind_buf_t);
}
unsafe extern "C" {
pub fn __pthread_unwind_next(__buf: *mut __pthread_unwind_buf_t) -> !;
}
unsafe extern "C" {
pub fn __sigsetjmp(
__env: *mut __jmp_buf_tag,
__savemask: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_init(
__mutex: *mut pthread_mutex_t,
__mutexattr: *const pthread_mutexattr_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_destroy(__mutex: *mut pthread_mutex_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_trylock(__mutex: *mut pthread_mutex_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_lock(__mutex: *mut pthread_mutex_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_timedlock(
__mutex: *mut pthread_mutex_t,
__abstime: *const timespec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_unlock(__mutex: *mut pthread_mutex_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_getprioceiling(
__mutex: *const pthread_mutex_t,
__prioceiling: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_setprioceiling(
__mutex: *mut pthread_mutex_t,
__prioceiling: ::std::ffi::c_int,
__old_ceiling: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutex_consistent(__mutex: *mut pthread_mutex_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_init(__attr: *mut pthread_mutexattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_destroy(__attr: *mut pthread_mutexattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_getpshared(
__attr: *const pthread_mutexattr_t,
__pshared: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_setpshared(
__attr: *mut pthread_mutexattr_t,
__pshared: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_gettype(
__attr: *const pthread_mutexattr_t,
__kind: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_settype(
__attr: *mut pthread_mutexattr_t,
__kind: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_getprotocol(
__attr: *const pthread_mutexattr_t,
__protocol: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_setprotocol(
__attr: *mut pthread_mutexattr_t,
__protocol: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_getprioceiling(
__attr: *const pthread_mutexattr_t,
__prioceiling: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_setprioceiling(
__attr: *mut pthread_mutexattr_t,
__prioceiling: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_getrobust(
__attr: *const pthread_mutexattr_t,
__robustness: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_mutexattr_setrobust(
__attr: *mut pthread_mutexattr_t,
__robustness: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_init(
__rwlock: *mut pthread_rwlock_t,
__attr: *const pthread_rwlockattr_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_destroy(__rwlock: *mut pthread_rwlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_rdlock(__rwlock: *mut pthread_rwlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_tryrdlock(__rwlock: *mut pthread_rwlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_timedrdlock(
__rwlock: *mut pthread_rwlock_t,
__abstime: *const timespec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_wrlock(__rwlock: *mut pthread_rwlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_trywrlock(__rwlock: *mut pthread_rwlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_timedwrlock(
__rwlock: *mut pthread_rwlock_t,
__abstime: *const timespec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlock_unlock(__rwlock: *mut pthread_rwlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlockattr_init(__attr: *mut pthread_rwlockattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlockattr_destroy(__attr: *mut pthread_rwlockattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlockattr_getpshared(
__attr: *const pthread_rwlockattr_t,
__pshared: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlockattr_setpshared(
__attr: *mut pthread_rwlockattr_t,
__pshared: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlockattr_getkind_np(
__attr: *const pthread_rwlockattr_t,
__pref: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_rwlockattr_setkind_np(
__attr: *mut pthread_rwlockattr_t,
__pref: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cond_init(
__cond: *mut pthread_cond_t,
__cond_attr: *const pthread_condattr_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cond_destroy(__cond: *mut pthread_cond_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cond_signal(__cond: *mut pthread_cond_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cond_broadcast(__cond: *mut pthread_cond_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cond_wait(
__cond: *mut pthread_cond_t,
__mutex: *mut pthread_mutex_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_cond_timedwait(
__cond: *mut pthread_cond_t,
__mutex: *mut pthread_mutex_t,
__abstime: *const timespec,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_condattr_init(__attr: *mut pthread_condattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_condattr_destroy(__attr: *mut pthread_condattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_condattr_getpshared(
__attr: *const pthread_condattr_t,
__pshared: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_condattr_setpshared(
__attr: *mut pthread_condattr_t,
__pshared: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_condattr_getclock(
__attr: *const pthread_condattr_t,
__clock_id: *mut __clockid_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_condattr_setclock(
__attr: *mut pthread_condattr_t,
__clock_id: __clockid_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_spin_init(
__lock: *mut pthread_spinlock_t,
__pshared: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_spin_destroy(__lock: *mut pthread_spinlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_spin_lock(__lock: *mut pthread_spinlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_spin_trylock(__lock: *mut pthread_spinlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_spin_unlock(__lock: *mut pthread_spinlock_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrier_init(
__barrier: *mut pthread_barrier_t,
__attr: *const pthread_barrierattr_t,
__count: ::std::ffi::c_uint,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrier_destroy(__barrier: *mut pthread_barrier_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrier_wait(__barrier: *mut pthread_barrier_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrierattr_init(__attr: *mut pthread_barrierattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrierattr_destroy(__attr: *mut pthread_barrierattr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrierattr_getpshared(
__attr: *const pthread_barrierattr_t,
__pshared: *mut ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_barrierattr_setpshared(
__attr: *mut pthread_barrierattr_t,
__pshared: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_key_create(
__key: *mut pthread_key_t,
__destr_function: ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::ffi::c_void),
>,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_key_delete(__key: pthread_key_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_getspecific(__key: pthread_key_t) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn pthread_setspecific(
__key: pthread_key_t,
__pointer: *const ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_getcpuclockid(
__thread_id: pthread_t,
__clock_id: *mut __clockid_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pthread_atfork(
__prepare: ::std::option::Option<unsafe extern "C" fn()>,
__parent: ::std::option::Option<unsafe extern "C" fn()>,
__child: ::std::option::Option<unsafe extern "C" fn()>,
) -> ::std::ffi::c_int;
}
pub type __gnuc_va_list = __builtin_va_list;
pub type va_list = __builtin_va_list;
unsafe extern "C" {
pub fn readv(
__fd: ::std::ffi::c_int,
__iovec: *const iovec,
__count: ::std::ffi::c_int,
) -> isize;
}
unsafe extern "C" {
pub fn writev(
__fd: ::std::ffi::c_int,
__iovec: *const iovec,
__count: ::std::ffi::c_int,
) -> isize;
}
unsafe extern "C" {
pub fn preadv(
__fd: ::std::ffi::c_int,
__iovec: *const iovec,
__count: ::std::ffi::c_int,
__offset: __off_t,
) -> isize;
}
unsafe extern "C" {
pub fn pwritev(
__fd: ::std::ffi::c_int,
__iovec: *const iovec,
__count: ::std::ffi::c_int,
__offset: __off_t,
) -> isize;
}
pub type wchar_t = ::std::ffi::c_int;
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct max_align_t {
pub __clang_max_align_nonce1: ::std::ffi::c_longlong,
pub __bindgen_padding_0: u64,
pub __clang_max_align_nonce2: u128,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of max_align_t"][::std::mem::size_of::<max_align_t>() - 32usize];
["Alignment of max_align_t"][::std::mem::align_of::<max_align_t>() - 16usize];
["Offset of field: max_align_t::__clang_max_align_nonce1"]
[::std::mem::offset_of!(max_align_t, __clang_max_align_nonce1) - 0usize];
["Offset of field: max_align_t::__clang_max_align_nonce2"]
[::std::mem::offset_of!(max_align_t, __clang_max_align_nonce2) - 16usize];
};
pub type int_least8_t = __int_least8_t;
pub type int_least16_t = __int_least16_t;
pub type int_least32_t = __int_least32_t;
pub type int_least64_t = __int_least64_t;
pub type uint_least8_t = __uint_least8_t;
pub type uint_least16_t = __uint_least16_t;
pub type uint_least32_t = __uint_least32_t;
pub type uint_least64_t = __uint_least64_t;
pub type int_fast8_t = ::std::ffi::c_schar;
pub type int_fast16_t = ::std::ffi::c_long;
pub type int_fast32_t = ::std::ffi::c_long;
pub type int_fast64_t = ::std::ffi::c_long;
pub type uint_fast8_t = ::std::ffi::c_uchar;
pub type uint_fast16_t = ::std::ffi::c_ulong;
pub type uint_fast32_t = ::std::ffi::c_ulong;
pub type uint_fast64_t = ::std::ffi::c_ulong;
pub type intmax_t = __intmax_t;
pub type uintmax_t = __uintmax_t;
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vtim_mono(pub f64);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vtim_real(pub f64);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vtim_dur(pub f64);
#[doc = " txt (vas.h needed for the macros)"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct txt {
pub b: *const ::std::ffi::c_char,
pub e: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of txt"][::std::mem::size_of::<txt>() - 16usize];
["Alignment of txt"][::std::mem::align_of::<txt>() - 8usize];
["Offset of field: txt::b"][::std::mem::offset_of!(txt, b) - 0usize];
["Offset of field: txt::e"][::std::mem::offset_of!(txt, e) - 8usize];
};
impl Default for txt {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct stevedore {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct suckaddr {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcl {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcl_sub {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vmod {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_acl {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VSC_main {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsc_seg {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsmw_cluster {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct wrk_vpi {
_unused: [u8; 0],
}
pub type stream_close_t = *const stream_close;
#[doc = " VCL_STRANDS:\n\n An argc+argv type of data structure where n indicates the number of\n strings in the p array. Individual components of a strands may be null.\n\n A STRANDS allows you to work on a strings concatenation with the\n option to collect it into a single STRING, or if possible work\n directly on individual parts.\n\n The memory management is very strict: a VMOD function receiving a\n STRANDS argument should keep no reference after the function returns.\n Retention of a STRANDS further in the ongoing task is undefined\n behavior and may result in a panic or data corruption."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct strands {
pub magic: ::std::ffi::c_uint,
pub n: ::std::ffi::c_int,
pub p: *mut *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of strands"][::std::mem::size_of::<strands>() - 16usize];
["Alignment of strands"][::std::mem::align_of::<strands>() - 8usize];
["Offset of field: strands::magic"][::std::mem::offset_of!(strands, magic) - 0usize];
["Offset of field: strands::n"][::std::mem::offset_of!(strands, n) - 4usize];
["Offset of field: strands::p"][::std::mem::offset_of!(strands, p) - 8usize];
};
impl Default for strands {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static vrt_null_strands: *const strands;
}
#[doc = " VCL_BLOB:\n\n Opaque, immutable data (pointer + length), minimum lifetime is the\n VCL task.\n\n Type (optional) is owned by the creator of the blob. blob consumers\n may use it for checks, but should not assert on it.\n\n The data behind the blob pointer is assumed to be immutable for the\n blob's lifetime.\n\n - memory for shortlived blobs can be put on the tasks workspace\n\n - management of memory for longer lived blobs is up to the vmod\n (in which case the blob will probably be embedded in an object or\n referenced by other state with vcl lifetime)"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_blob {
pub magic: ::std::ffi::c_uint,
pub type_: ::std::ffi::c_uint,
pub len: usize,
pub blob: *const ::std::ffi::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_blob"][::std::mem::size_of::<vrt_blob>() - 24usize];
["Alignment of vrt_blob"][::std::mem::align_of::<vrt_blob>() - 8usize];
["Offset of field: vrt_blob::magic"][::std::mem::offset_of!(vrt_blob, magic) - 0usize];
["Offset of field: vrt_blob::type_"][::std::mem::offset_of!(vrt_blob, type_) - 4usize];
["Offset of field: vrt_blob::len"][::std::mem::offset_of!(vrt_blob, len) - 8usize];
["Offset of field: vrt_blob::blob"][::std::mem::offset_of!(vrt_blob, blob) - 16usize];
};
impl Default for vrt_blob {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static vrt_null_blob: *const vrt_blob;
}
#[doc = " This is the central definition of the mapping from VCL types to\n C-types. The python scripts read these from here.\n (keep alphabetic order)"]
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_ACL(pub *const vrt_acl);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_BACKEND(pub *const director);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_BLOB(pub *const vrt_blob);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_BODY(pub *const ::std::ffi::c_void);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VCL_BOOL(pub ::std::ffi::c_uint);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VCL_BYTES(pub i64);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VCL_DURATION(pub vtim_dur);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_ENUM(pub *const ::std::ffi::c_char);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_HEADER(pub *const gethdr_s);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_HTTP(pub *mut http);
pub type VCL_INSTANCE = ::std::ffi::c_void;
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VCL_INT(pub i64);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_IP(pub *const suckaddr);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_PROBE(pub *const vrt_backend_probe);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VCL_REAL(pub f64);
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vre {
_unused: [u8; 0],
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_REGEX(pub *const vre);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_STEVEDORE(pub *const stevedore);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_STRANDS(pub *const strands);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_STRING(pub *const ::std::ffi::c_char);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_SUB(pub *const vcl_sub);
#[repr(transparent)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VCL_TIME(pub vtim_real);
#[repr(transparent)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_VCL(pub *mut vcl);
pub type VCL_VOID = ::std::ffi::c_void;
#[doc = " This is the composite \"context\" argument for compiled VCL, VRT and\n VMOD functions."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_ctx {
pub magic: ::std::ffi::c_uint,
pub syntax: ::std::ffi::c_uint,
pub vclver: ::std::ffi::c_uint,
pub method: ::std::ffi::c_uint,
pub vpi: *mut wrk_vpi,
pub msg: *mut vsb,
pub vsl: *mut vsl_log,
pub vcl: VCL_VCL,
pub ws: *mut ws,
pub sp: *mut sess,
pub req: *mut req,
pub http_req: VCL_HTTP,
pub http_req_top: VCL_HTTP,
pub http_resp: VCL_HTTP,
pub bo: *mut busyobj,
pub http_bereq: VCL_HTTP,
pub http_beresp: VCL_HTTP,
pub now: vtim_real,
pub specific: *mut ::std::ffi::c_void,
pub called: *mut ::std::ffi::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_ctx"][::std::mem::size_of::<vrt_ctx>() - 144usize];
["Alignment of vrt_ctx"][::std::mem::align_of::<vrt_ctx>() - 8usize];
["Offset of field: vrt_ctx::magic"][::std::mem::offset_of!(vrt_ctx, magic) - 0usize];
["Offset of field: vrt_ctx::syntax"][::std::mem::offset_of!(vrt_ctx, syntax) - 4usize];
["Offset of field: vrt_ctx::vclver"][::std::mem::offset_of!(vrt_ctx, vclver) - 8usize];
["Offset of field: vrt_ctx::method"][::std::mem::offset_of!(vrt_ctx, method) - 12usize];
["Offset of field: vrt_ctx::vpi"][::std::mem::offset_of!(vrt_ctx, vpi) - 16usize];
["Offset of field: vrt_ctx::msg"][::std::mem::offset_of!(vrt_ctx, msg) - 24usize];
["Offset of field: vrt_ctx::vsl"][::std::mem::offset_of!(vrt_ctx, vsl) - 32usize];
["Offset of field: vrt_ctx::vcl"][::std::mem::offset_of!(vrt_ctx, vcl) - 40usize];
["Offset of field: vrt_ctx::ws"][::std::mem::offset_of!(vrt_ctx, ws) - 48usize];
["Offset of field: vrt_ctx::sp"][::std::mem::offset_of!(vrt_ctx, sp) - 56usize];
["Offset of field: vrt_ctx::req"][::std::mem::offset_of!(vrt_ctx, req) - 64usize];
["Offset of field: vrt_ctx::http_req"][::std::mem::offset_of!(vrt_ctx, http_req) - 72usize];
["Offset of field: vrt_ctx::http_req_top"]
[::std::mem::offset_of!(vrt_ctx, http_req_top) - 80usize];
["Offset of field: vrt_ctx::http_resp"][::std::mem::offset_of!(vrt_ctx, http_resp) - 88usize];
["Offset of field: vrt_ctx::bo"][::std::mem::offset_of!(vrt_ctx, bo) - 96usize];
["Offset of field: vrt_ctx::http_bereq"]
[::std::mem::offset_of!(vrt_ctx, http_bereq) - 104usize];
["Offset of field: vrt_ctx::http_beresp"]
[::std::mem::offset_of!(vrt_ctx, http_beresp) - 112usize];
["Offset of field: vrt_ctx::now"][::std::mem::offset_of!(vrt_ctx, now) - 120usize];
["Offset of field: vrt_ctx::specific"][::std::mem::offset_of!(vrt_ctx, specific) - 128usize];
["Offset of field: vrt_ctx::called"][::std::mem::offset_of!(vrt_ctx, called) - 136usize];
};
impl Default for vrt_ctx {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VRT_CTX_Assert(ctx: *const vrt_ctx);
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum VclFuncCall {
Static = 0,
Dynamic = 1,
Check = 2,
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum VclFuncFail {
Ok = 0,
Recurse = 1,
Method = 2,
}
pub type vcl_func_f = ::std::option::Option<
unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VclFuncCall, arg2: *mut VclFuncFail),
>;
#[doc = " This is the interface structure to a compiled VMOD\n (produced by vmodtool.py)"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vmod_data {
pub vrt_major: ::std::ffi::c_uint,
pub vrt_minor: ::std::ffi::c_uint,
pub file_id: *const ::std::ffi::c_char,
pub name: *const ::std::ffi::c_char,
pub func_name: *const ::std::ffi::c_char,
pub func: *const ::std::ffi::c_void,
pub func_len: ::std::ffi::c_int,
pub proto: *const ::std::ffi::c_char,
pub json: *const ::std::ffi::c_char,
pub abi: *const ::std::ffi::c_char,
pub vcs: *const ::std::ffi::c_char,
pub version: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vmod_data"][::std::mem::size_of::<vmod_data>() - 88usize];
["Alignment of vmod_data"][::std::mem::align_of::<vmod_data>() - 8usize];
["Offset of field: vmod_data::vrt_major"]
[::std::mem::offset_of!(vmod_data, vrt_major) - 0usize];
["Offset of field: vmod_data::vrt_minor"]
[::std::mem::offset_of!(vmod_data, vrt_minor) - 4usize];
["Offset of field: vmod_data::file_id"][::std::mem::offset_of!(vmod_data, file_id) - 8usize];
["Offset of field: vmod_data::name"][::std::mem::offset_of!(vmod_data, name) - 16usize];
["Offset of field: vmod_data::func_name"]
[::std::mem::offset_of!(vmod_data, func_name) - 24usize];
["Offset of field: vmod_data::func"][::std::mem::offset_of!(vmod_data, func) - 32usize];
["Offset of field: vmod_data::func_len"][::std::mem::offset_of!(vmod_data, func_len) - 40usize];
["Offset of field: vmod_data::proto"][::std::mem::offset_of!(vmod_data, proto) - 48usize];
["Offset of field: vmod_data::json"][::std::mem::offset_of!(vmod_data, json) - 56usize];
["Offset of field: vmod_data::abi"][::std::mem::offset_of!(vmod_data, abi) - 64usize];
["Offset of field: vmod_data::vcs"][::std::mem::offset_of!(vmod_data, vcs) - 72usize];
["Offset of field: vmod_data::version"][::std::mem::offset_of!(vmod_data, version) - 80usize];
};
impl Default for vmod_data {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(u32)]
#[non_exhaustive]
#[doc = " Events sent to VMODs and directors:\n - VCL: VCL temperature events\n - VDI: director events"]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum VclEvent {
Load = 0,
Warm = 1,
Cold = 2,
Discard = 3,
Sick = 4,
}
pub type vmod_event_f = ::std::option::Option<
unsafe extern "C" fn(
ctx: *const vrt_ctx,
arg1: *mut vmod_priv,
arg2: VclEvent,
) -> ::std::ffi::c_int,
>;
unsafe extern "C" {
#[doc = " Utility functions operating on VCL_types\n (alphabetic by type-ish)"]
pub fn VRT_acl_match(ctx: *const vrt_ctx, arg1: VCL_ACL, arg2: VCL_IP) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRT_DirectorResolve(ctx: *const vrt_ctx, arg1: VCL_BACKEND) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_blob(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: *const ::std::ffi::c_void,
arg3: usize,
arg4: ::std::ffi::c_uint,
) -> VCL_BLOB;
}
unsafe extern "C" {
pub fn VRT_INT_is_valid(arg1: VCL_INT) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRT_VSA_GetPtr(
ctx: *const vrt_ctx,
sua: VCL_IP,
dst: *mut *const ::std::ffi::c_uchar,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRT_ipcmp(ctx: *const vrt_ctx, arg1: VCL_IP, arg2: VCL_IP) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_Format_Proxy(
arg1: *mut vsb,
arg2: VCL_INT,
arg3: VCL_IP,
arg4: VCL_IP,
arg5: VCL_STRING,
);
}
unsafe extern "C" {
pub fn VRT_REAL_is_valid(arg1: VCL_REAL) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRT_re_match(ctx: *const vrt_ctx, arg1: VCL_STRING, arg2: VCL_REGEX) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_regsub(
ctx: *const vrt_ctx,
all: ::std::ffi::c_int,
arg1: VCL_STRING,
arg2: VCL_REGEX,
arg3: VCL_STRING,
) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_stevedore(nm: *const ::std::ffi::c_char) -> VCL_STEVEDORE;
}
unsafe extern "C" {
pub fn VRT_AllocStrandsWS(arg1: *mut ws, arg2: ::std::ffi::c_int) -> *mut strands;
}
unsafe extern "C" {
pub fn VRT_CompareStrands(a: VCL_STRANDS, b: VCL_STRANDS) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRT_Strands2Bool(arg1: VCL_STRANDS) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_HashStrands32(arg1: VCL_STRANDS) -> u32;
}
unsafe extern "C" {
pub fn VRT_Strands(
arg1: *mut ::std::ffi::c_char,
arg2: usize,
arg3: VCL_STRANDS,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VRT_StrandsWS(
arg1: *mut ws,
arg2: *const ::std::ffi::c_char,
arg3: VCL_STRANDS,
) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_UpperLowerStrands(
ctx: *const vrt_ctx,
s: VCL_STRANDS,
up: ::std::ffi::c_int,
) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_check_call(ctx: *const vrt_ctx, arg1: VCL_SUB) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_call(ctx: *const vrt_ctx, arg1: VCL_SUB);
}
unsafe extern "C" {
pub fn VRT_BACKEND_string(arg1: VCL_BACKEND) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_BOOL_string(arg1: VCL_BOOL) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_BLOB_string(ctx: *const vrt_ctx, arg1: VCL_BLOB) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_INT_string(ctx: *const vrt_ctx, arg1: VCL_INT) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_IP_string(ctx: *const vrt_ctx, arg1: VCL_IP) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_PROBE_string(arg1: VCL_PROBE) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_REAL_string(ctx: *const vrt_ctx, arg1: VCL_REAL) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_STEVEDORE_string(arg1: VCL_STEVEDORE) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_STRANDS_string(ctx: *const vrt_ctx, arg1: VCL_STRANDS) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_TIME_string(ctx: *const vrt_ctx, arg1: VCL_TIME) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_strcmp(
s1: *const ::std::ffi::c_char,
s2: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRT_memmove(
dst: *mut ::std::ffi::c_void,
src: *const ::std::ffi::c_void,
len: ::std::ffi::c_uint,
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_endpoint {
pub magic: ::std::ffi::c_uint,
pub ipv4: VCL_IP,
pub ipv6: VCL_IP,
pub uds_path: *const ::std::ffi::c_char,
pub preamble: *const vrt_blob,
pub sslflags: ::std::ffi::c_uint,
pub hosthdr: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_endpoint"][::std::mem::size_of::<vrt_endpoint>() - 56usize];
["Alignment of vrt_endpoint"][::std::mem::align_of::<vrt_endpoint>() - 8usize];
["Offset of field: vrt_endpoint::magic"][::std::mem::offset_of!(vrt_endpoint, magic) - 0usize];
["Offset of field: vrt_endpoint::ipv4"][::std::mem::offset_of!(vrt_endpoint, ipv4) - 8usize];
["Offset of field: vrt_endpoint::ipv6"][::std::mem::offset_of!(vrt_endpoint, ipv6) - 16usize];
["Offset of field: vrt_endpoint::uds_path"]
[::std::mem::offset_of!(vrt_endpoint, uds_path) - 24usize];
["Offset of field: vrt_endpoint::preamble"]
[::std::mem::offset_of!(vrt_endpoint, preamble) - 32usize];
["Offset of field: vrt_endpoint::sslflags"]
[::std::mem::offset_of!(vrt_endpoint, sslflags) - 40usize];
["Offset of field: vrt_endpoint::hosthdr"]
[::std::mem::offset_of!(vrt_endpoint, hosthdr) - 48usize];
};
impl Default for vrt_endpoint {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_backend {
pub magic: ::std::ffi::c_uint,
pub endpoint: *const vrt_endpoint,
pub vcl_name: *const ::std::ffi::c_char,
pub hosthdr: *const ::std::ffi::c_char,
pub authority: *const ::std::ffi::c_char,
pub connect_timeout: vtim_dur,
pub first_byte_timeout: vtim_dur,
pub between_bytes_timeout: vtim_dur,
pub backend_wait_timeout: vtim_dur,
pub max_connections: ::std::ffi::c_uint,
pub proxy_header: ::std::ffi::c_uint,
pub backend_wait_limit: ::std::ffi::c_uint,
pub probe: VCL_PROBE,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_backend"][::std::mem::size_of::<vrt_backend>() - 96usize];
["Alignment of vrt_backend"][::std::mem::align_of::<vrt_backend>() - 8usize];
["Offset of field: vrt_backend::magic"][::std::mem::offset_of!(vrt_backend, magic) - 0usize];
["Offset of field: vrt_backend::endpoint"]
[::std::mem::offset_of!(vrt_backend, endpoint) - 8usize];
["Offset of field: vrt_backend::vcl_name"]
[::std::mem::offset_of!(vrt_backend, vcl_name) - 16usize];
["Offset of field: vrt_backend::hosthdr"]
[::std::mem::offset_of!(vrt_backend, hosthdr) - 24usize];
["Offset of field: vrt_backend::authority"]
[::std::mem::offset_of!(vrt_backend, authority) - 32usize];
["Offset of field: vrt_backend::connect_timeout"]
[::std::mem::offset_of!(vrt_backend, connect_timeout) - 40usize];
["Offset of field: vrt_backend::first_byte_timeout"]
[::std::mem::offset_of!(vrt_backend, first_byte_timeout) - 48usize];
["Offset of field: vrt_backend::between_bytes_timeout"]
[::std::mem::offset_of!(vrt_backend, between_bytes_timeout) - 56usize];
["Offset of field: vrt_backend::backend_wait_timeout"]
[::std::mem::offset_of!(vrt_backend, backend_wait_timeout) - 64usize];
["Offset of field: vrt_backend::max_connections"]
[::std::mem::offset_of!(vrt_backend, max_connections) - 72usize];
["Offset of field: vrt_backend::proxy_header"]
[::std::mem::offset_of!(vrt_backend, proxy_header) - 76usize];
["Offset of field: vrt_backend::backend_wait_limit"]
[::std::mem::offset_of!(vrt_backend, backend_wait_limit) - 80usize];
["Offset of field: vrt_backend::probe"][::std::mem::offset_of!(vrt_backend, probe) - 88usize];
};
impl Default for vrt_backend {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_backend_probe {
pub magic: ::std::ffi::c_uint,
pub url: *const ::std::ffi::c_char,
pub request: *const ::std::ffi::c_char,
pub timeout: vtim_dur,
pub interval: vtim_dur,
pub exp_status: ::std::ffi::c_uint,
pub window: ::std::ffi::c_uint,
pub threshold: ::std::ffi::c_uint,
pub initial: ::std::ffi::c_uint,
pub exp_close: ::std::ffi::c_uint,
pub vcl_name: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_backend_probe"][::std::mem::size_of::<vrt_backend_probe>() - 72usize];
["Alignment of vrt_backend_probe"][::std::mem::align_of::<vrt_backend_probe>() - 8usize];
["Offset of field: vrt_backend_probe::magic"]
[::std::mem::offset_of!(vrt_backend_probe, magic) - 0usize];
["Offset of field: vrt_backend_probe::url"]
[::std::mem::offset_of!(vrt_backend_probe, url) - 8usize];
["Offset of field: vrt_backend_probe::request"]
[::std::mem::offset_of!(vrt_backend_probe, request) - 16usize];
["Offset of field: vrt_backend_probe::timeout"]
[::std::mem::offset_of!(vrt_backend_probe, timeout) - 24usize];
["Offset of field: vrt_backend_probe::interval"]
[::std::mem::offset_of!(vrt_backend_probe, interval) - 32usize];
["Offset of field: vrt_backend_probe::exp_status"]
[::std::mem::offset_of!(vrt_backend_probe, exp_status) - 40usize];
["Offset of field: vrt_backend_probe::window"]
[::std::mem::offset_of!(vrt_backend_probe, window) - 44usize];
["Offset of field: vrt_backend_probe::threshold"]
[::std::mem::offset_of!(vrt_backend_probe, threshold) - 48usize];
["Offset of field: vrt_backend_probe::initial"]
[::std::mem::offset_of!(vrt_backend_probe, initial) - 52usize];
["Offset of field: vrt_backend_probe::exp_close"]
[::std::mem::offset_of!(vrt_backend_probe, exp_close) - 56usize];
["Offset of field: vrt_backend_probe::vcl_name"]
[::std::mem::offset_of!(vrt_backend_probe, vcl_name) - 64usize];
};
impl Default for vrt_backend_probe {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VRT_new_backend(
ctx: *const vrt_ctx,
arg1: *const vrt_backend,
arg2: VCL_BACKEND,
) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_new_backend_clustered(
ctx: *const vrt_ctx,
arg1: *mut vsmw_cluster,
arg2: *const vrt_backend,
arg3: VCL_BACKEND,
) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_backend_vsm_need(ctx: *const vrt_ctx) -> usize;
}
unsafe extern "C" {
pub fn VRT_delete_backend(ctx: *const vrt_ctx, arg1: *mut VCL_BACKEND);
}
unsafe extern "C" {
pub fn VRT_Endpoint_Clone(vep: *const vrt_endpoint) -> *mut vrt_endpoint;
}
#[repr(u32)]
#[non_exhaustive]
#[doc = " Getting hold of the various struct http"]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum GetHeader {
Req = 0,
ReqTop = 1,
Resp = 2,
Obj = 3,
Bereq = 4,
Beresp = 5,
ObjStale = 6,
}
#[repr(C)]
#[derive(Debug, Default)]
pub struct _bindgen_ty_15 {
pub len: ::std::ffi::c_uchar,
pub str_: __IncompleteArrayField<::std::ffi::c_char>,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of _bindgen_ty_15"][::std::mem::size_of::<_bindgen_ty_15>() - 1usize];
["Alignment of _bindgen_ty_15"][::std::mem::align_of::<_bindgen_ty_15>() - 1usize];
["Offset of field: _bindgen_ty_15::len"][::std::mem::offset_of!(_bindgen_ty_15, len) - 0usize];
["Offset of field: _bindgen_ty_15::str_"]
[::std::mem::offset_of!(_bindgen_ty_15, str_) - 1usize];
};
pub type hdr_t = *const _bindgen_ty_15;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct gethdr_s {
pub where_: GetHeader,
pub what: hdr_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of gethdr_s"][::std::mem::size_of::<gethdr_s>() - 16usize];
["Alignment of gethdr_s"][::std::mem::align_of::<gethdr_s>() - 8usize];
["Offset of field: gethdr_s::where_"][::std::mem::offset_of!(gethdr_s, where_) - 0usize];
["Offset of field: gethdr_s::what"][::std::mem::offset_of!(gethdr_s, what) - 8usize];
};
impl Default for gethdr_s {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VRT_selecthttp(ctx: *const vrt_ctx, arg1: GetHeader) -> VCL_HTTP;
}
unsafe extern "C" {
pub fn VRT_GetHdr(ctx: *const vrt_ctx, arg1: VCL_HEADER) -> VCL_STRING;
}
#[repr(u32)]
#[non_exhaustive]
#[doc = " req related"]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum Body {
SetString = 0,
AddString = 1,
SetBlob = 2,
AddBlob = 3,
}
unsafe extern "C" {
pub fn VRT_CacheReqBody(ctx: *const vrt_ctx, maxsize: VCL_BYTES) -> VCL_BYTES;
}
unsafe extern "C" {
pub fn VRT_ban_string(ctx: *const vrt_ctx, arg1: VCL_STRING) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_purge(
ctx: *const vrt_ctx,
arg1: VCL_DURATION,
arg2: VCL_DURATION,
arg3: VCL_DURATION,
) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_synth(ctx: *const vrt_ctx, arg1: VCL_INT, arg2: VCL_STRING);
}
unsafe extern "C" {
pub fn VRT_hit_for_pass(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_ValidHdr(ctx: *const vrt_ctx, arg1: VCL_STRANDS) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_UnsetHdr(ctx: *const vrt_ctx, arg1: VCL_HEADER);
}
unsafe extern "C" {
pub fn VRT_SetHdr(
ctx: *const vrt_ctx,
arg1: VCL_HEADER,
pfx: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_handling(ctx: *const vrt_ctx, hand: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn VRT_handled(ctx: *const vrt_ctx) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn VRT_trace(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_fail(ctx: *const vrt_ctx, fmt: *const ::std::ffi::c_char, ...);
}
unsafe extern "C" {
pub fn VRT_hashdata(ctx: *const vrt_ctx, arg1: VCL_STRANDS);
}
unsafe extern "C" {
pub fn VRT_Rollback(ctx: *const vrt_ctx, arg1: VCL_HTTP);
}
unsafe extern "C" {
pub fn VRT_synth_strands(ctx: *const vrt_ctx, arg1: VCL_STRANDS);
}
unsafe extern "C" {
pub fn VRT_synth_blob(ctx: *const vrt_ctx, arg1: VCL_BLOB);
}
#[doc = " VDI - Director API"]
pub type vdi_healthy_f = ::std::option::Option<
unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VCL_BACKEND, arg2: *mut VCL_TIME) -> VCL_BOOL,
>;
pub type vdi_resolve_f = ::std::option::Option<
unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VCL_BACKEND) -> VCL_BACKEND,
>;
pub type vdi_gethdrs_f = ::std::option::Option<
unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VCL_BACKEND) -> ::std::ffi::c_int,
>;
pub type vdi_getip_f =
::std::option::Option<unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VCL_BACKEND) -> VCL_IP>;
pub type vdi_finish_f =
::std::option::Option<unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VCL_BACKEND)>;
pub type vdi_http1pipe_f = ::std::option::Option<
unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VCL_BACKEND) -> stream_close_t,
>;
pub type vdi_event_f =
::std::option::Option<unsafe extern "C" fn(arg1: VCL_BACKEND, arg2: VclEvent)>;
pub type vdi_release_f = ::std::option::Option<unsafe extern "C" fn(arg1: VCL_BACKEND)>;
pub type vdi_destroy_f = ::std::option::Option<unsafe extern "C" fn(arg1: VCL_BACKEND)>;
pub type vdi_panic_f =
::std::option::Option<unsafe extern "C" fn(arg1: VCL_BACKEND, arg2: *mut vsb)>;
pub type vdi_list_f = ::std::option::Option<
unsafe extern "C" fn(
ctx: *const vrt_ctx,
arg1: VCL_BACKEND,
arg2: *mut vsb,
arg3: ::std::ffi::c_int,
arg4: ::std::ffi::c_int,
),
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vdi_methods {
pub magic: ::std::ffi::c_uint,
pub type_: *const ::std::ffi::c_char,
pub http1pipe: vdi_http1pipe_f,
pub healthy: vdi_healthy_f,
pub resolve: vdi_resolve_f,
pub gethdrs: vdi_gethdrs_f,
pub getip: vdi_getip_f,
pub finish: vdi_finish_f,
pub event: vdi_event_f,
pub release: vdi_release_f,
pub destroy: vdi_destroy_f,
pub panic: vdi_panic_f,
pub list: vdi_list_f,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vdi_methods"][::std::mem::size_of::<vdi_methods>() - 104usize];
["Alignment of vdi_methods"][::std::mem::align_of::<vdi_methods>() - 8usize];
["Offset of field: vdi_methods::magic"][::std::mem::offset_of!(vdi_methods, magic) - 0usize];
["Offset of field: vdi_methods::type_"][::std::mem::offset_of!(vdi_methods, type_) - 8usize];
["Offset of field: vdi_methods::http1pipe"]
[::std::mem::offset_of!(vdi_methods, http1pipe) - 16usize];
["Offset of field: vdi_methods::healthy"]
[::std::mem::offset_of!(vdi_methods, healthy) - 24usize];
["Offset of field: vdi_methods::resolve"]
[::std::mem::offset_of!(vdi_methods, resolve) - 32usize];
["Offset of field: vdi_methods::gethdrs"]
[::std::mem::offset_of!(vdi_methods, gethdrs) - 40usize];
["Offset of field: vdi_methods::getip"][::std::mem::offset_of!(vdi_methods, getip) - 48usize];
["Offset of field: vdi_methods::finish"][::std::mem::offset_of!(vdi_methods, finish) - 56usize];
["Offset of field: vdi_methods::event"][::std::mem::offset_of!(vdi_methods, event) - 64usize];
["Offset of field: vdi_methods::release"]
[::std::mem::offset_of!(vdi_methods, release) - 72usize];
["Offset of field: vdi_methods::destroy"]
[::std::mem::offset_of!(vdi_methods, destroy) - 80usize];
["Offset of field: vdi_methods::panic"][::std::mem::offset_of!(vdi_methods, panic) - 88usize];
["Offset of field: vdi_methods::list"][::std::mem::offset_of!(vdi_methods, list) - 96usize];
};
impl Default for vdi_methods {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct director {
pub magic: ::std::ffi::c_uint,
pub priv_: *mut ::std::ffi::c_void,
pub vcl_name: *mut ::std::ffi::c_char,
pub vdir: *mut vcldir,
pub mtx: *mut lock,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of director"][::std::mem::size_of::<director>() - 40usize];
["Alignment of director"][::std::mem::align_of::<director>() - 8usize];
["Offset of field: director::magic"][::std::mem::offset_of!(director, magic) - 0usize];
["Offset of field: director::priv_"][::std::mem::offset_of!(director, priv_) - 8usize];
["Offset of field: director::vcl_name"][::std::mem::offset_of!(director, vcl_name) - 16usize];
["Offset of field: director::vdir"][::std::mem::offset_of!(director, vdir) - 24usize];
["Offset of field: director::mtx"][::std::mem::offset_of!(director, mtx) - 32usize];
};
impl Default for director {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VRT_Healthy(ctx: *const vrt_ctx, arg1: VCL_BACKEND, arg2: *mut VCL_TIME) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_SetChanged(arg1: VCL_BACKEND, arg2: VCL_TIME);
}
unsafe extern "C" {
pub fn VRT_AddDirector(
ctx: *const vrt_ctx,
arg1: *const vdi_methods,
arg2: *mut ::std::ffi::c_void,
arg3: *const ::std::ffi::c_char,
...
) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_DisableDirector(arg1: VCL_BACKEND);
}
unsafe extern "C" {
pub fn VRT_StaticDirector(arg1: VCL_BACKEND);
}
unsafe extern "C" {
pub fn VRT_LookupDirector(ctx: *const vrt_ctx, arg1: VCL_STRING) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_DelDirector(arg1: *mut VCL_BACKEND);
}
unsafe extern "C" {
pub fn VRT_Assign_Backend(dst: *mut VCL_BACKEND, src: VCL_BACKEND);
}
#[doc = " vmod_priv related"]
pub type vmod_priv_fini_f =
::std::option::Option<unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: *mut ::std::ffi::c_void)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vmod_priv_methods {
pub magic: ::std::ffi::c_uint,
pub type_: *const ::std::ffi::c_char,
pub fini: vmod_priv_fini_f,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vmod_priv_methods"][::std::mem::size_of::<vmod_priv_methods>() - 24usize];
["Alignment of vmod_priv_methods"][::std::mem::align_of::<vmod_priv_methods>() - 8usize];
["Offset of field: vmod_priv_methods::magic"]
[::std::mem::offset_of!(vmod_priv_methods, magic) - 0usize];
["Offset of field: vmod_priv_methods::type_"]
[::std::mem::offset_of!(vmod_priv_methods, type_) - 8usize];
["Offset of field: vmod_priv_methods::fini"]
[::std::mem::offset_of!(vmod_priv_methods, fini) - 16usize];
};
impl Default for vmod_priv_methods {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vmod_priv {
pub priv_: *mut ::std::ffi::c_void,
pub len: ::std::ffi::c_long,
pub methods: *const vmod_priv_methods,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vmod_priv"][::std::mem::size_of::<vmod_priv>() - 24usize];
["Alignment of vmod_priv"][::std::mem::align_of::<vmod_priv>() - 8usize];
["Offset of field: vmod_priv::priv_"][::std::mem::offset_of!(vmod_priv, priv_) - 0usize];
["Offset of field: vmod_priv::len"][::std::mem::offset_of!(vmod_priv, len) - 8usize];
["Offset of field: vmod_priv::methods"][::std::mem::offset_of!(vmod_priv, methods) - 16usize];
};
impl Default for vmod_priv {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VRT_priv_fini(ctx: *const vrt_ctx, p: *const vmod_priv);
}
unsafe extern "C" {
pub fn VRT_priv_task(ctx: *const vrt_ctx, vmod_id: *const ::std::ffi::c_void)
-> *mut vmod_priv;
}
unsafe extern "C" {
pub fn VRT_priv_task_get(
ctx: *const vrt_ctx,
vmod_id: *const ::std::ffi::c_void,
) -> *mut vmod_priv;
}
unsafe extern "C" {
pub fn VRT_priv_top(ctx: *const vrt_ctx, vmod_id: *const ::std::ffi::c_void) -> *mut vmod_priv;
}
unsafe extern "C" {
pub fn VRT_priv_top_get(
ctx: *const vrt_ctx,
vmod_id: *const ::std::ffi::c_void,
) -> *mut vmod_priv;
}
unsafe extern "C" {
#[doc = " VSM and VSC"]
pub fn VRT_VSM_Cluster_New(ctx: *const vrt_ctx, arg1: usize) -> *mut vsmw_cluster;
}
unsafe extern "C" {
pub fn VRT_VSM_Cluster_Destroy(ctx: *const vrt_ctx, arg1: *mut *mut vsmw_cluster);
}
unsafe extern "C" {
pub fn VRT_VSC_Allocv(
arg1: *mut vsmw_cluster,
arg2: *mut *mut vsc_seg,
arg3: *const ::std::ffi::c_char,
arg4: usize,
arg5: *const ::std::ffi::c_uchar,
arg6: usize,
arg7: *const ::std::ffi::c_char,
arg8: *mut __va_list_tag,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn VRT_VSC_Alloc(
arg1: *mut vsmw_cluster,
arg2: *mut *mut vsc_seg,
arg3: *const ::std::ffi::c_char,
arg4: usize,
arg5: *const ::std::ffi::c_uchar,
arg6: usize,
arg7: *const ::std::ffi::c_char,
...
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn VRT_VSC_Destroy(arg1: *const ::std::ffi::c_char, arg2: *mut vsc_seg);
}
unsafe extern "C" {
pub fn VRT_VSC_Hide(arg1: *const vsc_seg);
}
unsafe extern "C" {
pub fn VRT_VSC_Reveal(arg1: *const vsc_seg);
}
unsafe extern "C" {
pub fn VRT_VSC_Overhead(arg1: usize) -> usize;
}
#[doc = " API to restrict the VCL in various ways"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vclref {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn VRT_VCL_Prevent_Cold(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
) -> *mut vclref;
}
unsafe extern "C" {
pub fn VRT_VCL_Allow_Cold(arg1: *mut *mut vclref);
}
unsafe extern "C" {
pub fn VRT_VCL_Prevent_Discard(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
) -> *mut vclref;
}
unsafe extern "C" {
pub fn VRT_VCL_Allow_Discard(arg1: *mut *mut vclref);
}
unsafe extern "C" {
#[doc = " Deprecated interfaces, do not use, they will disappear at some point."]
pub fn VRT_synth_page(ctx: *const vrt_ctx, arg1: VCL_STRANDS);
}
unsafe extern "C" {
pub fn VRT_Stv(nm: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn __errno_location() -> *mut ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VAS_errtxt(e: ::std::ffi::c_int) -> *const ::std::ffi::c_char;
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum Vas {
Wrong = 0,
Missing = 1,
Assert = 2,
Incomplete = 3,
Vcl = 4,
}
pub type vas_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *const ::std::ffi::c_char,
arg2: *const ::std::ffi::c_char,
arg3: ::std::ffi::c_int,
arg4: *const ::std::ffi::c_char,
arg5: Vas,
),
>;
unsafe extern "C" {
pub static mut VAS_Fail_Func: ::std::option::Option<
unsafe extern "C" fn(
arg1: *const ::std::ffi::c_char,
arg2: *const ::std::ffi::c_char,
arg3: ::std::ffi::c_int,
arg4: *const ::std::ffi::c_char,
arg5: Vas,
) -> !,
>;
}
unsafe extern "C" {
pub fn VAS_Fail(
arg1: *const ::std::ffi::c_char,
arg2: *const ::std::ffi::c_char,
arg3: ::std::ffi::c_int,
arg4: *const ::std::ffi::c_char,
arg5: Vas,
) -> !;
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum VslTag {
Bogus = 0,
Debug = 1,
Error = 2,
Cli = 3,
SessOpen = 4,
SessClose = 5,
BackendOpen = 6,
BackendClose = 7,
BackendSsl = 8,
Tls = 9,
HttpGarbage = 10,
Proxy = 11,
ProxyGarbage = 12,
Length = 13,
FetchError = 14,
ReqMethod = 15,
ReqUrl = 16,
ReqProtocol = 17,
ReqStatus = 18,
ReqReason = 19,
ReqHeader = 20,
ReqUnset = 21,
ReqLost = 22,
RespMethod = 23,
RespUrl = 24,
RespProtocol = 25,
RespStatus = 26,
RespReason = 27,
RespHeader = 28,
RespUnset = 29,
RespLost = 30,
BereqMethod = 31,
BereqUrl = 32,
BereqProtocol = 33,
BereqStatus = 34,
BereqReason = 35,
BereqHeader = 36,
BereqUnset = 37,
BereqLost = 38,
BerespMethod = 39,
BerespUrl = 40,
BerespProtocol = 41,
BerespStatus = 42,
BerespReason = 43,
BerespHeader = 44,
BerespUnset = 45,
BerespLost = 46,
ObjMethod = 47,
ObjUrl = 48,
ObjProtocol = 49,
ObjStatus = 50,
ObjReason = 51,
ObjHeader = 52,
ObjUnset = 53,
ObjLost = 54,
BogoHeader = 55,
LostHeader = 56,
Ttl = 57,
FetchBody = 58,
VclAcl = 59,
VclCall = 60,
VclTrace = 61,
VclReturn = 62,
ReqStart = 63,
Hit = 64,
HitPass = 65,
ExpBan = 66,
ExpKill = 67,
WorkThread = 68,
EsiXmlerror = 69,
Hash = 70,
BackendHealth = 71,
VclLog = 72,
VclError = 73,
Gzip = 74,
Link = 75,
Begin = 76,
End = 77,
Vsl = 78,
Storage = 79,
Timestamp = 80,
ReqAcct = 81,
PipeAcct = 82,
BereqAcct = 83,
VfpAcct = 84,
Witness = 85,
H2RxHdr = 86,
H2RxBody = 87,
H2TxHdr = 88,
H2TxBody = 89,
HitMiss = 90,
Filters = 91,
SessError = 92,
VclUse = 93,
Notice = 94,
VdpAcct = 95,
ReqTarget = 96,
Reserved = 254,
Batch = 255,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vxids {
pub vxid: u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vxids"][::std::mem::size_of::<vxids>() - 8usize];
["Alignment of vxids"][::std::mem::align_of::<vxids>() - 8usize];
["Offset of field: vxids::vxid"][::std::mem::offset_of!(vxids, vxid) - 0usize];
};
pub type vxid_t = vxids;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct body_status {
pub name: *const ::std::ffi::c_char,
pub nbr: ::std::ffi::c_int,
pub avail: ::std::ffi::c_int,
pub length_known: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of body_status"][::std::mem::size_of::<body_status>() - 24usize];
["Alignment of body_status"][::std::mem::align_of::<body_status>() - 8usize];
["Offset of field: body_status::name"][::std::mem::offset_of!(body_status, name) - 0usize];
["Offset of field: body_status::nbr"][::std::mem::offset_of!(body_status, nbr) - 8usize];
["Offset of field: body_status::avail"][::std::mem::offset_of!(body_status, avail) - 12usize];
["Offset of field: body_status::length_known"]
[::std::mem::offset_of!(body_status, length_known) - 16usize];
};
impl Default for body_status {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static BS_NONE: [body_status; 1usize];
}
unsafe extern "C" {
pub static BS_ERROR: [body_status; 1usize];
}
unsafe extern "C" {
pub static BS_CHUNKED: [body_status; 1usize];
}
unsafe extern "C" {
pub static BS_LENGTH: [body_status; 1usize];
}
unsafe extern "C" {
pub static BS_EOF: [body_status; 1usize];
}
unsafe extern "C" {
pub static BS_TAKEN: [body_status; 1usize];
}
unsafe extern "C" {
pub static BS_CACHED: [body_status; 1usize];
}
pub type body_status_t = *const body_status;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct stream_close {
pub magic: ::std::ffi::c_uint,
pub idx: ::std::ffi::c_int,
pub is_err: ::std::ffi::c_uint,
pub name: *const ::std::ffi::c_char,
pub desc: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of stream_close"][::std::mem::size_of::<stream_close>() - 32usize];
["Alignment of stream_close"][::std::mem::align_of::<stream_close>() - 8usize];
["Offset of field: stream_close::magic"][::std::mem::offset_of!(stream_close, magic) - 0usize];
["Offset of field: stream_close::idx"][::std::mem::offset_of!(stream_close, idx) - 4usize];
["Offset of field: stream_close::is_err"]
[::std::mem::offset_of!(stream_close, is_err) - 8usize];
["Offset of field: stream_close::name"][::std::mem::offset_of!(stream_close, name) - 16usize];
["Offset of field: stream_close::desc"][::std::mem::offset_of!(stream_close, desc) - 24usize];
};
impl Default for stream_close {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static SC_NULL: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_REM_CLOSE: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_REQ_CLOSE: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_REQ_HTTP10: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RX_BAD: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RX_BODY: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RX_JUNK: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RX_OVERFLOW: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RX_TIMEOUT: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RX_CLOSE_IDLE: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_TX_PIPE: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_TX_ERROR: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_TX_EOF: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RESP_CLOSE: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_OVERLOAD: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_PIPE_OVERFLOW: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RANGE_SHORT: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_REQ_HTTP20: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_VCL_FAILURE: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_RAPID_RESET: [stream_close; 1usize];
}
unsafe extern "C" {
pub static SC_BANKRUPT: [stream_close; 1usize];
}
pub const HTTP_HDR_METHOD: _bindgen_ty_16 = 0;
pub const HTTP_HDR_URL: _bindgen_ty_16 = 1;
pub const HTTP_HDR_PROTO: _bindgen_ty_16 = 2;
pub const HTTP_HDR_STATUS: _bindgen_ty_16 = 3;
pub const HTTP_HDR_REASON: _bindgen_ty_16 = 4;
pub const HTTP_HDR_FIRST: _bindgen_ty_16 = 5;
pub const HTTP_HDR_UNSET: _bindgen_ty_16 = 6;
pub const HTTP_HDR_LOST: _bindgen_ty_16 = 7;
pub type _bindgen_ty_16 = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ban {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ban_proto {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cli {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct listen_sock {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mempool {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct objhead {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pool {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct transport {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VSC_lck {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VSC_main_wrk {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vtls_sess {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct lock {
pub priv_: *mut ::std::ffi::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of lock"][::std::mem::size_of::<lock>() - 8usize];
["Alignment of lock"][::std::mem::align_of::<lock>() - 8usize];
["Offset of field: lock::priv_"][::std::mem::offset_of!(lock, priv_) - 0usize];
};
impl Default for lock {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ws {
pub magic: ::std::ffi::c_uint,
pub id: [::std::ffi::c_char; 4usize],
pub s: *mut ::std::ffi::c_char,
pub f: *mut ::std::ffi::c_char,
pub r: *mut ::std::ffi::c_char,
pub e: *mut ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of ws"][::std::mem::size_of::<ws>() - 40usize];
["Alignment of ws"][::std::mem::align_of::<ws>() - 8usize];
["Offset of field: ws::magic"][::std::mem::offset_of!(ws, magic) - 0usize];
["Offset of field: ws::id"][::std::mem::offset_of!(ws, id) - 4usize];
["Offset of field: ws::s"][::std::mem::offset_of!(ws, s) - 8usize];
["Offset of field: ws::f"][::std::mem::offset_of!(ws, f) - 16usize];
["Offset of field: ws::r"][::std::mem::offset_of!(ws, r) - 24usize];
["Offset of field: ws::e"][::std::mem::offset_of!(ws, e) - 32usize];
};
impl Default for ws {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const well_known_method_WKM_GET: well_known_method = 1;
pub const well_known_method_WKM_HEAD: well_known_method = 2;
pub const well_known_method_WKM_POST: well_known_method = 4;
pub const well_known_method_WKM_PUT: well_known_method = 8;
pub const well_known_method_WKM_DELETE: well_known_method = 16;
pub const well_known_method_WKM_OPTIONS: well_known_method = 32;
pub const well_known_method_WKM_TRACE: well_known_method = 64;
pub const well_known_method_WKM_PATCH: well_known_method = 128;
pub const well_known_method_WKM_CONNECT: well_known_method = 256;
pub const well_known_method_WKM_UNKNOWN: well_known_method = 1073741824;
pub type well_known_method = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct http {
pub magic: ::std::ffi::c_uint,
pub shd: u16,
pub hd: *mut txt,
pub hdf: *mut ::std::ffi::c_uchar,
pub nhd: u16,
pub logtag: VslTag,
pub vsl: *mut vsl_log,
pub ws: *mut ws,
pub status: u16,
pub protover: u8,
pub wkm: well_known_method,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of http"][::std::mem::size_of::<http>() - 56usize];
["Alignment of http"][::std::mem::align_of::<http>() - 8usize];
["Offset of field: http::magic"][::std::mem::offset_of!(http, magic) - 0usize];
["Offset of field: http::shd"][::std::mem::offset_of!(http, shd) - 4usize];
["Offset of field: http::hd"][::std::mem::offset_of!(http, hd) - 8usize];
["Offset of field: http::hdf"][::std::mem::offset_of!(http, hdf) - 16usize];
["Offset of field: http::nhd"][::std::mem::offset_of!(http, nhd) - 24usize];
["Offset of field: http::logtag"][::std::mem::offset_of!(http, logtag) - 28usize];
["Offset of field: http::vsl"][::std::mem::offset_of!(http, vsl) - 32usize];
["Offset of field: http::ws"][::std::mem::offset_of!(http, ws) - 40usize];
["Offset of field: http::status"][::std::mem::offset_of!(http, status) - 48usize];
["Offset of field: http::protover"][::std::mem::offset_of!(http, protover) - 50usize];
["Offset of field: http::wkm"][::std::mem::offset_of!(http, wkm) - 52usize];
};
impl Default for http {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct acct_req {
pub req_hdrbytes: u64,
pub req_bodybytes: u64,
pub resp_hdrbytes: u64,
pub resp_bodybytes: u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of acct_req"][::std::mem::size_of::<acct_req>() - 32usize];
["Alignment of acct_req"][::std::mem::align_of::<acct_req>() - 8usize];
["Offset of field: acct_req::req_hdrbytes"]
[::std::mem::offset_of!(acct_req, req_hdrbytes) - 0usize];
["Offset of field: acct_req::req_bodybytes"]
[::std::mem::offset_of!(acct_req, req_bodybytes) - 8usize];
["Offset of field: acct_req::resp_hdrbytes"]
[::std::mem::offset_of!(acct_req, resp_hdrbytes) - 16usize];
["Offset of field: acct_req::resp_bodybytes"]
[::std::mem::offset_of!(acct_req, resp_bodybytes) - 24usize];
};
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct acct_bereq {
pub bereq_hdrbytes: u64,
pub bereq_bodybytes: u64,
pub beresp_hdrbytes: u64,
pub beresp_bodybytes: u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of acct_bereq"][::std::mem::size_of::<acct_bereq>() - 32usize];
["Alignment of acct_bereq"][::std::mem::align_of::<acct_bereq>() - 8usize];
["Offset of field: acct_bereq::bereq_hdrbytes"]
[::std::mem::offset_of!(acct_bereq, bereq_hdrbytes) - 0usize];
["Offset of field: acct_bereq::bereq_bodybytes"]
[::std::mem::offset_of!(acct_bereq, bereq_bodybytes) - 8usize];
["Offset of field: acct_bereq::beresp_hdrbytes"]
[::std::mem::offset_of!(acct_bereq, beresp_hdrbytes) - 16usize];
["Offset of field: acct_bereq::beresp_bodybytes"]
[::std::mem::offset_of!(acct_bereq, beresp_bodybytes) - 24usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsl_log {
pub magic: u16,
pub flags: u16,
pub wlr: ::std::ffi::c_uint,
pub wlb: *mut u32,
pub wlp: *mut u32,
pub wle: *mut u32,
pub wid: vxid_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vsl_log"][::std::mem::size_of::<vsl_log>() - 40usize];
["Alignment of vsl_log"][::std::mem::align_of::<vsl_log>() - 8usize];
["Offset of field: vsl_log::magic"][::std::mem::offset_of!(vsl_log, magic) - 0usize];
["Offset of field: vsl_log::flags"][::std::mem::offset_of!(vsl_log, flags) - 2usize];
["Offset of field: vsl_log::wlr"][::std::mem::offset_of!(vsl_log, wlr) - 4usize];
["Offset of field: vsl_log::wlb"][::std::mem::offset_of!(vsl_log, wlb) - 8usize];
["Offset of field: vsl_log::wlp"][::std::mem::offset_of!(vsl_log, wlp) - 16usize];
["Offset of field: vsl_log::wle"][::std::mem::offset_of!(vsl_log, wle) - 24usize];
["Offset of field: vsl_log::wid"][::std::mem::offset_of!(vsl_log, wid) - 32usize];
};
impl Default for vsl_log {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_privs {
pub rbh_root: *mut vrt_priv,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_privs"][::std::mem::size_of::<vrt_privs>() - 8usize];
["Alignment of vrt_privs"][::std::mem::align_of::<vrt_privs>() - 8usize];
["Offset of field: vrt_privs::rbh_root"][::std::mem::offset_of!(vrt_privs, rbh_root) - 0usize];
};
impl Default for vrt_privs {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type task_func_t =
::std::option::Option<unsafe extern "C" fn(wrk: *mut worker, priv_: *mut ::std::ffi::c_void)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pool_task {
pub list: pool_task__bindgen_ty_1,
pub func: task_func_t,
pub priv_: *mut ::std::ffi::c_void,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pool_task__bindgen_ty_1 {
pub vtqe_next: *mut pool_task,
pub vtqe_prev: *mut *mut pool_task,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pool_task__bindgen_ty_1"][::std::mem::size_of::<pool_task__bindgen_ty_1>() - 16usize];
["Alignment of pool_task__bindgen_ty_1"]
[::std::mem::align_of::<pool_task__bindgen_ty_1>() - 8usize];
["Offset of field: pool_task__bindgen_ty_1::vtqe_next"]
[::std::mem::offset_of!(pool_task__bindgen_ty_1, vtqe_next) - 0usize];
["Offset of field: pool_task__bindgen_ty_1::vtqe_prev"]
[::std::mem::offset_of!(pool_task__bindgen_ty_1, vtqe_prev) - 8usize];
};
impl Default for pool_task__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of pool_task"][::std::mem::size_of::<pool_task>() - 32usize];
["Alignment of pool_task"][::std::mem::align_of::<pool_task>() - 8usize];
["Offset of field: pool_task::list"][::std::mem::offset_of!(pool_task, list) - 0usize];
["Offset of field: pool_task::func"][::std::mem::offset_of!(pool_task, func) - 16usize];
["Offset of field: pool_task::priv_"][::std::mem::offset_of!(pool_task, priv_) - 24usize];
};
impl Default for pool_task {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum TaskPriority {
Bo = 0,
Rush = 1,
Req = 2,
Str = 3,
Vca = 4,
Bg = 5,
End = 6,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct worker {
pub magic: ::std::ffi::c_uint,
pub strangelove: ::std::ffi::c_int,
pub wpriv: *mut worker_priv,
pub pool: *mut pool,
pub stats: *mut VSC_main_wrk,
pub vsl: *mut vsl_log,
pub task: [pool_task; 1usize],
pub lastused: vtim_real,
pub cond: pthread_cond_t,
pub aws: [ws; 1usize],
pub cur_method: ::std::ffi::c_uint,
pub seen_methods: ::std::ffi::c_uint,
pub vpi: *mut wrk_vpi,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of worker"][::std::mem::size_of::<worker>() - 184usize];
["Alignment of worker"][::std::mem::align_of::<worker>() - 8usize];
["Offset of field: worker::magic"][::std::mem::offset_of!(worker, magic) - 0usize];
["Offset of field: worker::strangelove"][::std::mem::offset_of!(worker, strangelove) - 4usize];
["Offset of field: worker::wpriv"][::std::mem::offset_of!(worker, wpriv) - 8usize];
["Offset of field: worker::pool"][::std::mem::offset_of!(worker, pool) - 16usize];
["Offset of field: worker::stats"][::std::mem::offset_of!(worker, stats) - 24usize];
["Offset of field: worker::vsl"][::std::mem::offset_of!(worker, vsl) - 32usize];
["Offset of field: worker::task"][::std::mem::offset_of!(worker, task) - 40usize];
["Offset of field: worker::lastused"][::std::mem::offset_of!(worker, lastused) - 72usize];
["Offset of field: worker::cond"][::std::mem::offset_of!(worker, cond) - 80usize];
["Offset of field: worker::aws"][::std::mem::offset_of!(worker, aws) - 128usize];
["Offset of field: worker::cur_method"][::std::mem::offset_of!(worker, cur_method) - 168usize];
["Offset of field: worker::seen_methods"]
[::std::mem::offset_of!(worker, seen_methods) - 172usize];
["Offset of field: worker::vpi"][::std::mem::offset_of!(worker, vpi) - 176usize];
};
impl Default for worker {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct storeobj {
pub stevedore: *const stevedore,
pub priv_: *mut ::std::ffi::c_void,
pub priv2: u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of storeobj"][::std::mem::size_of::<storeobj>() - 24usize];
["Alignment of storeobj"][::std::mem::align_of::<storeobj>() - 8usize];
["Offset of field: storeobj::stevedore"][::std::mem::offset_of!(storeobj, stevedore) - 0usize];
["Offset of field: storeobj::priv_"][::std::mem::offset_of!(storeobj, priv_) - 8usize];
["Offset of field: storeobj::priv2"][::std::mem::offset_of!(storeobj, priv2) - 16usize];
};
impl Default for storeobj {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum BocState {
Invalid = 0,
ReqDone = 1,
Stream = 2,
Finished = 3,
Failed = 4,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vai_qe {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vai_q_head {
pub vslh_first: *mut vai_qe,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vai_q_head"][::std::mem::size_of::<vai_q_head>() - 8usize];
["Alignment of vai_q_head"][::std::mem::align_of::<vai_q_head>() - 8usize];
["Offset of field: vai_q_head::vslh_first"]
[::std::mem::offset_of!(vai_q_head, vslh_first) - 0usize];
};
impl Default for vai_q_head {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct boc {
pub magic: ::std::ffi::c_uint,
pub refcount: ::std::ffi::c_uint,
pub mtx: lock,
pub cond: pthread_cond_t,
pub stevedore_priv: *mut ::std::ffi::c_void,
pub state: BocState,
pub vary: *mut u8,
pub fetched_so_far: u64,
pub delivered_so_far: u64,
pub transit_buffer: u64,
pub vai_q_head: vai_q_head,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of boc"][::std::mem::size_of::<boc>() - 120usize];
["Alignment of boc"][::std::mem::align_of::<boc>() - 8usize];
["Offset of field: boc::magic"][::std::mem::offset_of!(boc, magic) - 0usize];
["Offset of field: boc::refcount"][::std::mem::offset_of!(boc, refcount) - 4usize];
["Offset of field: boc::mtx"][::std::mem::offset_of!(boc, mtx) - 8usize];
["Offset of field: boc::cond"][::std::mem::offset_of!(boc, cond) - 16usize];
["Offset of field: boc::stevedore_priv"][::std::mem::offset_of!(boc, stevedore_priv) - 64usize];
["Offset of field: boc::state"][::std::mem::offset_of!(boc, state) - 72usize];
["Offset of field: boc::vary"][::std::mem::offset_of!(boc, vary) - 80usize];
["Offset of field: boc::fetched_so_far"][::std::mem::offset_of!(boc, fetched_so_far) - 88usize];
["Offset of field: boc::delivered_so_far"]
[::std::mem::offset_of!(boc, delivered_so_far) - 96usize];
["Offset of field: boc::transit_buffer"]
[::std::mem::offset_of!(boc, transit_buffer) - 104usize];
["Offset of field: boc::vai_q_head"][::std::mem::offset_of!(boc, vai_q_head) - 112usize];
};
impl Default for boc {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const obj_attr_OA_LEN: obj_attr = 0;
pub const obj_attr_OA_VXID: obj_attr = 1;
pub const obj_attr_OA_FLAGS: obj_attr = 2;
pub const obj_attr_OA_GZIPBITS: obj_attr = 3;
pub const obj_attr_OA_LASTMODIFIED: obj_attr = 4;
pub const obj_attr_OA_VARY: obj_attr = 5;
pub const obj_attr_OA_HEADERS: obj_attr = 6;
pub const obj_attr_OA_ESIDATA: obj_attr = 7;
pub const obj_attr_OA__MAX: obj_attr = 8;
pub type obj_attr = ::std::ffi::c_uint;
pub const obj_flags_OF_GZIPED: obj_flags = 2;
pub const obj_flags_OF_CHGCE: obj_flags = 4;
pub const obj_flags_OF_IMSCAND: obj_flags = 8;
pub const obj_flags_OF_ESIPROC: obj_flags = 16;
pub type obj_flags = ::std::ffi::c_uint;
pub const oc_flags_OC_F_WITHDRAWN: oc_flags = 1;
pub const oc_flags_OC_F_BUSY: oc_flags = 2;
pub const oc_flags_OC_F_HFM: oc_flags = 4;
pub const oc_flags_OC_F_HFP: oc_flags = 8;
pub const oc_flags_OC_F_CANCEL: oc_flags = 16;
pub const oc_flags_OC_F_PRIVATE: oc_flags = 32;
pub const oc_flags_OC_F_FAILED: oc_flags = 64;
pub const oc_flags_OC_F_DYING: oc_flags = 128;
pub type oc_flags = ::std::ffi::c_uint;
pub const oc_exp_flags_OC_EF_POSTED: oc_exp_flags = 2;
pub const oc_exp_flags_OC_EF_REFD: oc_exp_flags = 4;
pub const oc_exp_flags_OC_EF_MOVE: oc_exp_flags = 8;
pub const oc_exp_flags_OC_EF_INSERT: oc_exp_flags = 16;
pub const oc_exp_flags_OC_EF_REMOVE: oc_exp_flags = 32;
pub const oc_exp_flags_OC_EF_NEW: oc_exp_flags = 64;
pub type oc_exp_flags = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct objcore {
pub magic: ::std::ffi::c_uint,
pub refcnt: ::std::ffi::c_int,
pub stobj: [storeobj; 1usize],
pub objhead: *mut objhead,
pub boc: *mut boc,
pub timer_when: vtim_real,
pub hits: VCL_INT,
pub t_origin: vtim_real,
pub ttl: f32,
pub grace: f32,
pub keep: f32,
pub flags: u8,
pub exp_flags: u8,
pub oa_present: u16,
pub timer_idx: ::std::ffi::c_uint,
pub waitinglist_gen: ::std::ffi::c_uint,
pub last_lru: vtim_real,
pub hsh_list: objcore__bindgen_ty_1,
pub lru_list: objcore__bindgen_ty_2,
pub ban_list: objcore__bindgen_ty_3,
pub exp_list: objcore__bindgen_ty_4,
pub ban: *mut ban,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct objcore__bindgen_ty_1 {
pub vtqe_next: *mut objcore,
pub vtqe_prev: *mut *mut objcore,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of objcore__bindgen_ty_1"][::std::mem::size_of::<objcore__bindgen_ty_1>() - 16usize];
["Alignment of objcore__bindgen_ty_1"]
[::std::mem::align_of::<objcore__bindgen_ty_1>() - 8usize];
["Offset of field: objcore__bindgen_ty_1::vtqe_next"]
[::std::mem::offset_of!(objcore__bindgen_ty_1, vtqe_next) - 0usize];
["Offset of field: objcore__bindgen_ty_1::vtqe_prev"]
[::std::mem::offset_of!(objcore__bindgen_ty_1, vtqe_prev) - 8usize];
};
impl Default for objcore__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct objcore__bindgen_ty_2 {
pub vtqe_next: *mut objcore,
pub vtqe_prev: *mut *mut objcore,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of objcore__bindgen_ty_2"][::std::mem::size_of::<objcore__bindgen_ty_2>() - 16usize];
["Alignment of objcore__bindgen_ty_2"]
[::std::mem::align_of::<objcore__bindgen_ty_2>() - 8usize];
["Offset of field: objcore__bindgen_ty_2::vtqe_next"]
[::std::mem::offset_of!(objcore__bindgen_ty_2, vtqe_next) - 0usize];
["Offset of field: objcore__bindgen_ty_2::vtqe_prev"]
[::std::mem::offset_of!(objcore__bindgen_ty_2, vtqe_prev) - 8usize];
};
impl Default for objcore__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct objcore__bindgen_ty_3 {
pub vtqe_next: *mut objcore,
pub vtqe_prev: *mut *mut objcore,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of objcore__bindgen_ty_3"][::std::mem::size_of::<objcore__bindgen_ty_3>() - 16usize];
["Alignment of objcore__bindgen_ty_3"]
[::std::mem::align_of::<objcore__bindgen_ty_3>() - 8usize];
["Offset of field: objcore__bindgen_ty_3::vtqe_next"]
[::std::mem::offset_of!(objcore__bindgen_ty_3, vtqe_next) - 0usize];
["Offset of field: objcore__bindgen_ty_3::vtqe_prev"]
[::std::mem::offset_of!(objcore__bindgen_ty_3, vtqe_prev) - 8usize];
};
impl Default for objcore__bindgen_ty_3 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct objcore__bindgen_ty_4 {
pub vstqe_next: *mut objcore,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of objcore__bindgen_ty_4"][::std::mem::size_of::<objcore__bindgen_ty_4>() - 8usize];
["Alignment of objcore__bindgen_ty_4"]
[::std::mem::align_of::<objcore__bindgen_ty_4>() - 8usize];
["Offset of field: objcore__bindgen_ty_4::vstqe_next"]
[::std::mem::offset_of!(objcore__bindgen_ty_4, vstqe_next) - 0usize];
};
impl Default for objcore__bindgen_ty_4 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of objcore"][::std::mem::size_of::<objcore>() - 168usize];
["Alignment of objcore"][::std::mem::align_of::<objcore>() - 8usize];
["Offset of field: objcore::magic"][::std::mem::offset_of!(objcore, magic) - 0usize];
["Offset of field: objcore::refcnt"][::std::mem::offset_of!(objcore, refcnt) - 4usize];
["Offset of field: objcore::stobj"][::std::mem::offset_of!(objcore, stobj) - 8usize];
["Offset of field: objcore::objhead"][::std::mem::offset_of!(objcore, objhead) - 32usize];
["Offset of field: objcore::boc"][::std::mem::offset_of!(objcore, boc) - 40usize];
["Offset of field: objcore::timer_when"][::std::mem::offset_of!(objcore, timer_when) - 48usize];
["Offset of field: objcore::hits"][::std::mem::offset_of!(objcore, hits) - 56usize];
["Offset of field: objcore::t_origin"][::std::mem::offset_of!(objcore, t_origin) - 64usize];
["Offset of field: objcore::ttl"][::std::mem::offset_of!(objcore, ttl) - 72usize];
["Offset of field: objcore::grace"][::std::mem::offset_of!(objcore, grace) - 76usize];
["Offset of field: objcore::keep"][::std::mem::offset_of!(objcore, keep) - 80usize];
["Offset of field: objcore::flags"][::std::mem::offset_of!(objcore, flags) - 84usize];
["Offset of field: objcore::exp_flags"][::std::mem::offset_of!(objcore, exp_flags) - 85usize];
["Offset of field: objcore::oa_present"][::std::mem::offset_of!(objcore, oa_present) - 86usize];
["Offset of field: objcore::timer_idx"][::std::mem::offset_of!(objcore, timer_idx) - 88usize];
["Offset of field: objcore::waitinglist_gen"]
[::std::mem::offset_of!(objcore, waitinglist_gen) - 92usize];
["Offset of field: objcore::last_lru"][::std::mem::offset_of!(objcore, last_lru) - 96usize];
["Offset of field: objcore::hsh_list"][::std::mem::offset_of!(objcore, hsh_list) - 104usize];
["Offset of field: objcore::lru_list"][::std::mem::offset_of!(objcore, lru_list) - 120usize];
["Offset of field: objcore::ban_list"][::std::mem::offset_of!(objcore, ban_list) - 136usize];
["Offset of field: objcore::exp_list"][::std::mem::offset_of!(objcore, exp_list) - 152usize];
["Offset of field: objcore::ban"][::std::mem::offset_of!(objcore, ban) - 160usize];
};
impl Default for objcore {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum DirectorState {
Null = 0,
Headers = 1,
Body = 2,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct busyobj {
pub magic: ::std::ffi::c_uint,
pub end: *mut ::std::ffi::c_char,
pub max_retries: ::std::ffi::c_uint,
pub retries: ::std::ffi::c_uint,
pub req: *mut req,
pub sp: *mut sess,
pub wrk: *mut worker,
pub vfc: *mut vfp_ctx,
pub vfp_filter_list: *const ::std::ffi::c_char,
pub vdp_filter_list: *const ::std::ffi::c_char,
pub ws: [ws; 1usize],
pub ws_bo: usize,
pub bereq0: *mut http,
pub bereq: *mut http,
pub beresp: *mut http,
pub bereq_body: *mut objcore,
pub stale_oc: *mut objcore,
pub fetch_objcore: *mut objcore,
pub no_retry: *const ::std::ffi::c_char,
pub htc: *mut http_conn,
pub fetch_task: [pool_task; 1usize],
pub err_reason: *const ::std::ffi::c_char,
pub director_state: DirectorState,
pub err_code: u16,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
pub connect_timeout: vtim_dur,
pub first_byte_timeout: vtim_dur,
pub between_bytes_timeout: vtim_dur,
pub task_deadline: vtim_dur,
pub t_first: vtim_real,
pub t_resp: vtim_real,
pub t_prev: vtim_real,
pub acct: acct_bereq,
pub storage: *const stevedore,
pub director_req: *const director,
pub director_resp: *const director,
pub vcl: *mut vcl,
pub vsl: [vsl_log; 1usize],
pub digest: [u8; 32usize],
pub privs: [vrt_privs; 1usize],
pub client_identity: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of busyobj"][::std::mem::size_of::<busyobj>() - 440usize];
["Alignment of busyobj"][::std::mem::align_of::<busyobj>() - 8usize];
["Offset of field: busyobj::magic"][::std::mem::offset_of!(busyobj, magic) - 0usize];
["Offset of field: busyobj::end"][::std::mem::offset_of!(busyobj, end) - 8usize];
["Offset of field: busyobj::max_retries"]
[::std::mem::offset_of!(busyobj, max_retries) - 16usize];
["Offset of field: busyobj::retries"][::std::mem::offset_of!(busyobj, retries) - 20usize];
["Offset of field: busyobj::req"][::std::mem::offset_of!(busyobj, req) - 24usize];
["Offset of field: busyobj::sp"][::std::mem::offset_of!(busyobj, sp) - 32usize];
["Offset of field: busyobj::wrk"][::std::mem::offset_of!(busyobj, wrk) - 40usize];
["Offset of field: busyobj::vfc"][::std::mem::offset_of!(busyobj, vfc) - 48usize];
["Offset of field: busyobj::vfp_filter_list"]
[::std::mem::offset_of!(busyobj, vfp_filter_list) - 56usize];
["Offset of field: busyobj::vdp_filter_list"]
[::std::mem::offset_of!(busyobj, vdp_filter_list) - 64usize];
["Offset of field: busyobj::ws"][::std::mem::offset_of!(busyobj, ws) - 72usize];
["Offset of field: busyobj::ws_bo"][::std::mem::offset_of!(busyobj, ws_bo) - 112usize];
["Offset of field: busyobj::bereq0"][::std::mem::offset_of!(busyobj, bereq0) - 120usize];
["Offset of field: busyobj::bereq"][::std::mem::offset_of!(busyobj, bereq) - 128usize];
["Offset of field: busyobj::beresp"][::std::mem::offset_of!(busyobj, beresp) - 136usize];
["Offset of field: busyobj::bereq_body"]
[::std::mem::offset_of!(busyobj, bereq_body) - 144usize];
["Offset of field: busyobj::stale_oc"][::std::mem::offset_of!(busyobj, stale_oc) - 152usize];
["Offset of field: busyobj::fetch_objcore"]
[::std::mem::offset_of!(busyobj, fetch_objcore) - 160usize];
["Offset of field: busyobj::no_retry"][::std::mem::offset_of!(busyobj, no_retry) - 168usize];
["Offset of field: busyobj::htc"][::std::mem::offset_of!(busyobj, htc) - 176usize];
["Offset of field: busyobj::fetch_task"]
[::std::mem::offset_of!(busyobj, fetch_task) - 184usize];
["Offset of field: busyobj::err_reason"]
[::std::mem::offset_of!(busyobj, err_reason) - 216usize];
["Offset of field: busyobj::director_state"]
[::std::mem::offset_of!(busyobj, director_state) - 224usize];
["Offset of field: busyobj::err_code"][::std::mem::offset_of!(busyobj, err_code) - 228usize];
["Offset of field: busyobj::connect_timeout"]
[::std::mem::offset_of!(busyobj, connect_timeout) - 232usize];
["Offset of field: busyobj::first_byte_timeout"]
[::std::mem::offset_of!(busyobj, first_byte_timeout) - 240usize];
["Offset of field: busyobj::between_bytes_timeout"]
[::std::mem::offset_of!(busyobj, between_bytes_timeout) - 248usize];
["Offset of field: busyobj::task_deadline"]
[::std::mem::offset_of!(busyobj, task_deadline) - 256usize];
["Offset of field: busyobj::t_first"][::std::mem::offset_of!(busyobj, t_first) - 264usize];
["Offset of field: busyobj::t_resp"][::std::mem::offset_of!(busyobj, t_resp) - 272usize];
["Offset of field: busyobj::t_prev"][::std::mem::offset_of!(busyobj, t_prev) - 280usize];
["Offset of field: busyobj::acct"][::std::mem::offset_of!(busyobj, acct) - 288usize];
["Offset of field: busyobj::storage"][::std::mem::offset_of!(busyobj, storage) - 320usize];
["Offset of field: busyobj::director_req"]
[::std::mem::offset_of!(busyobj, director_req) - 328usize];
["Offset of field: busyobj::director_resp"]
[::std::mem::offset_of!(busyobj, director_resp) - 336usize];
["Offset of field: busyobj::vcl"][::std::mem::offset_of!(busyobj, vcl) - 344usize];
["Offset of field: busyobj::vsl"][::std::mem::offset_of!(busyobj, vsl) - 352usize];
["Offset of field: busyobj::digest"][::std::mem::offset_of!(busyobj, digest) - 392usize];
["Offset of field: busyobj::privs"][::std::mem::offset_of!(busyobj, privs) - 424usize];
["Offset of field: busyobj::client_identity"]
[::std::mem::offset_of!(busyobj, client_identity) - 432usize];
};
impl Default for busyobj {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
impl busyobj {
#[inline]
pub fn uncacheable(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_uncacheable(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn uncacheable_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_uncacheable_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_bgfetch(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_bgfetch(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_bgfetch_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
1usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_bgfetch_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
1usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_hitmiss(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_hitmiss(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_hitmiss_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
2usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_hitmiss_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
2usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_hitpass(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_hitpass(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_hitpass_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
3usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_hitpass_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
3usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn trace(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
}
#[inline]
pub fn set_trace(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn trace_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
4usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_trace_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
4usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn do_esi(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
}
#[inline]
pub fn set_do_esi(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(5usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn do_esi_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
5usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_do_esi_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
5usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn do_gzip(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
}
#[inline]
pub fn set_do_gzip(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(6usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn do_gzip_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
6usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_do_gzip_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
6usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn do_gunzip(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
}
#[inline]
pub fn set_do_gunzip(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(7usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn do_gunzip_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
7usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_do_gunzip_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
7usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn do_stream(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
}
#[inline]
pub fn set_do_stream(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(8usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn do_stream_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
8usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_do_stream_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
8usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn was_304(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
}
#[inline]
pub fn set_was_304(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(9usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn was_304_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
9usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_was_304_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
9usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
uncacheable: ::std::ffi::c_uint,
is_bgfetch: ::std::ffi::c_uint,
is_hitmiss: ::std::ffi::c_uint,
is_hitpass: ::std::ffi::c_uint,
trace: ::std::ffi::c_uint,
do_esi: ::std::ffi::c_uint,
do_gzip: ::std::ffi::c_uint,
do_gunzip: ::std::ffi::c_uint,
do_stream: ::std::ffi::c_uint,
was_304: ::std::ffi::c_uint,
) -> __BindgenBitfieldUnit<[u8; 2usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let uncacheable: u32 = unsafe { ::std::mem::transmute(uncacheable) };
uncacheable as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let is_bgfetch: u32 = unsafe { ::std::mem::transmute(is_bgfetch) };
is_bgfetch as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let is_hitmiss: u32 = unsafe { ::std::mem::transmute(is_hitmiss) };
is_hitmiss as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let is_hitpass: u32 = unsafe { ::std::mem::transmute(is_hitpass) };
is_hitpass as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let trace: u32 = unsafe { ::std::mem::transmute(trace) };
trace as u64
});
__bindgen_bitfield_unit.set(5usize, 1u8, {
let do_esi: u32 = unsafe { ::std::mem::transmute(do_esi) };
do_esi as u64
});
__bindgen_bitfield_unit.set(6usize, 1u8, {
let do_gzip: u32 = unsafe { ::std::mem::transmute(do_gzip) };
do_gzip as u64
});
__bindgen_bitfield_unit.set(7usize, 1u8, {
let do_gunzip: u32 = unsafe { ::std::mem::transmute(do_gunzip) };
do_gunzip as u64
});
__bindgen_bitfield_unit.set(8usize, 1u8, {
let do_stream: u32 = unsafe { ::std::mem::transmute(do_stream) };
do_stream as u64
});
__bindgen_bitfield_unit.set(9usize, 1u8, {
let was_304: u32 = unsafe { ::std::mem::transmute(was_304) };
was_304 as u64
});
__bindgen_bitfield_unit
}
}
unsafe extern "C" {
pub static mut retry_disabled: *const ::std::ffi::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct reqtop {
pub magic: ::std::ffi::c_uint,
pub topreq: *mut req,
pub vcl0: *mut vcl,
pub privs: [vrt_privs; 1usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of reqtop"][::std::mem::size_of::<reqtop>() - 32usize];
["Alignment of reqtop"][::std::mem::align_of::<reqtop>() - 8usize];
["Offset of field: reqtop::magic"][::std::mem::offset_of!(reqtop, magic) - 0usize];
["Offset of field: reqtop::topreq"][::std::mem::offset_of!(reqtop, topreq) - 8usize];
["Offset of field: reqtop::vcl0"][::std::mem::offset_of!(reqtop, vcl0) - 16usize];
["Offset of field: reqtop::privs"][::std::mem::offset_of!(reqtop, privs) - 24usize];
};
impl Default for reqtop {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct req {
pub magic: ::std::ffi::c_uint,
pub esi_level: ::std::ffi::c_uint,
pub req_body_status: body_status_t,
pub doclose: stream_close_t,
pub restarts: ::std::ffi::c_uint,
pub max_restarts: ::std::ffi::c_uint,
pub waitinglist_gen: ::std::ffi::c_uint,
pub req_step: *const req_step,
pub top: *mut reqtop,
pub err_code: u16,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
pub err_reason: *const ::std::ffi::c_char,
pub sp: *mut sess,
pub wrk: *mut worker,
pub task: [pool_task; 1usize],
pub transport: *const transport,
pub transport_priv: *mut ::std::ffi::c_void,
pub w_list: req__bindgen_ty_1,
pub body_oc: *mut objcore,
pub vary_b: *mut u8,
pub vary_e: *mut u8,
pub digest: [u8; 32usize],
pub d_ttl: vtim_dur,
pub d_grace: vtim_dur,
pub storage: *const stevedore,
pub director_hint: *const director,
pub vcl: *mut vcl,
pub ws_req: usize,
pub t_first: vtim_real,
pub t_prev: vtim_real,
pub t_req: vtim_real,
pub t_resp: vtim_real,
pub htc: *mut http_conn,
pub vfc: *mut vfp_ctx,
pub client_identity: *const ::std::ffi::c_char,
pub http: *mut http,
pub http0: *mut http,
pub resp: *mut http,
pub resp_len: intmax_t,
pub ws: [ws; 1usize],
pub objcore: *mut objcore,
pub stale_oc: *mut objcore,
pub boc: *mut boc,
pub vdc: *mut vdp_ctx,
pub vdp_filter_list: *const ::std::ffi::c_char,
pub vfp_filter_list: *const ::std::ffi::c_char,
pub vsl: [vsl_log; 1usize],
pub acct: acct_req,
pub privs: [vrt_privs; 1usize],
pub vcf: *mut vcf,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct req__bindgen_ty_1 {
pub vtqe_next: *mut req,
pub vtqe_prev: *mut *mut req,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of req__bindgen_ty_1"][::std::mem::size_of::<req__bindgen_ty_1>() - 16usize];
["Alignment of req__bindgen_ty_1"][::std::mem::align_of::<req__bindgen_ty_1>() - 8usize];
["Offset of field: req__bindgen_ty_1::vtqe_next"]
[::std::mem::offset_of!(req__bindgen_ty_1, vtqe_next) - 0usize];
["Offset of field: req__bindgen_ty_1::vtqe_prev"]
[::std::mem::offset_of!(req__bindgen_ty_1, vtqe_prev) - 8usize];
};
impl Default for req__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of req"][::std::mem::size_of::<req>() - 520usize];
["Alignment of req"][::std::mem::align_of::<req>() - 8usize];
["Offset of field: req::magic"][::std::mem::offset_of!(req, magic) - 0usize];
["Offset of field: req::esi_level"][::std::mem::offset_of!(req, esi_level) - 4usize];
["Offset of field: req::req_body_status"]
[::std::mem::offset_of!(req, req_body_status) - 8usize];
["Offset of field: req::doclose"][::std::mem::offset_of!(req, doclose) - 16usize];
["Offset of field: req::restarts"][::std::mem::offset_of!(req, restarts) - 24usize];
["Offset of field: req::max_restarts"][::std::mem::offset_of!(req, max_restarts) - 28usize];
["Offset of field: req::waitinglist_gen"]
[::std::mem::offset_of!(req, waitinglist_gen) - 32usize];
["Offset of field: req::req_step"][::std::mem::offset_of!(req, req_step) - 40usize];
["Offset of field: req::top"][::std::mem::offset_of!(req, top) - 48usize];
["Offset of field: req::err_code"][::std::mem::offset_of!(req, err_code) - 56usize];
["Offset of field: req::err_reason"][::std::mem::offset_of!(req, err_reason) - 64usize];
["Offset of field: req::sp"][::std::mem::offset_of!(req, sp) - 72usize];
["Offset of field: req::wrk"][::std::mem::offset_of!(req, wrk) - 80usize];
["Offset of field: req::task"][::std::mem::offset_of!(req, task) - 88usize];
["Offset of field: req::transport"][::std::mem::offset_of!(req, transport) - 120usize];
["Offset of field: req::transport_priv"]
[::std::mem::offset_of!(req, transport_priv) - 128usize];
["Offset of field: req::w_list"][::std::mem::offset_of!(req, w_list) - 136usize];
["Offset of field: req::body_oc"][::std::mem::offset_of!(req, body_oc) - 152usize];
["Offset of field: req::vary_b"][::std::mem::offset_of!(req, vary_b) - 160usize];
["Offset of field: req::vary_e"][::std::mem::offset_of!(req, vary_e) - 168usize];
["Offset of field: req::digest"][::std::mem::offset_of!(req, digest) - 176usize];
["Offset of field: req::d_ttl"][::std::mem::offset_of!(req, d_ttl) - 208usize];
["Offset of field: req::d_grace"][::std::mem::offset_of!(req, d_grace) - 216usize];
["Offset of field: req::storage"][::std::mem::offset_of!(req, storage) - 224usize];
["Offset of field: req::director_hint"][::std::mem::offset_of!(req, director_hint) - 232usize];
["Offset of field: req::vcl"][::std::mem::offset_of!(req, vcl) - 240usize];
["Offset of field: req::ws_req"][::std::mem::offset_of!(req, ws_req) - 248usize];
["Offset of field: req::t_first"][::std::mem::offset_of!(req, t_first) - 256usize];
["Offset of field: req::t_prev"][::std::mem::offset_of!(req, t_prev) - 264usize];
["Offset of field: req::t_req"][::std::mem::offset_of!(req, t_req) - 272usize];
["Offset of field: req::t_resp"][::std::mem::offset_of!(req, t_resp) - 280usize];
["Offset of field: req::htc"][::std::mem::offset_of!(req, htc) - 288usize];
["Offset of field: req::vfc"][::std::mem::offset_of!(req, vfc) - 296usize];
["Offset of field: req::client_identity"]
[::std::mem::offset_of!(req, client_identity) - 304usize];
["Offset of field: req::http"][::std::mem::offset_of!(req, http) - 312usize];
["Offset of field: req::http0"][::std::mem::offset_of!(req, http0) - 320usize];
["Offset of field: req::resp"][::std::mem::offset_of!(req, resp) - 328usize];
["Offset of field: req::resp_len"][::std::mem::offset_of!(req, resp_len) - 336usize];
["Offset of field: req::ws"][::std::mem::offset_of!(req, ws) - 344usize];
["Offset of field: req::objcore"][::std::mem::offset_of!(req, objcore) - 384usize];
["Offset of field: req::stale_oc"][::std::mem::offset_of!(req, stale_oc) - 392usize];
["Offset of field: req::boc"][::std::mem::offset_of!(req, boc) - 400usize];
["Offset of field: req::vdc"][::std::mem::offset_of!(req, vdc) - 408usize];
["Offset of field: req::vdp_filter_list"]
[::std::mem::offset_of!(req, vdp_filter_list) - 416usize];
["Offset of field: req::vfp_filter_list"]
[::std::mem::offset_of!(req, vfp_filter_list) - 424usize];
["Offset of field: req::vsl"][::std::mem::offset_of!(req, vsl) - 432usize];
["Offset of field: req::acct"][::std::mem::offset_of!(req, acct) - 472usize];
["Offset of field: req::privs"][::std::mem::offset_of!(req, privs) - 504usize];
["Offset of field: req::vcf"][::std::mem::offset_of!(req, vcf) - 512usize];
};
impl Default for req {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
impl req {
#[inline]
pub fn disable_esi(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_disable_esi(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn disable_esi_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_disable_esi_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn hash_ignore_busy(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_hash_ignore_busy(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn hash_ignore_busy_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
1usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_hash_ignore_busy_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
1usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn hash_ignore_vary(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_hash_ignore_vary(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn hash_ignore_vary_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
2usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_hash_ignore_vary_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
2usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn hash_always_miss(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_hash_always_miss(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn hash_always_miss_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
3usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_hash_always_miss_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
3usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_hit(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_hit(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_hit_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
4usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_hit_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
4usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn want100cont(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
}
#[inline]
pub fn set_want100cont(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(5usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn want100cont_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
5usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_want100cont_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
5usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn late100cont(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
}
#[inline]
pub fn set_late100cont(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(6usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn late100cont_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
6usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_late100cont_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
6usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn req_reset(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
}
#[inline]
pub fn set_req_reset(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(7usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn req_reset_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
7usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_req_reset_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
7usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn res_esi(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
}
#[inline]
pub fn set_res_esi(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(8usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn res_esi_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
8usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_res_esi_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
8usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn res_pipe(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
}
#[inline]
pub fn set_res_pipe(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(9usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn res_pipe_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
9usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_res_pipe_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
9usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_hitmiss(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_hitmiss(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(10usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_hitmiss_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
10usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_hitmiss_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
10usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_hitpass(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_hitpass(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(11usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_hitpass_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
11usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_hitpass_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
11usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn trace(&self) -> ::std::ffi::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
}
#[inline]
pub fn set_trace(&mut self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(12usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn trace_raw(this: *const Self) -> ::std::ffi::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
12usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_trace_raw(this: *mut Self, val: ::std::ffi::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
12usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
disable_esi: ::std::ffi::c_uint,
hash_ignore_busy: ::std::ffi::c_uint,
hash_ignore_vary: ::std::ffi::c_uint,
hash_always_miss: ::std::ffi::c_uint,
is_hit: ::std::ffi::c_uint,
want100cont: ::std::ffi::c_uint,
late100cont: ::std::ffi::c_uint,
req_reset: ::std::ffi::c_uint,
res_esi: ::std::ffi::c_uint,
res_pipe: ::std::ffi::c_uint,
is_hitmiss: ::std::ffi::c_uint,
is_hitpass: ::std::ffi::c_uint,
trace: ::std::ffi::c_uint,
) -> __BindgenBitfieldUnit<[u8; 2usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let disable_esi: u32 = unsafe { ::std::mem::transmute(disable_esi) };
disable_esi as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let hash_ignore_busy: u32 = unsafe { ::std::mem::transmute(hash_ignore_busy) };
hash_ignore_busy as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let hash_ignore_vary: u32 = unsafe { ::std::mem::transmute(hash_ignore_vary) };
hash_ignore_vary as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let hash_always_miss: u32 = unsafe { ::std::mem::transmute(hash_always_miss) };
hash_always_miss as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let is_hit: u32 = unsafe { ::std::mem::transmute(is_hit) };
is_hit as u64
});
__bindgen_bitfield_unit.set(5usize, 1u8, {
let want100cont: u32 = unsafe { ::std::mem::transmute(want100cont) };
want100cont as u64
});
__bindgen_bitfield_unit.set(6usize, 1u8, {
let late100cont: u32 = unsafe { ::std::mem::transmute(late100cont) };
late100cont as u64
});
__bindgen_bitfield_unit.set(7usize, 1u8, {
let req_reset: u32 = unsafe { ::std::mem::transmute(req_reset) };
req_reset as u64
});
__bindgen_bitfield_unit.set(8usize, 1u8, {
let res_esi: u32 = unsafe { ::std::mem::transmute(res_esi) };
res_esi as u64
});
__bindgen_bitfield_unit.set(9usize, 1u8, {
let res_pipe: u32 = unsafe { ::std::mem::transmute(res_pipe) };
res_pipe as u64
});
__bindgen_bitfield_unit.set(10usize, 1u8, {
let is_hitmiss: u32 = unsafe { ::std::mem::transmute(is_hitmiss) };
is_hitmiss as u64
});
__bindgen_bitfield_unit.set(11usize, 1u8, {
let is_hitpass: u32 = unsafe { ::std::mem::transmute(is_hitpass) };
is_hitpass as u64
});
__bindgen_bitfield_unit.set(12usize, 1u8, {
let trace: u32 = unsafe { ::std::mem::transmute(trace) };
trace as u64
});
__bindgen_bitfield_unit
}
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum SessionAttr {
Transport = 0,
RemoteAddr = 1,
LocalAddr = 2,
ClientAddr = 3,
ServerAddr = 4,
ClientIp = 5,
ClientPort = 6,
ProxyTlv = 7,
ProtoPriv = 8,
Last = 9,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sess {
pub magic: ::std::ffi::c_uint,
pub sattr: [u16; 9usize],
pub listen_sock: *mut listen_sock,
pub refcnt: ::std::ffi::c_int,
pub fd: ::std::ffi::c_int,
pub vxid: vxid_t,
pub mtx: lock,
pub pool: *mut pool,
pub ws: [ws; 1usize],
pub t_open: vtim_real,
pub t_idle: vtim_real,
pub timeout_idle: vtim_dur,
pub timeout_linger: vtim_dur,
pub send_timeout: vtim_dur,
pub idle_send_timeout: vtim_dur,
pub tls: *mut vtls_sess,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of sess"][::std::mem::size_of::<sess>() - 160usize];
["Alignment of sess"][::std::mem::align_of::<sess>() - 8usize];
["Offset of field: sess::magic"][::std::mem::offset_of!(sess, magic) - 0usize];
["Offset of field: sess::sattr"][::std::mem::offset_of!(sess, sattr) - 4usize];
["Offset of field: sess::listen_sock"][::std::mem::offset_of!(sess, listen_sock) - 24usize];
["Offset of field: sess::refcnt"][::std::mem::offset_of!(sess, refcnt) - 32usize];
["Offset of field: sess::fd"][::std::mem::offset_of!(sess, fd) - 36usize];
["Offset of field: sess::vxid"][::std::mem::offset_of!(sess, vxid) - 40usize];
["Offset of field: sess::mtx"][::std::mem::offset_of!(sess, mtx) - 48usize];
["Offset of field: sess::pool"][::std::mem::offset_of!(sess, pool) - 56usize];
["Offset of field: sess::ws"][::std::mem::offset_of!(sess, ws) - 64usize];
["Offset of field: sess::t_open"][::std::mem::offset_of!(sess, t_open) - 104usize];
["Offset of field: sess::t_idle"][::std::mem::offset_of!(sess, t_idle) - 112usize];
["Offset of field: sess::timeout_idle"][::std::mem::offset_of!(sess, timeout_idle) - 120usize];
["Offset of field: sess::timeout_linger"]
[::std::mem::offset_of!(sess, timeout_linger) - 128usize];
["Offset of field: sess::send_timeout"][::std::mem::offset_of!(sess, send_timeout) - 136usize];
["Offset of field: sess::idle_send_timeout"]
[::std::mem::offset_of!(sess, idle_send_timeout) - 144usize];
["Offset of field: sess::tls"][::std::mem::offset_of!(sess, tls) - 152usize];
};
impl Default for sess {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn BAN_Build() -> *mut ban_proto;
}
unsafe extern "C" {
pub fn BAN_AddTest(
arg1: *mut ban_proto,
arg2: *const ::std::ffi::c_char,
arg3: *const ::std::ffi::c_char,
arg4: *const ::std::ffi::c_char,
) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn BAN_Commit(b: *mut ban_proto) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn BAN_Abandon(b: *mut ban_proto);
}
unsafe extern "C" {
pub static mut cli_thread: pthread_t;
}
unsafe extern "C" {
pub fn HTTP_estimate(nhttp: ::std::ffi::c_uint) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn HTTP_Clone(to: *mut http, fm: *const http);
}
unsafe extern "C" {
pub fn HTTP_Dup(to: *mut http, fm: *const http);
}
unsafe extern "C" {
pub fn HTTP_create(
p: *mut ::std::ffi::c_void,
nhttp: u16,
arg1: ::std::ffi::c_uint,
) -> *mut http;
}
unsafe extern "C" {
pub fn http_Status2Reason(
arg1: ::std::ffi::c_uint,
arg2: *mut *const ::std::ffi::c_char,
) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn http_IsHdr(hh: *const txt, hdr: hdr_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_EstimateWS(fm: *const http, how: ::std::ffi::c_uint) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn http_PutResponse(
to: *mut http,
proto: *const ::std::ffi::c_char,
status: u16,
response: *const ::std::ffi::c_char,
);
}
unsafe extern "C" {
pub fn http_FilterReq(to: *mut http, fm: *const http, how: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn HTTP_Encode(
fm: *const http,
arg1: *mut u8,
len: ::std::ffi::c_uint,
how: ::std::ffi::c_uint,
);
}
unsafe extern "C" {
pub fn HTTP_Decode(to: *mut http, fm: *const u8) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_ForceHeader(to: *mut http, arg1: hdr_t, val: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn http_AppendHeader(to: *mut http, arg1: hdr_t, val: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn http_PrintfHeader(to: *mut http, fmt: *const ::std::ffi::c_char, ...);
}
unsafe extern "C" {
pub fn http_TimeHeader(to: *mut http, fmt: *const ::std::ffi::c_char, now: vtim_real);
}
unsafe extern "C" {
pub fn http_ViaHeader() -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn http_Proto(to: *mut http);
}
unsafe extern "C" {
pub fn http_SetHeader(to: *mut http, header: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn http_SetH(to: *mut http, n: ::std::ffi::c_uint, header: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn http_ForceField(to: *mut http, n: ::std::ffi::c_uint, t: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn HTTP_Setup(arg1: *mut http, arg2: *mut ws, arg3: *mut vsl_log, arg4: VslTag);
}
unsafe extern "C" {
pub fn http_Teardown(ht: *mut http);
}
unsafe extern "C" {
pub fn http_GetHdr(
hp: *const http,
arg1: hdr_t,
ptr: *mut *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_GetHdrToken(
hp: *const http,
arg1: hdr_t,
token: *const ::std::ffi::c_char,
pb: *mut *const ::std::ffi::c_char,
pe: *mut *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_GetHdrField(
hp: *const http,
arg1: hdr_t,
field: *const ::std::ffi::c_char,
ptr: *mut *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_GetHdrQ(hp: *const http, arg1: hdr_t, field: *const ::std::ffi::c_char) -> f64;
}
unsafe extern "C" {
pub fn http_GetContentLength(hp: *const http) -> isize;
}
unsafe extern "C" {
pub fn http_GetContentRange(hp: *const http, lo: *mut isize, hi: *mut isize) -> isize;
}
unsafe extern "C" {
pub fn http_GetRange(
hp: *const http,
lo: *mut isize,
hi: *mut isize,
len: isize,
) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn http_GetStatus(hp: *const http) -> u16;
}
unsafe extern "C" {
pub fn http_IsStatus(hp: *const http, arg1: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_SetStatus(to: *mut http, status: u16, reason: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn http_GetMethod(hp: *const http) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn http_HdrIs(
hp: *const http,
arg1: hdr_t,
val: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_CopyHome(hp: *const http);
}
unsafe extern "C" {
pub fn http_Unset(hp: *mut http, arg1: hdr_t);
}
unsafe extern "C" {
pub fn http_CountHdr(hp: *const http, arg1: hdr_t) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn http_CollectHdr(hp: *mut http, arg1: hdr_t);
}
unsafe extern "C" {
pub fn http_CollectHdrSep(hp: *mut http, arg1: hdr_t, sep: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn http_VSL_log(hp: *const http);
}
unsafe extern "C" {
pub fn HTTP_Merge(arg1: *mut worker, arg2: *mut objcore, to: *mut http);
}
unsafe extern "C" {
pub fn HTTP_GetStatusPack(arg1: *mut worker, oc: *mut objcore) -> u16;
}
unsafe extern "C" {
pub fn HTTP_IterHdrPack(
arg1: *mut worker,
arg2: *mut objcore,
arg3: *mut *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn HTTP_GetHdrPack(
arg1: *mut worker,
arg2: *mut objcore,
arg3: hdr_t,
) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn http_DoConnection(hp: *mut http, sc_close: stream_close_t) -> stream_close_t;
}
unsafe extern "C" {
pub fn http_IsFiltered(
hp: *const http,
u: ::std::ffi::c_uint,
how: ::std::ffi::c_uint,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn http_SetWellKnownMethod(hp: *mut http);
}
unsafe extern "C" {
pub static mut H_Accept: hdr_t;
}
unsafe extern "C" {
pub static mut H_Accept_Charset: hdr_t;
}
unsafe extern "C" {
pub static mut H_Accept_Encoding: hdr_t;
}
unsafe extern "C" {
pub static mut H_Accept_Language: hdr_t;
}
unsafe extern "C" {
pub static mut H_Accept_Ranges: hdr_t;
}
unsafe extern "C" {
pub static mut H_Age: hdr_t;
}
unsafe extern "C" {
pub static mut H_Allow: hdr_t;
}
unsafe extern "C" {
pub static mut H_Authorization: hdr_t;
}
unsafe extern "C" {
pub static mut H_Cache_Control: hdr_t;
}
unsafe extern "C" {
pub static mut H_Connection: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_Encoding: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_Language: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_Length: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_Location: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_MD5: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_Range: hdr_t;
}
unsafe extern "C" {
pub static mut H_Content_Type: hdr_t;
}
unsafe extern "C" {
pub static mut H_Cookie: hdr_t;
}
unsafe extern "C" {
pub static mut H_Date: hdr_t;
}
unsafe extern "C" {
pub static mut H_ETag: hdr_t;
}
unsafe extern "C" {
pub static mut H_Expect: hdr_t;
}
unsafe extern "C" {
pub static mut H_Expires: hdr_t;
}
unsafe extern "C" {
pub static mut H_From: hdr_t;
}
unsafe extern "C" {
pub static mut H_Host: hdr_t;
}
unsafe extern "C" {
pub static mut H_HTTP2_Settings: hdr_t;
}
unsafe extern "C" {
pub static mut H_If_Match: hdr_t;
}
unsafe extern "C" {
pub static mut H_If_Modified_Since: hdr_t;
}
unsafe extern "C" {
pub static mut H_If_None_Match: hdr_t;
}
unsafe extern "C" {
pub static mut H_If_Range: hdr_t;
}
unsafe extern "C" {
pub static mut H_If_Unmodified_Since: hdr_t;
}
unsafe extern "C" {
pub static mut H_Keep_Alive: hdr_t;
}
unsafe extern "C" {
pub static mut H_Last_Modified: hdr_t;
}
unsafe extern "C" {
pub static mut H_Location: hdr_t;
}
unsafe extern "C" {
pub static mut H_Max_Forwards: hdr_t;
}
unsafe extern "C" {
pub static mut H_Pragma: hdr_t;
}
unsafe extern "C" {
pub static mut H_Proxy_Authenticate: hdr_t;
}
unsafe extern "C" {
pub static mut H_Proxy_Authorization: hdr_t;
}
unsafe extern "C" {
pub static mut H_Range: hdr_t;
}
unsafe extern "C" {
pub static mut H_Referer: hdr_t;
}
unsafe extern "C" {
pub static mut H_Retry_After: hdr_t;
}
unsafe extern "C" {
pub static mut H_Server: hdr_t;
}
unsafe extern "C" {
pub static mut H_Set_Cookie: hdr_t;
}
unsafe extern "C" {
pub static mut H_TE: hdr_t;
}
unsafe extern "C" {
pub static mut H_Trailer: hdr_t;
}
unsafe extern "C" {
pub static mut H_Transfer_Encoding: hdr_t;
}
unsafe extern "C" {
pub static mut H_Upgrade: hdr_t;
}
unsafe extern "C" {
pub static mut H_User_Agent: hdr_t;
}
unsafe extern "C" {
pub static mut H_Vary: hdr_t;
}
unsafe extern "C" {
pub static mut H_Via: hdr_t;
}
unsafe extern "C" {
pub static mut H_Warning: hdr_t;
}
unsafe extern "C" {
pub static mut H_WWW_Authenticate: hdr_t;
}
unsafe extern "C" {
pub static mut H_X_Forwarded_For: hdr_t;
}
unsafe extern "C" {
pub static mut H__Status: hdr_t;
}
unsafe extern "C" {
pub static mut H__Proto: hdr_t;
}
unsafe extern "C" {
pub static mut H__Reason: hdr_t;
}
unsafe extern "C" {
pub fn Lck__Lock(lck: *mut lock, p: *const ::std::ffi::c_char, l: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn Lck__Unlock(lck: *mut lock, p: *const ::std::ffi::c_char, l: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn Lck__Trylock(
lck: *mut lock,
p: *const ::std::ffi::c_char,
l: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Lck__New(lck: *mut lock, arg1: *mut VSC_lck, arg2: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn Lck__Held(lck: *const lock) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Lck__Owned(lck: *const lock) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut mtxattr_errorcheck: pthread_mutexattr_t;
}
unsafe extern "C" {
pub fn Lck_Delete(lck: *mut lock);
}
unsafe extern "C" {
pub fn Lck_CondWaitUntil(
arg1: *mut pthread_cond_t,
arg2: *mut lock,
when: vtim_real,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Lck_CondWait(arg1: *mut pthread_cond_t, arg2: *mut lock) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Lck_CondWaitTimeout(
arg1: *mut pthread_cond_t,
arg2: *mut lock,
timeout: vtim_dur,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Lck_CreateClass(
arg1: *mut *mut vsc_seg,
arg2: *const ::std::ffi::c_char,
) -> *mut VSC_lck;
}
unsafe extern "C" {
pub fn Lck_DestroyClass(arg1: *mut *mut vsc_seg);
}
unsafe extern "C" {
pub static mut lck_ban: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_busyobj: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_cli: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_director: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_exp: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_hcb: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_lru: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_mempool: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_objhdr: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_perpool: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_pipestat: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_probe: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_sess: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_conn_pool: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_dead_pool: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_vbe: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_vcapace: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_vcashut: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_vcl: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_vxid: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_waiter: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_wq: *mut VSC_lck;
}
unsafe extern "C" {
pub static mut lck_wstat: *mut VSC_lck;
}
unsafe extern "C" {
pub fn ObjHasAttr(arg1: *mut worker, arg2: *mut objcore, arg3: obj_attr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjGetAttr(
arg1: *mut worker,
arg2: *mut objcore,
arg3: obj_attr,
len: *mut isize,
) -> *const ::std::ffi::c_void;
}
pub type objiterate_f = ::std::option::Option<
unsafe extern "C" fn(
priv_: *mut ::std::ffi::c_void,
flush: ::std::ffi::c_uint,
ptr: *const ::std::ffi::c_void,
len: isize,
) -> ::std::ffi::c_int,
>;
unsafe extern "C" {
pub fn ObjIterate(
arg1: *mut worker,
arg2: *mut objcore,
priv_: *mut ::std::ffi::c_void,
func: objiterate_f,
final_: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjGetXID(arg1: *mut worker, arg2: *mut objcore) -> vxid_t;
}
unsafe extern "C" {
pub fn ObjGetLen(arg1: *mut worker, arg2: *mut objcore) -> u64;
}
unsafe extern "C" {
pub fn ObjGetDouble(
arg1: *mut worker,
arg2: *mut objcore,
arg3: obj_attr,
arg4: *mut f64,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjGetU64(
arg1: *mut worker,
arg2: *mut objcore,
arg3: obj_attr,
arg4: *mut u64,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjCheckFlag(arg1: *mut worker, arg2: *mut objcore, of: obj_flags) -> ::std::ffi::c_int;
}
pub type vai_hdl = *mut ::std::ffi::c_void;
pub type vai_notify_cb =
::std::option::Option<unsafe extern "C" fn(arg1: vai_hdl, priv_: *mut ::std::ffi::c_void)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct viov {
pub lease: u64,
pub iov: iovec,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of viov"][::std::mem::size_of::<viov>() - 24usize];
["Alignment of viov"][::std::mem::align_of::<viov>() - 8usize];
["Offset of field: viov::lease"][::std::mem::offset_of!(viov, lease) - 0usize];
["Offset of field: viov::iov"][::std::mem::offset_of!(viov, iov) - 8usize];
};
impl Default for viov {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug)]
pub struct vscarab {
pub magic: ::std::ffi::c_uint,
pub flags: ::std::ffi::c_uint,
pub capacity: ::std::ffi::c_uint,
pub used: ::std::ffi::c_uint,
pub s: __IncompleteArrayField<viov>,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vscarab"][::std::mem::size_of::<vscarab>() - 16usize];
["Alignment of vscarab"][::std::mem::align_of::<vscarab>() - 8usize];
["Offset of field: vscarab::magic"][::std::mem::offset_of!(vscarab, magic) - 0usize];
["Offset of field: vscarab::flags"][::std::mem::offset_of!(vscarab, flags) - 4usize];
["Offset of field: vscarab::capacity"][::std::mem::offset_of!(vscarab, capacity) - 8usize];
["Offset of field: vscarab::used"][::std::mem::offset_of!(vscarab, used) - 12usize];
["Offset of field: vscarab::s"][::std::mem::offset_of!(vscarab, s) - 16usize];
};
impl Default for vscarab {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default)]
pub struct vscaret {
pub magic: ::std::ffi::c_uint,
pub capacity: ::std::ffi::c_uint,
pub used: ::std::ffi::c_uint,
pub lease: __IncompleteArrayField<::std::ffi::c_ulong>,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vscaret"][::std::mem::size_of::<vscaret>() - 16usize];
["Alignment of vscaret"][::std::mem::align_of::<vscaret>() - 8usize];
["Offset of field: vscaret::magic"][::std::mem::offset_of!(vscaret, magic) - 0usize];
["Offset of field: vscaret::capacity"][::std::mem::offset_of!(vscaret, capacity) - 4usize];
["Offset of field: vscaret::used"][::std::mem::offset_of!(vscaret, used) - 8usize];
["Offset of field: vscaret::lease"][::std::mem::offset_of!(vscaret, lease) - 16usize];
};
unsafe extern "C" {
pub fn ObjVAIinit(
arg1: *mut worker,
arg2: *mut objcore,
arg3: *mut ws,
arg4: vai_notify_cb,
arg5: *mut ::std::ffi::c_void,
) -> vai_hdl;
}
unsafe extern "C" {
pub fn ObjVAIlease(arg1: *mut worker, arg2: vai_hdl, arg3: *mut vscarab) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjVAIbuffer(arg1: *mut worker, arg2: vai_hdl, arg3: *mut vscarab) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjVAIreturn(arg1: *mut worker, arg2: vai_hdl, arg3: *mut vscaret);
}
unsafe extern "C" {
pub fn ObjVAInotify(arg1: *mut worker, arg2: vai_hdl);
}
unsafe extern "C" {
pub fn ObjVAIfini(arg1: *mut worker, arg2: *mut vai_hdl);
}
unsafe extern "C" {
pub fn VRB_Iterate(
arg1: *mut worker,
arg2: *mut vsl_log,
arg3: *mut req,
func: objiterate_f,
priv_: *mut ::std::ffi::c_void,
) -> isize;
}
unsafe extern "C" {
pub fn SES_Get_transport(
sp: *const sess,
dst: *mut *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_remote_addr(sp: *const sess, dst: *mut *mut suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_local_addr(sp: *const sess, dst: *mut *mut suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_client_addr(sp: *const sess, dst: *mut *mut suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_server_addr(sp: *const sess, dst: *mut *mut suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_client_ip(
sp: *const sess,
dst: *mut *mut ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_client_port(
sp: *const sess,
dst: *mut *mut ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_proxy_tlv(sp: *const sess, dst: *mut *mut usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_proto_priv(sp: *const sess, dst: *mut *mut usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Get_String_Attr(sp: *const sess, a: SessionAttr) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VSLv(tag: VslTag, vxid: vxid_t, fmt: *const ::std::ffi::c_char, va: *mut __va_list_tag);
}
unsafe extern "C" {
pub fn VSL(tag: VslTag, vxid: vxid_t, fmt: *const ::std::ffi::c_char, ...);
}
unsafe extern "C" {
pub fn VSLs(tag: VslTag, vxid: vxid_t, s: *const strands);
}
unsafe extern "C" {
pub fn VSLbv(
arg1: *mut vsl_log,
tag: VslTag,
fmt: *const ::std::ffi::c_char,
va: *mut __va_list_tag,
);
}
unsafe extern "C" {
pub fn VSLb(arg1: *mut vsl_log, tag: VslTag, fmt: *const ::std::ffi::c_char, ...);
}
unsafe extern "C" {
pub fn VSLbt(arg1: *mut vsl_log, tag: VslTag, t: txt);
}
unsafe extern "C" {
pub fn VSLbs(arg1: *mut vsl_log, tag: VslTag, s: *const strands);
}
unsafe extern "C" {
pub fn VSLb_ts(
arg1: *mut vsl_log,
event: *const ::std::ffi::c_char,
first: vtim_real,
pprev: *mut vtim_real,
now: vtim_real,
);
}
unsafe extern "C" {
pub fn VSLb_bin(arg1: *mut vsl_log, arg2: VslTag, arg3: isize, arg4: *const ::std::ffi::c_void);
}
unsafe extern "C" {
pub fn VSL_tag_is_masked(tag: VslTag) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VCL_Name(arg1: *const vcl) -> *const ::std::ffi::c_char;
}
pub type bgthread_t = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut worker,
priv_: *mut ::std::ffi::c_void,
) -> *mut ::std::ffi::c_void,
>;
unsafe extern "C" {
pub fn WRK_BgThread(
thr: *mut pthread_t,
name: *const ::std::ffi::c_char,
func: bgthread_t,
priv_: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn WS_Init(
ws: *mut ws,
id: *const ::std::ffi::c_char,
space: *mut ::std::ffi::c_void,
len: ::std::ffi::c_uint,
);
}
unsafe extern "C" {
pub fn WS_ReserveSize(arg1: *mut ws, arg2: ::std::ffi::c_uint) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn WS_ReserveAll(arg1: *mut ws) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn WS_Release(ws: *mut ws, bytes: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn WS_ReleaseP(ws: *mut ws, ptr: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn WS_Assert(ws: *const ws);
}
unsafe extern "C" {
pub fn WS_Reset(ws: *mut ws, arg1: usize);
}
unsafe extern "C" {
pub fn WS_Alloc(ws: *mut ws, bytes: ::std::ffi::c_uint) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn WS_Copy(
ws: *mut ws,
str_: *const ::std::ffi::c_void,
len: ::std::ffi::c_int,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn WS_Snapshot(ws: *mut ws) -> usize;
}
unsafe extern "C" {
pub fn WS_Allocated(
ws: *const ws,
ptr: *const ::std::ffi::c_void,
len: isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn WS_Dump(
ws: *const ws,
arg1: ::std::ffi::c_char,
off: usize,
buf: *mut ::std::ffi::c_void,
len: usize,
) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn WS_MarkOverflow(ws: *mut ws);
}
unsafe extern "C" {
pub fn WS_Overflowed(ws: *const ws) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn WS_Printf(ws: *mut ws, fmt: *const ::std::ffi::c_char, ...)
-> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn WS_VSB_new(arg1: *mut vsb, arg2: *mut ws);
}
unsafe extern "C" {
pub fn WS_VSB_finish(
arg1: *mut vsb,
arg2: *mut ws,
arg3: *mut usize,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn RFC2616_Ttl(
arg1: *mut busyobj,
now: vtim_real,
t_origin: *mut vtim_real,
ttl: *mut f32,
grace: *mut f32,
keep: *mut f32,
);
}
unsafe extern "C" {
pub fn RFC2616_Req_Gzip(arg1: *const http) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn RFC2616_Do_Cond(sp: *const req) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn RFC2616_Weaken_Etag(hp: *mut http);
}
unsafe extern "C" {
pub fn RFC2616_Vary_AE(hp: *mut http);
}
unsafe extern "C" {
pub fn RFC2616_Strong_LM(
hp: *const http,
wrk: *mut worker,
oc: *mut objcore,
) -> *const ::std::ffi::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsb {
pub magic: ::std::ffi::c_uint,
pub s_error: ::std::ffi::c_int,
pub s_buf: *mut ::std::ffi::c_char,
pub s_size: isize,
pub s_len: isize,
pub s_flags: ::std::ffi::c_int,
pub s_indent: ::std::ffi::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vsb"][::std::mem::size_of::<vsb>() - 40usize];
["Alignment of vsb"][::std::mem::align_of::<vsb>() - 8usize];
["Offset of field: vsb::magic"][::std::mem::offset_of!(vsb, magic) - 0usize];
["Offset of field: vsb::s_error"][::std::mem::offset_of!(vsb, s_error) - 4usize];
["Offset of field: vsb::s_buf"][::std::mem::offset_of!(vsb, s_buf) - 8usize];
["Offset of field: vsb::s_size"][::std::mem::offset_of!(vsb, s_size) - 16usize];
["Offset of field: vsb::s_len"][::std::mem::offset_of!(vsb, s_len) - 24usize];
["Offset of field: vsb::s_flags"][::std::mem::offset_of!(vsb, s_flags) - 32usize];
["Offset of field: vsb::s_indent"][::std::mem::offset_of!(vsb, s_indent) - 36usize];
};
impl Default for vsb {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VSB_init(arg1: *mut vsb, arg2: *mut ::std::ffi::c_void, arg3: isize) -> *mut vsb;
}
unsafe extern "C" {
pub fn VSB_new_auto() -> *mut vsb;
}
unsafe extern "C" {
pub fn VSB_clear(arg1: *mut vsb);
}
unsafe extern "C" {
pub fn VSB_bcat(
arg1: *mut vsb,
arg2: *const ::std::ffi::c_void,
arg3: isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_cat(arg1: *mut vsb, arg2: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_printf(arg1: *mut vsb, arg2: *const ::std::ffi::c_char, ...) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_vprintf(
arg1: *mut vsb,
arg2: *const ::std::ffi::c_char,
arg3: *mut __va_list_tag,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_putc(arg1: *mut vsb, arg2: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_error(arg1: *const vsb) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_finish(arg1: *mut vsb) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSB_data(arg1: *const vsb) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VSB_len(arg1: *const vsb) -> isize;
}
unsafe extern "C" {
pub fn VSB_fini(arg1: *mut vsb);
}
unsafe extern "C" {
pub fn VSB_destroy(arg1: *mut *mut vsb);
}
unsafe extern "C" {
pub fn VSB_quote_pfx(
arg1: *mut vsb,
arg2: *const ::std::ffi::c_char,
arg3: *const ::std::ffi::c_void,
len: ::std::ffi::c_int,
how: ::std::ffi::c_int,
);
}
unsafe extern "C" {
pub fn VSB_quote(
arg1: *mut vsb,
arg2: *const ::std::ffi::c_void,
len: ::std::ffi::c_int,
how: ::std::ffi::c_int,
);
}
unsafe extern "C" {
pub fn VSB_indent(arg1: *mut vsb, arg2: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn VSB_tofile(arg1: *const vsb, fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
pub type useconds_t = __useconds_t;
unsafe extern "C" {
pub fn access(
__name: *const ::std::ffi::c_char,
__type: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn faccessat(
__fd: ::std::ffi::c_int,
__file: *const ::std::ffi::c_char,
__type: ::std::ffi::c_int,
__flag: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn lseek(
__fd: ::std::ffi::c_int,
__offset: __off_t,
__whence: ::std::ffi::c_int,
) -> __off_t;
}
unsafe extern "C" {
pub fn close(__fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn closefrom(__lowfd: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn read(__fd: ::std::ffi::c_int, __buf: *mut ::std::ffi::c_void, __nbytes: usize) -> isize;
}
unsafe extern "C" {
pub fn write(__fd: ::std::ffi::c_int, __buf: *const ::std::ffi::c_void, __n: usize) -> isize;
}
unsafe extern "C" {
pub fn pread(
__fd: ::std::ffi::c_int,
__buf: *mut ::std::ffi::c_void,
__nbytes: usize,
__offset: __off_t,
) -> isize;
}
unsafe extern "C" {
pub fn pwrite(
__fd: ::std::ffi::c_int,
__buf: *const ::std::ffi::c_void,
__n: usize,
__offset: __off_t,
) -> isize;
}
unsafe extern "C" {
pub fn pipe(__pipedes: *mut ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn alarm(__seconds: ::std::ffi::c_uint) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn sleep(__seconds: ::std::ffi::c_uint) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn ualarm(__value: __useconds_t, __interval: __useconds_t) -> __useconds_t;
}
unsafe extern "C" {
pub fn usleep(__useconds: __useconds_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pause() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn chown(
__file: *const ::std::ffi::c_char,
__owner: __uid_t,
__group: __gid_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn fchown(__fd: ::std::ffi::c_int, __owner: __uid_t, __group: __gid_t)
-> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn lchown(
__file: *const ::std::ffi::c_char,
__owner: __uid_t,
__group: __gid_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn fchownat(
__fd: ::std::ffi::c_int,
__file: *const ::std::ffi::c_char,
__owner: __uid_t,
__group: __gid_t,
__flag: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn chdir(__path: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn fchdir(__fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getcwd(__buf: *mut ::std::ffi::c_char, __size: usize) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn getwd(__buf: *mut ::std::ffi::c_char) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn dup(__fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn dup2(__fd: ::std::ffi::c_int, __fd2: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut __environ: *mut *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn execve(
__path: *const ::std::ffi::c_char,
__argv: *const *mut ::std::ffi::c_char,
__envp: *const *mut ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn fexecve(
__fd: ::std::ffi::c_int,
__argv: *const *mut ::std::ffi::c_char,
__envp: *const *mut ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn execv(
__path: *const ::std::ffi::c_char,
__argv: *const *mut ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn execle(
__path: *const ::std::ffi::c_char,
__arg: *const ::std::ffi::c_char,
...
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn execl(
__path: *const ::std::ffi::c_char,
__arg: *const ::std::ffi::c_char,
...
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn execvp(
__file: *const ::std::ffi::c_char,
__argv: *const *mut ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn execlp(
__file: *const ::std::ffi::c_char,
__arg: *const ::std::ffi::c_char,
...
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn nice(__inc: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn _exit(__status: ::std::ffi::c_int) -> !;
}
pub const _PC_LINK_MAX: _bindgen_ty_17 = 0;
pub const _PC_MAX_CANON: _bindgen_ty_17 = 1;
pub const _PC_MAX_INPUT: _bindgen_ty_17 = 2;
pub const _PC_NAME_MAX: _bindgen_ty_17 = 3;
pub const _PC_PATH_MAX: _bindgen_ty_17 = 4;
pub const _PC_PIPE_BUF: _bindgen_ty_17 = 5;
pub const _PC_CHOWN_RESTRICTED: _bindgen_ty_17 = 6;
pub const _PC_NO_TRUNC: _bindgen_ty_17 = 7;
pub const _PC_VDISABLE: _bindgen_ty_17 = 8;
pub const _PC_SYNC_IO: _bindgen_ty_17 = 9;
pub const _PC_ASYNC_IO: _bindgen_ty_17 = 10;
pub const _PC_PRIO_IO: _bindgen_ty_17 = 11;
pub const _PC_SOCK_MAXBUF: _bindgen_ty_17 = 12;
pub const _PC_FILESIZEBITS: _bindgen_ty_17 = 13;
pub const _PC_REC_INCR_XFER_SIZE: _bindgen_ty_17 = 14;
pub const _PC_REC_MAX_XFER_SIZE: _bindgen_ty_17 = 15;
pub const _PC_REC_MIN_XFER_SIZE: _bindgen_ty_17 = 16;
pub const _PC_REC_XFER_ALIGN: _bindgen_ty_17 = 17;
pub const _PC_ALLOC_SIZE_MIN: _bindgen_ty_17 = 18;
pub const _PC_SYMLINK_MAX: _bindgen_ty_17 = 19;
pub const _PC_2_SYMLINKS: _bindgen_ty_17 = 20;
pub type _bindgen_ty_17 = ::std::ffi::c_uint;
pub const _SC_ARG_MAX: _bindgen_ty_18 = 0;
pub const _SC_CHILD_MAX: _bindgen_ty_18 = 1;
pub const _SC_CLK_TCK: _bindgen_ty_18 = 2;
pub const _SC_NGROUPS_MAX: _bindgen_ty_18 = 3;
pub const _SC_OPEN_MAX: _bindgen_ty_18 = 4;
pub const _SC_STREAM_MAX: _bindgen_ty_18 = 5;
pub const _SC_TZNAME_MAX: _bindgen_ty_18 = 6;
pub const _SC_JOB_CONTROL: _bindgen_ty_18 = 7;
pub const _SC_SAVED_IDS: _bindgen_ty_18 = 8;
pub const _SC_REALTIME_SIGNALS: _bindgen_ty_18 = 9;
pub const _SC_PRIORITY_SCHEDULING: _bindgen_ty_18 = 10;
pub const _SC_TIMERS: _bindgen_ty_18 = 11;
pub const _SC_ASYNCHRONOUS_IO: _bindgen_ty_18 = 12;
pub const _SC_PRIORITIZED_IO: _bindgen_ty_18 = 13;
pub const _SC_SYNCHRONIZED_IO: _bindgen_ty_18 = 14;
pub const _SC_FSYNC: _bindgen_ty_18 = 15;
pub const _SC_MAPPED_FILES: _bindgen_ty_18 = 16;
pub const _SC_MEMLOCK: _bindgen_ty_18 = 17;
pub const _SC_MEMLOCK_RANGE: _bindgen_ty_18 = 18;
pub const _SC_MEMORY_PROTECTION: _bindgen_ty_18 = 19;
pub const _SC_MESSAGE_PASSING: _bindgen_ty_18 = 20;
pub const _SC_SEMAPHORES: _bindgen_ty_18 = 21;
pub const _SC_SHARED_MEMORY_OBJECTS: _bindgen_ty_18 = 22;
pub const _SC_AIO_LISTIO_MAX: _bindgen_ty_18 = 23;
pub const _SC_AIO_MAX: _bindgen_ty_18 = 24;
pub const _SC_AIO_PRIO_DELTA_MAX: _bindgen_ty_18 = 25;
pub const _SC_DELAYTIMER_MAX: _bindgen_ty_18 = 26;
pub const _SC_MQ_OPEN_MAX: _bindgen_ty_18 = 27;
pub const _SC_MQ_PRIO_MAX: _bindgen_ty_18 = 28;
pub const _SC_VERSION: _bindgen_ty_18 = 29;
pub const _SC_PAGESIZE: _bindgen_ty_18 = 30;
pub const _SC_RTSIG_MAX: _bindgen_ty_18 = 31;
pub const _SC_SEM_NSEMS_MAX: _bindgen_ty_18 = 32;
pub const _SC_SEM_VALUE_MAX: _bindgen_ty_18 = 33;
pub const _SC_SIGQUEUE_MAX: _bindgen_ty_18 = 34;
pub const _SC_TIMER_MAX: _bindgen_ty_18 = 35;
pub const _SC_BC_BASE_MAX: _bindgen_ty_18 = 36;
pub const _SC_BC_DIM_MAX: _bindgen_ty_18 = 37;
pub const _SC_BC_SCALE_MAX: _bindgen_ty_18 = 38;
pub const _SC_BC_STRING_MAX: _bindgen_ty_18 = 39;
pub const _SC_COLL_WEIGHTS_MAX: _bindgen_ty_18 = 40;
pub const _SC_EQUIV_CLASS_MAX: _bindgen_ty_18 = 41;
pub const _SC_EXPR_NEST_MAX: _bindgen_ty_18 = 42;
pub const _SC_LINE_MAX: _bindgen_ty_18 = 43;
pub const _SC_RE_DUP_MAX: _bindgen_ty_18 = 44;
pub const _SC_CHARCLASS_NAME_MAX: _bindgen_ty_18 = 45;
pub const _SC_2_VERSION: _bindgen_ty_18 = 46;
pub const _SC_2_C_BIND: _bindgen_ty_18 = 47;
pub const _SC_2_C_DEV: _bindgen_ty_18 = 48;
pub const _SC_2_FORT_DEV: _bindgen_ty_18 = 49;
pub const _SC_2_FORT_RUN: _bindgen_ty_18 = 50;
pub const _SC_2_SW_DEV: _bindgen_ty_18 = 51;
pub const _SC_2_LOCALEDEF: _bindgen_ty_18 = 52;
pub const _SC_PII: _bindgen_ty_18 = 53;
pub const _SC_PII_XTI: _bindgen_ty_18 = 54;
pub const _SC_PII_SOCKET: _bindgen_ty_18 = 55;
pub const _SC_PII_INTERNET: _bindgen_ty_18 = 56;
pub const _SC_PII_OSI: _bindgen_ty_18 = 57;
pub const _SC_POLL: _bindgen_ty_18 = 58;
pub const _SC_SELECT: _bindgen_ty_18 = 59;
pub const _SC_UIO_MAXIOV: _bindgen_ty_18 = 60;
pub const _SC_IOV_MAX: _bindgen_ty_18 = 60;
pub const _SC_PII_INTERNET_STREAM: _bindgen_ty_18 = 61;
pub const _SC_PII_INTERNET_DGRAM: _bindgen_ty_18 = 62;
pub const _SC_PII_OSI_COTS: _bindgen_ty_18 = 63;
pub const _SC_PII_OSI_CLTS: _bindgen_ty_18 = 64;
pub const _SC_PII_OSI_M: _bindgen_ty_18 = 65;
pub const _SC_T_IOV_MAX: _bindgen_ty_18 = 66;
pub const _SC_THREADS: _bindgen_ty_18 = 67;
pub const _SC_THREAD_SAFE_FUNCTIONS: _bindgen_ty_18 = 68;
pub const _SC_GETGR_R_SIZE_MAX: _bindgen_ty_18 = 69;
pub const _SC_GETPW_R_SIZE_MAX: _bindgen_ty_18 = 70;
pub const _SC_LOGIN_NAME_MAX: _bindgen_ty_18 = 71;
pub const _SC_TTY_NAME_MAX: _bindgen_ty_18 = 72;
pub const _SC_THREAD_DESTRUCTOR_ITERATIONS: _bindgen_ty_18 = 73;
pub const _SC_THREAD_KEYS_MAX: _bindgen_ty_18 = 74;
pub const _SC_THREAD_STACK_MIN: _bindgen_ty_18 = 75;
pub const _SC_THREAD_THREADS_MAX: _bindgen_ty_18 = 76;
pub const _SC_THREAD_ATTR_STACKADDR: _bindgen_ty_18 = 77;
pub const _SC_THREAD_ATTR_STACKSIZE: _bindgen_ty_18 = 78;
pub const _SC_THREAD_PRIORITY_SCHEDULING: _bindgen_ty_18 = 79;
pub const _SC_THREAD_PRIO_INHERIT: _bindgen_ty_18 = 80;
pub const _SC_THREAD_PRIO_PROTECT: _bindgen_ty_18 = 81;
pub const _SC_THREAD_PROCESS_SHARED: _bindgen_ty_18 = 82;
pub const _SC_NPROCESSORS_CONF: _bindgen_ty_18 = 83;
pub const _SC_NPROCESSORS_ONLN: _bindgen_ty_18 = 84;
pub const _SC_PHYS_PAGES: _bindgen_ty_18 = 85;
pub const _SC_AVPHYS_PAGES: _bindgen_ty_18 = 86;
pub const _SC_ATEXIT_MAX: _bindgen_ty_18 = 87;
pub const _SC_PASS_MAX: _bindgen_ty_18 = 88;
pub const _SC_XOPEN_VERSION: _bindgen_ty_18 = 89;
pub const _SC_XOPEN_XCU_VERSION: _bindgen_ty_18 = 90;
pub const _SC_XOPEN_UNIX: _bindgen_ty_18 = 91;
pub const _SC_XOPEN_CRYPT: _bindgen_ty_18 = 92;
pub const _SC_XOPEN_ENH_I18N: _bindgen_ty_18 = 93;
pub const _SC_XOPEN_SHM: _bindgen_ty_18 = 94;
pub const _SC_2_CHAR_TERM: _bindgen_ty_18 = 95;
pub const _SC_2_C_VERSION: _bindgen_ty_18 = 96;
pub const _SC_2_UPE: _bindgen_ty_18 = 97;
pub const _SC_XOPEN_XPG2: _bindgen_ty_18 = 98;
pub const _SC_XOPEN_XPG3: _bindgen_ty_18 = 99;
pub const _SC_XOPEN_XPG4: _bindgen_ty_18 = 100;
pub const _SC_CHAR_BIT: _bindgen_ty_18 = 101;
pub const _SC_CHAR_MAX: _bindgen_ty_18 = 102;
pub const _SC_CHAR_MIN: _bindgen_ty_18 = 103;
pub const _SC_INT_MAX: _bindgen_ty_18 = 104;
pub const _SC_INT_MIN: _bindgen_ty_18 = 105;
pub const _SC_LONG_BIT: _bindgen_ty_18 = 106;
pub const _SC_WORD_BIT: _bindgen_ty_18 = 107;
pub const _SC_MB_LEN_MAX: _bindgen_ty_18 = 108;
pub const _SC_NZERO: _bindgen_ty_18 = 109;
pub const _SC_SSIZE_MAX: _bindgen_ty_18 = 110;
pub const _SC_SCHAR_MAX: _bindgen_ty_18 = 111;
pub const _SC_SCHAR_MIN: _bindgen_ty_18 = 112;
pub const _SC_SHRT_MAX: _bindgen_ty_18 = 113;
pub const _SC_SHRT_MIN: _bindgen_ty_18 = 114;
pub const _SC_UCHAR_MAX: _bindgen_ty_18 = 115;
pub const _SC_UINT_MAX: _bindgen_ty_18 = 116;
pub const _SC_ULONG_MAX: _bindgen_ty_18 = 117;
pub const _SC_USHRT_MAX: _bindgen_ty_18 = 118;
pub const _SC_NL_ARGMAX: _bindgen_ty_18 = 119;
pub const _SC_NL_LANGMAX: _bindgen_ty_18 = 120;
pub const _SC_NL_MSGMAX: _bindgen_ty_18 = 121;
pub const _SC_NL_NMAX: _bindgen_ty_18 = 122;
pub const _SC_NL_SETMAX: _bindgen_ty_18 = 123;
pub const _SC_NL_TEXTMAX: _bindgen_ty_18 = 124;
pub const _SC_XBS5_ILP32_OFF32: _bindgen_ty_18 = 125;
pub const _SC_XBS5_ILP32_OFFBIG: _bindgen_ty_18 = 126;
pub const _SC_XBS5_LP64_OFF64: _bindgen_ty_18 = 127;
pub const _SC_XBS5_LPBIG_OFFBIG: _bindgen_ty_18 = 128;
pub const _SC_XOPEN_LEGACY: _bindgen_ty_18 = 129;
pub const _SC_XOPEN_REALTIME: _bindgen_ty_18 = 130;
pub const _SC_XOPEN_REALTIME_THREADS: _bindgen_ty_18 = 131;
pub const _SC_ADVISORY_INFO: _bindgen_ty_18 = 132;
pub const _SC_BARRIERS: _bindgen_ty_18 = 133;
pub const _SC_BASE: _bindgen_ty_18 = 134;
pub const _SC_C_LANG_SUPPORT: _bindgen_ty_18 = 135;
pub const _SC_C_LANG_SUPPORT_R: _bindgen_ty_18 = 136;
pub const _SC_CLOCK_SELECTION: _bindgen_ty_18 = 137;
pub const _SC_CPUTIME: _bindgen_ty_18 = 138;
pub const _SC_THREAD_CPUTIME: _bindgen_ty_18 = 139;
pub const _SC_DEVICE_IO: _bindgen_ty_18 = 140;
pub const _SC_DEVICE_SPECIFIC: _bindgen_ty_18 = 141;
pub const _SC_DEVICE_SPECIFIC_R: _bindgen_ty_18 = 142;
pub const _SC_FD_MGMT: _bindgen_ty_18 = 143;
pub const _SC_FIFO: _bindgen_ty_18 = 144;
pub const _SC_PIPE: _bindgen_ty_18 = 145;
pub const _SC_FILE_ATTRIBUTES: _bindgen_ty_18 = 146;
pub const _SC_FILE_LOCKING: _bindgen_ty_18 = 147;
pub const _SC_FILE_SYSTEM: _bindgen_ty_18 = 148;
pub const _SC_MONOTONIC_CLOCK: _bindgen_ty_18 = 149;
pub const _SC_MULTI_PROCESS: _bindgen_ty_18 = 150;
pub const _SC_SINGLE_PROCESS: _bindgen_ty_18 = 151;
pub const _SC_NETWORKING: _bindgen_ty_18 = 152;
pub const _SC_READER_WRITER_LOCKS: _bindgen_ty_18 = 153;
pub const _SC_SPIN_LOCKS: _bindgen_ty_18 = 154;
pub const _SC_REGEXP: _bindgen_ty_18 = 155;
pub const _SC_REGEX_VERSION: _bindgen_ty_18 = 156;
pub const _SC_SHELL: _bindgen_ty_18 = 157;
pub const _SC_SIGNALS: _bindgen_ty_18 = 158;
pub const _SC_SPAWN: _bindgen_ty_18 = 159;
pub const _SC_SPORADIC_SERVER: _bindgen_ty_18 = 160;
pub const _SC_THREAD_SPORADIC_SERVER: _bindgen_ty_18 = 161;
pub const _SC_SYSTEM_DATABASE: _bindgen_ty_18 = 162;
pub const _SC_SYSTEM_DATABASE_R: _bindgen_ty_18 = 163;
pub const _SC_TIMEOUTS: _bindgen_ty_18 = 164;
pub const _SC_TYPED_MEMORY_OBJECTS: _bindgen_ty_18 = 165;
pub const _SC_USER_GROUPS: _bindgen_ty_18 = 166;
pub const _SC_USER_GROUPS_R: _bindgen_ty_18 = 167;
pub const _SC_2_PBS: _bindgen_ty_18 = 168;
pub const _SC_2_PBS_ACCOUNTING: _bindgen_ty_18 = 169;
pub const _SC_2_PBS_LOCATE: _bindgen_ty_18 = 170;
pub const _SC_2_PBS_MESSAGE: _bindgen_ty_18 = 171;
pub const _SC_2_PBS_TRACK: _bindgen_ty_18 = 172;
pub const _SC_SYMLOOP_MAX: _bindgen_ty_18 = 173;
pub const _SC_STREAMS: _bindgen_ty_18 = 174;
pub const _SC_2_PBS_CHECKPOINT: _bindgen_ty_18 = 175;
pub const _SC_V6_ILP32_OFF32: _bindgen_ty_18 = 176;
pub const _SC_V6_ILP32_OFFBIG: _bindgen_ty_18 = 177;
pub const _SC_V6_LP64_OFF64: _bindgen_ty_18 = 178;
pub const _SC_V6_LPBIG_OFFBIG: _bindgen_ty_18 = 179;
pub const _SC_HOST_NAME_MAX: _bindgen_ty_18 = 180;
pub const _SC_TRACE: _bindgen_ty_18 = 181;
pub const _SC_TRACE_EVENT_FILTER: _bindgen_ty_18 = 182;
pub const _SC_TRACE_INHERIT: _bindgen_ty_18 = 183;
pub const _SC_TRACE_LOG: _bindgen_ty_18 = 184;
pub const _SC_LEVEL1_ICACHE_SIZE: _bindgen_ty_18 = 185;
pub const _SC_LEVEL1_ICACHE_ASSOC: _bindgen_ty_18 = 186;
pub const _SC_LEVEL1_ICACHE_LINESIZE: _bindgen_ty_18 = 187;
pub const _SC_LEVEL1_DCACHE_SIZE: _bindgen_ty_18 = 188;
pub const _SC_LEVEL1_DCACHE_ASSOC: _bindgen_ty_18 = 189;
pub const _SC_LEVEL1_DCACHE_LINESIZE: _bindgen_ty_18 = 190;
pub const _SC_LEVEL2_CACHE_SIZE: _bindgen_ty_18 = 191;
pub const _SC_LEVEL2_CACHE_ASSOC: _bindgen_ty_18 = 192;
pub const _SC_LEVEL2_CACHE_LINESIZE: _bindgen_ty_18 = 193;
pub const _SC_LEVEL3_CACHE_SIZE: _bindgen_ty_18 = 194;
pub const _SC_LEVEL3_CACHE_ASSOC: _bindgen_ty_18 = 195;
pub const _SC_LEVEL3_CACHE_LINESIZE: _bindgen_ty_18 = 196;
pub const _SC_LEVEL4_CACHE_SIZE: _bindgen_ty_18 = 197;
pub const _SC_LEVEL4_CACHE_ASSOC: _bindgen_ty_18 = 198;
pub const _SC_LEVEL4_CACHE_LINESIZE: _bindgen_ty_18 = 199;
pub const _SC_IPV6: _bindgen_ty_18 = 235;
pub const _SC_RAW_SOCKETS: _bindgen_ty_18 = 236;
pub const _SC_V7_ILP32_OFF32: _bindgen_ty_18 = 237;
pub const _SC_V7_ILP32_OFFBIG: _bindgen_ty_18 = 238;
pub const _SC_V7_LP64_OFF64: _bindgen_ty_18 = 239;
pub const _SC_V7_LPBIG_OFFBIG: _bindgen_ty_18 = 240;
pub const _SC_SS_REPL_MAX: _bindgen_ty_18 = 241;
pub const _SC_TRACE_EVENT_NAME_MAX: _bindgen_ty_18 = 242;
pub const _SC_TRACE_NAME_MAX: _bindgen_ty_18 = 243;
pub const _SC_TRACE_SYS_MAX: _bindgen_ty_18 = 244;
pub const _SC_TRACE_USER_EVENT_MAX: _bindgen_ty_18 = 245;
pub const _SC_XOPEN_STREAMS: _bindgen_ty_18 = 246;
pub const _SC_THREAD_ROBUST_PRIO_INHERIT: _bindgen_ty_18 = 247;
pub const _SC_THREAD_ROBUST_PRIO_PROTECT: _bindgen_ty_18 = 248;
pub const _SC_MINSIGSTKSZ: _bindgen_ty_18 = 249;
pub const _SC_SIGSTKSZ: _bindgen_ty_18 = 250;
pub type _bindgen_ty_18 = ::std::ffi::c_uint;
pub const _CS_PATH: _bindgen_ty_19 = 0;
pub const _CS_V6_WIDTH_RESTRICTED_ENVS: _bindgen_ty_19 = 1;
pub const _CS_GNU_LIBC_VERSION: _bindgen_ty_19 = 2;
pub const _CS_GNU_LIBPTHREAD_VERSION: _bindgen_ty_19 = 3;
pub const _CS_V5_WIDTH_RESTRICTED_ENVS: _bindgen_ty_19 = 4;
pub const _CS_V7_WIDTH_RESTRICTED_ENVS: _bindgen_ty_19 = 5;
pub const _CS_LFS_CFLAGS: _bindgen_ty_19 = 1000;
pub const _CS_LFS_LDFLAGS: _bindgen_ty_19 = 1001;
pub const _CS_LFS_LIBS: _bindgen_ty_19 = 1002;
pub const _CS_LFS_LINTFLAGS: _bindgen_ty_19 = 1003;
pub const _CS_LFS64_CFLAGS: _bindgen_ty_19 = 1004;
pub const _CS_LFS64_LDFLAGS: _bindgen_ty_19 = 1005;
pub const _CS_LFS64_LIBS: _bindgen_ty_19 = 1006;
pub const _CS_LFS64_LINTFLAGS: _bindgen_ty_19 = 1007;
pub const _CS_XBS5_ILP32_OFF32_CFLAGS: _bindgen_ty_19 = 1100;
pub const _CS_XBS5_ILP32_OFF32_LDFLAGS: _bindgen_ty_19 = 1101;
pub const _CS_XBS5_ILP32_OFF32_LIBS: _bindgen_ty_19 = 1102;
pub const _CS_XBS5_ILP32_OFF32_LINTFLAGS: _bindgen_ty_19 = 1103;
pub const _CS_XBS5_ILP32_OFFBIG_CFLAGS: _bindgen_ty_19 = 1104;
pub const _CS_XBS5_ILP32_OFFBIG_LDFLAGS: _bindgen_ty_19 = 1105;
pub const _CS_XBS5_ILP32_OFFBIG_LIBS: _bindgen_ty_19 = 1106;
pub const _CS_XBS5_ILP32_OFFBIG_LINTFLAGS: _bindgen_ty_19 = 1107;
pub const _CS_XBS5_LP64_OFF64_CFLAGS: _bindgen_ty_19 = 1108;
pub const _CS_XBS5_LP64_OFF64_LDFLAGS: _bindgen_ty_19 = 1109;
pub const _CS_XBS5_LP64_OFF64_LIBS: _bindgen_ty_19 = 1110;
pub const _CS_XBS5_LP64_OFF64_LINTFLAGS: _bindgen_ty_19 = 1111;
pub const _CS_XBS5_LPBIG_OFFBIG_CFLAGS: _bindgen_ty_19 = 1112;
pub const _CS_XBS5_LPBIG_OFFBIG_LDFLAGS: _bindgen_ty_19 = 1113;
pub const _CS_XBS5_LPBIG_OFFBIG_LIBS: _bindgen_ty_19 = 1114;
pub const _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS: _bindgen_ty_19 = 1115;
pub const _CS_POSIX_V6_ILP32_OFF32_CFLAGS: _bindgen_ty_19 = 1116;
pub const _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: _bindgen_ty_19 = 1117;
pub const _CS_POSIX_V6_ILP32_OFF32_LIBS: _bindgen_ty_19 = 1118;
pub const _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS: _bindgen_ty_19 = 1119;
pub const _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: _bindgen_ty_19 = 1120;
pub const _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: _bindgen_ty_19 = 1121;
pub const _CS_POSIX_V6_ILP32_OFFBIG_LIBS: _bindgen_ty_19 = 1122;
pub const _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS: _bindgen_ty_19 = 1123;
pub const _CS_POSIX_V6_LP64_OFF64_CFLAGS: _bindgen_ty_19 = 1124;
pub const _CS_POSIX_V6_LP64_OFF64_LDFLAGS: _bindgen_ty_19 = 1125;
pub const _CS_POSIX_V6_LP64_OFF64_LIBS: _bindgen_ty_19 = 1126;
pub const _CS_POSIX_V6_LP64_OFF64_LINTFLAGS: _bindgen_ty_19 = 1127;
pub const _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: _bindgen_ty_19 = 1128;
pub const _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: _bindgen_ty_19 = 1129;
pub const _CS_POSIX_V6_LPBIG_OFFBIG_LIBS: _bindgen_ty_19 = 1130;
pub const _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS: _bindgen_ty_19 = 1131;
pub const _CS_POSIX_V7_ILP32_OFF32_CFLAGS: _bindgen_ty_19 = 1132;
pub const _CS_POSIX_V7_ILP32_OFF32_LDFLAGS: _bindgen_ty_19 = 1133;
pub const _CS_POSIX_V7_ILP32_OFF32_LIBS: _bindgen_ty_19 = 1134;
pub const _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS: _bindgen_ty_19 = 1135;
pub const _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS: _bindgen_ty_19 = 1136;
pub const _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS: _bindgen_ty_19 = 1137;
pub const _CS_POSIX_V7_ILP32_OFFBIG_LIBS: _bindgen_ty_19 = 1138;
pub const _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS: _bindgen_ty_19 = 1139;
pub const _CS_POSIX_V7_LP64_OFF64_CFLAGS: _bindgen_ty_19 = 1140;
pub const _CS_POSIX_V7_LP64_OFF64_LDFLAGS: _bindgen_ty_19 = 1141;
pub const _CS_POSIX_V7_LP64_OFF64_LIBS: _bindgen_ty_19 = 1142;
pub const _CS_POSIX_V7_LP64_OFF64_LINTFLAGS: _bindgen_ty_19 = 1143;
pub const _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS: _bindgen_ty_19 = 1144;
pub const _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS: _bindgen_ty_19 = 1145;
pub const _CS_POSIX_V7_LPBIG_OFFBIG_LIBS: _bindgen_ty_19 = 1146;
pub const _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS: _bindgen_ty_19 = 1147;
pub const _CS_V6_ENV: _bindgen_ty_19 = 1148;
pub const _CS_V7_ENV: _bindgen_ty_19 = 1149;
pub type _bindgen_ty_19 = ::std::ffi::c_uint;
unsafe extern "C" {
pub fn pathconf(
__path: *const ::std::ffi::c_char,
__name: ::std::ffi::c_int,
) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn fpathconf(__fd: ::std::ffi::c_int, __name: ::std::ffi::c_int) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn sysconf(__name: ::std::ffi::c_int) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn confstr(
__name: ::std::ffi::c_int,
__buf: *mut ::std::ffi::c_char,
__len: usize,
) -> usize;
}
unsafe extern "C" {
pub fn getpid() -> __pid_t;
}
unsafe extern "C" {
pub fn getppid() -> __pid_t;
}
unsafe extern "C" {
pub fn getpgrp() -> __pid_t;
}
unsafe extern "C" {
pub fn __getpgid(__pid: __pid_t) -> __pid_t;
}
unsafe extern "C" {
pub fn getpgid(__pid: __pid_t) -> __pid_t;
}
unsafe extern "C" {
pub fn setpgid(__pid: __pid_t, __pgid: __pid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setpgrp() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setsid() -> __pid_t;
}
unsafe extern "C" {
pub fn getsid(__pid: __pid_t) -> __pid_t;
}
unsafe extern "C" {
pub fn getuid() -> __uid_t;
}
unsafe extern "C" {
pub fn geteuid() -> __uid_t;
}
unsafe extern "C" {
pub fn getgid() -> __gid_t;
}
unsafe extern "C" {
pub fn getegid() -> __gid_t;
}
unsafe extern "C" {
pub fn getgroups(__size: ::std::ffi::c_int, __list: *mut __gid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setuid(__uid: __uid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setreuid(__ruid: __uid_t, __euid: __uid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn seteuid(__uid: __uid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setgid(__gid: __gid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setregid(__rgid: __gid_t, __egid: __gid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setegid(__gid: __gid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn fork() -> __pid_t;
}
unsafe extern "C" {
pub fn vfork() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ttyname(__fd: ::std::ffi::c_int) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn ttyname_r(
__fd: ::std::ffi::c_int,
__buf: *mut ::std::ffi::c_char,
__buflen: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn isatty(__fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ttyslot() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn link(
__from: *const ::std::ffi::c_char,
__to: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn linkat(
__fromfd: ::std::ffi::c_int,
__from: *const ::std::ffi::c_char,
__tofd: ::std::ffi::c_int,
__to: *const ::std::ffi::c_char,
__flags: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn symlink(
__from: *const ::std::ffi::c_char,
__to: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn readlink(
__path: *const ::std::ffi::c_char,
__buf: *mut ::std::ffi::c_char,
__len: usize,
) -> isize;
}
unsafe extern "C" {
pub fn symlinkat(
__from: *const ::std::ffi::c_char,
__tofd: ::std::ffi::c_int,
__to: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn readlinkat(
__fd: ::std::ffi::c_int,
__path: *const ::std::ffi::c_char,
__buf: *mut ::std::ffi::c_char,
__len: usize,
) -> isize;
}
unsafe extern "C" {
pub fn unlink(__name: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn unlinkat(
__fd: ::std::ffi::c_int,
__name: *const ::std::ffi::c_char,
__flag: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn rmdir(__path: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn tcgetpgrp(__fd: ::std::ffi::c_int) -> __pid_t;
}
unsafe extern "C" {
pub fn tcsetpgrp(__fd: ::std::ffi::c_int, __pgrp_id: __pid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getlogin() -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn getlogin_r(__name: *mut ::std::ffi::c_char, __name_len: usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setlogin(__name: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut optarg: *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub static mut optind: ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut opterr: ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut optopt: ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getopt(
___argc: ::std::ffi::c_int,
___argv: *const *mut ::std::ffi::c_char,
__shortopts: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn gethostname(__name: *mut ::std::ffi::c_char, __len: usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sethostname(__name: *const ::std::ffi::c_char, __len: usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sethostid(__id: ::std::ffi::c_long) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getdomainname(__name: *mut ::std::ffi::c_char, __len: usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn setdomainname(__name: *const ::std::ffi::c_char, __len: usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn vhangup() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn revoke(__file: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn profil(
__sample_buffer: *mut ::std::ffi::c_ushort,
__size: usize,
__offset: usize,
__scale: ::std::ffi::c_uint,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn acct(__name: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getusershell() -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn endusershell();
}
unsafe extern "C" {
pub fn setusershell();
}
unsafe extern "C" {
pub fn daemon(__nochdir: ::std::ffi::c_int, __noclose: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn chroot(__path: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getpass(__prompt: *const ::std::ffi::c_char) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn fsync(__fd: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn gethostid() -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn sync();
}
unsafe extern "C" {
pub fn getpagesize() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn getdtablesize() -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn truncate(__file: *const ::std::ffi::c_char, __length: __off_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ftruncate(__fd: ::std::ffi::c_int, __length: __off_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn brk(__addr: *mut ::std::ffi::c_void) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn sbrk(__delta: isize) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn syscall(__sysno: ::std::ffi::c_long, ...) -> ::std::ffi::c_long;
}
unsafe extern "C" {
pub fn lockf(
__fd: ::std::ffi::c_int,
__cmd: ::std::ffi::c_int,
__len: __off_t,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn fdatasync(__fildes: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn crypt(
__key: *const ::std::ffi::c_char,
__salt: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn getentropy(__buffer: *mut ::std::ffi::c_void, __length: usize) -> ::std::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vre_limits {
pub match_: ::std::ffi::c_uint,
pub depth: ::std::ffi::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vre_limits"][::std::mem::size_of::<vre_limits>() - 8usize];
["Alignment of vre_limits"][::std::mem::align_of::<vre_limits>() - 4usize];
["Offset of field: vre_limits::match_"][::std::mem::offset_of!(vre_limits, match_) - 0usize];
["Offset of field: vre_limits::depth"][::std::mem::offset_of!(vre_limits, depth) - 4usize];
};
pub type vre_t = vre;
unsafe extern "C" {
pub static VRE_ERROR_NOMATCH: ::std::ffi::c_int;
}
unsafe extern "C" {
pub static VRE_CASELESS: ::std::ffi::c_uint;
}
unsafe extern "C" {
pub static VRE_NO_AUTO_CAPTURE: ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn VRE_compile(
arg1: *const ::std::ffi::c_char,
arg2: ::std::ffi::c_uint,
arg3: *mut ::std::ffi::c_int,
arg4: *mut ::std::ffi::c_int,
arg5: ::std::ffi::c_uint,
) -> *mut vre_t;
}
unsafe extern "C" {
pub fn VRE_export(arg1: *const vre_t, arg2: *mut usize) -> *mut vre_t;
}
unsafe extern "C" {
pub fn VRE_error(arg1: *mut vsb, err: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRE_match(
code: *const vre_t,
subject: *const ::std::ffi::c_char,
length: usize,
options: ::std::ffi::c_int,
lim: *const vre_limits,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRE_capture(
code: *const vre_t,
subject: *const ::std::ffi::c_char,
length: usize,
options: ::std::ffi::c_int,
groups: *mut txt,
count: usize,
lim: *const vre_limits,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRE_sub(
code: *const vre_t,
subject: *const ::std::ffi::c_char,
replacement: *const ::std::ffi::c_char,
vsb: *mut vsb,
lim: *const vre_limits,
all: ::std::ffi::c_int,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRE_free(arg1: *mut *mut vre_t);
}
unsafe extern "C" {
pub fn VRE_quote(arg1: *mut vsb, arg2: *const ::std::ffi::c_char);
}
pub const debug_bits_DBG_REQ_STATE: debug_bits = 0;
pub const debug_bits_DBG_WORKSPACE: debug_bits = 1;
pub const debug_bits_DBG_WAITINGLIST: debug_bits = 2;
pub const debug_bits_DBG_SYNCVSL: debug_bits = 3;
pub const debug_bits_DBG_HASHEDGE: debug_bits = 4;
pub const debug_bits_DBG_VCLREL: debug_bits = 5;
pub const debug_bits_DBG_LURKER: debug_bits = 6;
pub const debug_bits_DBG_ESI_CHOP: debug_bits = 7;
pub const debug_bits_DBG_FLUSH_HEAD: debug_bits = 8;
pub const debug_bits_DBG_VTC_MODE: debug_bits = 9;
pub const debug_bits_DBG_WITNESS: debug_bits = 10;
pub const debug_bits_DBG_VSM_KEEP: debug_bits = 11;
pub const debug_bits_DBG_SLOW_ACCEPTOR: debug_bits = 12;
pub const debug_bits_DBG_H2_NOCHECK: debug_bits = 13;
pub const debug_bits_DBG_VMOD_SO_KEEP: debug_bits = 14;
pub const debug_bits_DBG_PROCESSORS: debug_bits = 15;
pub const debug_bits_DBG_PROTOCOL: debug_bits = 16;
pub const debug_bits_DBG_VCL_KEEP: debug_bits = 17;
pub const debug_bits_DBG_LCK: debug_bits = 18;
pub const debug_bits_DBG_CLI_SHOW_SENSITIVE: debug_bits = 19;
pub const debug_bits_DBG_Reserved: debug_bits = 20;
pub type debug_bits = ::std::ffi::c_uint;
pub const experimental_bits_EXPERIMENT_DROP_POOLS: experimental_bits = 0;
pub const experimental_bits_EXPERIMENT_Reserved: experimental_bits = 1;
pub type experimental_bits = ::std::ffi::c_uint;
pub const feature_bits_FEATURE_HTTP2: feature_bits = 0;
pub const feature_bits_FEATURE_SHORT_PANIC: feature_bits = 1;
pub const feature_bits_FEATURE_NO_COREDUMP: feature_bits = 2;
pub const feature_bits_FEATURE_HTTPS_SCHEME: feature_bits = 3;
pub const feature_bits_FEATURE_HTTP_DATE_POSTEL: feature_bits = 4;
pub const feature_bits_FEATURE_ESI_IGNORE_HTTPS: feature_bits = 5;
pub const feature_bits_FEATURE_ESI_DISABLE_XML_CHECK: feature_bits = 6;
pub const feature_bits_FEATURE_ESI_IGNORE_OTHER_ELEMENTS: feature_bits = 7;
pub const feature_bits_FEATURE_ESI_REMOVE_BOM: feature_bits = 8;
pub const feature_bits_FEATURE_ESI_INCLUDE_ONERROR: feature_bits = 9;
pub const feature_bits_FEATURE_WAIT_SILO: feature_bits = 10;
pub const feature_bits_FEATURE_VALIDATE_HEADERS: feature_bits = 11;
pub const feature_bits_FEATURE_BUSY_STATS_RATE: feature_bits = 12;
pub const feature_bits_FEATURE_TRACE: feature_bits = 13;
pub const feature_bits_FEATURE_VCL_REQ_RESET: feature_bits = 14;
pub const feature_bits_FEATURE_Reserved: feature_bits = 15;
pub type feature_bits = ::std::ffi::c_uint;
pub const vcc_feature_bits_VCC_FEATURE_ERR_UNREF: vcc_feature_bits = 0;
pub const vcc_feature_bits_VCC_FEATURE_ALLOW_INLINE_C: vcc_feature_bits = 1;
pub const vcc_feature_bits_VCC_FEATURE_UNSAFE_PATH: vcc_feature_bits = 2;
pub const vcc_feature_bits_VCC_FEATURE_Reserved: vcc_feature_bits = 3;
pub type vcc_feature_bits = ::std::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct poolparam {
pub min_pool: ::std::ffi::c_uint,
pub max_pool: ::std::ffi::c_uint,
pub max_age: vtim_dur,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of poolparam"][::std::mem::size_of::<poolparam>() - 16usize];
["Alignment of poolparam"][::std::mem::align_of::<poolparam>() - 8usize];
["Offset of field: poolparam::min_pool"][::std::mem::offset_of!(poolparam, min_pool) - 0usize];
["Offset of field: poolparam::max_pool"][::std::mem::offset_of!(poolparam, max_pool) - 4usize];
["Offset of field: poolparam::max_age"][::std::mem::offset_of!(poolparam, max_age) - 8usize];
};
pub type vsl_mask_t = [u8; 32usize];
pub type debug_t = [u8; 3usize];
pub type experimental_t = [u8; 1usize];
pub type feature_t = [u8; 2usize];
pub type vcc_feature_t = [u8; 1usize];
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct params {
pub accept_filter: ::std::ffi::c_uint,
pub acceptor_sleep_decay: f64,
pub acceptor_sleep_incr: vtim_dur,
pub acceptor_sleep_max: vtim_dur,
pub auto_restart: ::std::ffi::c_uint,
pub ban_dups: ::std::ffi::c_uint,
pub ban_cutoff: ::std::ffi::c_uint,
pub ban_lurker_age: vtim_dur,
pub ban_lurker_batch: ::std::ffi::c_uint,
pub ban_lurker_sleep: vtim_dur,
pub ban_lurker_holdoff: vtim_dur,
pub first_byte_timeout: vtim_dur,
pub between_bytes_timeout: vtim_dur,
pub backend_idle_timeout: vtim_dur,
pub backend_local_error_holddown: vtim_dur,
pub backend_remote_error_holddown: vtim_dur,
pub backend_wait_timeout: vtim_dur,
pub backend_wait_limit: ::std::ffi::c_uint,
pub cli_limit: ::std::ffi::c_uint,
pub cli_timeout: vtim_dur,
pub startup_timeout: vtim_dur,
pub clock_skew: ::std::ffi::c_uint,
pub clock_step: vtim_dur,
pub connect_timeout: vtim_dur,
pub critbit_cooloff: vtim_dur,
pub default_grace: vtim_dur,
pub default_keep: vtim_dur,
pub default_ttl: vtim_dur,
pub uncacheable_ttl: vtim_dur,
pub http1_iovs: ::std::ffi::c_uint,
pub fetch_chunksize: isize,
pub fetch_maxchunksize: isize,
pub gzip_buffer: ::std::ffi::c_uint,
pub gzip_level: ::std::ffi::c_uint,
pub gzip_memlevel: ::std::ffi::c_uint,
pub http_gzip_support: ::std::ffi::c_uint,
pub http_max_hdr: ::std::ffi::c_uint,
pub http_range_support: ::std::ffi::c_uint,
pub http_req_hdr_len: ::std::ffi::c_uint,
pub http_req_size: ::std::ffi::c_uint,
pub http_req_overflow_status: ::std::ffi::c_uint,
pub http_resp_hdr_len: ::std::ffi::c_uint,
pub http_resp_size: ::std::ffi::c_uint,
pub idle_send_timeout: vtim_dur,
pub listen_depth: ::std::ffi::c_uint,
pub lru_interval: vtim_dur,
pub ban_any_variant: ::std::ffi::c_uint,
pub max_esi_depth: ::std::ffi::c_uint,
pub max_restarts: ::std::ffi::c_uint,
pub max_retries: ::std::ffi::c_uint,
pub nuke_limit: ::std::ffi::c_uint,
pub panic_buffer: ::std::ffi::c_uint,
pub pcre2_jit_compilation: ::std::ffi::c_uint,
pub ping_interval: ::std::ffi::c_uint,
pub pipe_sess_max: ::std::ffi::c_uint,
pub pipe_task_deadline: vtim_dur,
pub pipe_timeout: vtim_dur,
pub prefer_ipv6: ::std::ffi::c_uint,
pub rush_exponent: ::std::ffi::c_uint,
pub send_timeout: vtim_dur,
pub shortlived: vtim_dur,
pub sigsegv_handler: ::std::ffi::c_uint,
pub syslog_cli_traffic: ::std::ffi::c_uint,
pub tcp_fastopen: ::std::ffi::c_uint,
pub tcp_keepalive_intvl: vtim_dur,
pub tcp_keepalive_probes: ::std::ffi::c_uint,
pub tcp_keepalive_time: vtim_dur,
pub timeout_idle: vtim_dur,
pub timeout_linger: vtim_dur,
pub tls_handshake_timeout: vtim_dur,
pub tls_ja3: ::std::ffi::c_uint,
pub tls_cleanup_batch: ::std::ffi::c_uint,
pub tls_err_dup_servername: ::std::ffi::c_uint,
pub transit_buffer: isize,
pub vary_notice: ::std::ffi::c_uint,
pub vcl_cooldown: vtim_dur,
pub max_vcl_handling: ::std::ffi::c_uint,
pub max_vcl: ::std::ffi::c_uint,
pub vsm_free_cooldown: vtim_dur,
pub vsl_buffer: ::std::ffi::c_uint,
pub vsl_reclen: ::std::ffi::c_uint,
pub vsl_space: isize,
pub workspace_backend: ::std::ffi::c_uint,
pub workspace_client: ::std::ffi::c_uint,
pub workspace_session: ::std::ffi::c_uint,
pub workspace_thread: ::std::ffi::c_uint,
pub h2_rx_window_low_water: ::std::ffi::c_uint,
pub h2_rx_window_increment: ::std::ffi::c_uint,
pub h2_window_timeout: vtim_dur,
pub h2_header_table_size: ::std::ffi::c_uint,
pub h2_max_concurrent_streams: ::std::ffi::c_uint,
pub h2_initial_window_size: ::std::ffi::c_uint,
pub h2_max_frame_size: ::std::ffi::c_uint,
pub h2_max_header_list_size: ::std::ffi::c_uint,
pub h2_rapid_reset: vtim_dur,
pub h2_rapid_reset_limit: ::std::ffi::c_uint,
pub h2_rapid_reset_period: vtim_dur,
pub pool_req: poolparam,
pub pool_sess: poolparam,
pub pool_vbo: poolparam,
pub sslbuf_pool: poolparam,
pub ssl_buffer: ::std::ffi::c_uint,
pub wthread_pools: ::std::ffi::c_uint,
pub wthread_max: ::std::ffi::c_uint,
pub wthread_min: ::std::ffi::c_uint,
pub wthread_reserve: ::std::ffi::c_uint,
pub wthread_timeout: vtim_dur,
pub wthread_watchdog: vtim_dur,
pub wthread_destroy_delay: vtim_dur,
pub wthread_add_delay: vtim_dur,
pub wthread_fail_delay: vtim_dur,
pub wthread_stats_rate: ::std::ffi::c_uint,
pub wthread_queue_limit: ::std::ffi::c_uint,
pub wthread_stacksize: isize,
pub debug_bits: debug_t,
pub experimental_bits: experimental_t,
pub feature_bits: feature_t,
pub vcc_feature_bits: vcc_feature_t,
pub vsl_mask: vsl_mask_t,
pub vre_limits: vre_limits,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of params"][::std::mem::size_of::<params>() - 800usize];
["Alignment of params"][::std::mem::align_of::<params>() - 8usize];
["Offset of field: params::accept_filter"]
[::std::mem::offset_of!(params, accept_filter) - 0usize];
["Offset of field: params::acceptor_sleep_decay"]
[::std::mem::offset_of!(params, acceptor_sleep_decay) - 8usize];
["Offset of field: params::acceptor_sleep_incr"]
[::std::mem::offset_of!(params, acceptor_sleep_incr) - 16usize];
["Offset of field: params::acceptor_sleep_max"]
[::std::mem::offset_of!(params, acceptor_sleep_max) - 24usize];
["Offset of field: params::auto_restart"]
[::std::mem::offset_of!(params, auto_restart) - 32usize];
["Offset of field: params::ban_dups"][::std::mem::offset_of!(params, ban_dups) - 36usize];
["Offset of field: params::ban_cutoff"][::std::mem::offset_of!(params, ban_cutoff) - 40usize];
["Offset of field: params::ban_lurker_age"]
[::std::mem::offset_of!(params, ban_lurker_age) - 48usize];
["Offset of field: params::ban_lurker_batch"]
[::std::mem::offset_of!(params, ban_lurker_batch) - 56usize];
["Offset of field: params::ban_lurker_sleep"]
[::std::mem::offset_of!(params, ban_lurker_sleep) - 64usize];
["Offset of field: params::ban_lurker_holdoff"]
[::std::mem::offset_of!(params, ban_lurker_holdoff) - 72usize];
["Offset of field: params::first_byte_timeout"]
[::std::mem::offset_of!(params, first_byte_timeout) - 80usize];
["Offset of field: params::between_bytes_timeout"]
[::std::mem::offset_of!(params, between_bytes_timeout) - 88usize];
["Offset of field: params::backend_idle_timeout"]
[::std::mem::offset_of!(params, backend_idle_timeout) - 96usize];
["Offset of field: params::backend_local_error_holddown"]
[::std::mem::offset_of!(params, backend_local_error_holddown) - 104usize];
["Offset of field: params::backend_remote_error_holddown"]
[::std::mem::offset_of!(params, backend_remote_error_holddown) - 112usize];
["Offset of field: params::backend_wait_timeout"]
[::std::mem::offset_of!(params, backend_wait_timeout) - 120usize];
["Offset of field: params::backend_wait_limit"]
[::std::mem::offset_of!(params, backend_wait_limit) - 128usize];
["Offset of field: params::cli_limit"][::std::mem::offset_of!(params, cli_limit) - 132usize];
["Offset of field: params::cli_timeout"]
[::std::mem::offset_of!(params, cli_timeout) - 136usize];
["Offset of field: params::startup_timeout"]
[::std::mem::offset_of!(params, startup_timeout) - 144usize];
["Offset of field: params::clock_skew"][::std::mem::offset_of!(params, clock_skew) - 152usize];
["Offset of field: params::clock_step"][::std::mem::offset_of!(params, clock_step) - 160usize];
["Offset of field: params::connect_timeout"]
[::std::mem::offset_of!(params, connect_timeout) - 168usize];
["Offset of field: params::critbit_cooloff"]
[::std::mem::offset_of!(params, critbit_cooloff) - 176usize];
["Offset of field: params::default_grace"]
[::std::mem::offset_of!(params, default_grace) - 184usize];
["Offset of field: params::default_keep"]
[::std::mem::offset_of!(params, default_keep) - 192usize];
["Offset of field: params::default_ttl"]
[::std::mem::offset_of!(params, default_ttl) - 200usize];
["Offset of field: params::uncacheable_ttl"]
[::std::mem::offset_of!(params, uncacheable_ttl) - 208usize];
["Offset of field: params::http1_iovs"][::std::mem::offset_of!(params, http1_iovs) - 216usize];
["Offset of field: params::fetch_chunksize"]
[::std::mem::offset_of!(params, fetch_chunksize) - 224usize];
["Offset of field: params::fetch_maxchunksize"]
[::std::mem::offset_of!(params, fetch_maxchunksize) - 232usize];
["Offset of field: params::gzip_buffer"]
[::std::mem::offset_of!(params, gzip_buffer) - 240usize];
["Offset of field: params::gzip_level"][::std::mem::offset_of!(params, gzip_level) - 244usize];
["Offset of field: params::gzip_memlevel"]
[::std::mem::offset_of!(params, gzip_memlevel) - 248usize];
["Offset of field: params::http_gzip_support"]
[::std::mem::offset_of!(params, http_gzip_support) - 252usize];
["Offset of field: params::http_max_hdr"]
[::std::mem::offset_of!(params, http_max_hdr) - 256usize];
["Offset of field: params::http_range_support"]
[::std::mem::offset_of!(params, http_range_support) - 260usize];
["Offset of field: params::http_req_hdr_len"]
[::std::mem::offset_of!(params, http_req_hdr_len) - 264usize];
["Offset of field: params::http_req_size"]
[::std::mem::offset_of!(params, http_req_size) - 268usize];
["Offset of field: params::http_req_overflow_status"]
[::std::mem::offset_of!(params, http_req_overflow_status) - 272usize];
["Offset of field: params::http_resp_hdr_len"]
[::std::mem::offset_of!(params, http_resp_hdr_len) - 276usize];
["Offset of field: params::http_resp_size"]
[::std::mem::offset_of!(params, http_resp_size) - 280usize];
["Offset of field: params::idle_send_timeout"]
[::std::mem::offset_of!(params, idle_send_timeout) - 288usize];
["Offset of field: params::listen_depth"]
[::std::mem::offset_of!(params, listen_depth) - 296usize];
["Offset of field: params::lru_interval"]
[::std::mem::offset_of!(params, lru_interval) - 304usize];
["Offset of field: params::ban_any_variant"]
[::std::mem::offset_of!(params, ban_any_variant) - 312usize];
["Offset of field: params::max_esi_depth"]
[::std::mem::offset_of!(params, max_esi_depth) - 316usize];
["Offset of field: params::max_restarts"]
[::std::mem::offset_of!(params, max_restarts) - 320usize];
["Offset of field: params::max_retries"]
[::std::mem::offset_of!(params, max_retries) - 324usize];
["Offset of field: params::nuke_limit"][::std::mem::offset_of!(params, nuke_limit) - 328usize];
["Offset of field: params::panic_buffer"]
[::std::mem::offset_of!(params, panic_buffer) - 332usize];
["Offset of field: params::pcre2_jit_compilation"]
[::std::mem::offset_of!(params, pcre2_jit_compilation) - 336usize];
["Offset of field: params::ping_interval"]
[::std::mem::offset_of!(params, ping_interval) - 340usize];
["Offset of field: params::pipe_sess_max"]
[::std::mem::offset_of!(params, pipe_sess_max) - 344usize];
["Offset of field: params::pipe_task_deadline"]
[::std::mem::offset_of!(params, pipe_task_deadline) - 352usize];
["Offset of field: params::pipe_timeout"]
[::std::mem::offset_of!(params, pipe_timeout) - 360usize];
["Offset of field: params::prefer_ipv6"]
[::std::mem::offset_of!(params, prefer_ipv6) - 368usize];
["Offset of field: params::rush_exponent"]
[::std::mem::offset_of!(params, rush_exponent) - 372usize];
["Offset of field: params::send_timeout"]
[::std::mem::offset_of!(params, send_timeout) - 376usize];
["Offset of field: params::shortlived"][::std::mem::offset_of!(params, shortlived) - 384usize];
["Offset of field: params::sigsegv_handler"]
[::std::mem::offset_of!(params, sigsegv_handler) - 392usize];
["Offset of field: params::syslog_cli_traffic"]
[::std::mem::offset_of!(params, syslog_cli_traffic) - 396usize];
["Offset of field: params::tcp_fastopen"]
[::std::mem::offset_of!(params, tcp_fastopen) - 400usize];
["Offset of field: params::tcp_keepalive_intvl"]
[::std::mem::offset_of!(params, tcp_keepalive_intvl) - 408usize];
["Offset of field: params::tcp_keepalive_probes"]
[::std::mem::offset_of!(params, tcp_keepalive_probes) - 416usize];
["Offset of field: params::tcp_keepalive_time"]
[::std::mem::offset_of!(params, tcp_keepalive_time) - 424usize];
["Offset of field: params::timeout_idle"]
[::std::mem::offset_of!(params, timeout_idle) - 432usize];
["Offset of field: params::timeout_linger"]
[::std::mem::offset_of!(params, timeout_linger) - 440usize];
["Offset of field: params::tls_handshake_timeout"]
[::std::mem::offset_of!(params, tls_handshake_timeout) - 448usize];
["Offset of field: params::tls_ja3"][::std::mem::offset_of!(params, tls_ja3) - 456usize];
["Offset of field: params::tls_cleanup_batch"]
[::std::mem::offset_of!(params, tls_cleanup_batch) - 460usize];
["Offset of field: params::tls_err_dup_servername"]
[::std::mem::offset_of!(params, tls_err_dup_servername) - 464usize];
["Offset of field: params::transit_buffer"]
[::std::mem::offset_of!(params, transit_buffer) - 472usize];
["Offset of field: params::vary_notice"]
[::std::mem::offset_of!(params, vary_notice) - 480usize];
["Offset of field: params::vcl_cooldown"]
[::std::mem::offset_of!(params, vcl_cooldown) - 488usize];
["Offset of field: params::max_vcl_handling"]
[::std::mem::offset_of!(params, max_vcl_handling) - 496usize];
["Offset of field: params::max_vcl"][::std::mem::offset_of!(params, max_vcl) - 500usize];
["Offset of field: params::vsm_free_cooldown"]
[::std::mem::offset_of!(params, vsm_free_cooldown) - 504usize];
["Offset of field: params::vsl_buffer"][::std::mem::offset_of!(params, vsl_buffer) - 512usize];
["Offset of field: params::vsl_reclen"][::std::mem::offset_of!(params, vsl_reclen) - 516usize];
["Offset of field: params::vsl_space"][::std::mem::offset_of!(params, vsl_space) - 520usize];
["Offset of field: params::workspace_backend"]
[::std::mem::offset_of!(params, workspace_backend) - 528usize];
["Offset of field: params::workspace_client"]
[::std::mem::offset_of!(params, workspace_client) - 532usize];
["Offset of field: params::workspace_session"]
[::std::mem::offset_of!(params, workspace_session) - 536usize];
["Offset of field: params::workspace_thread"]
[::std::mem::offset_of!(params, workspace_thread) - 540usize];
["Offset of field: params::h2_rx_window_low_water"]
[::std::mem::offset_of!(params, h2_rx_window_low_water) - 544usize];
["Offset of field: params::h2_rx_window_increment"]
[::std::mem::offset_of!(params, h2_rx_window_increment) - 548usize];
["Offset of field: params::h2_window_timeout"]
[::std::mem::offset_of!(params, h2_window_timeout) - 552usize];
["Offset of field: params::h2_header_table_size"]
[::std::mem::offset_of!(params, h2_header_table_size) - 560usize];
["Offset of field: params::h2_max_concurrent_streams"]
[::std::mem::offset_of!(params, h2_max_concurrent_streams) - 564usize];
["Offset of field: params::h2_initial_window_size"]
[::std::mem::offset_of!(params, h2_initial_window_size) - 568usize];
["Offset of field: params::h2_max_frame_size"]
[::std::mem::offset_of!(params, h2_max_frame_size) - 572usize];
["Offset of field: params::h2_max_header_list_size"]
[::std::mem::offset_of!(params, h2_max_header_list_size) - 576usize];
["Offset of field: params::h2_rapid_reset"]
[::std::mem::offset_of!(params, h2_rapid_reset) - 584usize];
["Offset of field: params::h2_rapid_reset_limit"]
[::std::mem::offset_of!(params, h2_rapid_reset_limit) - 592usize];
["Offset of field: params::h2_rapid_reset_period"]
[::std::mem::offset_of!(params, h2_rapid_reset_period) - 600usize];
["Offset of field: params::pool_req"][::std::mem::offset_of!(params, pool_req) - 608usize];
["Offset of field: params::pool_sess"][::std::mem::offset_of!(params, pool_sess) - 624usize];
["Offset of field: params::pool_vbo"][::std::mem::offset_of!(params, pool_vbo) - 640usize];
["Offset of field: params::sslbuf_pool"]
[::std::mem::offset_of!(params, sslbuf_pool) - 656usize];
["Offset of field: params::ssl_buffer"][::std::mem::offset_of!(params, ssl_buffer) - 672usize];
["Offset of field: params::wthread_pools"]
[::std::mem::offset_of!(params, wthread_pools) - 676usize];
["Offset of field: params::wthread_max"]
[::std::mem::offset_of!(params, wthread_max) - 680usize];
["Offset of field: params::wthread_min"]
[::std::mem::offset_of!(params, wthread_min) - 684usize];
["Offset of field: params::wthread_reserve"]
[::std::mem::offset_of!(params, wthread_reserve) - 688usize];
["Offset of field: params::wthread_timeout"]
[::std::mem::offset_of!(params, wthread_timeout) - 696usize];
["Offset of field: params::wthread_watchdog"]
[::std::mem::offset_of!(params, wthread_watchdog) - 704usize];
["Offset of field: params::wthread_destroy_delay"]
[::std::mem::offset_of!(params, wthread_destroy_delay) - 712usize];
["Offset of field: params::wthread_add_delay"]
[::std::mem::offset_of!(params, wthread_add_delay) - 720usize];
["Offset of field: params::wthread_fail_delay"]
[::std::mem::offset_of!(params, wthread_fail_delay) - 728usize];
["Offset of field: params::wthread_stats_rate"]
[::std::mem::offset_of!(params, wthread_stats_rate) - 736usize];
["Offset of field: params::wthread_queue_limit"]
[::std::mem::offset_of!(params, wthread_queue_limit) - 740usize];
["Offset of field: params::wthread_stacksize"]
[::std::mem::offset_of!(params, wthread_stacksize) - 744usize];
["Offset of field: params::debug_bits"][::std::mem::offset_of!(params, debug_bits) - 752usize];
["Offset of field: params::experimental_bits"]
[::std::mem::offset_of!(params, experimental_bits) - 755usize];
["Offset of field: params::feature_bits"]
[::std::mem::offset_of!(params, feature_bits) - 756usize];
["Offset of field: params::vcc_feature_bits"]
[::std::mem::offset_of!(params, vcc_feature_bits) - 758usize];
["Offset of field: params::vsl_mask"][::std::mem::offset_of!(params, vsl_mask) - 759usize];
["Offset of field: params::vre_limits"][::std::mem::offset_of!(params, vre_limits) - 792usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cli_proto {
_unused: [u8; 0],
}
pub type req_state_f =
::std::option::Option<unsafe extern "C" fn(arg1: *mut worker, arg2: *mut req) -> req_fsm_nxt>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct req_step {
pub name: *const ::std::ffi::c_char,
pub func: req_state_f,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of req_step"][::std::mem::size_of::<req_step>() - 16usize];
["Alignment of req_step"][::std::mem::align_of::<req_step>() - 8usize];
["Offset of field: req_step::name"][::std::mem::offset_of!(req_step, name) - 0usize];
["Offset of field: req_step::func"][::std::mem::offset_of!(req_step, func) - 8usize];
};
impl Default for req_step {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static R_STP_TRANSPORT: [req_step; 1usize];
}
unsafe extern "C" {
pub static R_STP_RECV: [req_step; 1usize];
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vxid_pool {
pub next: u64,
pub count: u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vxid_pool"][::std::mem::size_of::<vxid_pool>() - 16usize];
["Alignment of vxid_pool"][::std::mem::align_of::<vxid_pool>() - 8usize];
["Offset of field: vxid_pool::next"][::std::mem::offset_of!(vxid_pool, next) - 0usize];
["Offset of field: vxid_pool::count"][::std::mem::offset_of!(vxid_pool, count) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct worker_priv {
pub magic: ::std::ffi::c_uint,
pub nobjhead: *mut objhead,
pub nobjcore: *mut objcore,
pub nhashpriv: *mut ::std::ffi::c_void,
pub vxid_pool: [vxid_pool; 1usize],
pub vcl: *mut vcl,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of worker_priv"][::std::mem::size_of::<worker_priv>() - 56usize];
["Alignment of worker_priv"][::std::mem::align_of::<worker_priv>() - 8usize];
["Offset of field: worker_priv::magic"][::std::mem::offset_of!(worker_priv, magic) - 0usize];
["Offset of field: worker_priv::nobjhead"]
[::std::mem::offset_of!(worker_priv, nobjhead) - 8usize];
["Offset of field: worker_priv::nobjcore"]
[::std::mem::offset_of!(worker_priv, nobjcore) - 16usize];
["Offset of field: worker_priv::nhashpriv"]
[::std::mem::offset_of!(worker_priv, nhashpriv) - 24usize];
["Offset of field: worker_priv::vxid_pool"]
[::std::mem::offset_of!(worker_priv, vxid_pool) - 32usize];
["Offset of field: worker_priv::vcl"][::std::mem::offset_of!(worker_priv, vcl) - 48usize];
};
impl Default for worker_priv {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vco {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct http_conn {
pub magic: ::std::ffi::c_uint,
pub rfd: *mut ::std::ffi::c_int,
pub doclose: stream_close_t,
pub body_status: body_status_t,
pub ws: *mut ws,
pub rxbuf_b: *mut ::std::ffi::c_char,
pub rxbuf_e: *mut ::std::ffi::c_char,
pub pipeline_b: *mut ::std::ffi::c_char,
pub pipeline_e: *mut ::std::ffi::c_char,
pub pipeline_snap: usize,
pub content_length: isize,
pub priv_: *mut ::std::ffi::c_void,
pub oper: *const vco,
pub oper_priv: *mut ::std::ffi::c_void,
pub first_byte_timeout: vtim_dur,
pub between_bytes_timeout: vtim_dur,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of http_conn"][::std::mem::size_of::<http_conn>() - 128usize];
["Alignment of http_conn"][::std::mem::align_of::<http_conn>() - 8usize];
["Offset of field: http_conn::magic"][::std::mem::offset_of!(http_conn, magic) - 0usize];
["Offset of field: http_conn::rfd"][::std::mem::offset_of!(http_conn, rfd) - 8usize];
["Offset of field: http_conn::doclose"][::std::mem::offset_of!(http_conn, doclose) - 16usize];
["Offset of field: http_conn::body_status"]
[::std::mem::offset_of!(http_conn, body_status) - 24usize];
["Offset of field: http_conn::ws"][::std::mem::offset_of!(http_conn, ws) - 32usize];
["Offset of field: http_conn::rxbuf_b"][::std::mem::offset_of!(http_conn, rxbuf_b) - 40usize];
["Offset of field: http_conn::rxbuf_e"][::std::mem::offset_of!(http_conn, rxbuf_e) - 48usize];
["Offset of field: http_conn::pipeline_b"]
[::std::mem::offset_of!(http_conn, pipeline_b) - 56usize];
["Offset of field: http_conn::pipeline_e"]
[::std::mem::offset_of!(http_conn, pipeline_e) - 64usize];
["Offset of field: http_conn::pipeline_snap"]
[::std::mem::offset_of!(http_conn, pipeline_snap) - 72usize];
["Offset of field: http_conn::content_length"]
[::std::mem::offset_of!(http_conn, content_length) - 80usize];
["Offset of field: http_conn::priv_"][::std::mem::offset_of!(http_conn, priv_) - 88usize];
["Offset of field: http_conn::oper"][::std::mem::offset_of!(http_conn, oper) - 96usize];
["Offset of field: http_conn::oper_priv"]
[::std::mem::offset_of!(http_conn, oper_priv) - 104usize];
["Offset of field: http_conn::first_byte_timeout"]
[::std::mem::offset_of!(http_conn, first_byte_timeout) - 112usize];
["Offset of field: http_conn::between_bytes_timeout"]
[::std::mem::offset_of!(http_conn, between_bytes_timeout) - 120usize];
};
impl Default for http_conn {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const htc_status_e_HTC_S_JUNK: htc_status_e = -5;
pub const htc_status_e_HTC_S_CLOSE: htc_status_e = -4;
pub const htc_status_e_HTC_S_TIMEOUT: htc_status_e = -3;
pub const htc_status_e_HTC_S_OVERFLOW: htc_status_e = -2;
pub const htc_status_e_HTC_S_EOF: htc_status_e = -1;
pub const htc_status_e_HTC_S_EMPTY: htc_status_e = 0;
pub const htc_status_e_HTC_S_MORE: htc_status_e = 1;
pub const htc_status_e_HTC_S_COMPLETE: htc_status_e = 2;
pub const htc_status_e_HTC_S_IDLE: htc_status_e = 3;
pub type htc_status_e = ::std::ffi::c_int;
pub type htc_complete_f =
::std::option::Option<unsafe extern "C" fn(arg1: *mut http_conn) -> htc_status_e>;
unsafe extern "C" {
pub static mut cache_param: *mut params;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcf_return {
pub name: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vcf_return"][::std::mem::size_of::<vcf_return>() - 8usize];
["Alignment of vcf_return"][::std::mem::align_of::<vcf_return>() - 8usize];
["Offset of field: vcf_return::name"][::std::mem::offset_of!(vcf_return, name) - 0usize];
};
impl Default for vcf_return {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static VCF_CONTINUE: [vcf_return; 1usize];
}
unsafe extern "C" {
pub static VCF_DEFAULT: [vcf_return; 1usize];
}
unsafe extern "C" {
pub static VCF_MISS: [vcf_return; 1usize];
}
unsafe extern "C" {
pub static VCF_HIT: [vcf_return; 1usize];
}
pub type vcf_func_f = ::std::option::Option<
unsafe extern "C" fn(
req: *mut req,
oc: *mut *mut objcore,
oc_exp: *mut *mut objcore,
state: ::std::ffi::c_int,
) -> *const vcf_return,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcf {
pub magic: ::std::ffi::c_uint,
pub func: vcf_func_f,
pub priv_: *mut ::std::ffi::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vcf"][::std::mem::size_of::<vcf>() - 24usize];
["Alignment of vcf"][::std::mem::align_of::<vcf>() - 8usize];
["Offset of field: vcf::magic"][::std::mem::offset_of!(vcf, magic) - 0usize];
["Offset of field: vcf::func"][::std::mem::offset_of!(vcf, func) - 8usize];
["Offset of field: vcf::priv_"][::std::mem::offset_of!(vcf, priv_) - 16usize];
};
impl Default for vcf {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VBE_InitCfg();
}
unsafe extern "C" {
pub fn BAN_Hold();
}
unsafe extern "C" {
pub fn BAN_Release();
}
unsafe extern "C" {
pub fn BAN_Reload(ban: *const u8, len: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn BAN_FindBan(t0: vtim_real) -> *mut ban;
}
unsafe extern "C" {
pub fn BAN_RefBan(oc: *mut objcore, arg1: *mut ban);
}
unsafe extern "C" {
pub fn BAN_Time(ban: *const ban) -> vtim_real;
}
unsafe extern "C" {
pub fn VBO_GetBusyObj(arg1: *const worker, arg2: *const req) -> *mut busyobj;
}
unsafe extern "C" {
pub fn VBO_ReleaseBusyObj(wrk: *mut worker, busyobj: *mut *mut busyobj);
}
unsafe extern "C" {
pub fn VBO_SetState(wrk: *mut worker, bo: *mut busyobj, next: BocState);
}
unsafe extern "C" {
pub fn VDI_GetHdr(arg1: *mut busyobj) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VDI_GetIP(arg1: *mut busyobj) -> VCL_IP;
}
unsafe extern "C" {
pub fn VDI_Finish(bo: *mut busyobj);
}
unsafe extern "C" {
pub fn VDI_Http1Pipe(arg1: *mut req, arg2: *mut busyobj) -> stream_close_t;
}
unsafe extern "C" {
pub fn VDI_Panic(arg1: *const director, arg2: *mut vsb, nm: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn VDI_Event(d: *const director, ev: VclEvent);
}
unsafe extern "C" {
pub fn VDI_Init();
}
unsafe extern "C" {
pub fn VDP_Fini(vdc: *const vdp_ctx);
}
unsafe extern "C" {
pub fn VDP_Init(
vdc: *mut vdp_ctx,
wrk: *mut worker,
vsl: *mut vsl_log,
req: *const req,
bo: *const busyobj,
cl: *mut intmax_t,
);
}
unsafe extern "C" {
pub fn VDP_Close(arg1: *mut vdp_ctx, arg2: *mut objcore, arg3: *mut boc) -> u64;
}
unsafe extern "C" {
pub fn VDP_Panic(vsb: *mut vsb, vdc: *const vdp_ctx);
}
unsafe extern "C" {
pub fn VDP_Push(
ctx: *const vrt_ctx,
arg1: *mut vdp_ctx,
arg2: *mut ws,
arg3: *const vdp,
priv_: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VDP_ObjIterate(
priv_: *mut ::std::ffi::c_void,
flush: ::std::ffi::c_uint,
ptr: *const ::std::ffi::c_void,
len: isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VDP_DeliverObj(vdc: *mut vdp_ctx, oc: *mut objcore) -> ::std::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vdp {
pub name: *const ::std::ffi::c_char,
pub init: vdp_init_f,
pub bytes: vdp_bytes_f,
pub fini: vdp_fini_f,
pub priv1: *const ::std::ffi::c_void,
pub io_init: vdpio_init_f,
pub io_upgrade: vdpio_init_f,
pub io_lease: vdpio_lease_f,
pub io_fini: vdpio_fini_f,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vdp"][::std::mem::size_of::<vdp>() - 72usize];
["Alignment of vdp"][::std::mem::align_of::<vdp>() - 8usize];
["Offset of field: vdp::name"][::std::mem::offset_of!(vdp, name) - 0usize];
["Offset of field: vdp::init"][::std::mem::offset_of!(vdp, init) - 8usize];
["Offset of field: vdp::bytes"][::std::mem::offset_of!(vdp, bytes) - 16usize];
["Offset of field: vdp::fini"][::std::mem::offset_of!(vdp, fini) - 24usize];
["Offset of field: vdp::priv1"][::std::mem::offset_of!(vdp, priv1) - 32usize];
["Offset of field: vdp::io_init"][::std::mem::offset_of!(vdp, io_init) - 40usize];
["Offset of field: vdp::io_upgrade"][::std::mem::offset_of!(vdp, io_upgrade) - 48usize];
["Offset of field: vdp::io_lease"][::std::mem::offset_of!(vdp, io_lease) - 56usize];
["Offset of field: vdp::io_fini"][::std::mem::offset_of!(vdp, io_fini) - 64usize];
};
impl Default for vdp {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static VDP_gunzip: vdp;
}
unsafe extern "C" {
pub static VDP_esi: vdp;
}
unsafe extern "C" {
pub static VDP_range: vdp;
}
unsafe extern "C" {
pub fn VDPIO_Close(arg1: *mut vdp_ctx, arg2: *mut objcore, arg3: *mut boc) -> u64;
}
unsafe extern "C" {
pub fn VDPIO_Upgrade(ctx: *const vrt_ctx, vdc: *mut vdp_ctx) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VDPIO_Push(
ctx: *const vrt_ctx,
arg1: *mut vdp_ctx,
arg2: *mut ws,
arg3: *const vdp,
priv_: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn EXP_Ttl(arg1: *const req, arg2: *const objcore) -> vtim_real;
}
unsafe extern "C" {
pub fn EXP_Ttl_grace(arg1: *const req, oc: *const objcore) -> vtim_real;
}
unsafe extern "C" {
pub fn EXP_RefNewObjcore(arg1: *mut objcore);
}
unsafe extern "C" {
pub fn EXP_Insert(wrk: *mut worker, oc: *mut objcore);
}
unsafe extern "C" {
pub fn EXP_Remove(arg1: *mut objcore, arg2: *const objcore);
}
unsafe extern "C" {
pub fn EXP_Rearm(
oc: *mut objcore,
now: vtim_real,
ttl: vtim_dur,
grace: vtim_dur,
keep: vtim_dur,
);
}
unsafe extern "C" {
pub fn EXP_Reduce(
oc: *mut objcore,
now: vtim_real,
ttl: vtim_dur,
grace: vtim_dur,
keep: vtim_dur,
);
}
unsafe extern "C" {
pub fn BAN_Init();
}
unsafe extern "C" {
pub fn BAN_Compile();
}
unsafe extern "C" {
pub fn BAN_Shutdown();
}
unsafe extern "C" {
pub fn BAN_NewObjCore(oc: *mut objcore);
}
unsafe extern "C" {
pub fn BAN_DestroyObj(oc: *mut objcore);
}
unsafe extern "C" {
pub fn BAN_CheckObject(
arg1: *mut worker,
arg2: *mut objcore,
arg3: *mut req,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VBO_Init();
}
unsafe extern "C" {
pub fn CLI_Init();
}
unsafe extern "C" {
pub fn CLI_Run();
}
unsafe extern "C" {
pub fn CLI_AddFuncs(p: *mut cli_proto);
}
unsafe extern "C" {
pub fn EXP_Init();
}
unsafe extern "C" {
pub fn EXP_Shutdown();
}
pub const vbf_fetch_mode_e_VBF_NORMAL: vbf_fetch_mode_e = 0;
pub const vbf_fetch_mode_e_VBF_PASS: vbf_fetch_mode_e = 1;
pub const vbf_fetch_mode_e_VBF_BACKGROUND: vbf_fetch_mode_e = 2;
pub type vbf_fetch_mode_e = ::std::ffi::c_uint;
unsafe extern "C" {
pub fn VBF_Fetch(
wrk: *mut worker,
req: *mut req,
oc: *mut objcore,
oldoc: *mut objcore,
arg1: vbf_fetch_mode_e,
);
}
unsafe extern "C" {
pub fn VBF_Get_Filter_List(arg1: *mut busyobj) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn Bereq_Rollback(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VFP_Init();
}
unsafe extern "C" {
pub fn VFP_Push(arg1: *mut vfp_ctx, arg2: *const vfp) -> *mut vfp_entry;
}
unsafe extern "C" {
pub fn VFP_GetStorage(arg1: *mut vfp_ctx, sz: *mut isize, ptr: *mut *mut u8) -> VfpStatus;
}
unsafe extern "C" {
pub fn VFP_Extend(arg1: *const vfp_ctx, sz: isize, arg2: VfpStatus);
}
unsafe extern "C" {
pub fn VFP_Setup(vc: *mut vfp_ctx, wrk: *mut worker);
}
unsafe extern "C" {
pub fn VFP_Open(ctx: *const vrt_ctx, arg1: *mut vfp_ctx) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VFP_Close(arg1: *mut vfp_ctx) -> u64;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vfp {
pub name: *const ::std::ffi::c_char,
pub init: vfp_init_f,
pub pull: vfp_pull_f,
pub fini: vfp_fini_f,
pub priv1: *const ::std::ffi::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vfp"][::std::mem::size_of::<vfp>() - 40usize];
["Alignment of vfp"][::std::mem::align_of::<vfp>() - 8usize];
["Offset of field: vfp::name"][::std::mem::offset_of!(vfp, name) - 0usize];
["Offset of field: vfp::init"][::std::mem::offset_of!(vfp, init) - 8usize];
["Offset of field: vfp::pull"][::std::mem::offset_of!(vfp, pull) - 16usize];
["Offset of field: vfp::fini"][::std::mem::offset_of!(vfp, fini) - 24usize];
["Offset of field: vfp::priv1"][::std::mem::offset_of!(vfp, priv1) - 32usize];
};
impl Default for vfp {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static VFP_gunzip: vfp;
}
unsafe extern "C" {
pub static VFP_gzip: vfp;
}
unsafe extern "C" {
pub static VFP_testgunzip: vfp;
}
unsafe extern "C" {
pub static VFP_esi: vfp;
}
unsafe extern "C" {
pub static VFP_esi_gzip: vfp;
}
unsafe extern "C" {
pub fn HTTP_Init();
}
unsafe extern "C" {
pub fn HTTP1_Complete(arg1: *mut http_conn) -> htc_status_e;
}
unsafe extern "C" {
pub fn HTTP1_DissectRequest(arg1: *mut http_conn, arg2: *mut http) -> u16;
}
unsafe extern "C" {
pub fn HTTP1_DissectResponse(arg1: *mut http_conn, resp: *mut http, req: *const http) -> u16;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct v1l {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn HTTP1_Write(
v1l: *mut v1l,
hp: *const http,
arg1: *const ::std::ffi::c_int,
) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn VXID_Get(arg1: *const worker, marker: u64) -> vxid_t;
}
unsafe extern "C" {
pub static mut panic_key: pthread_key_t;
}
unsafe extern "C" {
pub static mut witness_key: pthread_key_t;
}
unsafe extern "C" {
pub fn THR_SetName(name: *const ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn THR_GetName() -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn THR_SetBusyobj(arg1: *const busyobj);
}
unsafe extern "C" {
pub fn THR_GetBusyobj() -> *mut busyobj;
}
unsafe extern "C" {
pub fn THR_SetRequest(arg1: *const req);
}
unsafe extern "C" {
pub fn THR_GetRequest() -> *mut req;
}
unsafe extern "C" {
pub fn THR_SetWorker(arg1: *const worker);
}
unsafe extern "C" {
pub fn THR_GetWorker() -> *mut worker;
}
unsafe extern "C" {
pub fn THR_Init();
}
unsafe extern "C" {
pub fn LCK_Init();
}
unsafe extern "C" {
pub fn MPL_AssertSane(item: *const ::std::ffi::c_void);
}
unsafe extern "C" {
pub fn MPL_New(
name: *const ::std::ffi::c_char,
pp: *mut poolparam,
cur_size: *mut ::std::ffi::c_uint,
) -> *mut mempool;
}
unsafe extern "C" {
pub fn MPL_Destroy(mpp: *mut *mut mempool);
}
unsafe extern "C" {
pub fn MPL_Get(mpl: *mut mempool, size: *mut ::std::ffi::c_uint) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn MPL_Free(mpl: *mut mempool, item: *mut ::std::ffi::c_void);
}
unsafe extern "C" {
pub fn ObjInit();
}
unsafe extern "C" {
pub fn ObjNew(arg1: *const worker) -> *mut objcore;
}
unsafe extern "C" {
pub fn ObjDestroy(arg1: *const worker, arg2: *mut *mut objcore);
}
unsafe extern "C" {
pub fn ObjGetSpace(
arg1: *mut worker,
arg2: *mut objcore,
sz: *mut isize,
ptr: *mut *mut u8,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjExtend(arg1: *mut worker, arg2: *mut objcore, l: isize, final_: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn ObjWaitExtend(
arg1: *const worker,
arg2: *const objcore,
l: u64,
statep: *mut BocState,
) -> u64;
}
unsafe extern "C" {
pub fn ObjSetState(
arg1: *mut worker,
arg2: *mut objcore,
next: BocState,
broadcast: ::std::ffi::c_uint,
);
}
unsafe extern "C" {
pub fn ObjWaitState(arg1: *const objcore, want: BocState) -> BocState;
}
unsafe extern "C" {
pub fn ObjTouch(arg1: *mut worker, arg2: *mut objcore, now: vtim_real);
}
unsafe extern "C" {
pub fn ObjFreeObj(arg1: *mut worker, arg2: *mut objcore);
}
unsafe extern "C" {
pub fn ObjSlim(arg1: *mut worker, arg2: *mut objcore);
}
unsafe extern "C" {
pub fn ObjSetAttr(
arg1: *mut worker,
arg2: *mut objcore,
arg3: obj_attr,
len: isize,
arg4: *const ::std::ffi::c_void,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn ObjCopyAttr(
arg1: *mut worker,
arg2: *mut objcore,
arg3: *mut objcore,
attr: obj_attr,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjBocDone(arg1: *mut worker, arg2: *mut objcore, arg3: *mut *mut boc);
}
unsafe extern "C" {
pub fn ObjVAIGetExtend(
arg1: *mut worker,
arg2: *const objcore,
arg3: u64,
arg4: *mut BocState,
arg5: *mut vai_qe,
) -> u64;
}
unsafe extern "C" {
pub fn ObjVAICancel(arg1: *mut worker, arg2: *mut boc, arg3: *mut vai_qe);
}
unsafe extern "C" {
pub fn ObjSetDouble(
arg1: *mut worker,
arg2: *mut objcore,
arg3: obj_attr,
arg4: f64,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjSetU64(
arg1: *mut worker,
arg2: *mut objcore,
arg3: obj_attr,
arg4: u64,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjSetXID(arg1: *mut worker, arg2: *mut objcore, arg3: vxid_t) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn ObjSetFlag(arg1: *mut worker, arg2: *mut objcore, of: obj_flags, val: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn ObjSendEvent(arg1: *mut worker, oc: *mut objcore, event: ::std::ffi::c_uint);
}
pub type obj_event_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut worker,
priv_: *mut ::std::ffi::c_void,
arg2: *mut objcore,
arg3: ::std::ffi::c_uint,
),
>;
unsafe extern "C" {
pub fn ObjSubscribeEvents(
arg1: obj_event_f,
arg2: *mut ::std::ffi::c_void,
mask: ::std::ffi::c_uint,
) -> usize;
}
unsafe extern "C" {
pub fn ObjUnsubscribeEvents(arg1: *mut usize);
}
unsafe extern "C" {
pub fn PAN_Init();
}
unsafe extern "C" {
pub fn PAN__DumpStruct(
vsb: *mut vsb,
block: ::std::ffi::c_int,
track: ::std::ffi::c_int,
ptr: *const ::std::ffi::c_void,
smagic: *const ::std::ffi::c_char,
magic: ::std::ffi::c_uint,
fmt: *const ::std::ffi::c_char,
...
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Pool_Init();
}
unsafe extern "C" {
pub fn Pool_Task(pp: *mut pool, task: *mut pool_task, prio: TaskPriority) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Pool_Task_Arg(
arg1: *mut worker,
arg2: TaskPriority,
arg3: task_func_t,
arg: *const ::std::ffi::c_void,
arg_len: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Pool_Sumstat(w: *const worker);
}
unsafe extern "C" {
pub fn Pool_TrySumstat(wrk: *const worker) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Pool_PurgeStat(nobj: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn Pool_Task_Any(task: *mut pool_task, prio: TaskPriority) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pan_pool(arg1: *mut vsb);
}
unsafe extern "C" {
pub fn VRG_CheckBo(arg1: *mut busyobj) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Req_New(arg1: *mut sess, arg2: *const req) -> *mut req;
}
unsafe extern "C" {
pub fn Req_Release(arg1: *mut req);
}
unsafe extern "C" {
pub fn Req_Rollback(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn Req_Cleanup(sp: *mut sess, wrk: *mut worker, req: *mut req);
}
unsafe extern "C" {
pub fn Req_Fail(req: *mut req, reason: stream_close_t);
}
unsafe extern "C" {
pub fn Req_AcctLogCharge(arg1: *mut VSC_main_wrk, arg2: *mut req);
}
unsafe extern "C" {
pub fn Req_LogHit(arg1: *mut worker, arg2: *mut req, arg3: *mut objcore, arg4: intmax_t);
}
unsafe extern "C" {
pub fn Req_LogStart(arg1: *const worker, arg2: *mut req) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VRB_Ignore(arg1: *mut req) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRB_Cache(arg1: *mut req, maxsize: isize) -> isize;
}
unsafe extern "C" {
pub fn VRB_Free(arg1: *mut req);
}
unsafe extern "C" {
pub fn Resp_Setup_Deliver(arg1: *mut req) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn Resp_Setup_Synth(arg1: *mut req);
}
pub const req_fsm_nxt_REQ_FSM_MORE: req_fsm_nxt = 0;
pub const req_fsm_nxt_REQ_FSM_DONE: req_fsm_nxt = 1;
pub const req_fsm_nxt_REQ_FSM_DISEMBARK: req_fsm_nxt = 2;
pub type req_fsm_nxt = i32;
unsafe extern "C" {
pub fn CNT_Embark(arg1: *mut worker, arg2: *mut req);
}
unsafe extern "C" {
pub fn CNT_Request(arg1: *mut req) -> req_fsm_nxt;
}
unsafe extern "C" {
pub fn SES_NewPool(arg1: *mut pool, pool_no: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn SES_DestroyPool(arg1: *mut pool);
}
unsafe extern "C" {
pub fn SES_Wait(arg1: *mut sess, arg2: *const transport);
}
unsafe extern "C" {
pub fn SES_Ref(sp: *mut sess);
}
unsafe extern "C" {
pub fn SES_Rel(sp: *mut sess);
}
unsafe extern "C" {
pub fn HTC_Status(
arg1: htc_status_e,
arg2: *mut *const ::std::ffi::c_char,
arg3: *mut *const ::std::ffi::c_char,
);
}
unsafe extern "C" {
pub fn HTC_RxInit(htc: *mut http_conn, ws: *mut ws);
}
unsafe extern "C" {
pub fn HTC_RxPipeline(htc: *mut http_conn, arg1: *mut ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn HTC_RxStuff(
arg1: *mut http_conn,
arg2: htc_complete_f,
t1: *mut vtim_real,
t2: *mut vtim_real,
ti: vtim_real,
tn: vtim_real,
td: vtim_dur,
maxbytes: ::std::ffi::c_int,
) -> htc_status_e;
}
unsafe extern "C" {
pub fn HTC_Read(
htc: *mut http_conn,
buf: *mut ::std::ffi::c_void,
len: usize,
tmo: vtim_dur,
) -> isize;
}
unsafe extern "C" {
pub fn VIOV_prune(iov: *mut iovec, n: *mut ::std::ffi::c_uint, l: usize);
}
unsafe extern "C" {
pub fn SES_Set_transport(sp: *const sess, src: *const ::std::ffi::c_void) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_transport(
sp: *mut sess,
dst: *mut *mut ::std::ffi::c_void,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_remote_addr(sp: *const sess, src: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_remote_addr(
sp: *mut sess,
dst: *mut *mut suckaddr,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_local_addr(sp: *const sess, src: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_local_addr(
sp: *mut sess,
dst: *mut *mut suckaddr,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_client_addr(sp: *const sess, src: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_client_addr(
sp: *mut sess,
dst: *mut *mut suckaddr,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_server_addr(sp: *const sess, src: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_server_addr(
sp: *mut sess,
dst: *mut *mut suckaddr,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_client_ip(sp: *const sess, src: *const ::std::ffi::c_char) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_client_ip(
sp: *mut sess,
dst: *mut *mut ::std::ffi::c_char,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_client_port(
sp: *const sess,
src: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_client_port(
sp: *mut sess,
dst: *mut *mut ::std::ffi::c_char,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_proxy_tlv(sp: *const sess, src: *const usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_proxy_tlv(
sp: *mut sess,
dst: *mut *mut usize,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_proto_priv(sp: *const sess, src: *const usize) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Reserve_proto_priv(
sp: *mut sess,
dst: *mut *mut usize,
sz: *mut isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn SES_Set_String_Attr(
sp: *mut sess,
a: SessionAttr,
src: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub static mut VSC_C_main: *mut VSC_main;
}
unsafe extern "C" {
pub fn VSM_Init();
}
unsafe extern "C" {
pub fn VSL_Init(vsl: *mut vsl_log, ptr: *mut ::std::ffi::c_void, len: usize);
}
unsafe extern "C" {
pub fn VSL_Alloc(vsl: *mut vsl_log);
}
unsafe extern "C" {
pub fn VSL_Free(vsl: *mut vsl_log);
}
unsafe extern "C" {
pub fn VSL_ChgId(
vsl: *mut vsl_log,
typ: *const ::std::ffi::c_char,
why: *const ::std::ffi::c_char,
vxid: vxid_t,
);
}
unsafe extern "C" {
pub fn VSL_End(vsl: *mut vsl_log);
}
unsafe extern "C" {
pub fn VSL_Flush(arg1: *mut vsl_log, overflow: ::std::ffi::c_int);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct conn_pool {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn VCP_Init();
}
unsafe extern "C" {
pub fn VCP_Panic(arg1: *mut vsb, arg2: *mut conn_pool);
}
unsafe extern "C" {
pub fn VCP_RelPoll();
}
unsafe extern "C" {
pub fn VBP_Init();
}
unsafe extern "C" {
pub fn VRY_Create(bo: *mut busyobj, psb: *mut *mut vsb) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRY_Match(arg1: *const req, vary: *const u8) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VRY_Prep(arg1: *mut req);
}
unsafe extern "C" {
pub fn VRY_Clear(arg1: *mut req);
}
pub const vry_finish_flag_KEEP: vry_finish_flag = 0;
pub const vry_finish_flag_DISCARD: vry_finish_flag = 1;
pub type vry_finish_flag = ::std::ffi::c_uint;
unsafe extern "C" {
pub fn VRY_Finish(req: *mut req, arg1: vry_finish_flag);
}
unsafe extern "C" {
pub fn VCL_Bo2Ctx(arg1: *mut vrt_ctx, arg2: *mut busyobj);
}
unsafe extern "C" {
pub fn VCL_Req2Ctx(arg1: *mut vrt_ctx, arg2: *mut req);
}
unsafe extern "C" {
pub fn VCL_Get_CliCtx(arg1: ::std::ffi::c_int) -> *mut vrt_ctx;
}
unsafe extern "C" {
pub fn VCL_Rel_CliCtx(arg1: *mut *mut vrt_ctx) -> *mut vsb;
}
unsafe extern "C" {
pub fn VCL_Panic(arg1: *mut vsb, nm: *const ::std::ffi::c_char, arg2: *const vcl);
}
unsafe extern "C" {
pub fn VCL_Poll();
}
unsafe extern "C" {
pub fn VCL_Init();
}
unsafe extern "C" {
pub fn VCL_Shutdown();
}
unsafe extern "C" {
pub fn VCL_backend_error_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_backend_fetch_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_backend_refresh_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_backend_response_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_deliver_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_fini_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_hash_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_hit_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_init_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_miss_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_pass_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_pipe_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_purge_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_recv_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VCL_synth_method(
arg1: *mut vcl,
arg2: *mut worker,
arg3: *mut req,
bo: *mut busyobj,
specific: *mut ::std::ffi::c_void,
);
}
pub type vcl_be_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut cli,
arg2: *mut director,
arg3: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int,
>;
unsafe extern "C" {
pub fn VCL_IterDirector(
arg1: *mut cli,
arg2: *const ::std::ffi::c_char,
arg3: vcl_be_func,
arg4: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn pan_privs(arg1: *mut vsb, arg2: *const vrt_privs);
}
unsafe extern "C" {
pub fn VCL_StackVFP(
arg1: *mut vfp_ctx,
arg2: *const vcl,
arg3: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VCL_StackVDP(
vdc: *mut vdp_ctx,
vcl: *const vcl,
fl: *const ::std::ffi::c_char,
req: *mut req,
bo: *mut busyobj,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn resp_Get_Filter_List(req: *mut req) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VCL_VRT_Init();
}
unsafe extern "C" {
pub fn VCL_Return_Name(arg1: ::std::ffi::c_uint) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VCL_Method_Name(arg1: ::std::ffi::c_uint) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VCL_Refresh(arg1: *mut *mut vcl);
}
unsafe extern "C" {
pub fn VCL_Recache(arg1: *const worker, arg2: *mut *mut vcl);
}
unsafe extern "C" {
pub fn VCL_Ref(arg1: *mut vcl);
}
unsafe extern "C" {
pub fn VCL_Rel(arg1: *mut *mut vcl);
}
unsafe extern "C" {
pub fn VCL_DefaultDirector(arg1: *const vcl) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VCL_DefaultProbe(arg1: *const vcl) -> *const vrt_backend_probe;
}
unsafe extern "C" {
pub static mut cli_task_privs: [vrt_privs; 1usize];
}
unsafe extern "C" {
pub fn VCL_TaskEnter(arg1: *mut vrt_privs);
}
unsafe extern "C" {
pub fn VCL_TaskLeave(ctx: *const vrt_ctx, arg1: *mut vrt_privs);
}
unsafe extern "C" {
pub fn VMOD_Init();
}
unsafe extern "C" {
pub fn VMOD_Panic(arg1: *mut vsb);
}
unsafe extern "C" {
pub fn WRK_Init();
}
unsafe extern "C" {
pub fn WRK_AddStat(arg1: *const worker);
}
unsafe extern "C" {
pub fn WRK_Log(arg1: VslTag, arg2: *const ::std::ffi::c_char, ...);
}
unsafe extern "C" {
pub static vpi_wrk_len: usize;
}
unsafe extern "C" {
pub fn VPI_wrk_init(arg1: *mut worker, arg2: *mut ::std::ffi::c_void, arg3: usize);
}
unsafe extern "C" {
pub fn VPI_Panic(arg1: *mut vsb, arg2: *const wrk_vpi, arg3: *const vcl);
}
unsafe extern "C" {
pub fn WS_Panic(arg1: *mut vsb, arg2: *const ws);
}
unsafe extern "C" {
pub fn WS_AtOffset(
ws: *const ws,
off: ::std::ffi::c_uint,
len: ::std::ffi::c_uint,
) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn WS_ReservationOffset(ws: *const ws) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub static ws_pipeline_rollback: usize;
}
unsafe extern "C" {
pub fn WS_Pipeline(
arg1: *mut ws,
b: *const ::std::ffi::c_void,
e: *const ::std::ffi::c_void,
snap: usize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn WS_Id(ws: *const ws, id: *mut ::std::ffi::c_char);
}
unsafe extern "C" {
pub fn WS_Rollback(arg1: *mut ws, arg2: usize);
}
unsafe extern "C" {
pub fn V1P_Init();
}
unsafe extern "C" {
pub fn V2D_Init();
}
unsafe extern "C" {
pub fn STV_open();
}
unsafe extern "C" {
pub fn STV_warn();
}
unsafe extern "C" {
pub fn STV_close();
}
unsafe extern "C" {
pub fn STV_next() -> *const stevedore;
}
unsafe extern "C" {
pub fn STV_BanInfoDrop(ban: *const u8, len: ::std::ffi::c_uint) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn STV_BanInfoNew(ban: *const u8, len: ::std::ffi::c_uint) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn STV_BanExport(banlist: *const u8, len: ::std::ffi::c_uint);
}
unsafe extern "C" {
pub fn STV_NewObject(
arg1: *mut worker,
arg2: *mut objcore,
arg3: *const stevedore,
len: ::std::ffi::c_uint,
) -> ::std::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct stv_buffer {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn STV_AllocBuf(wrk: *mut worker, stv: *const stevedore, size: usize) -> *mut stv_buffer;
}
unsafe extern "C" {
pub fn STV_FreeBuf(wrk: *mut worker, pstvbuf: *mut *mut stv_buffer);
}
unsafe extern "C" {
pub fn STV_GetBufPtr(stvbuf: *mut stv_buffer, psize: *mut usize) -> *mut ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn VTLS_Poll();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vbp_target {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct connwait {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct backend {
pub magic: ::std::ffi::c_uint,
pub n_conn: ::std::ffi::c_uint,
pub endpoint: *mut vrt_endpoint,
pub vcl_name: *mut ::std::ffi::c_char,
pub hosthdr: *mut ::std::ffi::c_char,
pub authority: *mut ::std::ffi::c_char,
pub connect_timeout: vtim_dur,
pub first_byte_timeout: vtim_dur,
pub between_bytes_timeout: vtim_dur,
pub backend_wait_timeout: vtim_dur,
pub max_connections: ::std::ffi::c_uint,
pub proxy_header: ::std::ffi::c_uint,
pub backend_wait_limit: ::std::ffi::c_uint,
pub sick: ::std::ffi::c_uint,
pub changed: vtim_real,
pub probe: *mut vbp_target,
pub vsc_seg: *mut vsc_seg,
pub vsc: *mut VSC_vbe,
pub conn_pool: *mut conn_pool,
pub director: VCL_BACKEND,
pub cw_head: backend__bindgen_ty_1,
pub cw_count: ::std::ffi::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct backend__bindgen_ty_1 {
pub vtqh_first: *mut connwait,
pub vtqh_last: *mut *mut connwait,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of backend__bindgen_ty_1"][::std::mem::size_of::<backend__bindgen_ty_1>() - 16usize];
["Alignment of backend__bindgen_ty_1"]
[::std::mem::align_of::<backend__bindgen_ty_1>() - 8usize];
["Offset of field: backend__bindgen_ty_1::vtqh_first"]
[::std::mem::offset_of!(backend__bindgen_ty_1, vtqh_first) - 0usize];
["Offset of field: backend__bindgen_ty_1::vtqh_last"]
[::std::mem::offset_of!(backend__bindgen_ty_1, vtqh_last) - 8usize];
};
impl Default for backend__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of backend"][::std::mem::size_of::<backend>() - 160usize];
["Alignment of backend"][::std::mem::align_of::<backend>() - 8usize];
["Offset of field: backend::magic"][::std::mem::offset_of!(backend, magic) - 0usize];
["Offset of field: backend::n_conn"][::std::mem::offset_of!(backend, n_conn) - 4usize];
["Offset of field: backend::endpoint"][::std::mem::offset_of!(backend, endpoint) - 8usize];
["Offset of field: backend::vcl_name"][::std::mem::offset_of!(backend, vcl_name) - 16usize];
["Offset of field: backend::hosthdr"][::std::mem::offset_of!(backend, hosthdr) - 24usize];
["Offset of field: backend::authority"][::std::mem::offset_of!(backend, authority) - 32usize];
["Offset of field: backend::connect_timeout"]
[::std::mem::offset_of!(backend, connect_timeout) - 40usize];
["Offset of field: backend::first_byte_timeout"]
[::std::mem::offset_of!(backend, first_byte_timeout) - 48usize];
["Offset of field: backend::between_bytes_timeout"]
[::std::mem::offset_of!(backend, between_bytes_timeout) - 56usize];
["Offset of field: backend::backend_wait_timeout"]
[::std::mem::offset_of!(backend, backend_wait_timeout) - 64usize];
["Offset of field: backend::max_connections"]
[::std::mem::offset_of!(backend, max_connections) - 72usize];
["Offset of field: backend::proxy_header"]
[::std::mem::offset_of!(backend, proxy_header) - 76usize];
["Offset of field: backend::backend_wait_limit"]
[::std::mem::offset_of!(backend, backend_wait_limit) - 80usize];
["Offset of field: backend::sick"][::std::mem::offset_of!(backend, sick) - 84usize];
["Offset of field: backend::changed"][::std::mem::offset_of!(backend, changed) - 88usize];
["Offset of field: backend::probe"][::std::mem::offset_of!(backend, probe) - 96usize];
["Offset of field: backend::vsc_seg"][::std::mem::offset_of!(backend, vsc_seg) - 104usize];
["Offset of field: backend::vsc"][::std::mem::offset_of!(backend, vsc) - 112usize];
["Offset of field: backend::conn_pool"][::std::mem::offset_of!(backend, conn_pool) - 120usize];
["Offset of field: backend::director"][::std::mem::offset_of!(backend, director) - 128usize];
["Offset of field: backend::cw_head"][::std::mem::offset_of!(backend, cw_head) - 136usize];
["Offset of field: backend::cw_count"][::std::mem::offset_of!(backend, cw_count) - 152usize];
};
impl Default for backend {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VBP_Update_Backend(vt: *mut vbp_target);
}
unsafe extern "C" {
pub fn VBP_Insert(b: *mut backend, p: *const vrt_backend_probe, arg1: *mut conn_pool);
}
unsafe extern "C" {
pub fn VBP_Remove(b: *mut backend);
}
unsafe extern "C" {
pub fn VBP_Control(b: *const backend, stop: ::std::ffi::c_int);
}
unsafe extern "C" {
pub fn VBP_Status(
arg1: *mut vsb,
arg2: *const backend,
details: ::std::ffi::c_int,
json: ::std::ffi::c_int,
);
}
unsafe extern "C" {
pub fn VBE_Connect_Error(arg1: *mut VSC_vbe, err: ::std::ffi::c_int);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcldir {
pub magic: ::std::ffi::c_uint,
pub refcnt: ::std::ffi::c_int,
pub flags: ::std::ffi::c_uint,
pub dlck: lock,
pub dir: *mut director,
pub vcl: *mut vcl,
pub methods: *const vdi_methods,
pub directors_list: vcldir__bindgen_ty_1,
pub resigning_list: vcldir__bindgen_ty_2,
pub admin_health: *const vdi_ahealth,
pub health_changed: vtim_real,
pub cli_name: *mut ::std::ffi::c_char,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcldir__bindgen_ty_1 {
pub vtqe_next: *mut vcldir,
pub vtqe_prev: *mut *mut vcldir,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vcldir__bindgen_ty_1"][::std::mem::size_of::<vcldir__bindgen_ty_1>() - 16usize];
["Alignment of vcldir__bindgen_ty_1"][::std::mem::align_of::<vcldir__bindgen_ty_1>() - 8usize];
["Offset of field: vcldir__bindgen_ty_1::vtqe_next"]
[::std::mem::offset_of!(vcldir__bindgen_ty_1, vtqe_next) - 0usize];
["Offset of field: vcldir__bindgen_ty_1::vtqe_prev"]
[::std::mem::offset_of!(vcldir__bindgen_ty_1, vtqe_prev) - 8usize];
};
impl Default for vcldir__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vcldir__bindgen_ty_2 {
pub vtqe_next: *mut vcldir,
pub vtqe_prev: *mut *mut vcldir,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vcldir__bindgen_ty_2"][::std::mem::size_of::<vcldir__bindgen_ty_2>() - 16usize];
["Alignment of vcldir__bindgen_ty_2"][::std::mem::align_of::<vcldir__bindgen_ty_2>() - 8usize];
["Offset of field: vcldir__bindgen_ty_2::vtqe_next"]
[::std::mem::offset_of!(vcldir__bindgen_ty_2, vtqe_next) - 0usize];
["Offset of field: vcldir__bindgen_ty_2::vtqe_prev"]
[::std::mem::offset_of!(vcldir__bindgen_ty_2, vtqe_prev) - 8usize];
};
impl Default for vcldir__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vcldir"][::std::mem::size_of::<vcldir>() - 104usize];
["Alignment of vcldir"][::std::mem::align_of::<vcldir>() - 8usize];
["Offset of field: vcldir::magic"][::std::mem::offset_of!(vcldir, magic) - 0usize];
["Offset of field: vcldir::refcnt"][::std::mem::offset_of!(vcldir, refcnt) - 4usize];
["Offset of field: vcldir::flags"][::std::mem::offset_of!(vcldir, flags) - 8usize];
["Offset of field: vcldir::dlck"][::std::mem::offset_of!(vcldir, dlck) - 16usize];
["Offset of field: vcldir::dir"][::std::mem::offset_of!(vcldir, dir) - 24usize];
["Offset of field: vcldir::vcl"][::std::mem::offset_of!(vcldir, vcl) - 32usize];
["Offset of field: vcldir::methods"][::std::mem::offset_of!(vcldir, methods) - 40usize];
["Offset of field: vcldir::directors_list"]
[::std::mem::offset_of!(vcldir, directors_list) - 48usize];
["Offset of field: vcldir::resigning_list"]
[::std::mem::offset_of!(vcldir, resigning_list) - 64usize];
["Offset of field: vcldir::admin_health"]
[::std::mem::offset_of!(vcldir, admin_health) - 80usize];
["Offset of field: vcldir::health_changed"]
[::std::mem::offset_of!(vcldir, health_changed) - 88usize];
["Offset of field: vcldir::cli_name"][::std::mem::offset_of!(vcldir, cli_name) - 96usize];
};
impl Default for vcldir {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static VDI_AH_HEALTHY: *const vdi_ahealth;
}
unsafe extern "C" {
pub static VDI_AH_SICK: *const vdi_ahealth;
}
unsafe extern "C" {
pub static VDI_AH_AUTO: *const vdi_ahealth;
}
unsafe extern "C" {
pub static VDI_AH_DELETED: *const vdi_ahealth;
}
unsafe extern "C" {
pub fn VRT_r_client_identity(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_client_identity(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_client_ip(ctx: *const vrt_ctx) -> VCL_IP;
}
unsafe extern "C" {
pub fn VRT_r_server_hostname(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_server_identity(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_server_ip(ctx: *const vrt_ctx) -> VCL_IP;
}
unsafe extern "C" {
pub fn VRT_r_remote_ip(ctx: *const vrt_ctx) -> VCL_IP;
}
unsafe extern "C" {
pub fn VRT_r_local_endpoint(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_local_ip(ctx: *const vrt_ctx) -> VCL_IP;
}
unsafe extern "C" {
pub fn VRT_r_local_socket(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_req(ctx: *const vrt_ctx) -> VCL_HTTP;
}
unsafe extern "C" {
pub fn VRT_r_req_backend_hint(ctx: *const vrt_ctx) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_l_req_backend_hint(ctx: *const vrt_ctx, arg1: VCL_BACKEND);
}
unsafe extern "C" {
pub fn VRT_r_req_can_gzip(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_req_esi(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_req_esi(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_req_esi_level(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_req_filters(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_req_filters(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_req_grace(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_req_grace(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_req_grace(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_req_hash(ctx: *const vrt_ctx) -> VCL_BLOB;
}
unsafe extern "C" {
pub fn VRT_r_req_hash_always_miss(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_req_hash_always_miss(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_req_hash_ignore_busy(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_req_hash_ignore_busy(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_req_hash_ignore_vary(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_req_hash_ignore_vary(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_u_req_http(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_req_is_hitmiss(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_req_is_hitpass(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_req_method(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_req_method(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_req_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_req_proto(ctx: *const vrt_ctx, arg1: *const ::std::ffi::c_char, arg2: VCL_STRANDS);
}
unsafe extern "C" {
pub fn VRT_r_req_restarts(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_req_storage(ctx: *const vrt_ctx) -> VCL_STEVEDORE;
}
unsafe extern "C" {
pub fn VRT_l_req_storage(ctx: *const vrt_ctx, arg1: VCL_STEVEDORE);
}
unsafe extern "C" {
pub fn VRT_r_req_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_req_trace(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_req_trace(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_req_transport(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_req_max_age(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_req_max_age(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_req_max_age(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_req_ttl(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_req_ttl(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_req_ttl(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_req_url(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_req_url(ctx: *const vrt_ctx, arg1: *const ::std::ffi::c_char, arg2: VCL_STRANDS);
}
unsafe extern "C" {
pub fn VRT_r_req_xid(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_req_top_method(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_req_top_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_req_top_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_req_top_url(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_bereq(ctx: *const vrt_ctx) -> VCL_HTTP;
}
unsafe extern "C" {
pub fn VRT_r_bereq_backend(ctx: *const vrt_ctx) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_l_bereq_backend(ctx: *const vrt_ctx, arg1: VCL_BACKEND);
}
unsafe extern "C" {
pub fn VRT_r_bereq_between_bytes_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_bereq_between_bytes_timeout(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_bereq_between_bytes_timeout(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_u_bereq_body(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_bereq_connect_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_bereq_connect_timeout(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_bereq_connect_timeout(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_bereq_filters(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_bereq_filters(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_bereq_first_byte_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_bereq_first_byte_timeout(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_bereq_first_byte_timeout(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_bereq_hash(ctx: *const vrt_ctx) -> VCL_BLOB;
}
unsafe extern "C" {
pub fn VRT_u_bereq_http(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_bereq_is_bgfetch(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_bereq_is_hitmiss(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_bereq_is_hitpass(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_bereq_method(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_bereq_method(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_bereq_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_bereq_proto(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_bereq_retries(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_bereq_retry_connect(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_bereq_retry_connect(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_bereq_task_deadline(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_bereq_task_deadline(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_bereq_task_deadline(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_bereq_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_bereq_trace(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_bereq_trace(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_bereq_uncacheable(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_bereq_url(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_bereq_url(ctx: *const vrt_ctx, arg1: *const ::std::ffi::c_char, arg2: VCL_STRANDS);
}
unsafe extern "C" {
pub fn VRT_r_bereq_xid(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_beresp(ctx: *const vrt_ctx) -> VCL_HTTP;
}
unsafe extern "C" {
pub fn VRT_r_beresp_age(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_beresp_backend(ctx: *const vrt_ctx) -> VCL_BACKEND;
}
unsafe extern "C" {
pub fn VRT_r_beresp_backend_ip(ctx: *const vrt_ctx) -> VCL_IP;
}
unsafe extern "C" {
pub fn VRT_r_beresp_backend_name(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_beresp_body(
ctx: *const vrt_ctx,
arg1: Body,
arg2: *const ::std::ffi::c_char,
arg3: *const ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VRT_r_beresp_do_esi(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_beresp_do_esi(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_beresp_do_gunzip(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_beresp_do_gunzip(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_beresp_do_gzip(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_beresp_do_gzip(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_beresp_do_stream(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_beresp_do_stream(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_beresp_filters(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_beresp_filters(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_beresp_grace(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_beresp_grace(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_beresp_http(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_beresp_keep(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_beresp_keep(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_r_beresp_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_beresp_proto(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_beresp_reason(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_beresp_reason(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_beresp_status(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_l_beresp_status(ctx: *const vrt_ctx, arg1: VCL_INT);
}
unsafe extern "C" {
pub fn VRT_r_beresp_storage(ctx: *const vrt_ctx) -> VCL_STEVEDORE;
}
unsafe extern "C" {
pub fn VRT_l_beresp_storage(ctx: *const vrt_ctx, arg1: VCL_STEVEDORE);
}
unsafe extern "C" {
pub fn VRT_r_beresp_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_beresp_transit_buffer(ctx: *const vrt_ctx) -> VCL_BYTES;
}
unsafe extern "C" {
pub fn VRT_l_beresp_transit_buffer(ctx: *const vrt_ctx, arg1: VCL_BYTES);
}
unsafe extern "C" {
pub fn VRT_r_beresp_ttl(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_beresp_ttl(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_r_beresp_uncacheable(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_beresp_uncacheable(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_beresp_was_304(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_age(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_can_esi(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_grace(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_hits(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_keep(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_reason(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_status(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_storage(ctx: *const vrt_ctx) -> VCL_STEVEDORE;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_ttl(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_uncacheable(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_obj_stale_is_valid(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_obj_age(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_can_esi(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_obj_grace(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_hits(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_obj_keep(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_obj_reason(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_r_obj_status(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_obj_storage(ctx: *const vrt_ctx) -> VCL_STEVEDORE;
}
unsafe extern "C" {
pub fn VRT_r_obj_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_obj_ttl(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_obj_uncacheable(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_resp(ctx: *const vrt_ctx) -> VCL_HTTP;
}
unsafe extern "C" {
pub fn VRT_l_resp_body(
ctx: *const vrt_ctx,
arg1: Body,
arg2: *const ::std::ffi::c_char,
arg3: *const ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VRT_r_resp_do_esi(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_l_resp_do_esi(ctx: *const vrt_ctx, arg1: VCL_BOOL);
}
unsafe extern "C" {
pub fn VRT_r_resp_filters(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_resp_filters(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_u_resp_http(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_resp_is_streaming(ctx: *const vrt_ctx) -> VCL_BOOL;
}
unsafe extern "C" {
pub fn VRT_r_resp_proto(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_resp_proto(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_resp_reason(ctx: *const vrt_ctx) -> VCL_STRING;
}
unsafe extern "C" {
pub fn VRT_l_resp_reason(
ctx: *const vrt_ctx,
arg1: *const ::std::ffi::c_char,
arg2: VCL_STRANDS,
);
}
unsafe extern "C" {
pub fn VRT_r_resp_status(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_l_resp_status(ctx: *const vrt_ctx, arg1: VCL_INT);
}
unsafe extern "C" {
pub fn VRT_r_resp_time(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_now(ctx: *const vrt_ctx) -> VCL_TIME;
}
unsafe extern "C" {
pub fn VRT_r_sess_idle_send_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_sess_idle_send_timeout(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_sess_idle_send_timeout(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_sess_send_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_sess_send_timeout(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_sess_send_timeout(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_sess_timeout_idle(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_sess_timeout_idle(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_sess_timeout_idle(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_sess_timeout_linger(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_l_sess_timeout_linger(ctx: *const vrt_ctx, arg1: VCL_DURATION);
}
unsafe extern "C" {
pub fn VRT_u_sess_timeout_linger(ctx: *const vrt_ctx);
}
unsafe extern "C" {
pub fn VRT_r_sess_xid(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_param_backend_idle_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_backend_wait_limit(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_param_backend_wait_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_between_bytes_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_connect_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_default_grace(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_default_keep(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_default_ttl(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_first_byte_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_idle_send_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_max_esi_depth(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_param_max_restarts(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_param_max_retries(ctx: *const vrt_ctx) -> VCL_INT;
}
unsafe extern "C" {
pub fn VRT_r_param_pipe_task_deadline(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_pipe_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_send_timeout(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_shortlived(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_timeout_idle(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_r_param_transit_buffer(ctx: *const vrt_ctx) -> VCL_BYTES;
}
unsafe extern "C" {
pub fn VRT_r_param_uncacheable_ttl(ctx: *const vrt_ctx) -> VCL_DURATION;
}
unsafe extern "C" {
pub fn VRT_stevedore_free_space(arg1: VCL_STEVEDORE) -> VCL_BYTES;
}
unsafe extern "C" {
pub fn VRT_stevedore_used_space(arg1: VCL_STEVEDORE) -> VCL_BYTES;
}
unsafe extern "C" {
pub fn VRT_stevedore_happy(arg1: VCL_STEVEDORE) -> VCL_BOOL;
}
#[repr(i32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum VfpStatus {
Error = -1,
Ok = 0,
End = 1,
Null = 2,
}
pub type vfp_init_f = ::std::option::Option<
unsafe extern "C" fn(
ctx: *const vrt_ctx,
arg1: *mut vfp_ctx,
arg2: *mut vfp_entry,
) -> VfpStatus,
>;
pub type vfp_pull_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut vfp_ctx,
arg2: *mut vfp_entry,
ptr: *mut ::std::ffi::c_void,
len: *mut isize,
) -> VfpStatus,
>;
pub type vfp_fini_f =
::std::option::Option<unsafe extern "C" fn(arg1: *mut vfp_ctx, arg2: *mut vfp_entry)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vfp_entry {
pub magic: ::std::ffi::c_uint,
pub closed: VfpStatus,
pub vfp: *const vfp,
pub priv1: *mut ::std::ffi::c_void,
pub priv2: isize,
pub list: vfp_entry__bindgen_ty_1,
pub calls: u64,
pub bytes_out: u64,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vfp_entry__bindgen_ty_1 {
pub vtqe_next: *mut vfp_entry,
pub vtqe_prev: *mut *mut vfp_entry,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vfp_entry__bindgen_ty_1"][::std::mem::size_of::<vfp_entry__bindgen_ty_1>() - 16usize];
["Alignment of vfp_entry__bindgen_ty_1"]
[::std::mem::align_of::<vfp_entry__bindgen_ty_1>() - 8usize];
["Offset of field: vfp_entry__bindgen_ty_1::vtqe_next"]
[::std::mem::offset_of!(vfp_entry__bindgen_ty_1, vtqe_next) - 0usize];
["Offset of field: vfp_entry__bindgen_ty_1::vtqe_prev"]
[::std::mem::offset_of!(vfp_entry__bindgen_ty_1, vtqe_prev) - 8usize];
};
impl Default for vfp_entry__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vfp_entry"][::std::mem::size_of::<vfp_entry>() - 64usize];
["Alignment of vfp_entry"][::std::mem::align_of::<vfp_entry>() - 8usize];
["Offset of field: vfp_entry::magic"][::std::mem::offset_of!(vfp_entry, magic) - 0usize];
["Offset of field: vfp_entry::closed"][::std::mem::offset_of!(vfp_entry, closed) - 4usize];
["Offset of field: vfp_entry::vfp"][::std::mem::offset_of!(vfp_entry, vfp) - 8usize];
["Offset of field: vfp_entry::priv1"][::std::mem::offset_of!(vfp_entry, priv1) - 16usize];
["Offset of field: vfp_entry::priv2"][::std::mem::offset_of!(vfp_entry, priv2) - 24usize];
["Offset of field: vfp_entry::list"][::std::mem::offset_of!(vfp_entry, list) - 32usize];
["Offset of field: vfp_entry::calls"][::std::mem::offset_of!(vfp_entry, calls) - 48usize];
["Offset of field: vfp_entry::bytes_out"]
[::std::mem::offset_of!(vfp_entry, bytes_out) - 56usize];
};
impl Default for vfp_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vfp_entry_s {
pub vtqh_first: *mut vfp_entry,
pub vtqh_last: *mut *mut vfp_entry,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vfp_entry_s"][::std::mem::size_of::<vfp_entry_s>() - 16usize];
["Alignment of vfp_entry_s"][::std::mem::align_of::<vfp_entry_s>() - 8usize];
["Offset of field: vfp_entry_s::vtqh_first"]
[::std::mem::offset_of!(vfp_entry_s, vtqh_first) - 0usize];
["Offset of field: vfp_entry_s::vtqh_last"]
[::std::mem::offset_of!(vfp_entry_s, vtqh_last) - 8usize];
};
impl Default for vfp_entry_s {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vfp_ctx {
pub magic: ::std::ffi::c_uint,
pub failed: ::std::ffi::c_int,
pub req: *mut http,
pub resp: *mut http,
pub wrk: *mut worker,
pub oc: *mut objcore,
pub vfp: vfp_entry_s,
pub vfp_nxt: *mut vfp_entry,
pub obj_flags: ::std::ffi::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vfp_ctx"][::std::mem::size_of::<vfp_ctx>() - 72usize];
["Alignment of vfp_ctx"][::std::mem::align_of::<vfp_ctx>() - 8usize];
["Offset of field: vfp_ctx::magic"][::std::mem::offset_of!(vfp_ctx, magic) - 0usize];
["Offset of field: vfp_ctx::failed"][::std::mem::offset_of!(vfp_ctx, failed) - 4usize];
["Offset of field: vfp_ctx::req"][::std::mem::offset_of!(vfp_ctx, req) - 8usize];
["Offset of field: vfp_ctx::resp"][::std::mem::offset_of!(vfp_ctx, resp) - 16usize];
["Offset of field: vfp_ctx::wrk"][::std::mem::offset_of!(vfp_ctx, wrk) - 24usize];
["Offset of field: vfp_ctx::oc"][::std::mem::offset_of!(vfp_ctx, oc) - 32usize];
["Offset of field: vfp_ctx::vfp"][::std::mem::offset_of!(vfp_ctx, vfp) - 40usize];
["Offset of field: vfp_ctx::vfp_nxt"][::std::mem::offset_of!(vfp_ctx, vfp_nxt) - 56usize];
["Offset of field: vfp_ctx::obj_flags"][::std::mem::offset_of!(vfp_ctx, obj_flags) - 64usize];
};
impl Default for vfp_ctx {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VFP_Suck(arg1: *mut vfp_ctx, p: *mut ::std::ffi::c_void, lp: *mut isize) -> VfpStatus;
}
unsafe extern "C" {
pub fn VFP_Error(arg1: *mut vfp_ctx, fmt: *const ::std::ffi::c_char, ...) -> VfpStatus;
}
#[repr(u32)]
#[non_exhaustive]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub enum VdpAction {
Null = 0,
Flush = 1,
End = 2,
}
pub type vdp_init_f = ::std::option::Option<
unsafe extern "C" fn(
ctx: *const vrt_ctx,
arg1: *mut vdp_ctx,
priv_: *mut *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int,
>;
pub type vdp_fini_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut vdp_ctx,
priv_: *mut *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int,
>;
pub type vdp_bytes_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut vdp_ctx,
arg2: VdpAction,
priv_: *mut *mut ::std::ffi::c_void,
ptr: *const ::std::ffi::c_void,
len: isize,
) -> ::std::ffi::c_int,
>;
pub type vdpio_init_f = ::std::option::Option<
unsafe extern "C" fn(
ctx: *const vrt_ctx,
arg1: *mut vdp_ctx,
priv_: *mut *mut ::std::ffi::c_void,
capacity: ::std::ffi::c_int,
) -> ::std::ffi::c_int,
>;
pub type vdpio_lease_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut vdp_ctx,
arg2: *mut vdp_entry,
scarab: *mut vscarab,
) -> ::std::ffi::c_int,
>;
pub type vdpio_fini_f = ::std::option::Option<
unsafe extern "C" fn(arg1: *mut vdp_ctx, priv_: *mut *mut ::std::ffi::c_void),
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vdp_entry {
pub magic: ::std::ffi::c_uint,
pub end: VdpAction,
pub vdp: *const vdp,
pub priv_: *mut ::std::ffi::c_void,
pub list: vdp_entry__bindgen_ty_1,
pub calls: u64,
pub bytes_in: u64,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vdp_entry__bindgen_ty_1 {
pub vtqe_next: *mut vdp_entry,
pub vtqe_prev: *mut *mut vdp_entry,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vdp_entry__bindgen_ty_1"][::std::mem::size_of::<vdp_entry__bindgen_ty_1>() - 16usize];
["Alignment of vdp_entry__bindgen_ty_1"]
[::std::mem::align_of::<vdp_entry__bindgen_ty_1>() - 8usize];
["Offset of field: vdp_entry__bindgen_ty_1::vtqe_next"]
[::std::mem::offset_of!(vdp_entry__bindgen_ty_1, vtqe_next) - 0usize];
["Offset of field: vdp_entry__bindgen_ty_1::vtqe_prev"]
[::std::mem::offset_of!(vdp_entry__bindgen_ty_1, vtqe_prev) - 8usize];
};
impl Default for vdp_entry__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vdp_entry"][::std::mem::size_of::<vdp_entry>() - 56usize];
["Alignment of vdp_entry"][::std::mem::align_of::<vdp_entry>() - 8usize];
["Offset of field: vdp_entry::magic"][::std::mem::offset_of!(vdp_entry, magic) - 0usize];
["Offset of field: vdp_entry::end"][::std::mem::offset_of!(vdp_entry, end) - 4usize];
["Offset of field: vdp_entry::vdp"][::std::mem::offset_of!(vdp_entry, vdp) - 8usize];
["Offset of field: vdp_entry::priv_"][::std::mem::offset_of!(vdp_entry, priv_) - 16usize];
["Offset of field: vdp_entry::list"][::std::mem::offset_of!(vdp_entry, list) - 24usize];
["Offset of field: vdp_entry::calls"][::std::mem::offset_of!(vdp_entry, calls) - 40usize];
["Offset of field: vdp_entry::bytes_in"][::std::mem::offset_of!(vdp_entry, bytes_in) - 48usize];
};
impl Default for vdp_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vdp_entry_s {
pub vtqh_first: *mut vdp_entry,
pub vtqh_last: *mut *mut vdp_entry,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vdp_entry_s"][::std::mem::size_of::<vdp_entry_s>() - 16usize];
["Alignment of vdp_entry_s"][::std::mem::align_of::<vdp_entry_s>() - 8usize];
["Offset of field: vdp_entry_s::vtqh_first"]
[::std::mem::offset_of!(vdp_entry_s, vtqh_first) - 0usize];
["Offset of field: vdp_entry_s::vtqh_last"]
[::std::mem::offset_of!(vdp_entry_s, vtqh_last) - 8usize];
};
impl Default for vdp_entry_s {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vdp_ctx {
pub magic: ::std::ffi::c_uint,
pub retval: ::std::ffi::c_int,
pub bytes_done: u64,
pub vdp: vdp_entry_s,
pub nxt: *mut vdp_entry,
pub wrk: *mut worker,
pub vsl: *mut vsl_log,
pub oc: *mut objcore,
pub hp: *mut http,
pub clen: *mut intmax_t,
pub vai_hdl: vai_hdl,
pub scaret: *mut vscaret,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vdp_ctx"][::std::mem::size_of::<vdp_ctx>() - 96usize];
["Alignment of vdp_ctx"][::std::mem::align_of::<vdp_ctx>() - 8usize];
["Offset of field: vdp_ctx::magic"][::std::mem::offset_of!(vdp_ctx, magic) - 0usize];
["Offset of field: vdp_ctx::retval"][::std::mem::offset_of!(vdp_ctx, retval) - 4usize];
["Offset of field: vdp_ctx::bytes_done"][::std::mem::offset_of!(vdp_ctx, bytes_done) - 8usize];
["Offset of field: vdp_ctx::vdp"][::std::mem::offset_of!(vdp_ctx, vdp) - 16usize];
["Offset of field: vdp_ctx::nxt"][::std::mem::offset_of!(vdp_ctx, nxt) - 32usize];
["Offset of field: vdp_ctx::wrk"][::std::mem::offset_of!(vdp_ctx, wrk) - 40usize];
["Offset of field: vdp_ctx::vsl"][::std::mem::offset_of!(vdp_ctx, vsl) - 48usize];
["Offset of field: vdp_ctx::oc"][::std::mem::offset_of!(vdp_ctx, oc) - 56usize];
["Offset of field: vdp_ctx::hp"][::std::mem::offset_of!(vdp_ctx, hp) - 64usize];
["Offset of field: vdp_ctx::clen"][::std::mem::offset_of!(vdp_ctx, clen) - 72usize];
["Offset of field: vdp_ctx::vai_hdl"][::std::mem::offset_of!(vdp_ctx, vai_hdl) - 80usize];
["Offset of field: vdp_ctx::scaret"][::std::mem::offset_of!(vdp_ctx, scaret) - 88usize];
};
impl Default for vdp_ctx {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VDP_bytes(
arg1: *mut vdp_ctx,
act: VdpAction,
arg2: *const ::std::ffi::c_void,
arg3: isize,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VDPIO_Close1(arg1: *mut vdp_ctx, vdpe: *mut vdp_entry) -> u64;
}
unsafe extern "C" {
pub fn VDPIO_Init(
vdc: *mut vdp_ctx,
oc: *mut objcore,
ws: *mut ws,
notify_cb: vai_notify_cb,
notify_priv: *mut ::std::ffi::c_void,
scaret: *mut vscaret,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VDPIO_Return(vdc: *const vdp_ctx);
}
unsafe extern "C" {
pub fn VDPIO_Notify(arg1: *mut worker, vdc: *const vdp_ctx);
}
unsafe extern "C" {
pub fn VDPIO_Fini(vdc: *mut vdp_ctx);
}
unsafe extern "C" {
pub fn VRT_AddFilter(
ctx: *const vrt_ctx,
arg1: *const vfp,
arg2: *const vdp,
) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VRT_RemoveFilter(ctx: *const vrt_ctx, arg1: *const vfp, arg2: *const vdp);
}
unsafe extern "C" {
pub static vsa_suckaddr_len: usize;
}
unsafe extern "C" {
pub static mut bogo_ip: *const suckaddr;
}
unsafe extern "C" {
pub static mut bogo_ip6: *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_Init();
}
unsafe extern "C" {
pub fn VSA_Sane(arg1: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSA_Port(arg1: *const suckaddr) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn VSA_Compare(arg1: *const suckaddr, arg2: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSA_Compare_IP(arg1: *const suckaddr, arg2: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSA_Clone(sua: *const suckaddr) -> *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_getsockname(
arg1: ::std::ffi::c_int,
arg2: *mut ::std::ffi::c_void,
arg3: usize,
) -> *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_getpeername(
arg1: ::std::ffi::c_int,
arg2: *mut ::std::ffi::c_void,
arg3: usize,
) -> *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_free(arg1: *mut *const suckaddr);
}
unsafe extern "C" {
pub fn VSA_Get_Sockaddr(arg1: *const suckaddr, sl: *mut socklen_t)
-> *const ::std::ffi::c_void;
}
unsafe extern "C" {
pub fn VSA_Get_Proto(arg1: *const suckaddr) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSA_Malloc(s: *const ::std::ffi::c_void, sal: ::std::ffi::c_uint) -> *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_Build(
d: *mut ::std::ffi::c_void,
s: *const ::std::ffi::c_void,
sal: ::std::ffi::c_uint,
) -> *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_BuildFAP(
d: *mut ::std::ffi::c_void,
fam: sa_family_t,
a: *const ::std::ffi::c_void,
al: ::std::ffi::c_uint,
p: *const ::std::ffi::c_void,
pl: ::std::ffi::c_uint,
) -> *const suckaddr;
}
unsafe extern "C" {
pub fn VSA_GetPtr(
sua: *const suckaddr,
dst: *mut *const ::std::ffi::c_uchar,
) -> ::std::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsm {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsm_fantom {
pub priv_: usize,
pub priv2: usize,
pub b: *mut ::std::ffi::c_void,
pub e: *mut ::std::ffi::c_void,
pub category: *mut ::std::ffi::c_char,
pub ident: *mut ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vsm_fantom"][::std::mem::size_of::<vsm_fantom>() - 48usize];
["Alignment of vsm_fantom"][::std::mem::align_of::<vsm_fantom>() - 8usize];
["Offset of field: vsm_fantom::priv_"][::std::mem::offset_of!(vsm_fantom, priv_) - 0usize];
["Offset of field: vsm_fantom::priv2"][::std::mem::offset_of!(vsm_fantom, priv2) - 8usize];
["Offset of field: vsm_fantom::b"][::std::mem::offset_of!(vsm_fantom, b) - 16usize];
["Offset of field: vsm_fantom::e"][::std::mem::offset_of!(vsm_fantom, e) - 24usize];
["Offset of field: vsm_fantom::category"]
[::std::mem::offset_of!(vsm_fantom, category) - 32usize];
["Offset of field: vsm_fantom::ident"][::std::mem::offset_of!(vsm_fantom, ident) - 40usize];
};
impl Default for vsm_fantom {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub fn VSM_New() -> *mut vsm;
}
unsafe extern "C" {
pub fn VSM_Destroy(vd: *mut *mut vsm);
}
unsafe extern "C" {
pub fn VSM_Error(vd: *const vsm) -> *const ::std::ffi::c_char;
}
unsafe extern "C" {
pub fn VSM_ResetError(vd: *mut vsm);
}
unsafe extern "C" {
pub fn VSM_Arg(
arg1: *mut vsm,
flag: ::std::ffi::c_char,
arg: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSM_Attach(arg1: *mut vsm, progress: ::std::ffi::c_int) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSM_Status(arg1: *mut vsm) -> ::std::ffi::c_uint;
}
unsafe extern "C" {
pub fn VSM__iter0(arg1: *const vsm, vf: *mut vsm_fantom);
}
unsafe extern "C" {
pub fn VSM__itern(arg1: *mut vsm, vf: *mut vsm_fantom) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSM_Map(arg1: *mut vsm, vf: *mut vsm_fantom) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSM_Unmap(arg1: *mut vsm, vf: *mut vsm_fantom) -> ::std::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsm_valid {
pub name: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vsm_valid"][::std::mem::size_of::<vsm_valid>() - 8usize];
["Alignment of vsm_valid"][::std::mem::align_of::<vsm_valid>() - 8usize];
["Offset of field: vsm_valid::name"][::std::mem::offset_of!(vsm_valid, name) - 0usize];
};
impl Default for vsm_valid {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static VSM_invalid: [vsm_valid; 0usize];
}
unsafe extern "C" {
pub static VSM_valid: [vsm_valid; 0usize];
}
unsafe extern "C" {
pub fn VSM_StillValid(arg1: *const vsm, vf: *const vsm_fantom) -> *const vsm_valid;
}
unsafe extern "C" {
pub fn VSM_Get(
arg1: *mut vsm,
vf: *mut vsm_fantom,
category: *const ::std::ffi::c_char,
ident: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSM_Dup(
arg1: *mut vsm,
category: *const ::std::ffi::c_char,
ident: *const ::std::ffi::c_char,
) -> *mut ::std::ffi::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vsc {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VSC_level_desc {
pub name: *const ::std::ffi::c_char,
pub label: *const ::std::ffi::c_char,
pub sdesc: *const ::std::ffi::c_char,
pub ldesc: *const ::std::ffi::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of VSC_level_desc"][::std::mem::size_of::<VSC_level_desc>() - 32usize];
["Alignment of VSC_level_desc"][::std::mem::align_of::<VSC_level_desc>() - 8usize];
["Offset of field: VSC_level_desc::name"]
[::std::mem::offset_of!(VSC_level_desc, name) - 0usize];
["Offset of field: VSC_level_desc::label"]
[::std::mem::offset_of!(VSC_level_desc, label) - 8usize];
["Offset of field: VSC_level_desc::sdesc"]
[::std::mem::offset_of!(VSC_level_desc, sdesc) - 16usize];
["Offset of field: VSC_level_desc::ldesc"]
[::std::mem::offset_of!(VSC_level_desc, ldesc) - 24usize];
};
impl Default for VSC_level_desc {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VSC_point {
pub ptr: *const u64,
pub name: *const ::std::ffi::c_char,
pub ctype: *const ::std::ffi::c_char,
pub semantics: ::std::ffi::c_int,
pub format: ::std::ffi::c_int,
pub level: *const VSC_level_desc,
pub sdesc: *const ::std::ffi::c_char,
pub ldesc: *const ::std::ffi::c_char,
pub priv_: *mut ::std::ffi::c_void,
pub raw: ::std::ffi::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of VSC_point"][::std::mem::size_of::<VSC_point>() - 72usize];
["Alignment of VSC_point"][::std::mem::align_of::<VSC_point>() - 8usize];
["Offset of field: VSC_point::ptr"][::std::mem::offset_of!(VSC_point, ptr) - 0usize];
["Offset of field: VSC_point::name"][::std::mem::offset_of!(VSC_point, name) - 8usize];
["Offset of field: VSC_point::ctype"][::std::mem::offset_of!(VSC_point, ctype) - 16usize];
["Offset of field: VSC_point::semantics"]
[::std::mem::offset_of!(VSC_point, semantics) - 24usize];
["Offset of field: VSC_point::format"][::std::mem::offset_of!(VSC_point, format) - 28usize];
["Offset of field: VSC_point::level"][::std::mem::offset_of!(VSC_point, level) - 32usize];
["Offset of field: VSC_point::sdesc"][::std::mem::offset_of!(VSC_point, sdesc) - 40usize];
["Offset of field: VSC_point::ldesc"][::std::mem::offset_of!(VSC_point, ldesc) - 48usize];
["Offset of field: VSC_point::priv_"][::std::mem::offset_of!(VSC_point, priv_) - 56usize];
["Offset of field: VSC_point::raw"][::std::mem::offset_of!(VSC_point, raw) - 64usize];
};
impl Default for VSC_point {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type VSC_new_f = ::std::option::Option<
unsafe extern "C" fn(
priv_: *mut ::std::ffi::c_void,
pt: *const VSC_point,
) -> *mut ::std::ffi::c_void,
>;
pub type VSC_destroy_f = ::std::option::Option<
unsafe extern "C" fn(priv_: *mut ::std::ffi::c_void, pt: *const VSC_point),
>;
pub type VSC_iter_f = ::std::option::Option<
unsafe extern "C" fn(priv_: *mut ::std::ffi::c_void, pt: *const VSC_point) -> ::std::ffi::c_int,
>;
unsafe extern "C" {
pub fn VSC_New() -> *mut vsc;
}
unsafe extern "C" {
pub fn VSC_Destroy(arg1: *mut *mut vsc, arg2: *mut vsm);
}
unsafe extern "C" {
pub fn VSC_Arg(
arg1: *mut vsc,
arg: ::std::ffi::c_char,
opt: *const ::std::ffi::c_char,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSC_State(
arg1: *mut vsc,
arg2: VSC_new_f,
arg3: VSC_destroy_f,
arg4: *mut ::std::ffi::c_void,
);
}
unsafe extern "C" {
pub fn VSC_Iter(
arg1: *mut vsc,
arg2: *mut vsm,
arg3: VSC_iter_f,
priv_: *mut ::std::ffi::c_void,
) -> ::std::ffi::c_int;
}
unsafe extern "C" {
pub fn VSC_ChangeLevel(
arg1: *const VSC_level_desc,
arg2: ::std::ffi::c_int,
) -> *const VSC_level_desc;
}
unsafe extern "C" {
pub fn VSC_IsRaw(arg1: *const vsc) -> ::std::ffi::c_uint;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vrt_type {
pub magic: ::std::ffi::c_uint,
pub lname: *const ::std::ffi::c_char,
pub uname: *const ::std::ffi::c_char,
pub ctype: *const ::std::ffi::c_char,
pub szof: usize,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of vrt_type"][::std::mem::size_of::<vrt_type>() - 40usize];
["Alignment of vrt_type"][::std::mem::align_of::<vrt_type>() - 8usize];
["Offset of field: vrt_type::magic"][::std::mem::offset_of!(vrt_type, magic) - 0usize];
["Offset of field: vrt_type::lname"][::std::mem::offset_of!(vrt_type, lname) - 8usize];
["Offset of field: vrt_type::uname"][::std::mem::offset_of!(vrt_type, uname) - 16usize];
["Offset of field: vrt_type::ctype"][::std::mem::offset_of!(vrt_type, ctype) - 24usize];
["Offset of field: vrt_type::szof"][::std::mem::offset_of!(vrt_type, szof) - 32usize];
};
impl Default for vrt_type {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
unsafe extern "C" {
pub static VCL_TYPE_ACL: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_BACKEND: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_BLOB: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_BODY: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_BOOL: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_BYTES: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_DURATION: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_ENUM: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_HEADER: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_HTTP: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_INSTANCE: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_INT: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_IP: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_PROBE: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_REAL: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_REGEX: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_STEVEDORE: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_STRANDS: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_STRING: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_STRINGS: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_SUB: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_TIME: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_VCL: [vrt_type; 1usize];
}
unsafe extern "C" {
pub static VCL_TYPE_VOID: [vrt_type; 1usize];
}
pub type vcl_event_f = ::std::option::Option<
unsafe extern "C" fn(ctx: *const vrt_ctx, arg1: VclEvent) -> ::std::ffi::c_int,
>;
pub type vcl_init_f =
::std::option::Option<unsafe extern "C" fn(ctx: *const vrt_ctx) -> ::std::ffi::c_int>;
pub type vcl_fini_f = ::std::option::Option<unsafe extern "C" fn(ctx: *const vrt_ctx)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VCL_conf {
pub magic: ::std::ffi::c_uint,
pub syntax: ::std::ffi::c_uint,
pub default_director: *mut VCL_BACKEND,
pub default_probe: VCL_PROBE,
pub nref: ::std::ffi::c_uint,
pub ref_: *const vpi_ref,
pub nsrc: ::std::ffi::c_uint,
pub nsub: ::std::ffi::c_uint,
pub srcname: *mut *const ::std::ffi::c_char,
pub srcbody: *mut *const ::std::ffi::c_char,
pub nvmod: ::std::ffi::c_int,
pub instance_info: *const vpi_ii,
pub event_vcl: vcl_event_f,
pub recv_func: vcl_func_f,
pub pipe_func: vcl_func_f,
pub pass_func: vcl_func_f,
pub hash_func: vcl_func_f,
pub purge_func: vcl_func_f,
pub miss_func: vcl_func_f,
pub hit_func: vcl_func_f,
pub deliver_func: vcl_func_f,
pub synth_func: vcl_func_f,
pub backend_fetch_func: vcl_func_f,
pub backend_refresh_func: vcl_func_f,
pub backend_response_func: vcl_func_f,
pub backend_error_func: vcl_func_f,
pub init_func: vcl_func_f,
pub fini_func: vcl_func_f,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of VCL_conf"][::std::mem::size_of::<VCL_conf>() - 208usize];
["Alignment of VCL_conf"][::std::mem::align_of::<VCL_conf>() - 8usize];
["Offset of field: VCL_conf::magic"][::std::mem::offset_of!(VCL_conf, magic) - 0usize];
["Offset of field: VCL_conf::syntax"][::std::mem::offset_of!(VCL_conf, syntax) - 4usize];
["Offset of field: VCL_conf::default_director"]
[::std::mem::offset_of!(VCL_conf, default_director) - 8usize];
["Offset of field: VCL_conf::default_probe"]
[::std::mem::offset_of!(VCL_conf, default_probe) - 16usize];
["Offset of field: VCL_conf::nref"][::std::mem::offset_of!(VCL_conf, nref) - 24usize];
["Offset of field: VCL_conf::ref_"][::std::mem::offset_of!(VCL_conf, ref_) - 32usize];
["Offset of field: VCL_conf::nsrc"][::std::mem::offset_of!(VCL_conf, nsrc) - 40usize];
["Offset of field: VCL_conf::nsub"][::std::mem::offset_of!(VCL_conf, nsub) - 44usize];
["Offset of field: VCL_conf::srcname"][::std::mem::offset_of!(VCL_conf, srcname) - 48usize];
["Offset of field: VCL_conf::srcbody"][::std::mem::offset_of!(VCL_conf, srcbody) - 56usize];
["Offset of field: VCL_conf::nvmod"][::std::mem::offset_of!(VCL_conf, nvmod) - 64usize];
["Offset of field: VCL_conf::instance_info"]
[::std::mem::offset_of!(VCL_conf, instance_info) - 72usize];
["Offset of field: VCL_conf::event_vcl"][::std::mem::offset_of!(VCL_conf, event_vcl) - 80usize];
["Offset of field: VCL_conf::recv_func"][::std::mem::offset_of!(VCL_conf, recv_func) - 88usize];
["Offset of field: VCL_conf::pipe_func"][::std::mem::offset_of!(VCL_conf, pipe_func) - 96usize];
["Offset of field: VCL_conf::pass_func"]
[::std::mem::offset_of!(VCL_conf, pass_func) - 104usize];
["Offset of field: VCL_conf::hash_func"]
[::std::mem::offset_of!(VCL_conf, hash_func) - 112usize];
["Offset of field: VCL_conf::purge_func"]
[::std::mem::offset_of!(VCL_conf, purge_func) - 120usize];
["Offset of field: VCL_conf::miss_func"]
[::std::mem::offset_of!(VCL_conf, miss_func) - 128usize];
["Offset of field: VCL_conf::hit_func"][::std::mem::offset_of!(VCL_conf, hit_func) - 136usize];
["Offset of field: VCL_conf::deliver_func"]
[::std::mem::offset_of!(VCL_conf, deliver_func) - 144usize];
["Offset of field: VCL_conf::synth_func"]
[::std::mem::offset_of!(VCL_conf, synth_func) - 152usize];
["Offset of field: VCL_conf::backend_fetch_func"]
[::std::mem::offset_of!(VCL_conf, backend_fetch_func) - 160usize];
["Offset of field: VCL_conf::backend_refresh_func"]
[::std::mem::offset_of!(VCL_conf, backend_refresh_func) - 168usize];
["Offset of field: VCL_conf::backend_response_func"]
[::std::mem::offset_of!(VCL_conf, backend_response_func) - 176usize];
["Offset of field: VCL_conf::backend_error_func"]
[::std::mem::offset_of!(VCL_conf, backend_error_func) - 184usize];
["Offset of field: VCL_conf::init_func"]
[::std::mem::offset_of!(VCL_conf, init_func) - 192usize];
["Offset of field: VCL_conf::fini_func"]
[::std::mem::offset_of!(VCL_conf, fini_func) - 200usize];
};
impl Default for VCL_conf {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __locale_data {
pub _address: u8,
}
pub type __builtin_va_list = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __va_list_tag {
pub gp_offset: ::std::ffi::c_uint,
pub fp_offset: ::std::ffi::c_uint,
pub overflow_arg_area: *mut ::std::ffi::c_void,
pub reg_save_area: *mut ::std::ffi::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __va_list_tag"][::std::mem::size_of::<__va_list_tag>() - 24usize];
["Alignment of __va_list_tag"][::std::mem::align_of::<__va_list_tag>() - 8usize];
["Offset of field: __va_list_tag::gp_offset"]
[::std::mem::offset_of!(__va_list_tag, gp_offset) - 0usize];
["Offset of field: __va_list_tag::fp_offset"]
[::std::mem::offset_of!(__va_list_tag, fp_offset) - 4usize];
["Offset of field: __va_list_tag::overflow_arg_area"]
[::std::mem::offset_of!(__va_list_tag, overflow_arg_area) - 8usize];
["Offset of field: __va_list_tag::reg_save_area"]
[::std::mem::offset_of!(__va_list_tag, reg_save_area) - 16usize];
};
impl Default for __va_list_tag {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vrt_priv {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct VSC_vbe {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vdi_ahealth {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vpi_ref {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vpi_ii {
pub _address: u8,
}