// Copyright 2017 The Chromium OS Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the THIRD-PARTY file. /* automatically generated by rust-bindgen */ #[repr(C)] #[derive(Default)] pub struct __IncompleteArrayField(::std::marker::PhantomData); impl __IncompleteArrayField { #[inline] pub fn new() -> Self { __IncompleteArrayField(::std::marker::PhantomData) } #[inline] pub unsafe fn as_ptr(&self) -> *const T { ::std::mem::transmute(self) } #[inline] pub unsafe fn as_mut_ptr(&mut self) -> *mut T { ::std::mem::transmute(self) } #[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 ::std::fmt::Debug for __IncompleteArrayField { fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { fmt.write_str("__IncompleteArrayField") } } impl ::std::clone::Clone for __IncompleteArrayField { #[inline] fn clone(&self) -> Self { Self::new() } } impl ::std::marker::Copy for __IncompleteArrayField {} #[repr(C)] pub struct __BindgenUnionField(::std::marker::PhantomData); impl __BindgenUnionField { #[inline] pub fn new() -> Self { __BindgenUnionField(::std::marker::PhantomData) } #[inline] pub unsafe fn as_ref(&self) -> &T { ::std::mem::transmute(self) } #[inline] pub unsafe fn as_mut(&mut self) -> &mut T { ::std::mem::transmute(self) } } impl ::std::default::Default for __BindgenUnionField { #[inline] fn default() -> Self { Self::new() } } impl ::std::clone::Clone for __BindgenUnionField { #[inline] fn clone(&self) -> Self { Self::new() } } impl ::std::marker::Copy for __BindgenUnionField {} impl ::std::fmt::Debug for __BindgenUnionField { fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { fmt.write_str("__BindgenUnionField") } } pub const __UAPI_DEF_IN_ADDR: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IN_IPPROTO: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IN_PKTINFO: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IP_MREQ: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_SOCKADDR_IN: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IN_CLASS: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IN6_ADDR: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IN6_ADDR_ALT: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_SOCKADDR_IN6: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IPV6_MREQ: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IPPROTO_V6: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IPV6_OPTIONS: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IN6_PKTINFO: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_IP6_MTUINFO: ::std::os::raw::c_uint = 1; pub const __UAPI_DEF_XATTR: ::std::os::raw::c_uint = 1; pub const __BITS_PER_LONG: ::std::os::raw::c_uint = 64; pub const __FD_SETSIZE: ::std::os::raw::c_uint = 1024; pub const _K_SS_MAXSIZE: ::std::os::raw::c_uint = 128; pub const _SYS_SOCKET_H: ::std::os::raw::c_uint = 1; pub const _FEATURES_H: ::std::os::raw::c_uint = 1; pub const _DEFAULT_SOURCE: ::std::os::raw::c_uint = 1; pub const __USE_ISOC11: ::std::os::raw::c_uint = 1; pub const __USE_ISOC99: ::std::os::raw::c_uint = 1; pub const __USE_ISOC95: ::std::os::raw::c_uint = 1; pub const __USE_POSIX_IMPLICITLY: ::std::os::raw::c_uint = 1; pub const _POSIX_SOURCE: ::std::os::raw::c_uint = 1; pub const _POSIX_C_SOURCE: ::std::os::raw::c_uint = 200809; pub const __USE_POSIX: ::std::os::raw::c_uint = 1; pub const __USE_POSIX2: ::std::os::raw::c_uint = 1; pub const __USE_POSIX199309: ::std::os::raw::c_uint = 1; pub const __USE_POSIX199506: ::std::os::raw::c_uint = 1; pub const __USE_XOPEN2K: ::std::os::raw::c_uint = 1; pub const __USE_XOPEN2K8: ::std::os::raw::c_uint = 1; pub const _ATFILE_SOURCE: ::std::os::raw::c_uint = 1; pub const __USE_MISC: ::std::os::raw::c_uint = 1; pub const __USE_ATFILE: ::std::os::raw::c_uint = 1; pub const __USE_FORTIFY_LEVEL: ::std::os::raw::c_uint = 0; pub const _STDC_PREDEF_H: ::std::os::raw::c_uint = 1; pub const __STDC_IEC_559__: ::std::os::raw::c_uint = 1; pub const __STDC_IEC_559_COMPLEX__: ::std::os::raw::c_uint = 1; pub const __STDC_ISO_10646__: ::std::os::raw::c_uint = 201505; pub const __STDC_NO_THREADS__: ::std::os::raw::c_uint = 1; pub const __GNU_LIBRARY__: ::std::os::raw::c_uint = 6; pub const __GLIBC__: ::std::os::raw::c_uint = 2; pub const __GLIBC_MINOR__: ::std::os::raw::c_uint = 23; pub const _SYS_CDEFS_H: ::std::os::raw::c_uint = 1; pub const __WORDSIZE: ::std::os::raw::c_uint = 64; pub const __WORDSIZE_TIME64_COMPAT32: ::std::os::raw::c_uint = 1; pub const __SYSCALL_WORDSIZE: ::std::os::raw::c_uint = 64; pub const _SYS_UIO_H: ::std::os::raw::c_uint = 1; pub const _SYS_TYPES_H: ::std::os::raw::c_uint = 1; pub const _BITS_TYPES_H: ::std::os::raw::c_uint = 1; pub const _BITS_TYPESIZES_H: ::std::os::raw::c_uint = 1; pub const __OFF_T_MATCHES_OFF64_T: ::std::os::raw::c_uint = 1; pub const __INO_T_MATCHES_INO64_T: ::std::os::raw::c_uint = 1; pub const __clock_t_defined: ::std::os::raw::c_uint = 1; pub const __time_t_defined: ::std::os::raw::c_uint = 1; pub const __clockid_t_defined: ::std::os::raw::c_uint = 1; pub const __timer_t_defined: ::std::os::raw::c_uint = 1; pub const __BIT_TYPES_DEFINED__: ::std::os::raw::c_uint = 1; pub const _ENDIAN_H: ::std::os::raw::c_uint = 1; pub const __LITTLE_ENDIAN: ::std::os::raw::c_uint = 1234; pub const __BIG_ENDIAN: ::std::os::raw::c_uint = 4321; pub const __PDP_ENDIAN: ::std::os::raw::c_uint = 3412; pub const __BYTE_ORDER: ::std::os::raw::c_uint = 1234; pub const __FLOAT_WORD_ORDER: ::std::os::raw::c_uint = 1234; pub const LITTLE_ENDIAN: ::std::os::raw::c_uint = 1234; pub const BIG_ENDIAN: ::std::os::raw::c_uint = 4321; pub const PDP_ENDIAN: ::std::os::raw::c_uint = 3412; pub const BYTE_ORDER: ::std::os::raw::c_uint = 1234; pub const _BITS_BYTESWAP_H: ::std::os::raw::c_uint = 1; pub const _SYS_SELECT_H: ::std::os::raw::c_uint = 1; pub const __FD_ZERO_STOS: &'static [u8; 6usize] = b"stosq\x00"; pub const _SIGSET_H_types: ::std::os::raw::c_uint = 1; pub const __timespec_defined: ::std::os::raw::c_uint = 1; pub const _STRUCT_TIMEVAL: ::std::os::raw::c_uint = 1; pub const FD_SETSIZE: ::std::os::raw::c_uint = 1024; pub const _SYS_SYSMACROS_H: ::std::os::raw::c_uint = 1; pub const _BITS_PTHREADTYPES_H: ::std::os::raw::c_uint = 1; pub const __SIZEOF_PTHREAD_ATTR_T: ::std::os::raw::c_uint = 56; pub const __SIZEOF_PTHREAD_MUTEX_T: ::std::os::raw::c_uint = 40; pub const __SIZEOF_PTHREAD_MUTEXATTR_T: ::std::os::raw::c_uint = 4; pub const __SIZEOF_PTHREAD_COND_T: ::std::os::raw::c_uint = 48; pub const __SIZEOF_PTHREAD_CONDATTR_T: ::std::os::raw::c_uint = 4; pub const __SIZEOF_PTHREAD_RWLOCK_T: ::std::os::raw::c_uint = 56; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: ::std::os::raw::c_uint = 8; pub const __SIZEOF_PTHREAD_BARRIER_T: ::std::os::raw::c_uint = 32; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: ::std::os::raw::c_uint = 4; pub const __have_pthread_attr_t: ::std::os::raw::c_uint = 1; pub const __PTHREAD_MUTEX_HAVE_PREV: ::std::os::raw::c_uint = 1; pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED: ::std::os::raw::c_uint = 1; pub const _BITS_UIO_H: ::std::os::raw::c_uint = 1; pub const UIO_MAXIOV: ::std::os::raw::c_uint = 1024; pub const PF_UNSPEC: ::std::os::raw::c_uint = 0; pub const PF_LOCAL: ::std::os::raw::c_uint = 1; pub const PF_UNIX: ::std::os::raw::c_uint = 1; pub const PF_FILE: ::std::os::raw::c_uint = 1; pub const PF_INET: ::std::os::raw::c_uint = 2; pub const PF_AX25: ::std::os::raw::c_uint = 3; pub const PF_IPX: ::std::os::raw::c_uint = 4; pub const PF_APPLETALK: ::std::os::raw::c_uint = 5; pub const PF_NETROM: ::std::os::raw::c_uint = 6; pub const PF_BRIDGE: ::std::os::raw::c_uint = 7; pub const PF_ATMPVC: ::std::os::raw::c_uint = 8; pub const PF_X25: ::std::os::raw::c_uint = 9; pub const PF_INET6: ::std::os::raw::c_uint = 10; pub const PF_ROSE: ::std::os::raw::c_uint = 11; pub const PF_DECnet: ::std::os::raw::c_uint = 12; pub const PF_NETBEUI: ::std::os::raw::c_uint = 13; pub const PF_SECURITY: ::std::os::raw::c_uint = 14; pub const PF_KEY: ::std::os::raw::c_uint = 15; pub const PF_NETLINK: ::std::os::raw::c_uint = 16; pub const PF_ROUTE: ::std::os::raw::c_uint = 16; pub const PF_PACKET: ::std::os::raw::c_uint = 17; pub const PF_ASH: ::std::os::raw::c_uint = 18; pub const PF_ECONET: ::std::os::raw::c_uint = 19; pub const PF_ATMSVC: ::std::os::raw::c_uint = 20; pub const PF_RDS: ::std::os::raw::c_uint = 21; pub const PF_SNA: ::std::os::raw::c_uint = 22; pub const PF_IRDA: ::std::os::raw::c_uint = 23; pub const PF_PPPOX: ::std::os::raw::c_uint = 24; pub const PF_WANPIPE: ::std::os::raw::c_uint = 25; pub const PF_LLC: ::std::os::raw::c_uint = 26; pub const PF_IB: ::std::os::raw::c_uint = 27; pub const PF_MPLS: ::std::os::raw::c_uint = 28; pub const PF_CAN: ::std::os::raw::c_uint = 29; pub const PF_TIPC: ::std::os::raw::c_uint = 30; pub const PF_BLUETOOTH: ::std::os::raw::c_uint = 31; pub const PF_IUCV: ::std::os::raw::c_uint = 32; pub const PF_RXRPC: ::std::os::raw::c_uint = 33; pub const PF_ISDN: ::std::os::raw::c_uint = 34; pub const PF_PHONET: ::std::os::raw::c_uint = 35; pub const PF_IEEE802154: ::std::os::raw::c_uint = 36; pub const PF_CAIF: ::std::os::raw::c_uint = 37; pub const PF_ALG: ::std::os::raw::c_uint = 38; pub const PF_NFC: ::std::os::raw::c_uint = 39; pub const PF_VSOCK: ::std::os::raw::c_uint = 40; pub const PF_MAX: ::std::os::raw::c_uint = 41; pub const AF_UNSPEC: ::std::os::raw::c_uint = 0; pub const AF_LOCAL: ::std::os::raw::c_uint = 1; pub const AF_UNIX: ::std::os::raw::c_uint = 1; pub const AF_FILE: ::std::os::raw::c_uint = 1; pub const AF_INET: ::std::os::raw::c_uint = 2; pub const AF_AX25: ::std::os::raw::c_uint = 3; pub const AF_IPX: ::std::os::raw::c_uint = 4; pub const AF_APPLETALK: ::std::os::raw::c_uint = 5; pub const AF_NETROM: ::std::os::raw::c_uint = 6; pub const AF_BRIDGE: ::std::os::raw::c_uint = 7; pub const AF_ATMPVC: ::std::os::raw::c_uint = 8; pub const AF_X25: ::std::os::raw::c_uint = 9; pub const AF_INET6: ::std::os::raw::c_uint = 10; pub const AF_ROSE: ::std::os::raw::c_uint = 11; pub const AF_DECnet: ::std::os::raw::c_uint = 12; pub const AF_NETBEUI: ::std::os::raw::c_uint = 13; pub const AF_SECURITY: ::std::os::raw::c_uint = 14; pub const AF_KEY: ::std::os::raw::c_uint = 15; pub const AF_NETLINK: ::std::os::raw::c_uint = 16; pub const AF_ROUTE: ::std::os::raw::c_uint = 16; pub const AF_PACKET: ::std::os::raw::c_uint = 17; pub const AF_ASH: ::std::os::raw::c_uint = 18; pub const AF_ECONET: ::std::os::raw::c_uint = 19; pub const AF_ATMSVC: ::std::os::raw::c_uint = 20; pub const AF_RDS: ::std::os::raw::c_uint = 21; pub const AF_SNA: ::std::os::raw::c_uint = 22; pub const AF_IRDA: ::std::os::raw::c_uint = 23; pub const AF_PPPOX: ::std::os::raw::c_uint = 24; pub const AF_WANPIPE: ::std::os::raw::c_uint = 25; pub const AF_LLC: ::std::os::raw::c_uint = 26; pub const AF_IB: ::std::os::raw::c_uint = 27; pub const AF_MPLS: ::std::os::raw::c_uint = 28; pub const AF_CAN: ::std::os::raw::c_uint = 29; pub const AF_TIPC: ::std::os::raw::c_uint = 30; pub const AF_BLUETOOTH: ::std::os::raw::c_uint = 31; pub const AF_IUCV: ::std::os::raw::c_uint = 32; pub const AF_RXRPC: ::std::os::raw::c_uint = 33; pub const AF_ISDN: ::std::os::raw::c_uint = 34; pub const AF_PHONET: ::std::os::raw::c_uint = 35; pub const AF_IEEE802154: ::std::os::raw::c_uint = 36; pub const AF_CAIF: ::std::os::raw::c_uint = 37; pub const AF_ALG: ::std::os::raw::c_uint = 38; pub const AF_NFC: ::std::os::raw::c_uint = 39; pub const AF_VSOCK: ::std::os::raw::c_uint = 40; pub const AF_MAX: ::std::os::raw::c_uint = 41; pub const SOL_RAW: ::std::os::raw::c_uint = 255; pub const SOL_DECNET: ::std::os::raw::c_uint = 261; pub const SOL_X25: ::std::os::raw::c_uint = 262; pub const SOL_PACKET: ::std::os::raw::c_uint = 263; pub const SOL_ATM: ::std::os::raw::c_uint = 264; pub const SOL_AAL: ::std::os::raw::c_uint = 265; pub const SOL_IRDA: ::std::os::raw::c_uint = 266; pub const SOMAXCONN: ::std::os::raw::c_uint = 128; pub const _BITS_SOCKADDR_H: ::std::os::raw::c_uint = 1; pub const _SS_SIZE: ::std::os::raw::c_uint = 128; pub const FIOSETOWN: ::std::os::raw::c_uint = 35073; pub const SIOCSPGRP: ::std::os::raw::c_uint = 35074; pub const FIOGETOWN: ::std::os::raw::c_uint = 35075; pub const SIOCGPGRP: ::std::os::raw::c_uint = 35076; pub const SIOCATMARK: ::std::os::raw::c_uint = 35077; pub const SIOCGSTAMP: ::std::os::raw::c_uint = 35078; pub const SIOCGSTAMPNS: ::std::os::raw::c_uint = 35079; pub const SOL_SOCKET: ::std::os::raw::c_uint = 1; pub const SO_DEBUG: ::std::os::raw::c_uint = 1; pub const SO_REUSEADDR: ::std::os::raw::c_uint = 2; pub const SO_TYPE: ::std::os::raw::c_uint = 3; pub const SO_ERROR: ::std::os::raw::c_uint = 4; pub const SO_DONTROUTE: ::std::os::raw::c_uint = 5; pub const SO_BROADCAST: ::std::os::raw::c_uint = 6; pub const SO_SNDBUF: ::std::os::raw::c_uint = 7; pub const SO_RCVBUF: ::std::os::raw::c_uint = 8; pub const SO_SNDBUFFORCE: ::std::os::raw::c_uint = 32; pub const SO_RCVBUFFORCE: ::std::os::raw::c_uint = 33; pub const SO_KEEPALIVE: ::std::os::raw::c_uint = 9; pub const SO_OOBINLINE: ::std::os::raw::c_uint = 10; pub const SO_NO_CHECK: ::std::os::raw::c_uint = 11; pub const SO_PRIORITY: ::std::os::raw::c_uint = 12; pub const SO_LINGER: ::std::os::raw::c_uint = 13; pub const SO_BSDCOMPAT: ::std::os::raw::c_uint = 14; pub const SO_REUSEPORT: ::std::os::raw::c_uint = 15; pub const SO_PASSCRED: ::std::os::raw::c_uint = 16; pub const SO_PEERCRED: ::std::os::raw::c_uint = 17; pub const SO_RCVLOWAT: ::std::os::raw::c_uint = 18; pub const SO_SNDLOWAT: ::std::os::raw::c_uint = 19; pub const SO_RCVTIMEO: ::std::os::raw::c_uint = 20; pub const SO_SNDTIMEO: ::std::os::raw::c_uint = 21; pub const SO_SECURITY_AUTHENTICATION: ::std::os::raw::c_uint = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: ::std::os::raw::c_uint = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: ::std::os::raw::c_uint = 24; pub const SO_BINDTODEVICE: ::std::os::raw::c_uint = 25; pub const SO_ATTACH_FILTER: ::std::os::raw::c_uint = 26; pub const SO_DETACH_FILTER: ::std::os::raw::c_uint = 27; pub const SO_GET_FILTER: ::std::os::raw::c_uint = 26; pub const SO_PEERNAME: ::std::os::raw::c_uint = 28; pub const SO_TIMESTAMP: ::std::os::raw::c_uint = 29; pub const SCM_TIMESTAMP: ::std::os::raw::c_uint = 29; pub const SO_ACCEPTCONN: ::std::os::raw::c_uint = 30; pub const SO_PEERSEC: ::std::os::raw::c_uint = 31; pub const SO_PASSSEC: ::std::os::raw::c_uint = 34; pub const SO_TIMESTAMPNS: ::std::os::raw::c_uint = 35; pub const SCM_TIMESTAMPNS: ::std::os::raw::c_uint = 35; pub const SO_MARK: ::std::os::raw::c_uint = 36; pub const SO_TIMESTAMPING: ::std::os::raw::c_uint = 37; pub const SCM_TIMESTAMPING: ::std::os::raw::c_uint = 37; pub const SO_PROTOCOL: ::std::os::raw::c_uint = 38; pub const SO_DOMAIN: ::std::os::raw::c_uint = 39; pub const SO_RXQ_OVFL: ::std::os::raw::c_uint = 40; pub const SO_WIFI_STATUS: ::std::os::raw::c_uint = 41; pub const SCM_WIFI_STATUS: ::std::os::raw::c_uint = 41; pub const SO_PEEK_OFF: ::std::os::raw::c_uint = 42; pub const SO_NOFCS: ::std::os::raw::c_uint = 43; pub const SO_LOCK_FILTER: ::std::os::raw::c_uint = 44; pub const SO_SELECT_ERR_QUEUE: ::std::os::raw::c_uint = 45; pub const SO_BUSY_POLL: ::std::os::raw::c_uint = 46; pub const SO_MAX_PACING_RATE: ::std::os::raw::c_uint = 47; pub const SO_BPF_EXTENSIONS: ::std::os::raw::c_uint = 48; pub const SO_INCOMING_CPU: ::std::os::raw::c_uint = 49; pub const SO_ATTACH_BPF: ::std::os::raw::c_uint = 50; pub const SO_DETACH_BPF: ::std::os::raw::c_uint = 27; pub const IFNAMSIZ: ::std::os::raw::c_uint = 16; pub const IFALIASZ: ::std::os::raw::c_uint = 256; pub const GENERIC_HDLC_VERSION: ::std::os::raw::c_uint = 4; pub const CLOCK_DEFAULT: ::std::os::raw::c_uint = 0; pub const CLOCK_EXT: ::std::os::raw::c_uint = 1; pub const CLOCK_INT: ::std::os::raw::c_uint = 2; pub const CLOCK_TXINT: ::std::os::raw::c_uint = 3; pub const CLOCK_TXFROMRX: ::std::os::raw::c_uint = 4; pub const ENCODING_DEFAULT: ::std::os::raw::c_uint = 0; pub const ENCODING_NRZ: ::std::os::raw::c_uint = 1; pub const ENCODING_NRZI: ::std::os::raw::c_uint = 2; pub const ENCODING_FM_MARK: ::std::os::raw::c_uint = 3; pub const ENCODING_FM_SPACE: ::std::os::raw::c_uint = 4; pub const ENCODING_MANCHESTER: ::std::os::raw::c_uint = 5; pub const PARITY_DEFAULT: ::std::os::raw::c_uint = 0; pub const PARITY_NONE: ::std::os::raw::c_uint = 1; pub const PARITY_CRC16_PR0: ::std::os::raw::c_uint = 2; pub const PARITY_CRC16_PR1: ::std::os::raw::c_uint = 3; pub const PARITY_CRC16_PR0_CCITT: ::std::os::raw::c_uint = 4; pub const PARITY_CRC16_PR1_CCITT: ::std::os::raw::c_uint = 5; pub const PARITY_CRC32_PR0_CCITT: ::std::os::raw::c_uint = 6; pub const PARITY_CRC32_PR1_CCITT: ::std::os::raw::c_uint = 7; pub const LMI_DEFAULT: ::std::os::raw::c_uint = 0; pub const LMI_NONE: ::std::os::raw::c_uint = 1; pub const LMI_ANSI: ::std::os::raw::c_uint = 2; pub const LMI_CCITT: ::std::os::raw::c_uint = 3; pub const LMI_CISCO: ::std::os::raw::c_uint = 4; pub const IF_GET_IFACE: ::std::os::raw::c_uint = 1; pub const IF_GET_PROTO: ::std::os::raw::c_uint = 2; pub const IF_IFACE_V35: ::std::os::raw::c_uint = 4096; pub const IF_IFACE_V24: ::std::os::raw::c_uint = 4097; pub const IF_IFACE_X21: ::std::os::raw::c_uint = 4098; pub const IF_IFACE_T1: ::std::os::raw::c_uint = 4099; pub const IF_IFACE_E1: ::std::os::raw::c_uint = 4100; pub const IF_IFACE_SYNC_SERIAL: ::std::os::raw::c_uint = 4101; pub const IF_IFACE_X21D: ::std::os::raw::c_uint = 4102; pub const IF_PROTO_HDLC: ::std::os::raw::c_uint = 8192; pub const IF_PROTO_PPP: ::std::os::raw::c_uint = 8193; pub const IF_PROTO_CISCO: ::std::os::raw::c_uint = 8194; pub const IF_PROTO_FR: ::std::os::raw::c_uint = 8195; pub const IF_PROTO_FR_ADD_PVC: ::std::os::raw::c_uint = 8196; pub const IF_PROTO_FR_DEL_PVC: ::std::os::raw::c_uint = 8197; pub const IF_PROTO_X25: ::std::os::raw::c_uint = 8198; pub const IF_PROTO_HDLC_ETH: ::std::os::raw::c_uint = 8199; pub const IF_PROTO_FR_ADD_ETH_PVC: ::std::os::raw::c_uint = 8200; pub const IF_PROTO_FR_DEL_ETH_PVC: ::std::os::raw::c_uint = 8201; pub const IF_PROTO_FR_PVC: ::std::os::raw::c_uint = 8202; pub const IF_PROTO_FR_ETH_PVC: ::std::os::raw::c_uint = 8203; pub const IF_PROTO_RAW: ::std::os::raw::c_uint = 8204; pub const IFHWADDRLEN: ::std::os::raw::c_uint = 6; pub type __s8 = ::std::os::raw::c_schar; pub type __u8 = ::std::os::raw::c_uchar; pub type __s16 = ::std::os::raw::c_short; pub type __u16 = ::std::os::raw::c_ushort; pub type __s32 = ::std::os::raw::c_int; pub type __u32 = ::std::os::raw::c_uint; pub type __s64 = ::std::os::raw::c_longlong; pub type __u64 = ::std::os::raw::c_ulonglong; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct __kernel_fd_set { pub fds_bits: [::std::os::raw::c_ulong; 16usize], } #[test] fn bindgen_test_layout___kernel_fd_set() { assert_eq!( ::std::mem::size_of::<__kernel_fd_set>(), 128usize, concat!("Size of: ", stringify!(__kernel_fd_set)) ); assert_eq!( ::std::mem::align_of::<__kernel_fd_set>(), 8usize, concat!("Alignment of ", stringify!(__kernel_fd_set)) ); assert_eq!( unsafe { &(*(0 as *const __kernel_fd_set)).fds_bits as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(__kernel_fd_set), "::", stringify!(fds_bits) ) ); } impl Clone for __kernel_fd_set { fn clone(&self) -> Self { *self } } pub type __kernel_sighandler_t = ::std::option::Option; pub type __kernel_key_t = ::std::os::raw::c_int; pub type __kernel_mqd_t = ::std::os::raw::c_int; pub type __kernel_old_uid_t = ::std::os::raw::c_ushort; pub type __kernel_old_gid_t = ::std::os::raw::c_ushort; pub type __kernel_old_dev_t = ::std::os::raw::c_ulong; pub type __kernel_long_t = ::std::os::raw::c_long; pub type __kernel_ulong_t = ::std::os::raw::c_ulong; pub type __kernel_ino_t = __kernel_ulong_t; pub type __kernel_mode_t = ::std::os::raw::c_uint; pub type __kernel_pid_t = ::std::os::raw::c_int; pub type __kernel_ipc_pid_t = ::std::os::raw::c_int; pub type __kernel_uid_t = ::std::os::raw::c_uint; pub type __kernel_gid_t = ::std::os::raw::c_uint; pub type __kernel_suseconds_t = __kernel_long_t; pub type __kernel_daddr_t = ::std::os::raw::c_int; pub type __kernel_uid32_t = ::std::os::raw::c_uint; pub type __kernel_gid32_t = ::std::os::raw::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)] pub struct __kernel_fsid_t { pub val: [::std::os::raw::c_int; 2usize], } #[test] fn bindgen_test_layout___kernel_fsid_t() { assert_eq!( ::std::mem::size_of::<__kernel_fsid_t>(), 8usize, concat!("Size of: ", stringify!(__kernel_fsid_t)) ); assert_eq!( ::std::mem::align_of::<__kernel_fsid_t>(), 4usize, concat!("Alignment of ", stringify!(__kernel_fsid_t)) ); assert_eq!( unsafe { &(*(0 as *const __kernel_fsid_t)).val as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(__kernel_fsid_t), "::", stringify!(val) ) ); } impl Clone for __kernel_fsid_t { fn clone(&self) -> Self { *self } } pub type __kernel_off_t = __kernel_long_t; pub type __kernel_loff_t = ::std::os::raw::c_longlong; pub type __kernel_time_t = __kernel_long_t; pub type __kernel_clock_t = __kernel_long_t; pub type __kernel_timer_t = ::std::os::raw::c_int; pub type __kernel_clockid_t = ::std::os::raw::c_int; pub type __kernel_caddr_t = *mut ::std::os::raw::c_char; pub type __kernel_uid16_t = ::std::os::raw::c_ushort; pub type __kernel_gid16_t = ::std::os::raw::c_ushort; pub type __le16 = __u16; pub type __be16 = __u16; pub type __le32 = __u32; pub type __be32 = __u32; pub type __le64 = __u64; pub type __be64 = __u64; pub type __sum16 = __u16; pub type __wsum = __u32; pub type __kernel_sa_family_t = ::std::os::raw::c_ushort; #[repr(C)] pub struct __kernel_sockaddr_storage { pub ss_family: __kernel_sa_family_t, pub __data: [::std::os::raw::c_char; 126usize], pub __bindgen_align: [u64; 0usize], } #[test] fn bindgen_test_layout___kernel_sockaddr_storage() { assert_eq!( ::std::mem::size_of::<__kernel_sockaddr_storage>(), 128usize, concat!("Size of: ", stringify!(__kernel_sockaddr_storage)) ); assert_eq!( ::std::mem::align_of::<__kernel_sockaddr_storage>(), 8usize, concat!("Alignment of ", stringify!(__kernel_sockaddr_storage)) ); assert_eq!( unsafe { &(*(0 as *const __kernel_sockaddr_storage)).ss_family as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(__kernel_sockaddr_storage), "::", stringify!(ss_family) ) ); assert_eq!( unsafe { &(*(0 as *const __kernel_sockaddr_storage)).__data as *const _ as usize }, 2usize, concat!( "Alignment of field: ", stringify!(__kernel_sockaddr_storage), "::", stringify!(__data) ) ); } impl Default for __kernel_sockaddr_storage { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } pub type __u_char = ::std::os::raw::c_uchar; pub type __u_short = ::std::os::raw::c_ushort; pub type __u_int = ::std::os::raw::c_uint; pub type __u_long = ::std::os::raw::c_ulong; pub type __int8_t = ::std::os::raw::c_schar; pub type __uint8_t = ::std::os::raw::c_uchar; pub type __int16_t = ::std::os::raw::c_short; pub type __uint16_t = ::std::os::raw::c_ushort; pub type __int32_t = ::std::os::raw::c_int; pub type __uint32_t = ::std::os::raw::c_uint; pub type __int64_t = ::std::os::raw::c_long; pub type __uint64_t = ::std::os::raw::c_ulong; pub type __quad_t = ::std::os::raw::c_long; pub type __u_quad_t = ::std::os::raw::c_ulong; pub type __dev_t = ::std::os::raw::c_ulong; pub type __uid_t = ::std::os::raw::c_uint; pub type __gid_t = ::std::os::raw::c_uint; pub type __ino_t = ::std::os::raw::c_ulong; pub type __ino64_t = ::std::os::raw::c_ulong; pub type __mode_t = ::std::os::raw::c_uint; pub type __nlink_t = ::std::os::raw::c_ulong; pub type __off_t = ::std::os::raw::c_long; pub type __off64_t = ::std::os::raw::c_long; pub type __pid_t = ::std::os::raw::c_int; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct __fsid_t { pub __val: [::std::os::raw::c_int; 2usize], } #[test] fn bindgen_test_layout___fsid_t() { assert_eq!( ::std::mem::size_of::<__fsid_t>(), 8usize, concat!("Size of: ", stringify!(__fsid_t)) ); assert_eq!( ::std::mem::align_of::<__fsid_t>(), 4usize, concat!("Alignment of ", stringify!(__fsid_t)) ); assert_eq!( unsafe { &(*(0 as *const __fsid_t)).__val as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(__fsid_t), "::", stringify!(__val) ) ); } impl Clone for __fsid_t { fn clone(&self) -> Self { *self } } pub type __clock_t = ::std::os::raw::c_long; pub type __rlim_t = ::std::os::raw::c_ulong; pub type __rlim64_t = ::std::os::raw::c_ulong; pub type __id_t = ::std::os::raw::c_uint; pub type __time_t = ::std::os::raw::c_long; pub type __useconds_t = ::std::os::raw::c_uint; pub type __suseconds_t = ::std::os::raw::c_long; pub type __daddr_t = ::std::os::raw::c_int; pub type __key_t = ::std::os::raw::c_int; pub type __clockid_t = ::std::os::raw::c_int; pub type __timer_t = *mut ::std::os::raw::c_void; pub type __blksize_t = ::std::os::raw::c_long; pub type __blkcnt_t = ::std::os::raw::c_long; pub type __blkcnt64_t = ::std::os::raw::c_long; pub type __fsblkcnt_t = ::std::os::raw::c_ulong; pub type __fsblkcnt64_t = ::std::os::raw::c_ulong; pub type __fsfilcnt_t = ::std::os::raw::c_ulong; pub type __fsfilcnt64_t = ::std::os::raw::c_ulong; pub type __fsword_t = ::std::os::raw::c_long; pub type __ssize_t = ::std::os::raw::c_long; pub type __syscall_slong_t = ::std::os::raw::c_long; pub type __syscall_ulong_t = ::std::os::raw::c_ulong; pub type __loff_t = __off64_t; pub type __qaddr_t = *mut __quad_t; pub type __caddr_t = *mut ::std::os::raw::c_char; pub type __intptr_t = ::std::os::raw::c_long; pub type __socklen_t = ::std::os::raw::c_uint; 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 time_t = __time_t; pub type clockid_t = __clockid_t; pub type timer_t = __timer_t; pub type ulong = ::std::os::raw::c_ulong; pub type ushort = ::std::os::raw::c_ushort; pub type uint = ::std::os::raw::c_uint; pub type u_int8_t = ::std::os::raw::c_uchar; pub type u_int16_t = ::std::os::raw::c_ushort; pub type u_int32_t = ::std::os::raw::c_uint; pub type u_int64_t = ::std::os::raw::c_ulong; pub type register_t = ::std::os::raw::c_long; pub type __sig_atomic_t = ::std::os::raw::c_int; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct __sigset_t { pub __val: [::std::os::raw::c_ulong; 16usize], } #[test] fn bindgen_test_layout___sigset_t() { assert_eq!( ::std::mem::size_of::<__sigset_t>(), 128usize, concat!("Size of: ", stringify!(__sigset_t)) ); assert_eq!( ::std::mem::align_of::<__sigset_t>(), 8usize, concat!("Alignment of ", stringify!(__sigset_t)) ); assert_eq!( unsafe { &(*(0 as *const __sigset_t)).__val as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(__sigset_t), "::", stringify!(__val) ) ); } impl Clone for __sigset_t { fn clone(&self) -> Self { *self } } pub type sigset_t = __sigset_t; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct timespec { pub tv_sec: __time_t, pub tv_nsec: __syscall_slong_t, } #[test] fn bindgen_test_layout_timespec() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(timespec)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(timespec)) ); assert_eq!( unsafe { &(*(0 as *const timespec)).tv_sec as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(timespec), "::", stringify!(tv_sec) ) ); assert_eq!( unsafe { &(*(0 as *const timespec)).tv_nsec as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(timespec), "::", stringify!(tv_nsec) ) ); } impl Clone for timespec { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct timeval { pub tv_sec: __time_t, pub tv_usec: __suseconds_t, } #[test] fn bindgen_test_layout_timeval() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(timeval)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(timeval)) ); assert_eq!( unsafe { &(*(0 as *const timeval)).tv_sec as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(timeval), "::", stringify!(tv_sec) ) ); assert_eq!( unsafe { &(*(0 as *const timeval)).tv_usec as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(timeval), "::", stringify!(tv_usec) ) ); } impl Clone for timeval { fn clone(&self) -> Self { *self } } pub type suseconds_t = __suseconds_t; pub type __fd_mask = ::std::os::raw::c_long; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct fd_set { pub __fds_bits: [__fd_mask; 16usize], } #[test] fn bindgen_test_layout_fd_set() { assert_eq!( ::std::mem::size_of::(), 128usize, concat!("Size of: ", stringify!(fd_set)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(fd_set)) ); assert_eq!( unsafe { &(*(0 as *const fd_set)).__fds_bits as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(fd_set), "::", stringify!(__fds_bits) ) ); } impl Clone for fd_set { fn clone(&self) -> Self { *self } } pub type fd_mask = __fd_mask; extern "C" { pub fn select( __nfds: ::std::os::raw::c_int, __readfds: *mut fd_set, __writefds: *mut fd_set, __exceptfds: *mut fd_set, __timeout: *mut timeval, ) -> ::std::os::raw::c_int; } extern "C" { pub fn pselect( __nfds: ::std::os::raw::c_int, __readfds: *mut fd_set, __writefds: *mut fd_set, __exceptfds: *mut fd_set, __timeout: *const timespec, __sigmask: *const __sigset_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn gnu_dev_major(__dev: ::std::os::raw::c_ulonglong) -> ::std::os::raw::c_uint; } extern "C" { pub fn gnu_dev_minor(__dev: ::std::os::raw::c_ulonglong) -> ::std::os::raw::c_uint; } extern "C" { pub fn gnu_dev_makedev( __major: ::std::os::raw::c_uint, __minor: ::std::os::raw::c_uint, ) -> ::std::os::raw::c_ulonglong; } pub type blksize_t = __blksize_t; pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; pub type pthread_t = ::std::os::raw::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_attr_t { pub __size: __BindgenUnionField<[::std::os::raw::c_char; 56usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_long>, pub bindgen_union_field: [u64; 7usize], } #[test] fn bindgen_test_layout_pthread_attr_t() { assert_eq!( ::std::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(pthread_attr_t)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_attr_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_attr_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_attr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_attr_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_attr_t), "::", stringify!(__align) ) ); } impl Clone for pthread_attr_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Copy)] pub struct __pthread_internal_list { pub __prev: *mut __pthread_internal_list, pub __next: *mut __pthread_internal_list, } #[test] fn bindgen_test_layout___pthread_internal_list() { assert_eq!( ::std::mem::size_of::<__pthread_internal_list>(), 16usize, concat!("Size of: ", stringify!(__pthread_internal_list)) ); assert_eq!( ::std::mem::align_of::<__pthread_internal_list>(), 8usize, concat!("Alignment of ", stringify!(__pthread_internal_list)) ); assert_eq!( unsafe { &(*(0 as *const __pthread_internal_list)).__prev as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(__pthread_internal_list), "::", stringify!(__prev) ) ); assert_eq!( unsafe { &(*(0 as *const __pthread_internal_list)).__next as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(__pthread_internal_list), "::", stringify!(__next) ) ); } impl Clone for __pthread_internal_list { fn clone(&self) -> Self { *self } } impl Default for __pthread_internal_list { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_mutex_t { pub __data: __BindgenUnionField, pub __size: __BindgenUnionField<[::std::os::raw::c_char; 40usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_long>, pub bindgen_union_field: [u64; 5usize], } #[repr(C)] #[derive(Debug, Copy)] pub struct pthread_mutex_t___pthread_mutex_s { pub __lock: ::std::os::raw::c_int, pub __count: ::std::os::raw::c_uint, pub __owner: ::std::os::raw::c_int, pub __nusers: ::std::os::raw::c_uint, pub __kind: ::std::os::raw::c_int, pub __spins: ::std::os::raw::c_short, pub __elision: ::std::os::raw::c_short, pub __list: __pthread_list_t, } #[test] fn bindgen_test_layout_pthread_mutex_t___pthread_mutex_s() { assert_eq!( ::std::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(pthread_mutex_t___pthread_mutex_s)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(pthread_mutex_t___pthread_mutex_s) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__lock as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__lock) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__count as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__count) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__owner as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__owner) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__nusers as *const _ as usize }, 12usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__nusers) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__kind as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__kind) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__spins as *const _ as usize }, 20usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__spins) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__elision as *const _ as usize }, 22usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__elision) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t___pthread_mutex_s)).__list as *const _ as usize }, 24usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t___pthread_mutex_s), "::", stringify!(__list) ) ); } impl Clone for pthread_mutex_t___pthread_mutex_s { fn clone(&self) -> Self { *self } } impl Default for pthread_mutex_t___pthread_mutex_s { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } #[test] fn bindgen_test_layout_pthread_mutex_t() { assert_eq!( ::std::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(pthread_mutex_t)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_mutex_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t)).__data as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t), "::", stringify!(__data) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutex_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_mutex_t), "::", stringify!(__align) ) ); } impl Clone for pthread_mutex_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_mutexattr_t { pub __size: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_int>, pub bindgen_union_field: u32, } #[test] fn bindgen_test_layout_pthread_mutexattr_t() { assert_eq!( ::std::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(pthread_mutexattr_t)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(pthread_mutexattr_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutexattr_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_mutexattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_mutexattr_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_mutexattr_t), "::", stringify!(__align) ) ); } impl Clone for pthread_mutexattr_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_cond_t { pub __data: __BindgenUnionField, pub __size: __BindgenUnionField<[::std::os::raw::c_char; 48usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_longlong>, pub bindgen_union_field: [u64; 6usize], } #[repr(C)] #[derive(Debug, Copy)] pub struct pthread_cond_t__bindgen_ty_1 { pub __lock: ::std::os::raw::c_int, pub __futex: ::std::os::raw::c_uint, pub __total_seq: ::std::os::raw::c_ulonglong, pub __wakeup_seq: ::std::os::raw::c_ulonglong, pub __woken_seq: ::std::os::raw::c_ulonglong, pub __mutex: *mut ::std::os::raw::c_void, pub __nwaiters: ::std::os::raw::c_uint, pub __broadcast_seq: ::std::os::raw::c_uint, } #[test] fn bindgen_test_layout_pthread_cond_t__bindgen_ty_1() { assert_eq!( ::std::mem::size_of::(), 48usize, concat!("Size of: ", stringify!(pthread_cond_t__bindgen_ty_1)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_cond_t__bindgen_ty_1)) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__lock as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__lock) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__futex as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__futex) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__total_seq as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__total_seq) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__wakeup_seq as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__wakeup_seq) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__woken_seq as *const _ as usize }, 24usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__woken_seq) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__mutex as *const _ as usize }, 32usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__mutex) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__nwaiters as *const _ as usize }, 40usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__nwaiters) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t__bindgen_ty_1)).__broadcast_seq as *const _ as usize }, 44usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t__bindgen_ty_1), "::", stringify!(__broadcast_seq) ) ); } impl Clone for pthread_cond_t__bindgen_ty_1 { fn clone(&self) -> Self { *self } } impl Default for pthread_cond_t__bindgen_ty_1 { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } #[test] fn bindgen_test_layout_pthread_cond_t() { assert_eq!( ::std::mem::size_of::(), 48usize, concat!("Size of: ", stringify!(pthread_cond_t)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_cond_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t)).__data as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t), "::", stringify!(__data) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_cond_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_cond_t), "::", stringify!(__align) ) ); } impl Clone for pthread_cond_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_condattr_t { pub __size: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_int>, pub bindgen_union_field: u32, } #[test] fn bindgen_test_layout_pthread_condattr_t() { assert_eq!( ::std::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(pthread_condattr_t)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(pthread_condattr_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_condattr_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_condattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_condattr_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_condattr_t), "::", stringify!(__align) ) ); } impl Clone for pthread_condattr_t { fn clone(&self) -> Self { *self } } pub type pthread_key_t = ::std::os::raw::c_uint; pub type pthread_once_t = ::std::os::raw::c_int; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_rwlock_t { pub __data: __BindgenUnionField, pub __size: __BindgenUnionField<[::std::os::raw::c_char; 56usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_long>, pub bindgen_union_field: [u64; 7usize], } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_rwlock_t__bindgen_ty_1 { pub __lock: ::std::os::raw::c_int, pub __nr_readers: ::std::os::raw::c_uint, pub __readers_wakeup: ::std::os::raw::c_uint, pub __writer_wakeup: ::std::os::raw::c_uint, pub __nr_readers_queued: ::std::os::raw::c_uint, pub __nr_writers_queued: ::std::os::raw::c_uint, pub __writer: ::std::os::raw::c_int, pub __shared: ::std::os::raw::c_int, pub __rwelision: ::std::os::raw::c_schar, pub __pad1: [::std::os::raw::c_uchar; 7usize], pub __pad2: ::std::os::raw::c_ulong, pub __flags: ::std::os::raw::c_uint, } #[test] fn bindgen_test_layout_pthread_rwlock_t__bindgen_ty_1() { assert_eq!( ::std::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(pthread_rwlock_t__bindgen_ty_1)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_rwlock_t__bindgen_ty_1)) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__lock as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__lock) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__nr_readers as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__nr_readers) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__readers_wakeup as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__readers_wakeup) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__writer_wakeup as *const _ as usize }, 12usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__writer_wakeup) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__nr_readers_queued as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__nr_readers_queued) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__nr_writers_queued as *const _ as usize }, 20usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__nr_writers_queued) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__writer as *const _ as usize }, 24usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__writer) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__shared as *const _ as usize }, 28usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__shared) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__rwelision as *const _ as usize }, 32usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__rwelision) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__pad1 as *const _ as usize }, 33usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__pad1) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__pad2 as *const _ as usize }, 40usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__pad2) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t__bindgen_ty_1)).__flags as *const _ as usize }, 48usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t__bindgen_ty_1), "::", stringify!(__flags) ) ); } impl Clone for pthread_rwlock_t__bindgen_ty_1 { fn clone(&self) -> Self { *self } } #[test] fn bindgen_test_layout_pthread_rwlock_t() { assert_eq!( ::std::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(pthread_rwlock_t)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_rwlock_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t)).__data as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t), "::", stringify!(__data) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlock_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_rwlock_t), "::", stringify!(__align) ) ); } impl Clone for pthread_rwlock_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_rwlockattr_t { pub __size: __BindgenUnionField<[::std::os::raw::c_char; 8usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_long>, pub bindgen_union_field: u64, } #[test] fn bindgen_test_layout_pthread_rwlockattr_t() { assert_eq!( ::std::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(pthread_rwlockattr_t)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_rwlockattr_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlockattr_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_rwlockattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_rwlockattr_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_rwlockattr_t), "::", stringify!(__align) ) ); } impl Clone for pthread_rwlockattr_t { fn clone(&self) -> Self { *self } } pub type pthread_spinlock_t = ::std::os::raw::c_int; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_barrier_t { pub __size: __BindgenUnionField<[::std::os::raw::c_char; 32usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_long>, pub bindgen_union_field: [u64; 4usize], } #[test] fn bindgen_test_layout_pthread_barrier_t() { assert_eq!( ::std::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(pthread_barrier_t)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_barrier_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_barrier_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_barrier_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_barrier_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_barrier_t), "::", stringify!(__align) ) ); } impl Clone for pthread_barrier_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct pthread_barrierattr_t { pub __size: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>, pub __align: __BindgenUnionField<::std::os::raw::c_int>, pub bindgen_union_field: u32, } #[test] fn bindgen_test_layout_pthread_barrierattr_t() { assert_eq!( ::std::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(pthread_barrierattr_t)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(pthread_barrierattr_t)) ); assert_eq!( unsafe { &(*(0 as *const pthread_barrierattr_t)).__size as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_barrierattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { &(*(0 as *const pthread_barrierattr_t)).__align as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(pthread_barrierattr_t), "::", stringify!(__align) ) ); } impl Clone for pthread_barrierattr_t { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Copy)] pub struct iovec { pub iov_base: *mut ::std::os::raw::c_void, pub iov_len: usize, } #[test] fn bindgen_test_layout_iovec() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(iovec)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(iovec)) ); assert_eq!( unsafe { &(*(0 as *const iovec)).iov_base as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(iovec), "::", stringify!(iov_base) ) ); assert_eq!( unsafe { &(*(0 as *const iovec)).iov_len as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(iovec), "::", stringify!(iov_len) ) ); } impl Clone for iovec { fn clone(&self) -> Self { *self } } impl Default for iovec { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } extern "C" { pub fn readv( __fd: ::std::os::raw::c_int, __iovec: *const iovec, __count: ::std::os::raw::c_int, ) -> isize; } extern "C" { pub fn writev( __fd: ::std::os::raw::c_int, __iovec: *const iovec, __count: ::std::os::raw::c_int, ) -> isize; } extern "C" { pub fn preadv( __fd: ::std::os::raw::c_int, __iovec: *const iovec, __count: ::std::os::raw::c_int, __offset: __off_t, ) -> isize; } extern "C" { pub fn pwritev( __fd: ::std::os::raw::c_int, __iovec: *const iovec, __count: ::std::os::raw::c_int, __offset: __off_t, ) -> isize; } 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::os::raw::c_uint; pub type sa_family_t = ::std::os::raw::c_ushort; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct sockaddr { pub sa_family: sa_family_t, pub sa_data: [::std::os::raw::c_char; 14usize], } #[test] fn bindgen_test_layout_sockaddr() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(sockaddr)) ); assert_eq!( ::std::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(sockaddr)) ); assert_eq!( unsafe { &(*(0 as *const sockaddr)).sa_family as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(sockaddr), "::", stringify!(sa_family) ) ); assert_eq!( unsafe { &(*(0 as *const sockaddr)).sa_data as *const _ as usize }, 2usize, concat!( "Alignment of field: ", stringify!(sockaddr), "::", stringify!(sa_data) ) ); } impl Clone for sockaddr { fn clone(&self) -> Self { *self } } #[repr(C)] pub struct sockaddr_storage { pub ss_family: sa_family_t, pub __ss_padding: [::std::os::raw::c_char; 118usize], pub __ss_align: ::std::os::raw::c_ulong, } #[test] fn bindgen_test_layout_sockaddr_storage() { assert_eq!( ::std::mem::size_of::(), 128usize, concat!("Size of: ", stringify!(sockaddr_storage)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(sockaddr_storage)) ); assert_eq!( unsafe { &(*(0 as *const sockaddr_storage)).ss_family as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(sockaddr_storage), "::", stringify!(ss_family) ) ); assert_eq!( unsafe { &(*(0 as *const sockaddr_storage)).__ss_padding as *const _ as usize }, 2usize, concat!( "Alignment of field: ", stringify!(sockaddr_storage), "::", stringify!(__ss_padding) ) ); assert_eq!( unsafe { &(*(0 as *const sockaddr_storage)).__ss_align as *const _ as usize }, 120usize, concat!( "Alignment of field: ", stringify!(sockaddr_storage), "::", stringify!(__ss_align) ) ); } impl Default for sockaddr_storage { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } 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_FASTOPEN: _bindgen_ty_1 = 536870912; pub const MSG_CMSG_CLOEXEC: _bindgen_ty_1 = 1073741824; pub type _bindgen_ty_1 = ::std::os::raw::c_uint; #[repr(C)] #[derive(Debug, Copy)] pub struct msghdr { pub msg_name: *mut ::std::os::raw::c_void, pub msg_namelen: socklen_t, pub msg_iov: *mut iovec, pub msg_iovlen: usize, pub msg_control: *mut ::std::os::raw::c_void, pub msg_controllen: usize, pub msg_flags: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_msghdr() { assert_eq!( ::std::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(msghdr)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(msghdr)) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_name as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_name) ) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_namelen as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_namelen) ) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_iov as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_iov) ) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_iovlen as *const _ as usize }, 24usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_iovlen) ) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_control as *const _ as usize }, 32usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_control) ) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_controllen as *const _ as usize }, 40usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_controllen) ) ); assert_eq!( unsafe { &(*(0 as *const msghdr)).msg_flags as *const _ as usize }, 48usize, concat!( "Alignment of field: ", stringify!(msghdr), "::", stringify!(msg_flags) ) ); } impl Clone for msghdr { fn clone(&self) -> Self { *self } } impl Default for msghdr { fn default() -> Self { unsafe { ::std::mem::zeroed() } } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct cmsghdr { pub cmsg_len: usize, pub cmsg_level: ::std::os::raw::c_int, pub cmsg_type: ::std::os::raw::c_int, pub __cmsg_data: __IncompleteArrayField<::std::os::raw::c_uchar>, } #[test] fn bindgen_test_layout_cmsghdr() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(cmsghdr)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(cmsghdr)) ); } impl Clone for cmsghdr { fn clone(&self) -> Self { *self } } 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::os::raw::c_uint; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct linger { pub l_onoff: ::std::os::raw::c_int, pub l_linger: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_linger() { assert_eq!( ::std::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(linger)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(linger)) ); assert_eq!( unsafe { &(*(0 as *const linger)).l_onoff as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(linger), "::", stringify!(l_onoff) ) ); assert_eq!( unsafe { &(*(0 as *const linger)).l_linger as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(linger), "::", stringify!(l_linger) ) ); } impl Clone for linger { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct osockaddr { pub sa_family: ::std::os::raw::c_ushort, pub sa_data: [::std::os::raw::c_uchar; 14usize], } #[test] fn bindgen_test_layout_osockaddr() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(osockaddr)) ); assert_eq!( ::std::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(osockaddr)) ); assert_eq!( unsafe { &(*(0 as *const osockaddr)).sa_family as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(osockaddr), "::", stringify!(sa_family) ) ); assert_eq!( unsafe { &(*(0 as *const osockaddr)).sa_data as *const _ as usize }, 2usize, concat!( "Alignment of field: ", stringify!(osockaddr), "::", stringify!(sa_data) ) ); } impl Clone for osockaddr { fn clone(&self) -> Self { *self } } 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::os::raw::c_uint; extern "C" { pub fn socket( __domain: ::std::os::raw::c_int, __type: ::std::os::raw::c_int, __protocol: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; } extern "C" { pub fn socketpair( __domain: ::std::os::raw::c_int, __type: ::std::os::raw::c_int, __protocol: ::std::os::raw::c_int, __fds: *mut ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; } extern "C" { pub fn bind( __fd: ::std::os::raw::c_int, __addr: *const sockaddr, __len: socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn getsockname( __fd: ::std::os::raw::c_int, __addr: *mut sockaddr, __len: *mut socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn connect( __fd: ::std::os::raw::c_int, __addr: *const sockaddr, __len: socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn getpeername( __fd: ::std::os::raw::c_int, __addr: *mut sockaddr, __len: *mut socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn send( __fd: ::std::os::raw::c_int, __buf: *const ::std::os::raw::c_void, __n: usize, __flags: ::std::os::raw::c_int, ) -> isize; } extern "C" { pub fn recv( __fd: ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_void, __n: usize, __flags: ::std::os::raw::c_int, ) -> isize; } extern "C" { pub fn sendto( __fd: ::std::os::raw::c_int, __buf: *const ::std::os::raw::c_void, __n: usize, __flags: ::std::os::raw::c_int, __addr: *const sockaddr, __addr_len: socklen_t, ) -> isize; } extern "C" { pub fn recvfrom( __fd: ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_void, __n: usize, __flags: ::std::os::raw::c_int, __addr: *mut sockaddr, __addr_len: *mut socklen_t, ) -> isize; } extern "C" { pub fn sendmsg( __fd: ::std::os::raw::c_int, __message: *const msghdr, __flags: ::std::os::raw::c_int, ) -> isize; } extern "C" { pub fn recvmsg( __fd: ::std::os::raw::c_int, __message: *mut msghdr, __flags: ::std::os::raw::c_int, ) -> isize; } extern "C" { pub fn getsockopt( __fd: ::std::os::raw::c_int, __level: ::std::os::raw::c_int, __optname: ::std::os::raw::c_int, __optval: *mut ::std::os::raw::c_void, __optlen: *mut socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn setsockopt( __fd: ::std::os::raw::c_int, __level: ::std::os::raw::c_int, __optname: ::std::os::raw::c_int, __optval: *const ::std::os::raw::c_void, __optlen: socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn listen(__fd: ::std::os::raw::c_int, __n: ::std::os::raw::c_int) -> ::std::os::raw::c_int; } extern "C" { pub fn accept( __fd: ::std::os::raw::c_int, __addr: *mut sockaddr, __addr_len: *mut socklen_t, ) -> ::std::os::raw::c_int; } extern "C" { pub fn shutdown( __fd: ::std::os::raw::c_int, __how: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; } extern "C" { pub fn sockatmark(__fd: ::std::os::raw::c_int) -> ::std::os::raw::c_int; } extern "C" { pub fn isfdtype( __fd: ::std::os::raw::c_int, __fdtype: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct sync_serial_settings { pub clock_rate: ::std::os::raw::c_uint, pub clock_type: ::std::os::raw::c_uint, pub loopback: ::std::os::raw::c_ushort, } #[test] fn bindgen_test_layout_sync_serial_settings() { assert_eq!( ::std::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(sync_serial_settings)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(sync_serial_settings)) ); assert_eq!( unsafe { &(*(0 as *const sync_serial_settings)).clock_rate as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(sync_serial_settings), "::", stringify!(clock_rate) ) ); assert_eq!( unsafe { &(*(0 as *const sync_serial_settings)).clock_type as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(sync_serial_settings), "::", stringify!(clock_type) ) ); assert_eq!( unsafe { &(*(0 as *const sync_serial_settings)).loopback as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(sync_serial_settings), "::", stringify!(loopback) ) ); } impl Clone for sync_serial_settings { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct te1_settings { pub clock_rate: ::std::os::raw::c_uint, pub clock_type: ::std::os::raw::c_uint, pub loopback: ::std::os::raw::c_ushort, pub slot_map: ::std::os::raw::c_uint, } #[test] fn bindgen_test_layout_te1_settings() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(te1_settings)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(te1_settings)) ); assert_eq!( unsafe { &(*(0 as *const te1_settings)).clock_rate as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(te1_settings), "::", stringify!(clock_rate) ) ); assert_eq!( unsafe { &(*(0 as *const te1_settings)).clock_type as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(te1_settings), "::", stringify!(clock_type) ) ); assert_eq!( unsafe { &(*(0 as *const te1_settings)).loopback as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(te1_settings), "::", stringify!(loopback) ) ); assert_eq!( unsafe { &(*(0 as *const te1_settings)).slot_map as *const _ as usize }, 12usize, concat!( "Alignment of field: ", stringify!(te1_settings), "::", stringify!(slot_map) ) ); } impl Clone for te1_settings { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct raw_hdlc_proto { pub encoding: ::std::os::raw::c_ushort, pub parity: ::std::os::raw::c_ushort, } #[test] fn bindgen_test_layout_raw_hdlc_proto() { assert_eq!( ::std::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(raw_hdlc_proto)) ); assert_eq!( ::std::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(raw_hdlc_proto)) ); assert_eq!( unsafe { &(*(0 as *const raw_hdlc_proto)).encoding as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(raw_hdlc_proto), "::", stringify!(encoding) ) ); assert_eq!( unsafe { &(*(0 as *const raw_hdlc_proto)).parity as *const _ as usize }, 2usize, concat!( "Alignment of field: ", stringify!(raw_hdlc_proto), "::", stringify!(parity) ) ); } impl Clone for raw_hdlc_proto { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct fr_proto { pub t391: ::std::os::raw::c_uint, pub t392: ::std::os::raw::c_uint, pub n391: ::std::os::raw::c_uint, pub n392: ::std::os::raw::c_uint, pub n393: ::std::os::raw::c_uint, pub lmi: ::std::os::raw::c_ushort, pub dce: ::std::os::raw::c_ushort, } #[test] fn bindgen_test_layout_fr_proto() { assert_eq!( ::std::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(fr_proto)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(fr_proto)) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).t391 as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(t391) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).t392 as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(t392) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).n391 as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(n391) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).n392 as *const _ as usize }, 12usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(n392) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).n393 as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(n393) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).lmi as *const _ as usize }, 20usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(lmi) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto)).dce as *const _ as usize }, 22usize, concat!( "Alignment of field: ", stringify!(fr_proto), "::", stringify!(dce) ) ); } impl Clone for fr_proto { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct fr_proto_pvc { pub dlci: ::std::os::raw::c_uint, } #[test] fn bindgen_test_layout_fr_proto_pvc() { assert_eq!( ::std::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(fr_proto_pvc)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(fr_proto_pvc)) ); assert_eq!( unsafe { &(*(0 as *const fr_proto_pvc)).dlci as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(fr_proto_pvc), "::", stringify!(dlci) ) ); } impl Clone for fr_proto_pvc { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct fr_proto_pvc_info { pub dlci: ::std::os::raw::c_uint, pub master: [::std::os::raw::c_char; 16usize], } #[test] fn bindgen_test_layout_fr_proto_pvc_info() { assert_eq!( ::std::mem::size_of::(), 20usize, concat!("Size of: ", stringify!(fr_proto_pvc_info)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(fr_proto_pvc_info)) ); assert_eq!( unsafe { &(*(0 as *const fr_proto_pvc_info)).dlci as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(fr_proto_pvc_info), "::", stringify!(dlci) ) ); assert_eq!( unsafe { &(*(0 as *const fr_proto_pvc_info)).master as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(fr_proto_pvc_info), "::", stringify!(master) ) ); } impl Clone for fr_proto_pvc_info { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct cisco_proto { pub interval: ::std::os::raw::c_uint, pub timeout: ::std::os::raw::c_uint, } #[test] fn bindgen_test_layout_cisco_proto() { assert_eq!( ::std::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(cisco_proto)) ); assert_eq!( ::std::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(cisco_proto)) ); assert_eq!( unsafe { &(*(0 as *const cisco_proto)).interval as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(cisco_proto), "::", stringify!(interval) ) ); assert_eq!( unsafe { &(*(0 as *const cisco_proto)).timeout as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(cisco_proto), "::", stringify!(timeout) ) ); } impl Clone for cisco_proto { fn clone(&self) -> Self { *self } } pub const net_device_flags_IFF_UP: net_device_flags = 1; pub const net_device_flags_IFF_BROADCAST: net_device_flags = 2; pub const net_device_flags_IFF_DEBUG: net_device_flags = 4; pub const net_device_flags_IFF_LOOPBACK: net_device_flags = 8; pub const net_device_flags_IFF_POINTOPOINT: net_device_flags = 16; pub const net_device_flags_IFF_NOTRAILERS: net_device_flags = 32; pub const net_device_flags_IFF_RUNNING: net_device_flags = 64; pub const net_device_flags_IFF_NOARP: net_device_flags = 128; pub const net_device_flags_IFF_PROMISC: net_device_flags = 256; pub const net_device_flags_IFF_ALLMULTI: net_device_flags = 512; pub const net_device_flags_IFF_MASTER: net_device_flags = 1024; pub const net_device_flags_IFF_SLAVE: net_device_flags = 2048; pub const net_device_flags_IFF_MULTICAST: net_device_flags = 4096; pub const net_device_flags_IFF_PORTSEL: net_device_flags = 8192; pub const net_device_flags_IFF_AUTOMEDIA: net_device_flags = 16384; pub const net_device_flags_IFF_DYNAMIC: net_device_flags = 32768; /** * enum net_device_flags - &struct net_device flags * * These are the &struct net_device flags, they can be set by drivers, the * kernel and some can be triggered by userspace. Userspace can query and * set these flags using userspace utilities but there is also a sysfs * entry available for all dev flags which can be queried and set. These flags * are shared for all types of net_devices. The sysfs entries are available * via /sys/class/net//flags. Flags which can be toggled through sysfs * are annotated below, note that only a few flags can be toggled and some * other flags are always preserved from the original net_device flags * even if you try to set them via sysfs. Flags which are always preserved * are kept under the flag grouping @IFF_VOLATILE. Flags which are __volatile__ * are annotated below as such. * * You should have a pretty good reason to be extending these flags. * * @IFF_UP: interface is up. Can be toggled through sysfs. * @IFF_BROADCAST: broadcast address valid. Volatile. * @IFF_DEBUG: turn on debugging. Can be toggled through sysfs. * @IFF_LOOPBACK: is a loopback net. Volatile. * @IFF_POINTOPOINT: interface is has p-p link. Volatile. * @IFF_NOTRAILERS: avoid use of trailers. Can be toggled through sysfs. * Volatile. * @IFF_RUNNING: interface RFC2863 OPER_UP. Volatile. * @IFF_NOARP: no ARP protocol. Can be toggled through sysfs. Volatile. * @IFF_PROMISC: receive all packets. Can be toggled through sysfs. * @IFF_ALLMULTI: receive all multicast packets. Can be toggled through * sysfs. * @IFF_MASTER: master of a load balancer. Volatile. * @IFF_SLAVE: slave of a load balancer. Volatile. * @IFF_MULTICAST: Supports multicast. Can be toggled through sysfs. * @IFF_PORTSEL: can set media type. Can be toggled through sysfs. * @IFF_AUTOMEDIA: auto media select active. Can be toggled through sysfs. * @IFF_DYNAMIC: dialup device with changing addresses. Can be toggled * through sysfs. * @IFF_LOWER_UP: driver signals L1 up. Volatile. * @IFF_DORMANT: driver signals dormant. Volatile. * @IFF_ECHO: echo sent packets. Volatile. */ pub type net_device_flags = ::std::os::raw::c_uint; pub const IF_OPER_UNKNOWN: _bindgen_ty_4 = 0; pub const IF_OPER_NOTPRESENT: _bindgen_ty_4 = 1; pub const IF_OPER_DOWN: _bindgen_ty_4 = 2; pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_4 = 3; pub const IF_OPER_TESTING: _bindgen_ty_4 = 4; pub const IF_OPER_DORMANT: _bindgen_ty_4 = 5; pub const IF_OPER_UP: _bindgen_ty_4 = 6; pub type _bindgen_ty_4 = ::std::os::raw::c_uint; pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_5 = 0; pub const IF_LINK_MODE_DORMANT: _bindgen_ty_5 = 1; pub type _bindgen_ty_5 = ::std::os::raw::c_uint; #[repr(C)] #[derive(Debug, Default, Copy)] pub struct ifmap { pub mem_start: ::std::os::raw::c_ulong, pub mem_end: ::std::os::raw::c_ulong, pub base_addr: ::std::os::raw::c_ushort, pub irq: ::std::os::raw::c_uchar, pub dma: ::std::os::raw::c_uchar, pub port: ::std::os::raw::c_uchar, } #[test] fn bindgen_test_layout_ifmap() { assert_eq!( ::std::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(ifmap)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(ifmap)) ); assert_eq!( unsafe { &(*(0 as *const ifmap)).mem_start as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifmap), "::", stringify!(mem_start) ) ); assert_eq!( unsafe { &(*(0 as *const ifmap)).mem_end as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(ifmap), "::", stringify!(mem_end) ) ); assert_eq!( unsafe { &(*(0 as *const ifmap)).base_addr as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(ifmap), "::", stringify!(base_addr) ) ); assert_eq!( unsafe { &(*(0 as *const ifmap)).irq as *const _ as usize }, 18usize, concat!( "Alignment of field: ", stringify!(ifmap), "::", stringify!(irq) ) ); assert_eq!( unsafe { &(*(0 as *const ifmap)).dma as *const _ as usize }, 19usize, concat!( "Alignment of field: ", stringify!(ifmap), "::", stringify!(dma) ) ); assert_eq!( unsafe { &(*(0 as *const ifmap)).port as *const _ as usize }, 20usize, concat!( "Alignment of field: ", stringify!(ifmap), "::", stringify!(port) ) ); } impl Clone for ifmap { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct if_settings { pub type_: ::std::os::raw::c_uint, pub size: ::std::os::raw::c_uint, pub ifs_ifsu: if_settings__bindgen_ty_1, } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct if_settings__bindgen_ty_1 { pub raw_hdlc: __BindgenUnionField<*mut raw_hdlc_proto>, pub cisco: __BindgenUnionField<*mut cisco_proto>, pub fr: __BindgenUnionField<*mut fr_proto>, pub fr_pvc: __BindgenUnionField<*mut fr_proto_pvc>, pub fr_pvc_info: __BindgenUnionField<*mut fr_proto_pvc_info>, pub sync: __BindgenUnionField<*mut sync_serial_settings>, pub te1: __BindgenUnionField<*mut te1_settings>, pub bindgen_union_field: u64, } #[test] fn bindgen_test_layout_if_settings__bindgen_ty_1() { assert_eq!( ::std::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(if_settings__bindgen_ty_1)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(if_settings__bindgen_ty_1)) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).raw_hdlc as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(raw_hdlc) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).cisco as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(cisco) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).fr as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(fr) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).fr_pvc as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(fr_pvc) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).fr_pvc_info as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(fr_pvc_info) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).sync as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(sync) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings__bindgen_ty_1)).te1 as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings__bindgen_ty_1), "::", stringify!(te1) ) ); } impl Clone for if_settings__bindgen_ty_1 { fn clone(&self) -> Self { *self } } #[test] fn bindgen_test_layout_if_settings() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(if_settings)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(if_settings)) ); assert_eq!( unsafe { &(*(0 as *const if_settings)).type_ as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(if_settings), "::", stringify!(type_) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings)).size as *const _ as usize }, 4usize, concat!( "Alignment of field: ", stringify!(if_settings), "::", stringify!(size) ) ); assert_eq!( unsafe { &(*(0 as *const if_settings)).ifs_ifsu as *const _ as usize }, 8usize, concat!( "Alignment of field: ", stringify!(if_settings), "::", stringify!(ifs_ifsu) ) ); } impl Clone for if_settings { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct ifreq { pub ifr_ifrn: ifreq__bindgen_ty_1, pub ifr_ifru: ifreq__bindgen_ty_2, } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct ifreq__bindgen_ty_1 { pub ifrn_name: __BindgenUnionField<[::std::os::raw::c_uchar; 16usize]>, pub bindgen_union_field: [u8; 16usize], } #[test] fn bindgen_test_layout_ifreq__bindgen_ty_1() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(ifreq__bindgen_ty_1)) ); assert_eq!( ::std::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(ifreq__bindgen_ty_1)) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_1)).ifrn_name as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_1), "::", stringify!(ifrn_name) ) ); } impl Clone for ifreq__bindgen_ty_1 { fn clone(&self) -> Self { *self } } #[repr(C)] #[derive(Debug, Default, Copy)] pub struct ifreq__bindgen_ty_2 { pub ifru_addr: __BindgenUnionField, pub ifru_dstaddr: __BindgenUnionField, pub ifru_broadaddr: __BindgenUnionField, pub ifru_netmask: __BindgenUnionField, pub ifru_hwaddr: __BindgenUnionField, pub ifru_flags: __BindgenUnionField<::std::os::raw::c_short>, pub ifru_ivalue: __BindgenUnionField<::std::os::raw::c_int>, pub ifru_mtu: __BindgenUnionField<::std::os::raw::c_int>, pub ifru_map: __BindgenUnionField, pub ifru_slave: __BindgenUnionField<[::std::os::raw::c_char; 16usize]>, pub ifru_newname: __BindgenUnionField<[::std::os::raw::c_char; 16usize]>, pub ifru_data: __BindgenUnionField<*mut ::std::os::raw::c_void>, pub ifru_settings: __BindgenUnionField, pub bindgen_union_field: [u64; 3usize], } #[test] fn bindgen_test_layout_ifreq__bindgen_ty_2() { assert_eq!( ::std::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(ifreq__bindgen_ty_2)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(ifreq__bindgen_ty_2)) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_addr as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_addr) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_dstaddr as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_dstaddr) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_broadaddr as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_broadaddr) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_netmask as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_netmask) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_hwaddr as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_hwaddr) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_flags as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_flags) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_ivalue as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_ivalue) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_mtu as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_mtu) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_map as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_map) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_slave as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_slave) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_newname as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_newname) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_data as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_data) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq__bindgen_ty_2)).ifru_settings as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq__bindgen_ty_2), "::", stringify!(ifru_settings) ) ); } impl Clone for ifreq__bindgen_ty_2 { fn clone(&self) -> Self { *self } } #[test] fn bindgen_test_layout_ifreq() { assert_eq!( ::std::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(ifreq)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(ifreq)) ); assert_eq!( unsafe { &(*(0 as *const ifreq)).ifr_ifrn as *const _ as usize }, 0usize, concat!( "Alignment of field: ", stringify!(ifreq), "::", stringify!(ifr_ifrn) ) ); assert_eq!( unsafe { &(*(0 as *const ifreq)).ifr_ifru as *const _ as usize }, 16usize, concat!( "Alignment of field: ", stringify!(ifreq), "::", stringify!(ifr_ifru) ) ); } impl Clone for ifreq { fn clone(&self) -> Self { *self } }