1pub type __s8 = crate::ctypes::c_schar;
4pub type __u8 = crate::ctypes::c_uchar;
5pub type __s16 = crate::ctypes::c_short;
6pub type __u16 = crate::ctypes::c_ushort;
7pub type __s32 = crate::ctypes::c_int;
8pub type __u32 = crate::ctypes::c_uint;
9pub type __s64 = crate::ctypes::c_longlong;
10pub type __u64 = crate::ctypes::c_ulonglong;
11pub type __kernel_key_t = crate::ctypes::c_int;
12pub type __kernel_mqd_t = crate::ctypes::c_int;
13pub type __kernel_mode_t = crate::ctypes::c_ushort;
14pub type __kernel_ipc_pid_t = crate::ctypes::c_ushort;
15pub type __kernel_uid_t = crate::ctypes::c_ushort;
16pub type __kernel_gid_t = crate::ctypes::c_ushort;
17pub type __kernel_old_dev_t = crate::ctypes::c_ushort;
18pub type __kernel_long_t = crate::ctypes::c_long;
19pub type __kernel_ulong_t = crate::ctypes::c_ulong;
20pub type __kernel_ino_t = __kernel_ulong_t;
21pub type __kernel_pid_t = crate::ctypes::c_int;
22pub type __kernel_suseconds_t = __kernel_long_t;
23pub type __kernel_daddr_t = crate::ctypes::c_int;
24pub type __kernel_uid32_t = crate::ctypes::c_uint;
25pub type __kernel_gid32_t = crate::ctypes::c_uint;
26pub type __kernel_old_uid_t = __kernel_uid_t;
27pub type __kernel_old_gid_t = __kernel_gid_t;
28pub type __kernel_size_t = crate::ctypes::c_uint;
29pub type __kernel_ssize_t = crate::ctypes::c_int;
30pub type __kernel_ptrdiff_t = crate::ctypes::c_int;
31pub type __kernel_off_t = __kernel_long_t;
32pub type __kernel_loff_t = crate::ctypes::c_longlong;
33pub type __kernel_old_time_t = __kernel_long_t;
34pub type __kernel_time_t = __kernel_long_t;
35pub type __kernel_time64_t = crate::ctypes::c_longlong;
36pub type __kernel_clock_t = __kernel_long_t;
37pub type __kernel_timer_t = crate::ctypes::c_int;
38pub type __kernel_clockid_t = crate::ctypes::c_int;
39pub type __kernel_caddr_t = *mut crate::ctypes::c_char;
40pub type __kernel_uid16_t = crate::ctypes::c_ushort;
41pub type __kernel_gid16_t = crate::ctypes::c_ushort;
42pub type __le16 = __u16;
43pub type __be16 = __u16;
44pub type __le32 = __u32;
45pub type __be32 = __u32;
46pub type __le64 = __u64;
47pub type __be64 = __u64;
48pub type __sum16 = __u16;
49pub type __wsum = __u32;
50pub type __poll_t = crate::ctypes::c_uint;
51pub type __kernel_sa_family_t = crate::ctypes::c_ushort;
52pub type socklen_t = crate::ctypes::c_uint;
53#[repr(C)]
54#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
55pub struct __BindgenBitfieldUnit<Storage> {
56storage: Storage,
57}
58#[repr(C)]
59#[derive(Default)]
60pub struct __IncompleteArrayField<T>(::core::marker::PhantomData<T>, [T; 0]);
61#[repr(C)]
62pub struct __BindgenUnionField<T>(::core::marker::PhantomData<T>);
63#[repr(C)]
64#[derive(Copy, Clone)]
65pub struct __kernel_sockaddr_storage {
66pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1,
67}
68#[repr(C)]
69#[derive(Debug, Copy, Clone)]
70pub struct __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
71pub ss_family: __kernel_sa_family_t,
72pub __data: [crate::ctypes::c_char; 126usize],
73}
74#[repr(C)]
75#[derive(Debug, Copy, Clone)]
76pub struct in_addr {
77pub s_addr: __be32,
78}
79#[repr(C)]
80#[derive(Debug, Copy, Clone)]
81pub struct ip_mreq {
82pub imr_multiaddr: in_addr,
83pub imr_interface: in_addr,
84}
85#[repr(C)]
86#[derive(Debug, Copy, Clone)]
87pub struct ip_mreqn {
88pub imr_multiaddr: in_addr,
89pub imr_address: in_addr,
90pub imr_ifindex: crate::ctypes::c_int,
91}
92#[repr(C)]
93#[derive(Debug, Copy, Clone)]
94pub struct ip_mreq_source {
95pub imr_multiaddr: __be32,
96pub imr_interface: __be32,
97pub imr_sourceaddr: __be32,
98}
99#[repr(C)]
100pub struct ip_msfilter {
101pub imsf_multiaddr: __be32,
102pub imsf_interface: __be32,
103pub imsf_fmode: __u32,
104pub imsf_numsrc: __u32,
105pub __bindgen_anon_1: ip_msfilter__bindgen_ty_1,
106}
107#[repr(C)]
108pub struct ip_msfilter__bindgen_ty_1 {
109pub imsf_slist: __BindgenUnionField<[__be32; 1usize]>,
110pub __bindgen_anon_1: __BindgenUnionField<ip_msfilter__bindgen_ty_1__bindgen_ty_1>,
111pub bindgen_union_field: u32,
112}
113#[repr(C)]
114#[derive(Debug)]
115pub struct ip_msfilter__bindgen_ty_1__bindgen_ty_1 {
116pub __empty_imsf_slist_flex: ip_msfilter__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
117pub imsf_slist_flex: __IncompleteArrayField<__be32>,
118}
119#[repr(C)]
120#[derive(Debug, Copy, Clone)]
121pub struct ip_msfilter__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
122#[repr(C)]
123#[derive(Copy, Clone)]
124pub struct group_req {
125pub gr_interface: __u32,
126pub gr_group: __kernel_sockaddr_storage,
127}
128#[repr(C)]
129#[derive(Copy, Clone)]
130pub struct group_source_req {
131pub gsr_interface: __u32,
132pub gsr_group: __kernel_sockaddr_storage,
133pub gsr_source: __kernel_sockaddr_storage,
134}
135#[repr(C)]
136pub struct group_filter {
137pub __bindgen_anon_1: group_filter__bindgen_ty_1,
138}
139#[repr(C)]
140pub struct group_filter__bindgen_ty_1 {
141pub __bindgen_anon_1: __BindgenUnionField<group_filter__bindgen_ty_1__bindgen_ty_1>,
142pub __bindgen_anon_2: __BindgenUnionField<group_filter__bindgen_ty_1__bindgen_ty_2>,
143pub bindgen_union_field: [u32; 67usize],
144}
145#[repr(C)]
146#[derive(Copy, Clone)]
147pub struct group_filter__bindgen_ty_1__bindgen_ty_1 {
148pub gf_interface_aux: __u32,
149pub gf_group_aux: __kernel_sockaddr_storage,
150pub gf_fmode_aux: __u32,
151pub gf_numsrc_aux: __u32,
152pub gf_slist: [__kernel_sockaddr_storage; 1usize],
153}
154#[repr(C)]
155pub struct group_filter__bindgen_ty_1__bindgen_ty_2 {
156pub gf_interface: __u32,
157pub gf_group: __kernel_sockaddr_storage,
158pub gf_fmode: __u32,
159pub gf_numsrc: __u32,
160pub gf_slist_flex: __IncompleteArrayField<__kernel_sockaddr_storage>,
161}
162#[repr(C)]
163#[derive(Debug, Copy, Clone)]
164pub struct in_pktinfo {
165pub ipi_ifindex: crate::ctypes::c_int,
166pub ipi_spec_dst: in_addr,
167pub ipi_addr: in_addr,
168}
169#[repr(C)]
170#[derive(Debug, Copy, Clone)]
171pub struct sockaddr_in {
172pub sin_family: __kernel_sa_family_t,
173pub sin_port: __be16,
174pub sin_addr: in_addr,
175pub __pad: [crate::ctypes::c_uchar; 8usize],
176}
177#[repr(C)]
178#[derive(Copy, Clone)]
179pub struct iphdr {
180pub _bitfield_align_1: [u8; 0],
181pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
182pub tos: __u8,
183pub tot_len: __be16,
184pub id: __be16,
185pub frag_off: __be16,
186pub ttl: __u8,
187pub protocol: __u8,
188pub check: __sum16,
189pub __bindgen_anon_1: iphdr__bindgen_ty_1,
190}
191#[repr(C)]
192#[derive(Debug, Copy, Clone)]
193pub struct iphdr__bindgen_ty_1__bindgen_ty_1 {
194pub saddr: __be32,
195pub daddr: __be32,
196}
197#[repr(C)]
198#[derive(Debug, Copy, Clone)]
199pub struct iphdr__bindgen_ty_1__bindgen_ty_2 {
200pub saddr: __be32,
201pub daddr: __be32,
202}
203#[repr(C)]
204#[derive(Debug)]
205pub struct ip_auth_hdr {
206pub nexthdr: __u8,
207pub hdrlen: __u8,
208pub reserved: __be16,
209pub spi: __be32,
210pub seq_no: __be32,
211pub auth_data: __IncompleteArrayField<__u8>,
212}
213#[repr(C)]
214#[derive(Debug)]
215pub struct ip_esp_hdr {
216pub spi: __be32,
217pub seq_no: __be32,
218pub enc_data: __IncompleteArrayField<__u8>,
219}
220#[repr(C)]
221#[derive(Debug, Copy, Clone)]
222pub struct ip_comp_hdr {
223pub nexthdr: __u8,
224pub flags: __u8,
225pub cpi: __be16,
226}
227#[repr(C)]
228#[derive(Debug, Copy, Clone)]
229pub struct ip_beet_phdr {
230pub nexthdr: __u8,
231pub hdrlen: __u8,
232pub padlen: __u8,
233pub reserved: __u8,
234}
235#[repr(C)]
236#[derive(Copy, Clone)]
237pub struct in6_addr {
238pub in6_u: in6_addr__bindgen_ty_1,
239}
240#[repr(C)]
241#[derive(Copy, Clone)]
242pub struct sockaddr_in6 {
243pub sin6_family: crate::ctypes::c_ushort,
244pub sin6_port: __be16,
245pub sin6_flowinfo: __be32,
246pub sin6_addr: in6_addr,
247pub sin6_scope_id: __u32,
248}
249#[repr(C)]
250#[derive(Copy, Clone)]
251pub struct ipv6_mreq {
252pub ipv6mr_multiaddr: in6_addr,
253pub ipv6mr_ifindex: crate::ctypes::c_int,
254}
255#[repr(C)]
256#[derive(Copy, Clone)]
257pub struct in6_flowlabel_req {
258pub flr_dst: in6_addr,
259pub flr_label: __be32,
260pub flr_action: __u8,
261pub flr_share: __u8,
262pub flr_flags: __u16,
263pub flr_expires: __u16,
264pub flr_linger: __u16,
265pub __flr_pad: __u32,
266}
267#[repr(C)]
268#[derive(Copy, Clone)]
269pub struct in6_pktinfo {
270pub ipi6_addr: in6_addr,
271pub ipi6_ifindex: crate::ctypes::c_int,
272}
273#[repr(C)]
274#[derive(Copy, Clone)]
275pub struct ip6_mtuinfo {
276pub ip6m_addr: sockaddr_in6,
277pub ip6m_mtu: __u32,
278}
279#[repr(C)]
280#[derive(Copy, Clone)]
281pub struct in6_ifreq {
282pub ifr6_addr: in6_addr,
283pub ifr6_prefixlen: __u32,
284pub ifr6_ifindex: crate::ctypes::c_int,
285}
286#[repr(C)]
287#[derive(Debug, Copy, Clone)]
288pub struct ipv6_rt_hdr {
289pub nexthdr: __u8,
290pub hdrlen: __u8,
291pub type_: __u8,
292pub segments_left: __u8,
293}
294#[repr(C, packed)]
295#[derive(Debug, Copy, Clone)]
296pub struct ipv6_opt_hdr {
297pub nexthdr: __u8,
298pub hdrlen: __u8,
299}
300#[repr(C)]
301pub struct rt0_hdr {
302pub rt_hdr: ipv6_rt_hdr,
303pub reserved: __u32,
304pub addr: __IncompleteArrayField<in6_addr>,
305}
306#[repr(C)]
307#[derive(Copy, Clone)]
308pub struct rt2_hdr {
309pub rt_hdr: ipv6_rt_hdr,
310pub reserved: __u32,
311pub addr: in6_addr,
312}
313#[repr(C, packed)]
314#[derive(Copy, Clone)]
315pub struct ipv6_destopt_hao {
316pub type_: __u8,
317pub length: __u8,
318pub addr: in6_addr,
319}
320#[repr(C)]
321#[derive(Copy, Clone)]
322pub struct ipv6hdr {
323pub _bitfield_align_1: [u8; 0],
324pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
325pub flow_lbl: [__u8; 3usize],
326pub payload_len: __be16,
327pub nexthdr: __u8,
328pub hop_limit: __u8,
329pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1,
330}
331#[repr(C)]
332#[derive(Copy, Clone)]
333pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
334pub saddr: in6_addr,
335pub daddr: in6_addr,
336}
337#[repr(C)]
338#[derive(Copy, Clone)]
339pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
340pub saddr: in6_addr,
341pub daddr: in6_addr,
342}
343#[repr(C)]
344#[derive(Debug, Copy, Clone)]
345pub struct tcphdr {
346pub source: __be16,
347pub dest: __be16,
348pub seq: __be32,
349pub ack_seq: __be32,
350pub _bitfield_align_1: [u8; 0],
351pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
352pub window: __be16,
353pub check: __sum16,
354pub urg_ptr: __be16,
355}
356#[repr(C)]
357#[derive(Debug, Copy, Clone)]
358pub struct tcp_repair_opt {
359pub opt_code: __u32,
360pub opt_val: __u32,
361}
362#[repr(C)]
363#[derive(Debug, Copy, Clone)]
364pub struct tcp_repair_window {
365pub snd_wl1: __u32,
366pub snd_wnd: __u32,
367pub max_window: __u32,
368pub rcv_wnd: __u32,
369pub rcv_wup: __u32,
370}
371#[repr(C)]
372#[derive(Debug, Copy, Clone)]
373pub struct tcp_info {
374pub tcpi_state: __u8,
375pub tcpi_ca_state: __u8,
376pub tcpi_retransmits: __u8,
377pub tcpi_probes: __u8,
378pub tcpi_backoff: __u8,
379pub tcpi_options: __u8,
380pub _bitfield_align_1: [u8; 0],
381pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
382pub tcpi_rto: __u32,
383pub tcpi_ato: __u32,
384pub tcpi_snd_mss: __u32,
385pub tcpi_rcv_mss: __u32,
386pub tcpi_unacked: __u32,
387pub tcpi_sacked: __u32,
388pub tcpi_lost: __u32,
389pub tcpi_retrans: __u32,
390pub tcpi_fackets: __u32,
391pub tcpi_last_data_sent: __u32,
392pub tcpi_last_ack_sent: __u32,
393pub tcpi_last_data_recv: __u32,
394pub tcpi_last_ack_recv: __u32,
395pub tcpi_pmtu: __u32,
396pub tcpi_rcv_ssthresh: __u32,
397pub tcpi_rtt: __u32,
398pub tcpi_rttvar: __u32,
399pub tcpi_snd_ssthresh: __u32,
400pub tcpi_snd_cwnd: __u32,
401pub tcpi_advmss: __u32,
402pub tcpi_reordering: __u32,
403pub tcpi_rcv_rtt: __u32,
404pub tcpi_rcv_space: __u32,
405pub tcpi_total_retrans: __u32,
406pub tcpi_pacing_rate: __u64,
407pub tcpi_max_pacing_rate: __u64,
408pub tcpi_bytes_acked: __u64,
409pub tcpi_bytes_received: __u64,
410pub tcpi_segs_out: __u32,
411pub tcpi_segs_in: __u32,
412pub tcpi_notsent_bytes: __u32,
413pub tcpi_min_rtt: __u32,
414pub tcpi_data_segs_in: __u32,
415pub tcpi_data_segs_out: __u32,
416pub tcpi_delivery_rate: __u64,
417pub tcpi_busy_time: __u64,
418pub tcpi_rwnd_limited: __u64,
419pub tcpi_sndbuf_limited: __u64,
420pub tcpi_delivered: __u32,
421pub tcpi_delivered_ce: __u32,
422pub tcpi_bytes_sent: __u64,
423pub tcpi_bytes_retrans: __u64,
424pub tcpi_dsack_dups: __u32,
425pub tcpi_reord_seen: __u32,
426pub tcpi_rcv_ooopack: __u32,
427pub tcpi_snd_wnd: __u32,
428pub tcpi_rcv_wnd: __u32,
429pub tcpi_rehash: __u32,
430pub tcpi_total_rto: __u16,
431pub tcpi_total_rto_recoveries: __u16,
432pub tcpi_total_rto_time: __u32,
433}
434#[repr(C)]
435#[derive(Copy, Clone)]
436pub struct tcp_md5sig {
437pub tcpm_addr: __kernel_sockaddr_storage,
438pub tcpm_flags: __u8,
439pub tcpm_prefixlen: __u8,
440pub tcpm_keylen: __u16,
441pub tcpm_ifindex: crate::ctypes::c_int,
442pub tcpm_key: [__u8; 80usize],
443}
444#[repr(C)]
445#[derive(Debug, Copy, Clone)]
446pub struct tcp_diag_md5sig {
447pub tcpm_family: __u8,
448pub tcpm_prefixlen: __u8,
449pub tcpm_keylen: __u16,
450pub tcpm_addr: [__be32; 4usize],
451pub tcpm_key: [__u8; 80usize],
452}
453#[repr(C)]
454#[repr(align(8))]
455#[derive(Copy, Clone)]
456pub struct tcp_ao_add {
457pub addr: __kernel_sockaddr_storage,
458pub alg_name: [crate::ctypes::c_char; 64usize],
459pub ifindex: __s32,
460pub _bitfield_align_1: [u32; 0],
461pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
462pub reserved2: __u16,
463pub prefix: __u8,
464pub sndid: __u8,
465pub rcvid: __u8,
466pub maclen: __u8,
467pub keyflags: __u8,
468pub keylen: __u8,
469pub key: [__u8; 80usize],
470}
471#[repr(C)]
472#[repr(align(8))]
473#[derive(Copy, Clone)]
474pub struct tcp_ao_del {
475pub addr: __kernel_sockaddr_storage,
476pub ifindex: __s32,
477pub _bitfield_align_1: [u32; 0],
478pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
479pub reserved2: __u16,
480pub prefix: __u8,
481pub sndid: __u8,
482pub rcvid: __u8,
483pub current_key: __u8,
484pub rnext: __u8,
485pub keyflags: __u8,
486}
487#[repr(C)]
488#[repr(align(8))]
489#[derive(Debug, Copy, Clone)]
490pub struct tcp_ao_info_opt {
491pub _bitfield_align_1: [u32; 0],
492pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
493pub reserved2: __u16,
494pub current_key: __u8,
495pub rnext: __u8,
496pub pkt_good: __u64,
497pub pkt_bad: __u64,
498pub pkt_key_not_found: __u64,
499pub pkt_ao_required: __u64,
500pub pkt_dropped_icmp: __u64,
501}
502#[repr(C)]
503#[repr(align(8))]
504#[derive(Copy, Clone)]
505pub struct tcp_ao_getsockopt {
506pub addr: __kernel_sockaddr_storage,
507pub alg_name: [crate::ctypes::c_char; 64usize],
508pub key: [__u8; 80usize],
509pub nkeys: __u32,
510pub _bitfield_align_1: [u16; 0],
511pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
512pub sndid: __u8,
513pub rcvid: __u8,
514pub prefix: __u8,
515pub maclen: __u8,
516pub keyflags: __u8,
517pub keylen: __u8,
518pub ifindex: __s32,
519pub pkt_good: __u64,
520pub pkt_bad: __u64,
521}
522#[repr(C)]
523#[repr(align(8))]
524#[derive(Debug, Copy, Clone)]
525pub struct tcp_ao_repair {
526pub snt_isn: __be32,
527pub rcv_isn: __be32,
528pub snd_sne: __u32,
529pub rcv_sne: __u32,
530}
531#[repr(C)]
532#[derive(Debug, Copy, Clone)]
533pub struct tcp_zerocopy_receive {
534pub address: __u64,
535pub length: __u32,
536pub recv_skip_hint: __u32,
537pub inq: __u32,
538pub err: __s32,
539pub copybuf_address: __u64,
540pub copybuf_len: __s32,
541pub flags: __u32,
542pub msg_control: __u64,
543pub msg_controllen: __u64,
544pub msg_flags: __u32,
545pub reserved: __u32,
546}
547#[repr(C)]
548#[derive(Debug, Copy, Clone)]
549pub struct sockaddr_un {
550pub sun_family: __kernel_sa_family_t,
551pub sun_path: [crate::ctypes::c_char; 108usize],
552}
553#[repr(C)]
554#[derive(Copy, Clone)]
555pub struct sockaddr {
556pub __storage: __kernel_sockaddr_storage,
557}
558#[repr(C)]
559#[derive(Debug, Copy, Clone)]
560pub struct sync_serial_settings {
561pub clock_rate: crate::ctypes::c_uint,
562pub clock_type: crate::ctypes::c_uint,
563pub loopback: crate::ctypes::c_ushort,
564}
565#[repr(C)]
566#[derive(Debug, Copy, Clone)]
567pub struct te1_settings {
568pub clock_rate: crate::ctypes::c_uint,
569pub clock_type: crate::ctypes::c_uint,
570pub loopback: crate::ctypes::c_ushort,
571pub slot_map: crate::ctypes::c_uint,
572}
573#[repr(C)]
574#[derive(Debug, Copy, Clone)]
575pub struct raw_hdlc_proto {
576pub encoding: crate::ctypes::c_ushort,
577pub parity: crate::ctypes::c_ushort,
578}
579#[repr(C)]
580#[derive(Debug, Copy, Clone)]
581pub struct fr_proto {
582pub t391: crate::ctypes::c_uint,
583pub t392: crate::ctypes::c_uint,
584pub n391: crate::ctypes::c_uint,
585pub n392: crate::ctypes::c_uint,
586pub n393: crate::ctypes::c_uint,
587pub lmi: crate::ctypes::c_ushort,
588pub dce: crate::ctypes::c_ushort,
589}
590#[repr(C)]
591#[derive(Debug, Copy, Clone)]
592pub struct fr_proto_pvc {
593pub dlci: crate::ctypes::c_uint,
594}
595#[repr(C)]
596#[derive(Debug, Copy, Clone)]
597pub struct fr_proto_pvc_info {
598pub dlci: crate::ctypes::c_uint,
599pub master: [crate::ctypes::c_char; 16usize],
600}
601#[repr(C)]
602#[derive(Debug, Copy, Clone)]
603pub struct cisco_proto {
604pub interval: crate::ctypes::c_uint,
605pub timeout: crate::ctypes::c_uint,
606}
607#[repr(C)]
608#[derive(Debug, Copy, Clone)]
609pub struct x25_hdlc_proto {
610pub dce: crate::ctypes::c_ushort,
611pub modulo: crate::ctypes::c_uint,
612pub window: crate::ctypes::c_uint,
613pub t1: crate::ctypes::c_uint,
614pub t2: crate::ctypes::c_uint,
615pub n2: crate::ctypes::c_uint,
616}
617#[repr(C)]
618#[derive(Debug, Copy, Clone)]
619pub struct ifmap {
620pub mem_start: crate::ctypes::c_ulong,
621pub mem_end: crate::ctypes::c_ulong,
622pub base_addr: crate::ctypes::c_ushort,
623pub irq: crate::ctypes::c_uchar,
624pub dma: crate::ctypes::c_uchar,
625pub port: crate::ctypes::c_uchar,
626}
627#[repr(C)]
628#[derive(Copy, Clone)]
629pub struct if_settings {
630pub type_: crate::ctypes::c_uint,
631pub size: crate::ctypes::c_uint,
632pub ifs_ifsu: if_settings__bindgen_ty_1,
633}
634#[repr(C)]
635#[derive(Copy, Clone)]
636pub struct ifreq {
637pub ifr_ifrn: ifreq__bindgen_ty_1,
638pub ifr_ifru: ifreq__bindgen_ty_2,
639}
640#[repr(C)]
641#[derive(Copy, Clone)]
642pub struct ifconf {
643pub ifc_len: crate::ctypes::c_int,
644pub ifc_ifcu: ifconf__bindgen_ty_1,
645}
646#[repr(C)]
647pub struct xt_entry_match {
648pub u: xt_entry_match__bindgen_ty_1,
649pub data: __IncompleteArrayField<crate::ctypes::c_uchar>,
650}
651#[repr(C)]
652#[derive(Debug, Copy, Clone)]
653pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_1 {
654pub match_size: __u16,
655pub name: [crate::ctypes::c_char; 29usize],
656pub revision: __u8,
657}
658#[repr(C)]
659#[derive(Debug, Copy, Clone)]
660pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
661pub match_size: __u16,
662pub match_: *mut xt_match,
663}
664#[repr(C)]
665pub struct xt_entry_target {
666pub u: xt_entry_target__bindgen_ty_1,
667pub data: __IncompleteArrayField<crate::ctypes::c_uchar>,
668}
669#[repr(C)]
670#[derive(Debug, Copy, Clone)]
671pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_1 {
672pub target_size: __u16,
673pub name: [crate::ctypes::c_char; 29usize],
674pub revision: __u8,
675}
676#[repr(C)]
677#[derive(Debug, Copy, Clone)]
678pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
679pub target_size: __u16,
680pub target: *mut xt_target,
681}
682#[repr(C)]
683pub struct xt_standard_target {
684pub target: xt_entry_target,
685pub verdict: crate::ctypes::c_int,
686}
687#[repr(C)]
688pub struct xt_error_target {
689pub target: xt_entry_target,
690pub errorname: [crate::ctypes::c_char; 30usize],
691}
692#[repr(C)]
693#[derive(Debug, Copy, Clone)]
694pub struct xt_get_revision {
695pub name: [crate::ctypes::c_char; 29usize],
696pub revision: __u8,
697}
698#[repr(C)]
699#[derive(Debug, Copy, Clone)]
700pub struct _xt_align {
701pub u8_: __u8,
702pub u16_: __u16,
703pub u32_: __u32,
704pub u64_: __u64,
705}
706#[repr(C)]
707#[derive(Debug, Copy, Clone)]
708pub struct xt_counters {
709pub pcnt: __u64,
710pub bcnt: __u64,
711}
712#[repr(C)]
713#[derive(Debug)]
714pub struct xt_counters_info {
715pub name: [crate::ctypes::c_char; 32usize],
716pub num_counters: crate::ctypes::c_uint,
717pub counters: __IncompleteArrayField<xt_counters>,
718}
719#[repr(C)]
720#[derive(Debug, Copy, Clone)]
721pub struct xt_tcp {
722pub spts: [__u16; 2usize],
723pub dpts: [__u16; 2usize],
724pub option: __u8,
725pub flg_mask: __u8,
726pub flg_cmp: __u8,
727pub invflags: __u8,
728}
729#[repr(C)]
730#[derive(Debug, Copy, Clone)]
731pub struct xt_udp {
732pub spts: [__u16; 2usize],
733pub dpts: [__u16; 2usize],
734pub invflags: __u8,
735}
736#[repr(C)]
737#[derive(Copy, Clone)]
738pub struct ip6t_ip6 {
739pub src: in6_addr,
740pub dst: in6_addr,
741pub smsk: in6_addr,
742pub dmsk: in6_addr,
743pub iniface: [crate::ctypes::c_char; 16usize],
744pub outiface: [crate::ctypes::c_char; 16usize],
745pub iniface_mask: [crate::ctypes::c_uchar; 16usize],
746pub outiface_mask: [crate::ctypes::c_uchar; 16usize],
747pub proto: __u16,
748pub tos: __u8,
749pub flags: __u8,
750pub invflags: __u8,
751}
752#[repr(C)]
753pub struct ip6t_entry {
754pub ipv6: ip6t_ip6,
755pub nfcache: crate::ctypes::c_uint,
756pub target_offset: __u16,
757pub next_offset: __u16,
758pub comefrom: crate::ctypes::c_uint,
759pub counters: xt_counters,
760pub elems: __IncompleteArrayField<crate::ctypes::c_uchar>,
761}
762#[repr(C)]
763pub struct ip6t_standard {
764pub entry: ip6t_entry,
765pub target: xt_standard_target,
766}
767#[repr(C)]
768pub struct ip6t_error {
769pub entry: ip6t_entry,
770pub target: xt_error_target,
771}
772#[repr(C)]
773#[derive(Debug, Copy, Clone)]
774pub struct ip6t_icmp {
775pub type_: __u8,
776pub code: [__u8; 2usize],
777pub invflags: __u8,
778}
779#[repr(C)]
780#[derive(Debug, Copy, Clone)]
781pub struct ip6t_getinfo {
782pub name: [crate::ctypes::c_char; 32usize],
783pub valid_hooks: crate::ctypes::c_uint,
784pub hook_entry: [crate::ctypes::c_uint; 5usize],
785pub underflow: [crate::ctypes::c_uint; 5usize],
786pub num_entries: crate::ctypes::c_uint,
787pub size: crate::ctypes::c_uint,
788}
789#[repr(C)]
790pub struct ip6t_replace {
791pub name: [crate::ctypes::c_char; 32usize],
792pub valid_hooks: crate::ctypes::c_uint,
793pub num_entries: crate::ctypes::c_uint,
794pub size: crate::ctypes::c_uint,
795pub hook_entry: [crate::ctypes::c_uint; 5usize],
796pub underflow: [crate::ctypes::c_uint; 5usize],
797pub num_counters: crate::ctypes::c_uint,
798pub counters: *mut xt_counters,
799pub entries: __IncompleteArrayField<ip6t_entry>,
800}
801#[repr(C)]
802pub struct ip6t_get_entries {
803pub name: [crate::ctypes::c_char; 32usize],
804pub size: crate::ctypes::c_uint,
805pub entrytable: __IncompleteArrayField<ip6t_entry>,
806}
807#[repr(C)]
808#[derive(Debug, Copy, Clone)]
809pub struct so_timestamping {
810pub flags: crate::ctypes::c_int,
811pub bind_phc: crate::ctypes::c_int,
812}
813#[repr(C)]
814#[derive(Debug, Copy, Clone)]
815pub struct hwtstamp_config {
816pub flags: crate::ctypes::c_int,
817pub tx_type: crate::ctypes::c_int,
818pub rx_filter: crate::ctypes::c_int,
819}
820#[repr(C)]
821#[derive(Debug, Copy, Clone)]
822pub struct scm_ts_pktinfo {
823pub if_index: __u32,
824pub pkt_length: __u32,
825pub reserved: [__u32; 2usize],
826}
827#[repr(C)]
828#[derive(Debug, Copy, Clone)]
829pub struct sock_txtime {
830pub clockid: __kernel_clockid_t,
831pub flags: __u32,
832}
833#[repr(C)]
834#[derive(Debug, Copy, Clone)]
835pub struct linger {
836pub l_onoff: crate::ctypes::c_int,
837pub l_linger: crate::ctypes::c_int,
838}
839#[repr(C)]
840#[derive(Debug, Copy, Clone)]
841pub struct msghdr {
842pub msg_name: *mut crate::ctypes::c_void,
843pub msg_namelen: crate::ctypes::c_int,
844pub msg_iov: *mut iovec,
845pub msg_iovlen: usize,
846pub msg_control: *mut crate::ctypes::c_void,
847pub msg_controllen: usize,
848pub msg_flags: crate::ctypes::c_uint,
849}
850#[repr(C)]
851#[derive(Debug, Copy, Clone)]
852pub struct cmsghdr {
853pub cmsg_len: usize,
854pub cmsg_level: crate::ctypes::c_int,
855pub cmsg_type: crate::ctypes::c_int,
856}
857#[repr(C)]
858#[derive(Debug, Copy, Clone)]
859pub struct ucred {
860pub pid: __u32,
861pub uid: __u32,
862pub gid: __u32,
863}
864#[repr(C)]
865#[derive(Debug, Copy, Clone)]
866pub struct mmsghdr {
867pub msg_hdr: msghdr,
868pub msg_len: crate::ctypes::c_uint,
869}
870#[repr(C)]
871#[derive(Debug, Copy, Clone)]
872pub struct xt_match {
873pub _address: u8,
874}
875#[repr(C)]
876#[derive(Debug, Copy, Clone)]
877pub struct xt_target {
878pub _address: u8,
879}
880#[repr(C)]
881#[derive(Debug, Copy, Clone)]
882pub struct iovec {
883pub _address: u8,
884}
885pub const __BITS_PER_LONG_LONG: u32 = 64;
886pub const _K_SS_MAXSIZE: u32 = 128;
887pub const SOCK_SNDBUF_LOCK: u32 = 1;
888pub const SOCK_RCVBUF_LOCK: u32 = 2;
889pub const SOCK_BUF_LOCK_MASK: u32 = 3;
890pub const SOCK_TXREHASH_DEFAULT: u32 = 255;
891pub const SOCK_TXREHASH_DISABLED: u32 = 0;
892pub const SOCK_TXREHASH_ENABLED: u32 = 1;
893pub const IP_TOS: u32 = 1;
894pub const IP_TTL: u32 = 2;
895pub const IP_HDRINCL: u32 = 3;
896pub const IP_OPTIONS: u32 = 4;
897pub const IP_ROUTER_ALERT: u32 = 5;
898pub const IP_RECVOPTS: u32 = 6;
899pub const IP_RETOPTS: u32 = 7;
900pub const IP_PKTINFO: u32 = 8;
901pub const IP_PKTOPTIONS: u32 = 9;
902pub const IP_MTU_DISCOVER: u32 = 10;
903pub const IP_RECVERR: u32 = 11;
904pub const IP_RECVTTL: u32 = 12;
905pub const IP_RECVTOS: u32 = 13;
906pub const IP_MTU: u32 = 14;
907pub const IP_FREEBIND: u32 = 15;
908pub const IP_IPSEC_POLICY: u32 = 16;
909pub const IP_XFRM_POLICY: u32 = 17;
910pub const IP_PASSSEC: u32 = 18;
911pub const IP_TRANSPARENT: u32 = 19;
912pub const IP_RECVRETOPTS: u32 = 7;
913pub const IP_ORIGDSTADDR: u32 = 20;
914pub const IP_RECVORIGDSTADDR: u32 = 20;
915pub const IP_MINTTL: u32 = 21;
916pub const IP_NODEFRAG: u32 = 22;
917pub const IP_CHECKSUM: u32 = 23;
918pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24;
919pub const IP_RECVFRAGSIZE: u32 = 25;
920pub const IP_RECVERR_RFC4884: u32 = 26;
921pub const IP_PMTUDISC_DONT: u32 = 0;
922pub const IP_PMTUDISC_WANT: u32 = 1;
923pub const IP_PMTUDISC_DO: u32 = 2;
924pub const IP_PMTUDISC_PROBE: u32 = 3;
925pub const IP_PMTUDISC_INTERFACE: u32 = 4;
926pub const IP_PMTUDISC_OMIT: u32 = 5;
927pub const IP_MULTICAST_IF: u32 = 32;
928pub const IP_MULTICAST_TTL: u32 = 33;
929pub const IP_MULTICAST_LOOP: u32 = 34;
930pub const IP_ADD_MEMBERSHIP: u32 = 35;
931pub const IP_DROP_MEMBERSHIP: u32 = 36;
932pub const IP_UNBLOCK_SOURCE: u32 = 37;
933pub const IP_BLOCK_SOURCE: u32 = 38;
934pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39;
935pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40;
936pub const IP_MSFILTER: u32 = 41;
937pub const MCAST_JOIN_GROUP: u32 = 42;
938pub const MCAST_BLOCK_SOURCE: u32 = 43;
939pub const MCAST_UNBLOCK_SOURCE: u32 = 44;
940pub const MCAST_LEAVE_GROUP: u32 = 45;
941pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46;
942pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47;
943pub const MCAST_MSFILTER: u32 = 48;
944pub const IP_MULTICAST_ALL: u32 = 49;
945pub const IP_UNICAST_IF: u32 = 50;
946pub const IP_LOCAL_PORT_RANGE: u32 = 51;
947pub const IP_PROTOCOL: u32 = 52;
948pub const MCAST_EXCLUDE: u32 = 0;
949pub const MCAST_INCLUDE: u32 = 1;
950pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1;
951pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1;
952pub const __SOCK_SIZE__: u32 = 16;
953pub const IN_CLASSA_NET: u32 = 4278190080;
954pub const IN_CLASSA_NSHIFT: u32 = 24;
955pub const IN_CLASSA_HOST: u32 = 16777215;
956pub const IN_CLASSA_MAX: u32 = 128;
957pub const IN_CLASSB_NET: u32 = 4294901760;
958pub const IN_CLASSB_NSHIFT: u32 = 16;
959pub const IN_CLASSB_HOST: u32 = 65535;
960pub const IN_CLASSB_MAX: u32 = 65536;
961pub const IN_CLASSC_NET: u32 = 4294967040;
962pub const IN_CLASSC_NSHIFT: u32 = 8;
963pub const IN_CLASSC_HOST: u32 = 255;
964pub const IN_MULTICAST_NET: u32 = 3758096384;
965pub const IN_CLASSE_NET: u32 = 4294967295;
966pub const IN_CLASSE_NSHIFT: u32 = 0;
967pub const IN_LOOPBACKNET: u32 = 127;
968pub const INADDR_LOOPBACK: u32 = 2130706433;
969pub const INADDR_UNSPEC_GROUP: u32 = 3758096384;
970pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
971pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
972pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
973pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
974pub const __LITTLE_ENDIAN: u32 = 1234;
975pub const IPTOS_TOS_MASK: u32 = 30;
976pub const IPTOS_LOWDELAY: u32 = 16;
977pub const IPTOS_THROUGHPUT: u32 = 8;
978pub const IPTOS_RELIABILITY: u32 = 4;
979pub const IPTOS_MINCOST: u32 = 2;
980pub const IPTOS_PREC_MASK: u32 = 224;
981pub const IPTOS_PREC_NETCONTROL: u32 = 224;
982pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
983pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
984pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
985pub const IPTOS_PREC_FLASH: u32 = 96;
986pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
987pub const IPTOS_PREC_PRIORITY: u32 = 32;
988pub const IPTOS_PREC_ROUTINE: u32 = 0;
989pub const IPOPT_COPY: u32 = 128;
990pub const IPOPT_CLASS_MASK: u32 = 96;
991pub const IPOPT_NUMBER_MASK: u32 = 31;
992pub const IPOPT_CONTROL: u32 = 0;
993pub const IPOPT_RESERVED1: u32 = 32;
994pub const IPOPT_MEASUREMENT: u32 = 64;
995pub const IPOPT_RESERVED2: u32 = 96;
996pub const IPOPT_END: u32 = 0;
997pub const IPOPT_NOOP: u32 = 1;
998pub const IPOPT_SEC: u32 = 130;
999pub const IPOPT_LSRR: u32 = 131;
1000pub const IPOPT_TIMESTAMP: u32 = 68;
1001pub const IPOPT_CIPSO: u32 = 134;
1002pub const IPOPT_RR: u32 = 7;
1003pub const IPOPT_SID: u32 = 136;
1004pub const IPOPT_SSRR: u32 = 137;
1005pub const IPOPT_RA: u32 = 148;
1006pub const IPVERSION: u32 = 4;
1007pub const MAXTTL: u32 = 255;
1008pub const IPDEFTTL: u32 = 64;
1009pub const IPOPT_OPTVAL: u32 = 0;
1010pub const IPOPT_OLEN: u32 = 1;
1011pub const IPOPT_OFFSET: u32 = 2;
1012pub const IPOPT_MINOFF: u32 = 4;
1013pub const MAX_IPOPTLEN: u32 = 40;
1014pub const IPOPT_NOP: u32 = 1;
1015pub const IPOPT_EOL: u32 = 0;
1016pub const IPOPT_TS: u32 = 68;
1017pub const IPOPT_TS_TSONLY: u32 = 0;
1018pub const IPOPT_TS_TSANDADDR: u32 = 1;
1019pub const IPOPT_TS_PRESPEC: u32 = 3;
1020pub const IPV4_BEET_PHMAXLEN: u32 = 8;
1021pub const IPV6_FL_A_GET: u32 = 0;
1022pub const IPV6_FL_A_PUT: u32 = 1;
1023pub const IPV6_FL_A_RENEW: u32 = 2;
1024pub const IPV6_FL_F_CREATE: u32 = 1;
1025pub const IPV6_FL_F_EXCL: u32 = 2;
1026pub const IPV6_FL_F_REFLECT: u32 = 4;
1027pub const IPV6_FL_F_REMOTE: u32 = 8;
1028pub const IPV6_FL_S_NONE: u32 = 0;
1029pub const IPV6_FL_S_EXCL: u32 = 1;
1030pub const IPV6_FL_S_PROCESS: u32 = 2;
1031pub const IPV6_FL_S_USER: u32 = 3;
1032pub const IPV6_FL_S_ANY: u32 = 255;
1033pub const IPV6_FLOWINFO_FLOWLABEL: u32 = 1048575;
1034pub const IPV6_FLOWINFO_PRIORITY: u32 = 267386880;
1035pub const IPV6_PRIORITY_UNCHARACTERIZED: u32 = 0;
1036pub const IPV6_PRIORITY_FILLER: u32 = 256;
1037pub const IPV6_PRIORITY_UNATTENDED: u32 = 512;
1038pub const IPV6_PRIORITY_RESERVED1: u32 = 768;
1039pub const IPV6_PRIORITY_BULK: u32 = 1024;
1040pub const IPV6_PRIORITY_RESERVED2: u32 = 1280;
1041pub const IPV6_PRIORITY_INTERACTIVE: u32 = 1536;
1042pub const IPV6_PRIORITY_CONTROL: u32 = 1792;
1043pub const IPV6_PRIORITY_8: u32 = 2048;
1044pub const IPV6_PRIORITY_9: u32 = 2304;
1045pub const IPV6_PRIORITY_10: u32 = 2560;
1046pub const IPV6_PRIORITY_11: u32 = 2816;
1047pub const IPV6_PRIORITY_12: u32 = 3072;
1048pub const IPV6_PRIORITY_13: u32 = 3328;
1049pub const IPV6_PRIORITY_14: u32 = 3584;
1050pub const IPV6_PRIORITY_15: u32 = 3840;
1051pub const IPPROTO_HOPOPTS: u32 = 0;
1052pub const IPPROTO_ROUTING: u32 = 43;
1053pub const IPPROTO_FRAGMENT: u32 = 44;
1054pub const IPPROTO_ICMPV6: u32 = 58;
1055pub const IPPROTO_NONE: u32 = 59;
1056pub const IPPROTO_DSTOPTS: u32 = 60;
1057pub const IPPROTO_MH: u32 = 135;
1058pub const IPV6_TLV_PAD1: u32 = 0;
1059pub const IPV6_TLV_PADN: u32 = 1;
1060pub const IPV6_TLV_ROUTERALERT: u32 = 5;
1061pub const IPV6_TLV_CALIPSO: u32 = 7;
1062pub const IPV6_TLV_IOAM: u32 = 49;
1063pub const IPV6_TLV_JUMBO: u32 = 194;
1064pub const IPV6_TLV_HAO: u32 = 201;
1065pub const IPV6_ADDRFORM: u32 = 1;
1066pub const IPV6_2292PKTINFO: u32 = 2;
1067pub const IPV6_2292HOPOPTS: u32 = 3;
1068pub const IPV6_2292DSTOPTS: u32 = 4;
1069pub const IPV6_2292RTHDR: u32 = 5;
1070pub const IPV6_2292PKTOPTIONS: u32 = 6;
1071pub const IPV6_CHECKSUM: u32 = 7;
1072pub const IPV6_2292HOPLIMIT: u32 = 8;
1073pub const IPV6_NEXTHOP: u32 = 9;
1074pub const IPV6_AUTHHDR: u32 = 10;
1075pub const IPV6_FLOWINFO: u32 = 11;
1076pub const IPV6_UNICAST_HOPS: u32 = 16;
1077pub const IPV6_MULTICAST_IF: u32 = 17;
1078pub const IPV6_MULTICAST_HOPS: u32 = 18;
1079pub const IPV6_MULTICAST_LOOP: u32 = 19;
1080pub const IPV6_ADD_MEMBERSHIP: u32 = 20;
1081pub const IPV6_DROP_MEMBERSHIP: u32 = 21;
1082pub const IPV6_ROUTER_ALERT: u32 = 22;
1083pub const IPV6_MTU_DISCOVER: u32 = 23;
1084pub const IPV6_MTU: u32 = 24;
1085pub const IPV6_RECVERR: u32 = 25;
1086pub const IPV6_V6ONLY: u32 = 26;
1087pub const IPV6_JOIN_ANYCAST: u32 = 27;
1088pub const IPV6_LEAVE_ANYCAST: u32 = 28;
1089pub const IPV6_MULTICAST_ALL: u32 = 29;
1090pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30;
1091pub const IPV6_RECVERR_RFC4884: u32 = 31;
1092pub const IPV6_PMTUDISC_DONT: u32 = 0;
1093pub const IPV6_PMTUDISC_WANT: u32 = 1;
1094pub const IPV6_PMTUDISC_DO: u32 = 2;
1095pub const IPV6_PMTUDISC_PROBE: u32 = 3;
1096pub const IPV6_PMTUDISC_INTERFACE: u32 = 4;
1097pub const IPV6_PMTUDISC_OMIT: u32 = 5;
1098pub const IPV6_FLOWLABEL_MGR: u32 = 32;
1099pub const IPV6_FLOWINFO_SEND: u32 = 33;
1100pub const IPV6_IPSEC_POLICY: u32 = 34;
1101pub const IPV6_XFRM_POLICY: u32 = 35;
1102pub const IPV6_HDRINCL: u32 = 36;
1103pub const IPV6_RECVPKTINFO: u32 = 49;
1104pub const IPV6_PKTINFO: u32 = 50;
1105pub const IPV6_RECVHOPLIMIT: u32 = 51;
1106pub const IPV6_HOPLIMIT: u32 = 52;
1107pub const IPV6_RECVHOPOPTS: u32 = 53;
1108pub const IPV6_HOPOPTS: u32 = 54;
1109pub const IPV6_RTHDRDSTOPTS: u32 = 55;
1110pub const IPV6_RECVRTHDR: u32 = 56;
1111pub const IPV6_RTHDR: u32 = 57;
1112pub const IPV6_RECVDSTOPTS: u32 = 58;
1113pub const IPV6_DSTOPTS: u32 = 59;
1114pub const IPV6_RECVPATHMTU: u32 = 60;
1115pub const IPV6_PATHMTU: u32 = 61;
1116pub const IPV6_DONTFRAG: u32 = 62;
1117pub const IPV6_RECVTCLASS: u32 = 66;
1118pub const IPV6_TCLASS: u32 = 67;
1119pub const IPV6_AUTOFLOWLABEL: u32 = 70;
1120pub const IPV6_ADDR_PREFERENCES: u32 = 72;
1121pub const IPV6_PREFER_SRC_TMP: u32 = 1;
1122pub const IPV6_PREFER_SRC_PUBLIC: u32 = 2;
1123pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT: u32 = 256;
1124pub const IPV6_PREFER_SRC_COA: u32 = 4;
1125pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
1126pub const IPV6_PREFER_SRC_CGA: u32 = 8;
1127pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
1128pub const IPV6_MINHOPCOUNT: u32 = 73;
1129pub const IPV6_ORIGDSTADDR: u32 = 74;
1130pub const IPV6_RECVORIGDSTADDR: u32 = 74;
1131pub const IPV6_TRANSPARENT: u32 = 75;
1132pub const IPV6_UNICAST_IF: u32 = 76;
1133pub const IPV6_RECVFRAGSIZE: u32 = 77;
1134pub const IPV6_FREEBIND: u32 = 78;
1135pub const IPV6_MIN_MTU: u32 = 1280;
1136pub const IPV6_SRCRT_STRICT: u32 = 1;
1137pub const IPV6_SRCRT_TYPE_0: u32 = 0;
1138pub const IPV6_SRCRT_TYPE_2: u32 = 2;
1139pub const IPV6_SRCRT_TYPE_3: u32 = 3;
1140pub const IPV6_SRCRT_TYPE_4: u32 = 4;
1141pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
1142pub const SIOCGSTAMP_OLD: u32 = 35078;
1143pub const SIOCGSTAMPNS_OLD: u32 = 35079;
1144pub const SOL_SOCKET: u32 = 1;
1145pub const SO_DEBUG: u32 = 1;
1146pub const SO_REUSEADDR: u32 = 2;
1147pub const SO_TYPE: u32 = 3;
1148pub const SO_ERROR: u32 = 4;
1149pub const SO_DONTROUTE: u32 = 5;
1150pub const SO_BROADCAST: u32 = 6;
1151pub const SO_SNDBUF: u32 = 7;
1152pub const SO_RCVBUF: u32 = 8;
1153pub const SO_SNDBUFFORCE: u32 = 32;
1154pub const SO_RCVBUFFORCE: u32 = 33;
1155pub const SO_KEEPALIVE: u32 = 9;
1156pub const SO_OOBINLINE: u32 = 10;
1157pub const SO_NO_CHECK: u32 = 11;
1158pub const SO_PRIORITY: u32 = 12;
1159pub const SO_LINGER: u32 = 13;
1160pub const SO_BSDCOMPAT: u32 = 14;
1161pub const SO_REUSEPORT: u32 = 15;
1162pub const SO_PASSCRED: u32 = 16;
1163pub const SO_PEERCRED: u32 = 17;
1164pub const SO_RCVLOWAT: u32 = 18;
1165pub const SO_SNDLOWAT: u32 = 19;
1166pub const SO_RCVTIMEO_OLD: u32 = 20;
1167pub const SO_SNDTIMEO_OLD: u32 = 21;
1168pub const SO_SECURITY_AUTHENTICATION: u32 = 22;
1169pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23;
1170pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24;
1171pub const SO_BINDTODEVICE: u32 = 25;
1172pub const SO_ATTACH_FILTER: u32 = 26;
1173pub const SO_DETACH_FILTER: u32 = 27;
1174pub const SO_GET_FILTER: u32 = 26;
1175pub const SO_PEERNAME: u32 = 28;
1176pub const SO_ACCEPTCONN: u32 = 30;
1177pub const SO_PEERSEC: u32 = 31;
1178pub const SO_PASSSEC: u32 = 34;
1179pub const SO_MARK: u32 = 36;
1180pub const SO_PROTOCOL: u32 = 38;
1181pub const SO_DOMAIN: u32 = 39;
1182pub const SO_RXQ_OVFL: u32 = 40;
1183pub const SO_WIFI_STATUS: u32 = 41;
1184pub const SCM_WIFI_STATUS: u32 = 41;
1185pub const SO_PEEK_OFF: u32 = 42;
1186pub const SO_NOFCS: u32 = 43;
1187pub const SO_LOCK_FILTER: u32 = 44;
1188pub const SO_SELECT_ERR_QUEUE: u32 = 45;
1189pub const SO_BUSY_POLL: u32 = 46;
1190pub const SO_MAX_PACING_RATE: u32 = 47;
1191pub const SO_BPF_EXTENSIONS: u32 = 48;
1192pub const SO_INCOMING_CPU: u32 = 49;
1193pub const SO_ATTACH_BPF: u32 = 50;
1194pub const SO_DETACH_BPF: u32 = 27;
1195pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51;
1196pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52;
1197pub const SO_CNX_ADVICE: u32 = 53;
1198pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54;
1199pub const SO_MEMINFO: u32 = 55;
1200pub const SO_INCOMING_NAPI_ID: u32 = 56;
1201pub const SO_COOKIE: u32 = 57;
1202pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58;
1203pub const SO_PEERGROUPS: u32 = 59;
1204pub const SO_ZEROCOPY: u32 = 60;
1205pub const SO_TXTIME: u32 = 61;
1206pub const SCM_TXTIME: u32 = 61;
1207pub const SO_BINDTOIFINDEX: u32 = 62;
1208pub const SO_TIMESTAMP_OLD: u32 = 29;
1209pub const SO_TIMESTAMPNS_OLD: u32 = 35;
1210pub const SO_TIMESTAMPING_OLD: u32 = 37;
1211pub const SO_TIMESTAMP_NEW: u32 = 63;
1212pub const SO_TIMESTAMPNS_NEW: u32 = 64;
1213pub const SO_TIMESTAMPING_NEW: u32 = 65;
1214pub const SO_RCVTIMEO_NEW: u32 = 66;
1215pub const SO_SNDTIMEO_NEW: u32 = 67;
1216pub const SO_DETACH_REUSEPORT_BPF: u32 = 68;
1217pub const SO_PREFER_BUSY_POLL: u32 = 69;
1218pub const SO_BUSY_POLL_BUDGET: u32 = 70;
1219pub const SO_NETNS_COOKIE: u32 = 71;
1220pub const SO_BUF_LOCK: u32 = 72;
1221pub const SO_RESERVE_MEM: u32 = 73;
1222pub const SO_TXREHASH: u32 = 74;
1223pub const SO_RCVMARK: u32 = 75;
1224pub const SO_PASSPIDFD: u32 = 76;
1225pub const SO_PEERPIDFD: u32 = 77;
1226pub const SO_DEVMEM_LINEAR: u32 = 78;
1227pub const SCM_DEVMEM_LINEAR: u32 = 78;
1228pub const SO_DEVMEM_DMABUF: u32 = 79;
1229pub const SCM_DEVMEM_DMABUF: u32 = 79;
1230pub const SO_DEVMEM_DONTNEED: u32 = 80;
1231pub const SCM_TS_OPT_ID: u32 = 81;
1232pub const SYS_SOCKET: u32 = 1;
1233pub const SYS_BIND: u32 = 2;
1234pub const SYS_CONNECT: u32 = 3;
1235pub const SYS_LISTEN: u32 = 4;
1236pub const SYS_ACCEPT: u32 = 5;
1237pub const SYS_GETSOCKNAME: u32 = 6;
1238pub const SYS_GETPEERNAME: u32 = 7;
1239pub const SYS_SOCKETPAIR: u32 = 8;
1240pub const SYS_SEND: u32 = 9;
1241pub const SYS_RECV: u32 = 10;
1242pub const SYS_SENDTO: u32 = 11;
1243pub const SYS_RECVFROM: u32 = 12;
1244pub const SYS_SHUTDOWN: u32 = 13;
1245pub const SYS_SETSOCKOPT: u32 = 14;
1246pub const SYS_GETSOCKOPT: u32 = 15;
1247pub const SYS_SENDMSG: u32 = 16;
1248pub const SYS_RECVMSG: u32 = 17;
1249pub const SYS_ACCEPT4: u32 = 18;
1250pub const SYS_RECVMMSG: u32 = 19;
1251pub const SYS_SENDMMSG: u32 = 20;
1252pub const __SO_ACCEPTCON: u32 = 65536;
1253pub const TCP_MSS_DEFAULT: u32 = 536;
1254pub const TCP_MSS_DESIRED: u32 = 1220;
1255pub const TCP_NODELAY: u32 = 1;
1256pub const TCP_MAXSEG: u32 = 2;
1257pub const TCP_CORK: u32 = 3;
1258pub const TCP_KEEPIDLE: u32 = 4;
1259pub const TCP_KEEPINTVL: u32 = 5;
1260pub const TCP_KEEPCNT: u32 = 6;
1261pub const TCP_SYNCNT: u32 = 7;
1262pub const TCP_LINGER2: u32 = 8;
1263pub const TCP_DEFER_ACCEPT: u32 = 9;
1264pub const TCP_WINDOW_CLAMP: u32 = 10;
1265pub const TCP_INFO: u32 = 11;
1266pub const TCP_QUICKACK: u32 = 12;
1267pub const TCP_CONGESTION: u32 = 13;
1268pub const TCP_MD5SIG: u32 = 14;
1269pub const TCP_THIN_LINEAR_TIMEOUTS: u32 = 16;
1270pub const TCP_THIN_DUPACK: u32 = 17;
1271pub const TCP_USER_TIMEOUT: u32 = 18;
1272pub const TCP_REPAIR: u32 = 19;
1273pub const TCP_REPAIR_QUEUE: u32 = 20;
1274pub const TCP_QUEUE_SEQ: u32 = 21;
1275pub const TCP_REPAIR_OPTIONS: u32 = 22;
1276pub const TCP_FASTOPEN: u32 = 23;
1277pub const TCP_TIMESTAMP: u32 = 24;
1278pub const TCP_NOTSENT_LOWAT: u32 = 25;
1279pub const TCP_CC_INFO: u32 = 26;
1280pub const TCP_SAVE_SYN: u32 = 27;
1281pub const TCP_SAVED_SYN: u32 = 28;
1282pub const TCP_REPAIR_WINDOW: u32 = 29;
1283pub const TCP_FASTOPEN_CONNECT: u32 = 30;
1284pub const TCP_ULP: u32 = 31;
1285pub const TCP_MD5SIG_EXT: u32 = 32;
1286pub const TCP_FASTOPEN_KEY: u32 = 33;
1287pub const TCP_FASTOPEN_NO_COOKIE: u32 = 34;
1288pub const TCP_ZEROCOPY_RECEIVE: u32 = 35;
1289pub const TCP_INQ: u32 = 36;
1290pub const TCP_CM_INQ: u32 = 36;
1291pub const TCP_TX_DELAY: u32 = 37;
1292pub const TCP_AO_ADD_KEY: u32 = 38;
1293pub const TCP_AO_DEL_KEY: u32 = 39;
1294pub const TCP_AO_INFO: u32 = 40;
1295pub const TCP_AO_GET_KEYS: u32 = 41;
1296pub const TCP_AO_REPAIR: u32 = 42;
1297pub const TCP_IS_MPTCP: u32 = 43;
1298pub const TCP_REPAIR_ON: u32 = 1;
1299pub const TCP_REPAIR_OFF: u32 = 0;
1300pub const TCP_REPAIR_OFF_NO_WP: i32 = -1;
1301pub const TCPI_OPT_TIMESTAMPS: u32 = 1;
1302pub const TCPI_OPT_SACK: u32 = 2;
1303pub const TCPI_OPT_WSCALE: u32 = 4;
1304pub const TCPI_OPT_ECN: u32 = 8;
1305pub const TCPI_OPT_ECN_SEEN: u32 = 16;
1306pub const TCPI_OPT_SYN_DATA: u32 = 32;
1307pub const TCPI_OPT_USEC_TS: u32 = 64;
1308pub const TCP_MD5SIG_MAXKEYLEN: u32 = 80;
1309pub const TCP_MD5SIG_FLAG_PREFIX: u32 = 1;
1310pub const TCP_MD5SIG_FLAG_IFINDEX: u32 = 2;
1311pub const TCP_AO_MAXKEYLEN: u32 = 80;
1312pub const TCP_AO_KEYF_IFINDEX: u32 = 1;
1313pub const TCP_AO_KEYF_EXCLUDE_OPT: u32 = 2;
1314pub const TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT: u32 = 1;
1315pub const UNIX_PATH_MAX: u32 = 108;
1316pub const IFNAMSIZ: u32 = 16;
1317pub const IFALIASZ: u32 = 256;
1318pub const ALTIFNAMSIZ: u32 = 128;
1319pub const GENERIC_HDLC_VERSION: u32 = 4;
1320pub const CLOCK_DEFAULT: u32 = 0;
1321pub const CLOCK_EXT: u32 = 1;
1322pub const CLOCK_INT: u32 = 2;
1323pub const CLOCK_TXINT: u32 = 3;
1324pub const CLOCK_TXFROMRX: u32 = 4;
1325pub const ENCODING_DEFAULT: u32 = 0;
1326pub const ENCODING_NRZ: u32 = 1;
1327pub const ENCODING_NRZI: u32 = 2;
1328pub const ENCODING_FM_MARK: u32 = 3;
1329pub const ENCODING_FM_SPACE: u32 = 4;
1330pub const ENCODING_MANCHESTER: u32 = 5;
1331pub const PARITY_DEFAULT: u32 = 0;
1332pub const PARITY_NONE: u32 = 1;
1333pub const PARITY_CRC16_PR0: u32 = 2;
1334pub const PARITY_CRC16_PR1: u32 = 3;
1335pub const PARITY_CRC16_PR0_CCITT: u32 = 4;
1336pub const PARITY_CRC16_PR1_CCITT: u32 = 5;
1337pub const PARITY_CRC32_PR0_CCITT: u32 = 6;
1338pub const PARITY_CRC32_PR1_CCITT: u32 = 7;
1339pub const LMI_DEFAULT: u32 = 0;
1340pub const LMI_NONE: u32 = 1;
1341pub const LMI_ANSI: u32 = 2;
1342pub const LMI_CCITT: u32 = 3;
1343pub const LMI_CISCO: u32 = 4;
1344pub const IF_GET_IFACE: u32 = 1;
1345pub const IF_GET_PROTO: u32 = 2;
1346pub const IF_IFACE_V35: u32 = 4096;
1347pub const IF_IFACE_V24: u32 = 4097;
1348pub const IF_IFACE_X21: u32 = 4098;
1349pub const IF_IFACE_T1: u32 = 4099;
1350pub const IF_IFACE_E1: u32 = 4100;
1351pub const IF_IFACE_SYNC_SERIAL: u32 = 4101;
1352pub const IF_IFACE_X21D: u32 = 4102;
1353pub const IF_PROTO_HDLC: u32 = 8192;
1354pub const IF_PROTO_PPP: u32 = 8193;
1355pub const IF_PROTO_CISCO: u32 = 8194;
1356pub const IF_PROTO_FR: u32 = 8195;
1357pub const IF_PROTO_FR_ADD_PVC: u32 = 8196;
1358pub const IF_PROTO_FR_DEL_PVC: u32 = 8197;
1359pub const IF_PROTO_X25: u32 = 8198;
1360pub const IF_PROTO_HDLC_ETH: u32 = 8199;
1361pub const IF_PROTO_FR_ADD_ETH_PVC: u32 = 8200;
1362pub const IF_PROTO_FR_DEL_ETH_PVC: u32 = 8201;
1363pub const IF_PROTO_FR_PVC: u32 = 8202;
1364pub const IF_PROTO_FR_ETH_PVC: u32 = 8203;
1365pub const IF_PROTO_RAW: u32 = 8204;
1366pub const IFHWADDRLEN: u32 = 6;
1367pub const NF_DROP: u32 = 0;
1368pub const NF_ACCEPT: u32 = 1;
1369pub const NF_STOLEN: u32 = 2;
1370pub const NF_QUEUE: u32 = 3;
1371pub const NF_REPEAT: u32 = 4;
1372pub const NF_STOP: u32 = 5;
1373pub const NF_MAX_VERDICT: u32 = 5;
1374pub const NF_VERDICT_MASK: u32 = 255;
1375pub const NF_VERDICT_FLAG_QUEUE_BYPASS: u32 = 32768;
1376pub const NF_VERDICT_QMASK: u32 = 4294901760;
1377pub const NF_VERDICT_QBITS: u32 = 16;
1378pub const NF_VERDICT_BITS: u32 = 16;
1379pub const NF_IP6_PRE_ROUTING: u32 = 0;
1380pub const NF_IP6_LOCAL_IN: u32 = 1;
1381pub const NF_IP6_FORWARD: u32 = 2;
1382pub const NF_IP6_LOCAL_OUT: u32 = 3;
1383pub const NF_IP6_POST_ROUTING: u32 = 4;
1384pub const NF_IP6_NUMHOOKS: u32 = 5;
1385pub const XT_FUNCTION_MAXNAMELEN: u32 = 30;
1386pub const XT_EXTENSION_MAXNAMELEN: u32 = 29;
1387pub const XT_TABLE_MAXNAMELEN: u32 = 32;
1388pub const XT_CONTINUE: u32 = 4294967295;
1389pub const XT_RETURN: i32 = -5;
1390pub const XT_STANDARD_TARGET: &[u8; 1] = b"\0";
1391pub const XT_ERROR_TARGET: &[u8; 6] = b"ERROR\0";
1392pub const XT_INV_PROTO: u32 = 64;
1393pub const IP6T_FUNCTION_MAXNAMELEN: u32 = 30;
1394pub const IP6T_TABLE_MAXNAMELEN: u32 = 32;
1395pub const IP6T_CONTINUE: u32 = 4294967295;
1396pub const IP6T_RETURN: i32 = -5;
1397pub const XT_TCP_INV_SRCPT: u32 = 1;
1398pub const XT_TCP_INV_DSTPT: u32 = 2;
1399pub const XT_TCP_INV_FLAGS: u32 = 4;
1400pub const XT_TCP_INV_OPTION: u32 = 8;
1401pub const XT_TCP_INV_MASK: u32 = 15;
1402pub const XT_UDP_INV_SRCPT: u32 = 1;
1403pub const XT_UDP_INV_DSTPT: u32 = 2;
1404pub const XT_UDP_INV_MASK: u32 = 3;
1405pub const IP6T_TCP_INV_SRCPT: u32 = 1;
1406pub const IP6T_TCP_INV_DSTPT: u32 = 2;
1407pub const IP6T_TCP_INV_FLAGS: u32 = 4;
1408pub const IP6T_TCP_INV_OPTION: u32 = 8;
1409pub const IP6T_TCP_INV_MASK: u32 = 15;
1410pub const IP6T_UDP_INV_SRCPT: u32 = 1;
1411pub const IP6T_UDP_INV_DSTPT: u32 = 2;
1412pub const IP6T_UDP_INV_MASK: u32 = 3;
1413pub const IP6T_STANDARD_TARGET: &[u8; 1] = b"\0";
1414pub const IP6T_ERROR_TARGET: &[u8; 6] = b"ERROR\0";
1415pub const IP6T_F_PROTO: u32 = 1;
1416pub const IP6T_F_TOS: u32 = 2;
1417pub const IP6T_F_GOTO: u32 = 4;
1418pub const IP6T_F_MASK: u32 = 7;
1419pub const IP6T_INV_VIA_IN: u32 = 1;
1420pub const IP6T_INV_VIA_OUT: u32 = 2;
1421pub const IP6T_INV_TOS: u32 = 4;
1422pub const IP6T_INV_SRCIP: u32 = 8;
1423pub const IP6T_INV_DSTIP: u32 = 16;
1424pub const IP6T_INV_FRAG: u32 = 32;
1425pub const IP6T_INV_PROTO: u32 = 64;
1426pub const IP6T_INV_MASK: u32 = 127;
1427pub const IP6T_BASE_CTL: u32 = 64;
1428pub const IP6T_SO_SET_REPLACE: u32 = 64;
1429pub const IP6T_SO_SET_ADD_COUNTERS: u32 = 65;
1430pub const IP6T_SO_SET_MAX: u32 = 65;
1431pub const IP6T_SO_GET_INFO: u32 = 64;
1432pub const IP6T_SO_GET_ENTRIES: u32 = 65;
1433pub const IP6T_SO_GET_REVISION_MATCH: u32 = 68;
1434pub const IP6T_SO_GET_REVISION_TARGET: u32 = 69;
1435pub const IP6T_SO_GET_MAX: u32 = 69;
1436pub const IP6T_SO_ORIGINAL_DST: u32 = 80;
1437pub const IP6T_ICMP_INV: u32 = 1;
1438pub const NF_IP_PRE_ROUTING: u32 = 0;
1439pub const NF_IP_LOCAL_IN: u32 = 1;
1440pub const NF_IP_FORWARD: u32 = 2;
1441pub const NF_IP_LOCAL_OUT: u32 = 3;
1442pub const NF_IP_POST_ROUTING: u32 = 4;
1443pub const NF_IP_NUMHOOKS: u32 = 5;
1444pub const SO_ORIGINAL_DST: u32 = 80;
1445pub const SHUT_RD: u32 = 0;
1446pub const SHUT_WR: u32 = 1;
1447pub const SHUT_RDWR: u32 = 2;
1448pub const SOCK_STREAM: u32 = 1;
1449pub const SOCK_DGRAM: u32 = 2;
1450pub const SOCK_RAW: u32 = 3;
1451pub const SOCK_RDM: u32 = 4;
1452pub const SOCK_SEQPACKET: u32 = 5;
1453pub const MSG_DONTWAIT: u32 = 64;
1454pub const AF_UNSPEC: u32 = 0;
1455pub const AF_UNIX: u32 = 1;
1456pub const AF_INET: u32 = 2;
1457pub const AF_AX25: u32 = 3;
1458pub const AF_IPX: u32 = 4;
1459pub const AF_APPLETALK: u32 = 5;
1460pub const AF_NETROM: u32 = 6;
1461pub const AF_BRIDGE: u32 = 7;
1462pub const AF_ATMPVC: u32 = 8;
1463pub const AF_X25: u32 = 9;
1464pub const AF_INET6: u32 = 10;
1465pub const AF_ROSE: u32 = 11;
1466pub const AF_DECnet: u32 = 12;
1467pub const AF_NETBEUI: u32 = 13;
1468pub const AF_SECURITY: u32 = 14;
1469pub const AF_KEY: u32 = 15;
1470pub const AF_NETLINK: u32 = 16;
1471pub const AF_PACKET: u32 = 17;
1472pub const AF_ASH: u32 = 18;
1473pub const AF_ECONET: u32 = 19;
1474pub const AF_ATMSVC: u32 = 20;
1475pub const AF_RDS: u32 = 21;
1476pub const AF_SNA: u32 = 22;
1477pub const AF_IRDA: u32 = 23;
1478pub const AF_PPPOX: u32 = 24;
1479pub const AF_WANPIPE: u32 = 25;
1480pub const AF_LLC: u32 = 26;
1481pub const AF_CAN: u32 = 29;
1482pub const AF_TIPC: u32 = 30;
1483pub const AF_BLUETOOTH: u32 = 31;
1484pub const AF_IUCV: u32 = 32;
1485pub const AF_RXRPC: u32 = 33;
1486pub const AF_ISDN: u32 = 34;
1487pub const AF_PHONET: u32 = 35;
1488pub const AF_IEEE802154: u32 = 36;
1489pub const AF_CAIF: u32 = 37;
1490pub const AF_ALG: u32 = 38;
1491pub const AF_NFC: u32 = 39;
1492pub const AF_VSOCK: u32 = 40;
1493pub const AF_KCM: u32 = 41;
1494pub const AF_QIPCRTR: u32 = 42;
1495pub const AF_SMC: u32 = 43;
1496pub const AF_XDP: u32 = 44;
1497pub const AF_MCTP: u32 = 45;
1498pub const AF_MAX: u32 = 46;
1499pub const MSG_OOB: u32 = 1;
1500pub const MSG_PEEK: u32 = 2;
1501pub const MSG_DONTROUTE: u32 = 4;
1502pub const MSG_CTRUNC: u32 = 8;
1503pub const MSG_PROBE: u32 = 16;
1504pub const MSG_TRUNC: u32 = 32;
1505pub const MSG_EOR: u32 = 128;
1506pub const MSG_WAITALL: u32 = 256;
1507pub const MSG_FIN: u32 = 512;
1508pub const MSG_SYN: u32 = 1024;
1509pub const MSG_CONFIRM: u32 = 2048;
1510pub const MSG_RST: u32 = 4096;
1511pub const MSG_ERRQUEUE: u32 = 8192;
1512pub const MSG_NOSIGNAL: u32 = 16384;
1513pub const MSG_MORE: u32 = 32768;
1514pub const MSG_CMSG_CLOEXEC: u32 = 1073741824;
1515pub const SCM_RIGHTS: u32 = 1;
1516pub const SCM_CREDENTIALS: u32 = 2;
1517pub const SCM_SECURITY: u32 = 3;
1518pub const SOL_IP: u32 = 0;
1519pub const SOL_TCP: u32 = 6;
1520pub const SOL_UDP: u32 = 17;
1521pub const SOL_IPV6: u32 = 41;
1522pub const SOL_ICMPV6: u32 = 58;
1523pub const SOL_SCTP: u32 = 132;
1524pub const SOL_UDPLITE: u32 = 136;
1525pub const SOL_RAW: u32 = 255;
1526pub const SOL_IPX: u32 = 256;
1527pub const SOL_AX25: u32 = 257;
1528pub const SOL_ATALK: u32 = 258;
1529pub const SOL_NETROM: u32 = 259;
1530pub const SOL_ROSE: u32 = 260;
1531pub const SOL_DECNET: u32 = 261;
1532pub const SOL_X25: u32 = 262;
1533pub const SOL_PACKET: u32 = 263;
1534pub const SOL_ATM: u32 = 264;
1535pub const SOL_AAL: u32 = 265;
1536pub const SOL_IRDA: u32 = 266;
1537pub const SOL_NETBEUI: u32 = 267;
1538pub const SOL_LLC: u32 = 268;
1539pub const SOL_DCCP: u32 = 269;
1540pub const SOL_NETLINK: u32 = 270;
1541pub const SOL_TIPC: u32 = 271;
1542pub const SOL_RXRPC: u32 = 272;
1543pub const SOL_PPPOL2TP: u32 = 273;
1544pub const SOL_BLUETOOTH: u32 = 274;
1545pub const SOL_PNPIPE: u32 = 275;
1546pub const SOL_RDS: u32 = 276;
1547pub const SOL_IUCV: u32 = 277;
1548pub const SOL_CAIF: u32 = 278;
1549pub const SOL_ALG: u32 = 279;
1550pub const SOL_NFC: u32 = 280;
1551pub const SOL_KCM: u32 = 281;
1552pub const SOL_TLS: u32 = 282;
1553pub const SOL_XDP: u32 = 283;
1554pub const SOL_MPTCP: u32 = 284;
1555pub const SOL_MCTP: u32 = 285;
1556pub const SOL_SMC: u32 = 286;
1557pub const IPPROTO_IP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IP;
1558pub const IPPROTO_ICMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ICMP;
1559pub const IPPROTO_IGMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IGMP;
1560pub const IPPROTO_IPIP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IPIP;
1561pub const IPPROTO_TCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_TCP;
1562pub const IPPROTO_EGP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_EGP;
1563pub const IPPROTO_PUP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_PUP;
1564pub const IPPROTO_UDP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_UDP;
1565pub const IPPROTO_IDP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IDP;
1566pub const IPPROTO_TP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_TP;
1567pub const IPPROTO_DCCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_DCCP;
1568pub const IPPROTO_IPV6: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IPV6;
1569pub const IPPROTO_RSVP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RSVP;
1570pub const IPPROTO_GRE: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_GRE;
1571pub const IPPROTO_ESP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ESP;
1572pub const IPPROTO_AH: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_AH;
1573pub const IPPROTO_MTP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MTP;
1574pub const IPPROTO_BEETPH: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_BEETPH;
1575pub const IPPROTO_ENCAP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ENCAP;
1576pub const IPPROTO_PIM: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_PIM;
1577pub const IPPROTO_COMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_COMP;
1578pub const IPPROTO_L2TP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_L2TP;
1579pub const IPPROTO_SCTP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_SCTP;
1580pub const IPPROTO_UDPLITE: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_UDPLITE;
1581pub const IPPROTO_MPLS: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MPLS;
1582pub const IPPROTO_ETHERNET: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ETHERNET;
1583pub const IPPROTO_RAW: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RAW;
1584pub const IPPROTO_SMC: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_SMC;
1585pub const IPPROTO_MPTCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MPTCP;
1586pub const IPPROTO_MAX: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MAX;
1587pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
1588pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
1589pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
1590pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
1591pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
1592pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
1593pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
1594pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
1595pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
1596pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
1597pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
1598pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
1599pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
1600pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
1601pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
1602pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
1603pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
1604pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
1605pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
1606pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
1607pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
1608pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
1609pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
1610pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
1611pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
1612pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
1613pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
1614pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
1615pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
1616pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
1617pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
1618pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
1619pub const IPV4_DEVCONF_ARP_EVICT_NOCARRIER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_EVICT_NOCARRIER;
1620pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
1621pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
1622pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
1623pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
1624pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
1625pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
1626pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
1627pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
1628pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
1629pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
1630pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
1631pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
1632pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
1633pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
1634pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
1635pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
1636pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
1637pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
1638pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
1639pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
1640pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
1641pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
1642pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
1643pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
1644pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
1645pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
1646pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
1647pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
1648pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
1649pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
1650pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
1651pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
1652pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
1653pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
1654pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
1655pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
1656pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
1657pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
1658pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
1659pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
1660pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
1661pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
1662pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
1663pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
1664pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
1665pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
1666pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
1667pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
1668pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
1669pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
1670pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
1671pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
1672pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
1673pub const DEVCONF_RA_DEFRTR_METRIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RA_DEFRTR_METRIC;
1674pub const DEVCONF_IOAM6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ENABLED;
1675pub const DEVCONF_IOAM6_ID: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ID;
1676pub const DEVCONF_IOAM6_ID_WIDE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ID_WIDE;
1677pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_EVICT_NOCARRIER;
1678pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA;
1679pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT;
1680pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
1681pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
1682pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
1683pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
1684pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
1685pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
1686pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
1687pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
1688pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
1689pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
1690pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
1691pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
1692pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
1693pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
1694pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
1695pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
1696pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
1697pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
1698pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
1699pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
1700pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
1701pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
1702pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
1703pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
1704pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
1705pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
1706pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
1707pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
1708pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
1709pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
1710pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
1711pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
1712pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
1713pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
1714pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
1715pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
1716pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
1717pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
1718pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
1719pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
1720pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
1721pub const TCP_NLA_TTL: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TTL;
1722pub const TCP_NLA_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REHASH;
1723pub const IF_OPER_UNKNOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_UNKNOWN;
1724pub const IF_OPER_NOTPRESENT: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_NOTPRESENT;
1725pub const IF_OPER_DOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_DOWN;
1726pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_LOWERLAYERDOWN;
1727pub const IF_OPER_TESTING: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_TESTING;
1728pub const IF_OPER_DORMANT: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_DORMANT;
1729pub const IF_OPER_UP: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_UP;
1730pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_DEFAULT;
1731pub const IF_LINK_MODE_DORMANT: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_DORMANT;
1732pub const IF_LINK_MODE_TESTING: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_TESTING;
1733pub const NFPROTO_UNSPEC: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_UNSPEC;
1734pub const NFPROTO_INET: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_INET;
1735pub const NFPROTO_IPV4: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_IPV4;
1736pub const NFPROTO_ARP: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_ARP;
1737pub const NFPROTO_NETDEV: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_NETDEV;
1738pub const NFPROTO_BRIDGE: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_BRIDGE;
1739pub const NFPROTO_IPV6: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_IPV6;
1740pub const NFPROTO_DECNET: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_DECNET;
1741pub const NFPROTO_NUMPROTO: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_NUMPROTO;
1742pub const SOF_TIMESTAMPING_TX_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_HARDWARE;
1743pub const SOF_TIMESTAMPING_TX_SOFTWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_SOFTWARE;
1744pub const SOF_TIMESTAMPING_RX_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_RX_HARDWARE;
1745pub const SOF_TIMESTAMPING_RX_SOFTWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_RX_SOFTWARE;
1746pub const SOF_TIMESTAMPING_SOFTWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_SOFTWARE;
1747pub const SOF_TIMESTAMPING_SYS_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_SYS_HARDWARE;
1748pub const SOF_TIMESTAMPING_RAW_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_RAW_HARDWARE;
1749pub const SOF_TIMESTAMPING_OPT_ID: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID;
1750pub const SOF_TIMESTAMPING_TX_SCHED: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_SCHED;
1751pub const SOF_TIMESTAMPING_TX_ACK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_ACK;
1752pub const SOF_TIMESTAMPING_OPT_CMSG: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_CMSG;
1753pub const SOF_TIMESTAMPING_OPT_TSONLY: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_TSONLY;
1754pub const SOF_TIMESTAMPING_OPT_STATS: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_STATS;
1755pub const SOF_TIMESTAMPING_OPT_PKTINFO: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_PKTINFO;
1756pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_TX_SWHW;
1757pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC;
1758pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP;
1759pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER;
1760pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER;
1761pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK;
1762#[repr(u32)]
1763#[non_exhaustive]
1764#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1765pub enum _bindgen_ty_1 {
1766IPPROTO_IP = 0,
1767IPPROTO_ICMP = 1,
1768IPPROTO_IGMP = 2,
1769IPPROTO_IPIP = 4,
1770IPPROTO_TCP = 6,
1771IPPROTO_EGP = 8,
1772IPPROTO_PUP = 12,
1773IPPROTO_UDP = 17,
1774IPPROTO_IDP = 22,
1775IPPROTO_TP = 29,
1776IPPROTO_DCCP = 33,
1777IPPROTO_IPV6 = 41,
1778IPPROTO_RSVP = 46,
1779IPPROTO_GRE = 47,
1780IPPROTO_ESP = 50,
1781IPPROTO_AH = 51,
1782IPPROTO_MTP = 92,
1783IPPROTO_BEETPH = 94,
1784IPPROTO_ENCAP = 98,
1785IPPROTO_PIM = 103,
1786IPPROTO_COMP = 108,
1787IPPROTO_L2TP = 115,
1788IPPROTO_SCTP = 132,
1789IPPROTO_UDPLITE = 136,
1790IPPROTO_MPLS = 137,
1791IPPROTO_ETHERNET = 143,
1792IPPROTO_RAW = 255,
1793IPPROTO_SMC = 256,
1794IPPROTO_MPTCP = 262,
1795IPPROTO_MAX = 263,
1796}
1797#[repr(u32)]
1798#[non_exhaustive]
1799#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1800pub enum _bindgen_ty_2 {
1801IPV4_DEVCONF_FORWARDING = 1,
1802IPV4_DEVCONF_MC_FORWARDING = 2,
1803IPV4_DEVCONF_PROXY_ARP = 3,
1804IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
1805IPV4_DEVCONF_SECURE_REDIRECTS = 5,
1806IPV4_DEVCONF_SEND_REDIRECTS = 6,
1807IPV4_DEVCONF_SHARED_MEDIA = 7,
1808IPV4_DEVCONF_RP_FILTER = 8,
1809IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
1810IPV4_DEVCONF_BOOTP_RELAY = 10,
1811IPV4_DEVCONF_LOG_MARTIANS = 11,
1812IPV4_DEVCONF_TAG = 12,
1813IPV4_DEVCONF_ARPFILTER = 13,
1814IPV4_DEVCONF_MEDIUM_ID = 14,
1815IPV4_DEVCONF_NOXFRM = 15,
1816IPV4_DEVCONF_NOPOLICY = 16,
1817IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
1818IPV4_DEVCONF_ARP_ANNOUNCE = 18,
1819IPV4_DEVCONF_ARP_IGNORE = 19,
1820IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
1821IPV4_DEVCONF_ARP_ACCEPT = 21,
1822IPV4_DEVCONF_ARP_NOTIFY = 22,
1823IPV4_DEVCONF_ACCEPT_LOCAL = 23,
1824IPV4_DEVCONF_SRC_VMARK = 24,
1825IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
1826IPV4_DEVCONF_ROUTE_LOCALNET = 26,
1827IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
1828IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
1829IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
1830IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
1831IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
1832IPV4_DEVCONF_BC_FORWARDING = 32,
1833IPV4_DEVCONF_ARP_EVICT_NOCARRIER = 33,
1834__IPV4_DEVCONF_MAX = 34,
1835}
1836#[repr(u32)]
1837#[non_exhaustive]
1838#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1839pub enum _bindgen_ty_3 {
1840DEVCONF_FORWARDING = 0,
1841DEVCONF_HOPLIMIT = 1,
1842DEVCONF_MTU6 = 2,
1843DEVCONF_ACCEPT_RA = 3,
1844DEVCONF_ACCEPT_REDIRECTS = 4,
1845DEVCONF_AUTOCONF = 5,
1846DEVCONF_DAD_TRANSMITS = 6,
1847DEVCONF_RTR_SOLICITS = 7,
1848DEVCONF_RTR_SOLICIT_INTERVAL = 8,
1849DEVCONF_RTR_SOLICIT_DELAY = 9,
1850DEVCONF_USE_TEMPADDR = 10,
1851DEVCONF_TEMP_VALID_LFT = 11,
1852DEVCONF_TEMP_PREFERED_LFT = 12,
1853DEVCONF_REGEN_MAX_RETRY = 13,
1854DEVCONF_MAX_DESYNC_FACTOR = 14,
1855DEVCONF_MAX_ADDRESSES = 15,
1856DEVCONF_FORCE_MLD_VERSION = 16,
1857DEVCONF_ACCEPT_RA_DEFRTR = 17,
1858DEVCONF_ACCEPT_RA_PINFO = 18,
1859DEVCONF_ACCEPT_RA_RTR_PREF = 19,
1860DEVCONF_RTR_PROBE_INTERVAL = 20,
1861DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
1862DEVCONF_PROXY_NDP = 22,
1863DEVCONF_OPTIMISTIC_DAD = 23,
1864DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
1865DEVCONF_MC_FORWARDING = 25,
1866DEVCONF_DISABLE_IPV6 = 26,
1867DEVCONF_ACCEPT_DAD = 27,
1868DEVCONF_FORCE_TLLAO = 28,
1869DEVCONF_NDISC_NOTIFY = 29,
1870DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
1871DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
1872DEVCONF_SUPPRESS_FRAG_NDISC = 32,
1873DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
1874DEVCONF_USE_OPTIMISTIC = 34,
1875DEVCONF_ACCEPT_RA_MTU = 35,
1876DEVCONF_STABLE_SECRET = 36,
1877DEVCONF_USE_OIF_ADDRS_ONLY = 37,
1878DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
1879DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
1880DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
1881DEVCONF_DROP_UNSOLICITED_NA = 41,
1882DEVCONF_KEEP_ADDR_ON_DOWN = 42,
1883DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
1884DEVCONF_SEG6_ENABLED = 44,
1885DEVCONF_SEG6_REQUIRE_HMAC = 45,
1886DEVCONF_ENHANCED_DAD = 46,
1887DEVCONF_ADDR_GEN_MODE = 47,
1888DEVCONF_DISABLE_POLICY = 48,
1889DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
1890DEVCONF_NDISC_TCLASS = 50,
1891DEVCONF_RPL_SEG_ENABLED = 51,
1892DEVCONF_RA_DEFRTR_METRIC = 52,
1893DEVCONF_IOAM6_ENABLED = 53,
1894DEVCONF_IOAM6_ID = 54,
1895DEVCONF_IOAM6_ID_WIDE = 55,
1896DEVCONF_NDISC_EVICT_NOCARRIER = 56,
1897DEVCONF_ACCEPT_UNTRACKED_NA = 57,
1898DEVCONF_ACCEPT_RA_MIN_LFT = 58,
1899DEVCONF_MAX = 59,
1900}
1901#[repr(u32)]
1902#[non_exhaustive]
1903#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1904pub enum socket_state {
1905SS_FREE = 0,
1906SS_UNCONNECTED = 1,
1907SS_CONNECTING = 2,
1908SS_CONNECTED = 3,
1909SS_DISCONNECTING = 4,
1910}
1911#[repr(u32)]
1912#[non_exhaustive]
1913#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1914pub enum _bindgen_ty_4 {
1915TCP_FLAG_CWR = 32768,
1916TCP_FLAG_ECE = 16384,
1917TCP_FLAG_URG = 8192,
1918TCP_FLAG_ACK = 4096,
1919TCP_FLAG_PSH = 2048,
1920TCP_FLAG_RST = 1024,
1921TCP_FLAG_SYN = 512,
1922TCP_FLAG_FIN = 256,
1923TCP_RESERVED_BITS = 15,
1924TCP_DATA_OFFSET = 240,
1925}
1926#[repr(u32)]
1927#[non_exhaustive]
1928#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1929pub enum _bindgen_ty_5 {
1930TCP_NO_QUEUE = 0,
1931TCP_RECV_QUEUE = 1,
1932TCP_SEND_QUEUE = 2,
1933TCP_QUEUES_NR = 3,
1934}
1935#[repr(u32)]
1936#[non_exhaustive]
1937#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1938pub enum tcp_fastopen_client_fail {
1939TFO_STATUS_UNSPEC = 0,
1940TFO_COOKIE_UNAVAILABLE = 1,
1941TFO_DATA_NOT_ACKED = 2,
1942TFO_SYN_RETRANSMITTED = 3,
1943}
1944#[repr(u32)]
1945#[non_exhaustive]
1946#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1947pub enum tcp_ca_state {
1948TCP_CA_Open = 0,
1949TCP_CA_Disorder = 1,
1950TCP_CA_CWR = 2,
1951TCP_CA_Recovery = 3,
1952TCP_CA_Loss = 4,
1953}
1954#[repr(u32)]
1955#[non_exhaustive]
1956#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1957pub enum _bindgen_ty_6 {
1958TCP_NLA_PAD = 0,
1959TCP_NLA_BUSY = 1,
1960TCP_NLA_RWND_LIMITED = 2,
1961TCP_NLA_SNDBUF_LIMITED = 3,
1962TCP_NLA_DATA_SEGS_OUT = 4,
1963TCP_NLA_TOTAL_RETRANS = 5,
1964TCP_NLA_PACING_RATE = 6,
1965TCP_NLA_DELIVERY_RATE = 7,
1966TCP_NLA_SND_CWND = 8,
1967TCP_NLA_REORDERING = 9,
1968TCP_NLA_MIN_RTT = 10,
1969TCP_NLA_RECUR_RETRANS = 11,
1970TCP_NLA_DELIVERY_RATE_APP_LMT = 12,
1971TCP_NLA_SNDQ_SIZE = 13,
1972TCP_NLA_CA_STATE = 14,
1973TCP_NLA_SND_SSTHRESH = 15,
1974TCP_NLA_DELIVERED = 16,
1975TCP_NLA_DELIVERED_CE = 17,
1976TCP_NLA_BYTES_SENT = 18,
1977TCP_NLA_BYTES_RETRANS = 19,
1978TCP_NLA_DSACK_DUPS = 20,
1979TCP_NLA_REORD_SEEN = 21,
1980TCP_NLA_SRTT = 22,
1981TCP_NLA_TIMEOUT_REHASH = 23,
1982TCP_NLA_BYTES_NOTSENT = 24,
1983TCP_NLA_EDT = 25,
1984TCP_NLA_TTL = 26,
1985TCP_NLA_REHASH = 27,
1986}
1987#[repr(u32)]
1988#[non_exhaustive]
1989#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1990pub enum net_device_flags {
1991IFF_UP = 1,
1992IFF_BROADCAST = 2,
1993IFF_DEBUG = 4,
1994IFF_LOOPBACK = 8,
1995IFF_POINTOPOINT = 16,
1996IFF_NOTRAILERS = 32,
1997IFF_RUNNING = 64,
1998IFF_NOARP = 128,
1999IFF_PROMISC = 256,
2000IFF_ALLMULTI = 512,
2001IFF_MASTER = 1024,
2002IFF_SLAVE = 2048,
2003IFF_MULTICAST = 4096,
2004IFF_PORTSEL = 8192,
2005IFF_AUTOMEDIA = 16384,
2006IFF_DYNAMIC = 32768,
2007IFF_LOWER_UP = 65536,
2008IFF_DORMANT = 131072,
2009IFF_ECHO = 262144,
2010}
2011#[repr(u32)]
2012#[non_exhaustive]
2013#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2014pub enum _bindgen_ty_7 {
2015IF_OPER_UNKNOWN = 0,
2016IF_OPER_NOTPRESENT = 1,
2017IF_OPER_DOWN = 2,
2018IF_OPER_LOWERLAYERDOWN = 3,
2019IF_OPER_TESTING = 4,
2020IF_OPER_DORMANT = 5,
2021IF_OPER_UP = 6,
2022}
2023#[repr(u32)]
2024#[non_exhaustive]
2025#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2026pub enum _bindgen_ty_8 {
2027IF_LINK_MODE_DEFAULT = 0,
2028IF_LINK_MODE_DORMANT = 1,
2029IF_LINK_MODE_TESTING = 2,
2030}
2031#[repr(u32)]
2032#[non_exhaustive]
2033#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2034pub enum nf_inet_hooks {
2035NF_INET_PRE_ROUTING = 0,
2036NF_INET_LOCAL_IN = 1,
2037NF_INET_FORWARD = 2,
2038NF_INET_LOCAL_OUT = 3,
2039NF_INET_POST_ROUTING = 4,
2040NF_INET_NUMHOOKS = 5,
2041}
2042#[repr(u32)]
2043#[non_exhaustive]
2044#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2045pub enum nf_dev_hooks {
2046NF_NETDEV_INGRESS = 0,
2047NF_NETDEV_EGRESS = 1,
2048NF_NETDEV_NUMHOOKS = 2,
2049}
2050#[repr(u32)]
2051#[non_exhaustive]
2052#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2053pub enum _bindgen_ty_9 {
2054NFPROTO_UNSPEC = 0,
2055NFPROTO_INET = 1,
2056NFPROTO_IPV4 = 2,
2057NFPROTO_ARP = 3,
2058NFPROTO_NETDEV = 5,
2059NFPROTO_BRIDGE = 7,
2060NFPROTO_IPV6 = 10,
2061NFPROTO_DECNET = 12,
2062NFPROTO_NUMPROTO = 13,
2063}
2064#[repr(i32)]
2065#[non_exhaustive]
2066#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2067pub enum nf_ip6_hook_priorities {
2068NF_IP6_PRI_FIRST = -2147483648,
2069NF_IP6_PRI_RAW_BEFORE_DEFRAG = -450,
2070NF_IP6_PRI_CONNTRACK_DEFRAG = -400,
2071NF_IP6_PRI_RAW = -300,
2072NF_IP6_PRI_SELINUX_FIRST = -225,
2073NF_IP6_PRI_CONNTRACK = -200,
2074NF_IP6_PRI_MANGLE = -150,
2075NF_IP6_PRI_NAT_DST = -100,
2076NF_IP6_PRI_FILTER = 0,
2077NF_IP6_PRI_SECURITY = 50,
2078NF_IP6_PRI_NAT_SRC = 100,
2079NF_IP6_PRI_SELINUX_LAST = 225,
2080NF_IP6_PRI_CONNTRACK_HELPER = 300,
2081NF_IP6_PRI_LAST = 2147483647,
2082}
2083#[repr(i32)]
2084#[non_exhaustive]
2085#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2086pub enum nf_ip_hook_priorities {
2087NF_IP_PRI_FIRST = -2147483648,
2088NF_IP_PRI_RAW_BEFORE_DEFRAG = -450,
2089NF_IP_PRI_CONNTRACK_DEFRAG = -400,
2090NF_IP_PRI_RAW = -300,
2091NF_IP_PRI_SELINUX_FIRST = -225,
2092NF_IP_PRI_CONNTRACK = -200,
2093NF_IP_PRI_MANGLE = -150,
2094NF_IP_PRI_NAT_DST = -100,
2095NF_IP_PRI_FILTER = 0,
2096NF_IP_PRI_SECURITY = 50,
2097NF_IP_PRI_NAT_SRC = 100,
2098NF_IP_PRI_SELINUX_LAST = 225,
2099NF_IP_PRI_CONNTRACK_HELPER = 300,
2100NF_IP_PRI_CONNTRACK_CONFIRM = 2147483647,
2101}
2102#[repr(u32)]
2103#[non_exhaustive]
2104#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2105pub enum _bindgen_ty_10 {
2106SOF_TIMESTAMPING_TX_HARDWARE = 1,
2107SOF_TIMESTAMPING_TX_SOFTWARE = 2,
2108SOF_TIMESTAMPING_RX_HARDWARE = 4,
2109SOF_TIMESTAMPING_RX_SOFTWARE = 8,
2110SOF_TIMESTAMPING_SOFTWARE = 16,
2111SOF_TIMESTAMPING_SYS_HARDWARE = 32,
2112SOF_TIMESTAMPING_RAW_HARDWARE = 64,
2113SOF_TIMESTAMPING_OPT_ID = 128,
2114SOF_TIMESTAMPING_TX_SCHED = 256,
2115SOF_TIMESTAMPING_TX_ACK = 512,
2116SOF_TIMESTAMPING_OPT_CMSG = 1024,
2117SOF_TIMESTAMPING_OPT_TSONLY = 2048,
2118SOF_TIMESTAMPING_OPT_STATS = 4096,
2119SOF_TIMESTAMPING_OPT_PKTINFO = 8192,
2120SOF_TIMESTAMPING_OPT_TX_SWHW = 16384,
2121SOF_TIMESTAMPING_BIND_PHC = 32768,
2122SOF_TIMESTAMPING_OPT_ID_TCP = 65536,
2123SOF_TIMESTAMPING_OPT_RX_FILTER = 131072,
2124SOF_TIMESTAMPING_MASK = 262143,
2125}
2126#[repr(u32)]
2127#[non_exhaustive]
2128#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2129pub enum hwtstamp_flags {
2130HWTSTAMP_FLAG_BONDED_PHC_INDEX = 1,
2131}
2132#[repr(u32)]
2133#[non_exhaustive]
2134#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2135pub enum hwtstamp_tx_types {
2136HWTSTAMP_TX_OFF = 0,
2137HWTSTAMP_TX_ON = 1,
2138HWTSTAMP_TX_ONESTEP_SYNC = 2,
2139HWTSTAMP_TX_ONESTEP_P2P = 3,
2140__HWTSTAMP_TX_CNT = 4,
2141}
2142#[repr(u32)]
2143#[non_exhaustive]
2144#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2145pub enum hwtstamp_rx_filters {
2146HWTSTAMP_FILTER_NONE = 0,
2147HWTSTAMP_FILTER_ALL = 1,
2148HWTSTAMP_FILTER_SOME = 2,
2149HWTSTAMP_FILTER_PTP_V1_L4_EVENT = 3,
2150HWTSTAMP_FILTER_PTP_V1_L4_SYNC = 4,
2151HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ = 5,
2152HWTSTAMP_FILTER_PTP_V2_L4_EVENT = 6,
2153HWTSTAMP_FILTER_PTP_V2_L4_SYNC = 7,
2154HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ = 8,
2155HWTSTAMP_FILTER_PTP_V2_L2_EVENT = 9,
2156HWTSTAMP_FILTER_PTP_V2_L2_SYNC = 10,
2157HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ = 11,
2158HWTSTAMP_FILTER_PTP_V2_EVENT = 12,
2159HWTSTAMP_FILTER_PTP_V2_SYNC = 13,
2160HWTSTAMP_FILTER_PTP_V2_DELAY_REQ = 14,
2161HWTSTAMP_FILTER_NTP_ALL = 15,
2162__HWTSTAMP_FILTER_CNT = 16,
2163}
2164#[repr(u32)]
2165#[non_exhaustive]
2166#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
2167pub enum txtime_flags {
2168SOF_TXTIME_DEADLINE_MODE = 1,
2169SOF_TXTIME_REPORT_ERRORS = 2,
2170SOF_TXTIME_FLAGS_MASK = 3,
2171}
2172#[repr(C)]
2173#[derive(Copy, Clone)]
2174pub union __kernel_sockaddr_storage__bindgen_ty_1 {
2175pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1,
2176pub __align: *mut crate::ctypes::c_void,
2177}
2178#[repr(C)]
2179#[derive(Copy, Clone)]
2180pub union iphdr__bindgen_ty_1 {
2181pub __bindgen_anon_1: iphdr__bindgen_ty_1__bindgen_ty_1,
2182pub addrs: iphdr__bindgen_ty_1__bindgen_ty_2,
2183}
2184#[repr(C)]
2185#[derive(Copy, Clone)]
2186pub union in6_addr__bindgen_ty_1 {
2187pub u6_addr8: [__u8; 16usize],
2188pub u6_addr16: [__be16; 8usize],
2189pub u6_addr32: [__be32; 4usize],
2190}
2191#[repr(C)]
2192#[derive(Copy, Clone)]
2193pub union ipv6hdr__bindgen_ty_1 {
2194pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1__bindgen_ty_1,
2195pub addrs: ipv6hdr__bindgen_ty_1__bindgen_ty_2,
2196}
2197#[repr(C)]
2198#[derive(Copy, Clone)]
2199pub union tcp_word_hdr {
2200pub hdr: tcphdr,
2201pub words: [__be32; 5usize],
2202}
2203#[repr(C)]
2204#[derive(Copy, Clone)]
2205pub union if_settings__bindgen_ty_1 {
2206pub raw_hdlc: *mut raw_hdlc_proto,
2207pub cisco: *mut cisco_proto,
2208pub fr: *mut fr_proto,
2209pub fr_pvc: *mut fr_proto_pvc,
2210pub fr_pvc_info: *mut fr_proto_pvc_info,
2211pub x25: *mut x25_hdlc_proto,
2212pub sync: *mut sync_serial_settings,
2213pub te1: *mut te1_settings,
2214}
2215#[repr(C)]
2216#[derive(Copy, Clone)]
2217pub union ifreq__bindgen_ty_1 {
2218pub ifrn_name: [crate::ctypes::c_char; 16usize],
2219}
2220#[repr(C)]
2221#[derive(Copy, Clone)]
2222pub union ifreq__bindgen_ty_2 {
2223pub ifru_addr: sockaddr,
2224pub ifru_dstaddr: sockaddr,
2225pub ifru_broadaddr: sockaddr,
2226pub ifru_netmask: sockaddr,
2227pub ifru_hwaddr: sockaddr,
2228pub ifru_flags: crate::ctypes::c_short,
2229pub ifru_ivalue: crate::ctypes::c_int,
2230pub ifru_mtu: crate::ctypes::c_int,
2231pub ifru_map: ifmap,
2232pub ifru_slave: [crate::ctypes::c_char; 16usize],
2233pub ifru_newname: [crate::ctypes::c_char; 16usize],
2234pub ifru_data: *mut crate::ctypes::c_void,
2235pub ifru_settings: if_settings,
2236}
2237#[repr(C)]
2238#[derive(Copy, Clone)]
2239pub union ifconf__bindgen_ty_1 {
2240pub ifcu_buf: *mut crate::ctypes::c_char,
2241pub ifcu_req: *mut ifreq,
2242}
2243#[repr(C)]
2244#[derive(Copy, Clone)]
2245pub union nf_inet_addr {
2246pub all: [__u32; 4usize],
2247pub ip: __be32,
2248pub ip6: [__be32; 4usize],
2249pub in_: in_addr,
2250pub in6: in6_addr,
2251}
2252#[repr(C)]
2253#[derive(Copy, Clone)]
2254pub union xt_entry_match__bindgen_ty_1 {
2255pub user: xt_entry_match__bindgen_ty_1__bindgen_ty_1,
2256pub kernel: xt_entry_match__bindgen_ty_1__bindgen_ty_2,
2257pub match_size: __u16,
2258}
2259#[repr(C)]
2260#[derive(Copy, Clone)]
2261pub union xt_entry_target__bindgen_ty_1 {
2262pub user: xt_entry_target__bindgen_ty_1__bindgen_ty_1,
2263pub kernel: xt_entry_target__bindgen_ty_1__bindgen_ty_2,
2264pub target_size: __u16,
2265}
2266impl<Storage> __BindgenBitfieldUnit<Storage> {
2267#[inline]
2268pub const fn new(storage: Storage) -> Self {
2269Self { storage }
2270}
2271}
2272impl<Storage> __BindgenBitfieldUnit<Storage>
2273where
2274Storage: AsRef<[u8]> + AsMut<[u8]>,
2275{
2276#[inline]
2277fn extract_bit(byte: u8, index: usize) -> bool {
2278let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
2279let mask = 1 << bit_index;
2280byte & mask == mask
2281}
2282#[inline]
2283pub fn get_bit(&self, index: usize) -> bool {
2284debug_assert!(index / 8 < self.storage.as_ref().len());
2285let byte_index = index / 8;
2286let byte = self.storage.as_ref()[byte_index];
2287Self::extract_bit(byte, index)
2288}
2289#[inline]
2290pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
2291debug_assert!(index / 8 < core::mem::size_of::<Storage>());
2292let byte_index = index / 8;
2293let byte = *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize);
2294Self::extract_bit(byte, index)
2295}
2296#[inline]
2297fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
2298let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
2299let mask = 1 << bit_index;
2300if val {
2301byte | mask
2302} else {
2303byte & !mask
2304}
2305}
2306#[inline]
2307pub fn set_bit(&mut self, index: usize, val: bool) {
2308debug_assert!(index / 8 < self.storage.as_ref().len());
2309let byte_index = index / 8;
2310let byte = &mut self.storage.as_mut()[byte_index];
2311*byte = Self::change_bit(*byte, index, val);
2312}
2313#[inline]
2314pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
2315debug_assert!(index / 8 < core::mem::size_of::<Storage>());
2316let byte_index = index / 8;
2317let byte = (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize);
2318*byte = Self::change_bit(*byte, index, val);
2319}
2320#[inline]
2321pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
2322debug_assert!(bit_width <= 64);
2323debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
2324debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
2325let mut val = 0;
2326for i in 0..(bit_width as usize) {
2327if self.get_bit(i + bit_offset) {
2328let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
2329val |= 1 << index;
2330}
2331}
2332val
2333}
2334#[inline]
2335pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
2336debug_assert!(bit_width <= 64);
2337debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
2338debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
2339let mut val = 0;
2340for i in 0..(bit_width as usize) {
2341if Self::raw_get_bit(this, i + bit_offset) {
2342let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
2343val |= 1 << index;
2344}
2345}
2346val
2347}
2348#[inline]
2349pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
2350debug_assert!(bit_width <= 64);
2351debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
2352debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
2353for i in 0..(bit_width as usize) {
2354let mask = 1 << i;
2355let val_bit_is_set = val & mask == mask;
2356let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
2357self.set_bit(index + bit_offset, val_bit_is_set);
2358}
2359}
2360#[inline]
2361pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
2362debug_assert!(bit_width <= 64);
2363debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
2364debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
2365for i in 0..(bit_width as usize) {
2366let mask = 1 << i;
2367let val_bit_is_set = val & mask == mask;
2368let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
2369Self::raw_set_bit(this, index + bit_offset, val_bit_is_set);
2370}
2371}
2372}
2373impl<T> __IncompleteArrayField<T> {
2374#[inline]
2375pub const fn new() -> Self {
2376__IncompleteArrayField(::core::marker::PhantomData, [])
2377}
2378#[inline]
2379pub fn as_ptr(&self) -> *const T {
2380self as *const _ as *const T
2381}
2382#[inline]
2383pub fn as_mut_ptr(&mut self) -> *mut T {
2384self as *mut _ as *mut T
2385}
2386#[inline]
2387pub unsafe fn as_slice(&self, len: usize) -> &[T] {
2388::core::slice::from_raw_parts(self.as_ptr(), len)
2389}
2390#[inline]
2391pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
2392::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
2393}
2394}
2395impl<T> ::core::fmt::Debug for __IncompleteArrayField<T> {
2396fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2397fmt.write_str("__IncompleteArrayField")
2398}
2399}
2400impl<T> __BindgenUnionField<T> {
2401#[inline]
2402pub const fn new() -> Self {
2403__BindgenUnionField(::core::marker::PhantomData)
2404}
2405#[inline]
2406pub unsafe fn as_ref(&self) -> &T {
2407::core::mem::transmute(self)
2408}
2409#[inline]
2410pub unsafe fn as_mut(&mut self) -> &mut T {
2411::core::mem::transmute(self)
2412}
2413}
2414impl<T> ::core::default::Default for __BindgenUnionField<T> {
2415#[inline]
2416fn default() -> Self {
2417Self::new()
2418}
2419}
2420impl<T> ::core::clone::Clone for __BindgenUnionField<T> {
2421#[inline]
2422fn clone(&self) -> Self {
2423*self
2424}
2425}
2426impl<T> ::core::marker::Copy for __BindgenUnionField<T> {}
2427impl<T> ::core::fmt::Debug for __BindgenUnionField<T> {
2428fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2429fmt.write_str("__BindgenUnionField")
2430}
2431}
2432impl<T> ::core::hash::Hash for __BindgenUnionField<T> {
2433fn hash<H: ::core::hash::Hasher>(&self, _state: &mut H) {}
2434}
2435impl<T> ::core::cmp::PartialEq for __BindgenUnionField<T> {
2436fn eq(&self, _other: &__BindgenUnionField<T>) -> bool {
2437true
2438}
2439}
2440impl<T> ::core::cmp::Eq for __BindgenUnionField<T> {}
2441impl iphdr {
2442#[inline]
2443pub fn ihl(&self) -> __u8 {
2444unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
2445}
2446#[inline]
2447pub fn set_ihl(&mut self, val: __u8) {
2448unsafe {
2449let val: u8 = ::core::mem::transmute(val);
2450self._bitfield_1.set(0usize, 4u8, val as u64)
2451}
2452}
2453#[inline]
2454pub unsafe fn ihl_raw(this: *const Self) -> __u8 {
2455unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u8) }
2456}
2457#[inline]
2458pub unsafe fn set_ihl_raw(this: *mut Self, val: __u8) {
2459unsafe {
2460let val: u8 = ::core::mem::transmute(val);
2461<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64)
2462}
2463}
2464#[inline]
2465pub fn version(&self) -> __u8 {
2466unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
2467}
2468#[inline]
2469pub fn set_version(&mut self, val: __u8) {
2470unsafe {
2471let val: u8 = ::core::mem::transmute(val);
2472self._bitfield_1.set(4usize, 4u8, val as u64)
2473}
2474}
2475#[inline]
2476pub unsafe fn version_raw(this: *const Self) -> __u8 {
2477unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u8) }
2478}
2479#[inline]
2480pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
2481unsafe {
2482let val: u8 = ::core::mem::transmute(val);
2483<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64)
2484}
2485}
2486#[inline]
2487pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
2488let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
2489__bindgen_bitfield_unit.set(0usize, 4u8, {
2490let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
2491ihl as u64
2492});
2493__bindgen_bitfield_unit.set(4usize, 4u8, {
2494let version: u8 = unsafe { ::core::mem::transmute(version) };
2495version as u64
2496});
2497__bindgen_bitfield_unit
2498}
2499}
2500impl ipv6hdr {
2501#[inline]
2502pub fn priority(&self) -> __u8 {
2503unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
2504}
2505#[inline]
2506pub fn set_priority(&mut self, val: __u8) {
2507unsafe {
2508let val: u8 = ::core::mem::transmute(val);
2509self._bitfield_1.set(0usize, 4u8, val as u64)
2510}
2511}
2512#[inline]
2513pub unsafe fn priority_raw(this: *const Self) -> __u8 {
2514unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u8) }
2515}
2516#[inline]
2517pub unsafe fn set_priority_raw(this: *mut Self, val: __u8) {
2518unsafe {
2519let val: u8 = ::core::mem::transmute(val);
2520<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64)
2521}
2522}
2523#[inline]
2524pub fn version(&self) -> __u8 {
2525unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
2526}
2527#[inline]
2528pub fn set_version(&mut self, val: __u8) {
2529unsafe {
2530let val: u8 = ::core::mem::transmute(val);
2531self._bitfield_1.set(4usize, 4u8, val as u64)
2532}
2533}
2534#[inline]
2535pub unsafe fn version_raw(this: *const Self) -> __u8 {
2536unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u8) }
2537}
2538#[inline]
2539pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
2540unsafe {
2541let val: u8 = ::core::mem::transmute(val);
2542<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64)
2543}
2544}
2545#[inline]
2546pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
2547let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
2548__bindgen_bitfield_unit.set(0usize, 4u8, {
2549let priority: u8 = unsafe { ::core::mem::transmute(priority) };
2550priority as u64
2551});
2552__bindgen_bitfield_unit.set(4usize, 4u8, {
2553let version: u8 = unsafe { ::core::mem::transmute(version) };
2554version as u64
2555});
2556__bindgen_bitfield_unit
2557}
2558}
2559impl tcphdr {
2560#[inline]
2561pub fn res1(&self) -> __u16 {
2562unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) }
2563}
2564#[inline]
2565pub fn set_res1(&mut self, val: __u16) {
2566unsafe {
2567let val: u16 = ::core::mem::transmute(val);
2568self._bitfield_1.set(0usize, 4u8, val as u64)
2569}
2570}
2571#[inline]
2572pub unsafe fn res1_raw(this: *const Self) -> __u16 {
2573unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) }
2574}
2575#[inline]
2576pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) {
2577unsafe {
2578let val: u16 = ::core::mem::transmute(val);
2579<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64)
2580}
2581}
2582#[inline]
2583pub fn doff(&self) -> __u16 {
2584unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) }
2585}
2586#[inline]
2587pub fn set_doff(&mut self, val: __u16) {
2588unsafe {
2589let val: u16 = ::core::mem::transmute(val);
2590self._bitfield_1.set(4usize, 4u8, val as u64)
2591}
2592}
2593#[inline]
2594pub unsafe fn doff_raw(this: *const Self) -> __u16 {
2595unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) }
2596}
2597#[inline]
2598pub unsafe fn set_doff_raw(this: *mut Self, val: __u16) {
2599unsafe {
2600let val: u16 = ::core::mem::transmute(val);
2601<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64)
2602}
2603}
2604#[inline]
2605pub fn fin(&self) -> __u16 {
2606unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) }
2607}
2608#[inline]
2609pub fn set_fin(&mut self, val: __u16) {
2610unsafe {
2611let val: u16 = ::core::mem::transmute(val);
2612self._bitfield_1.set(8usize, 1u8, val as u64)
2613}
2614}
2615#[inline]
2616pub unsafe fn fin_raw(this: *const Self) -> __u16 {
2617unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 8usize, 1u8) as u16) }
2618}
2619#[inline]
2620pub unsafe fn set_fin_raw(this: *mut Self, val: __u16) {
2621unsafe {
2622let val: u16 = ::core::mem::transmute(val);
2623<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 8usize, 1u8, val as u64)
2624}
2625}
2626#[inline]
2627pub fn syn(&self) -> __u16 {
2628unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) }
2629}
2630#[inline]
2631pub fn set_syn(&mut self, val: __u16) {
2632unsafe {
2633let val: u16 = ::core::mem::transmute(val);
2634self._bitfield_1.set(9usize, 1u8, val as u64)
2635}
2636}
2637#[inline]
2638pub unsafe fn syn_raw(this: *const Self) -> __u16 {
2639unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 9usize, 1u8) as u16) }
2640}
2641#[inline]
2642pub unsafe fn set_syn_raw(this: *mut Self, val: __u16) {
2643unsafe {
2644let val: u16 = ::core::mem::transmute(val);
2645<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 9usize, 1u8, val as u64)
2646}
2647}
2648#[inline]
2649pub fn rst(&self) -> __u16 {
2650unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) }
2651}
2652#[inline]
2653pub fn set_rst(&mut self, val: __u16) {
2654unsafe {
2655let val: u16 = ::core::mem::transmute(val);
2656self._bitfield_1.set(10usize, 1u8, val as u64)
2657}
2658}
2659#[inline]
2660pub unsafe fn rst_raw(this: *const Self) -> __u16 {
2661unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 10usize, 1u8) as u16) }
2662}
2663#[inline]
2664pub unsafe fn set_rst_raw(this: *mut Self, val: __u16) {
2665unsafe {
2666let val: u16 = ::core::mem::transmute(val);
2667<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 10usize, 1u8, val as u64)
2668}
2669}
2670#[inline]
2671pub fn psh(&self) -> __u16 {
2672unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) }
2673}
2674#[inline]
2675pub fn set_psh(&mut self, val: __u16) {
2676unsafe {
2677let val: u16 = ::core::mem::transmute(val);
2678self._bitfield_1.set(11usize, 1u8, val as u64)
2679}
2680}
2681#[inline]
2682pub unsafe fn psh_raw(this: *const Self) -> __u16 {
2683unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 11usize, 1u8) as u16) }
2684}
2685#[inline]
2686pub unsafe fn set_psh_raw(this: *mut Self, val: __u16) {
2687unsafe {
2688let val: u16 = ::core::mem::transmute(val);
2689<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 11usize, 1u8, val as u64)
2690}
2691}
2692#[inline]
2693pub fn ack(&self) -> __u16 {
2694unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) }
2695}
2696#[inline]
2697pub fn set_ack(&mut self, val: __u16) {
2698unsafe {
2699let val: u16 = ::core::mem::transmute(val);
2700self._bitfield_1.set(12usize, 1u8, val as u64)
2701}
2702}
2703#[inline]
2704pub unsafe fn ack_raw(this: *const Self) -> __u16 {
2705unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 12usize, 1u8) as u16) }
2706}
2707#[inline]
2708pub unsafe fn set_ack_raw(this: *mut Self, val: __u16) {
2709unsafe {
2710let val: u16 = ::core::mem::transmute(val);
2711<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 12usize, 1u8, val as u64)
2712}
2713}
2714#[inline]
2715pub fn urg(&self) -> __u16 {
2716unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) }
2717}
2718#[inline]
2719pub fn set_urg(&mut self, val: __u16) {
2720unsafe {
2721let val: u16 = ::core::mem::transmute(val);
2722self._bitfield_1.set(13usize, 1u8, val as u64)
2723}
2724}
2725#[inline]
2726pub unsafe fn urg_raw(this: *const Self) -> __u16 {
2727unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 13usize, 1u8) as u16) }
2728}
2729#[inline]
2730pub unsafe fn set_urg_raw(this: *mut Self, val: __u16) {
2731unsafe {
2732let val: u16 = ::core::mem::transmute(val);
2733<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 13usize, 1u8, val as u64)
2734}
2735}
2736#[inline]
2737pub fn ece(&self) -> __u16 {
2738unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u16) }
2739}
2740#[inline]
2741pub fn set_ece(&mut self, val: __u16) {
2742unsafe {
2743let val: u16 = ::core::mem::transmute(val);
2744self._bitfield_1.set(14usize, 1u8, val as u64)
2745}
2746}
2747#[inline]
2748pub unsafe fn ece_raw(this: *const Self) -> __u16 {
2749unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 14usize, 1u8) as u16) }
2750}
2751#[inline]
2752pub unsafe fn set_ece_raw(this: *mut Self, val: __u16) {
2753unsafe {
2754let val: u16 = ::core::mem::transmute(val);
2755<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 14usize, 1u8, val as u64)
2756}
2757}
2758#[inline]
2759pub fn cwr(&self) -> __u16 {
2760unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u16) }
2761}
2762#[inline]
2763pub fn set_cwr(&mut self, val: __u16) {
2764unsafe {
2765let val: u16 = ::core::mem::transmute(val);
2766self._bitfield_1.set(15usize, 1u8, val as u64)
2767}
2768}
2769#[inline]
2770pub unsafe fn cwr_raw(this: *const Self) -> __u16 {
2771unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 15usize, 1u8) as u16) }
2772}
2773#[inline]
2774pub unsafe fn set_cwr_raw(this: *mut Self, val: __u16) {
2775unsafe {
2776let val: u16 = ::core::mem::transmute(val);
2777<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 15usize, 1u8, val as u64)
2778}
2779}
2780#[inline]
2781pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> {
2782let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
2783__bindgen_bitfield_unit.set(0usize, 4u8, {
2784let res1: u16 = unsafe { ::core::mem::transmute(res1) };
2785res1 as u64
2786});
2787__bindgen_bitfield_unit.set(4usize, 4u8, {
2788let doff: u16 = unsafe { ::core::mem::transmute(doff) };
2789doff as u64
2790});
2791__bindgen_bitfield_unit.set(8usize, 1u8, {
2792let fin: u16 = unsafe { ::core::mem::transmute(fin) };
2793fin as u64
2794});
2795__bindgen_bitfield_unit.set(9usize, 1u8, {
2796let syn: u16 = unsafe { ::core::mem::transmute(syn) };
2797syn as u64
2798});
2799__bindgen_bitfield_unit.set(10usize, 1u8, {
2800let rst: u16 = unsafe { ::core::mem::transmute(rst) };
2801rst as u64
2802});
2803__bindgen_bitfield_unit.set(11usize, 1u8, {
2804let psh: u16 = unsafe { ::core::mem::transmute(psh) };
2805psh as u64
2806});
2807__bindgen_bitfield_unit.set(12usize, 1u8, {
2808let ack: u16 = unsafe { ::core::mem::transmute(ack) };
2809ack as u64
2810});
2811__bindgen_bitfield_unit.set(13usize, 1u8, {
2812let urg: u16 = unsafe { ::core::mem::transmute(urg) };
2813urg as u64
2814});
2815__bindgen_bitfield_unit.set(14usize, 1u8, {
2816let ece: u16 = unsafe { ::core::mem::transmute(ece) };
2817ece as u64
2818});
2819__bindgen_bitfield_unit.set(15usize, 1u8, {
2820let cwr: u16 = unsafe { ::core::mem::transmute(cwr) };
2821cwr as u64
2822});
2823__bindgen_bitfield_unit
2824}
2825}
2826impl tcp_info {
2827#[inline]
2828pub fn tcpi_snd_wscale(&self) -> __u8 {
2829unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
2830}
2831#[inline]
2832pub fn set_tcpi_snd_wscale(&mut self, val: __u8) {
2833unsafe {
2834let val: u8 = ::core::mem::transmute(val);
2835self._bitfield_1.set(0usize, 4u8, val as u64)
2836}
2837}
2838#[inline]
2839pub unsafe fn tcpi_snd_wscale_raw(this: *const Self) -> __u8 {
2840unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u8) }
2841}
2842#[inline]
2843pub unsafe fn set_tcpi_snd_wscale_raw(this: *mut Self, val: __u8) {
2844unsafe {
2845let val: u8 = ::core::mem::transmute(val);
2846<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64)
2847}
2848}
2849#[inline]
2850pub fn tcpi_rcv_wscale(&self) -> __u8 {
2851unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
2852}
2853#[inline]
2854pub fn set_tcpi_rcv_wscale(&mut self, val: __u8) {
2855unsafe {
2856let val: u8 = ::core::mem::transmute(val);
2857self._bitfield_1.set(4usize, 4u8, val as u64)
2858}
2859}
2860#[inline]
2861pub unsafe fn tcpi_rcv_wscale_raw(this: *const Self) -> __u8 {
2862unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u8) }
2863}
2864#[inline]
2865pub unsafe fn set_tcpi_rcv_wscale_raw(this: *mut Self, val: __u8) {
2866unsafe {
2867let val: u8 = ::core::mem::transmute(val);
2868<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64)
2869}
2870}
2871#[inline]
2872pub fn tcpi_delivery_rate_app_limited(&self) -> __u8 {
2873unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u8) }
2874}
2875#[inline]
2876pub fn set_tcpi_delivery_rate_app_limited(&mut self, val: __u8) {
2877unsafe {
2878let val: u8 = ::core::mem::transmute(val);
2879self._bitfield_1.set(8usize, 1u8, val as u64)
2880}
2881}
2882#[inline]
2883pub unsafe fn tcpi_delivery_rate_app_limited_raw(this: *const Self) -> __u8 {
2884unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 8usize, 1u8) as u8) }
2885}
2886#[inline]
2887pub unsafe fn set_tcpi_delivery_rate_app_limited_raw(this: *mut Self, val: __u8) {
2888unsafe {
2889let val: u8 = ::core::mem::transmute(val);
2890<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 8usize, 1u8, val as u64)
2891}
2892}
2893#[inline]
2894pub fn tcpi_fastopen_client_fail(&self) -> __u8 {
2895unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 2u8) as u8) }
2896}
2897#[inline]
2898pub fn set_tcpi_fastopen_client_fail(&mut self, val: __u8) {
2899unsafe {
2900let val: u8 = ::core::mem::transmute(val);
2901self._bitfield_1.set(9usize, 2u8, val as u64)
2902}
2903}
2904#[inline]
2905pub unsafe fn tcpi_fastopen_client_fail_raw(this: *const Self) -> __u8 {
2906unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 9usize, 2u8) as u8) }
2907}
2908#[inline]
2909pub unsafe fn set_tcpi_fastopen_client_fail_raw(this: *mut Self, val: __u8) {
2910unsafe {
2911let val: u8 = ::core::mem::transmute(val);
2912<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 9usize, 2u8, val as u64)
2913}
2914}
2915#[inline]
2916pub fn new_bitfield_1(tcpi_snd_wscale: __u8, tcpi_rcv_wscale: __u8, tcpi_delivery_rate_app_limited: __u8, tcpi_fastopen_client_fail: __u8) -> __BindgenBitfieldUnit<[u8; 2usize]> {
2917let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
2918__bindgen_bitfield_unit.set(0usize, 4u8, {
2919let tcpi_snd_wscale: u8 = unsafe { ::core::mem::transmute(tcpi_snd_wscale) };
2920tcpi_snd_wscale as u64
2921});
2922__bindgen_bitfield_unit.set(4usize, 4u8, {
2923let tcpi_rcv_wscale: u8 = unsafe { ::core::mem::transmute(tcpi_rcv_wscale) };
2924tcpi_rcv_wscale as u64
2925});
2926__bindgen_bitfield_unit.set(8usize, 1u8, {
2927let tcpi_delivery_rate_app_limited: u8 = unsafe { ::core::mem::transmute(tcpi_delivery_rate_app_limited) };
2928tcpi_delivery_rate_app_limited as u64
2929});
2930__bindgen_bitfield_unit.set(9usize, 2u8, {
2931let tcpi_fastopen_client_fail: u8 = unsafe { ::core::mem::transmute(tcpi_fastopen_client_fail) };
2932tcpi_fastopen_client_fail as u64
2933});
2934__bindgen_bitfield_unit
2935}
2936}
2937impl tcp_ao_add {
2938#[inline]
2939pub fn set_current(&self) -> __u32 {
2940unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
2941}
2942#[inline]
2943pub fn set_set_current(&mut self, val: __u32) {
2944unsafe {
2945let val: u32 = ::core::mem::transmute(val);
2946self._bitfield_1.set(0usize, 1u8, val as u64)
2947}
2948}
2949#[inline]
2950pub unsafe fn set_current_raw(this: *const Self) -> __u32 {
2951unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) }
2952}
2953#[inline]
2954pub unsafe fn set_set_current_raw(this: *mut Self, val: __u32) {
2955unsafe {
2956let val: u32 = ::core::mem::transmute(val);
2957<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64)
2958}
2959}
2960#[inline]
2961pub fn set_rnext(&self) -> __u32 {
2962unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
2963}
2964#[inline]
2965pub fn set_set_rnext(&mut self, val: __u32) {
2966unsafe {
2967let val: u32 = ::core::mem::transmute(val);
2968self._bitfield_1.set(1usize, 1u8, val as u64)
2969}
2970}
2971#[inline]
2972pub unsafe fn set_rnext_raw(this: *const Self) -> __u32 {
2973unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u32) }
2974}
2975#[inline]
2976pub unsafe fn set_set_rnext_raw(this: *mut Self, val: __u32) {
2977unsafe {
2978let val: u32 = ::core::mem::transmute(val);
2979<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64)
2980}
2981}
2982#[inline]
2983pub fn reserved(&self) -> __u32 {
2984unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
2985}
2986#[inline]
2987pub fn set_reserved(&mut self, val: __u32) {
2988unsafe {
2989let val: u32 = ::core::mem::transmute(val);
2990self._bitfield_1.set(2usize, 30u8, val as u64)
2991}
2992}
2993#[inline]
2994pub unsafe fn reserved_raw(this: *const Self) -> __u32 {
2995unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 30u8) as u32) }
2996}
2997#[inline]
2998pub unsafe fn set_reserved_raw(this: *mut Self, val: __u32) {
2999unsafe {
3000let val: u32 = ::core::mem::transmute(val);
3001<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 30u8, val as u64)
3002}
3003}
3004#[inline]
3005pub fn new_bitfield_1(set_current: __u32, set_rnext: __u32, reserved: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
3006let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
3007__bindgen_bitfield_unit.set(0usize, 1u8, {
3008let set_current: u32 = unsafe { ::core::mem::transmute(set_current) };
3009set_current as u64
3010});
3011__bindgen_bitfield_unit.set(1usize, 1u8, {
3012let set_rnext: u32 = unsafe { ::core::mem::transmute(set_rnext) };
3013set_rnext as u64
3014});
3015__bindgen_bitfield_unit.set(2usize, 30u8, {
3016let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
3017reserved as u64
3018});
3019__bindgen_bitfield_unit
3020}
3021}
3022impl tcp_ao_del {
3023#[inline]
3024pub fn set_current(&self) -> __u32 {
3025unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3026}
3027#[inline]
3028pub fn set_set_current(&mut self, val: __u32) {
3029unsafe {
3030let val: u32 = ::core::mem::transmute(val);
3031self._bitfield_1.set(0usize, 1u8, val as u64)
3032}
3033}
3034#[inline]
3035pub unsafe fn set_current_raw(this: *const Self) -> __u32 {
3036unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) }
3037}
3038#[inline]
3039pub unsafe fn set_set_current_raw(this: *mut Self, val: __u32) {
3040unsafe {
3041let val: u32 = ::core::mem::transmute(val);
3042<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64)
3043}
3044}
3045#[inline]
3046pub fn set_rnext(&self) -> __u32 {
3047unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3048}
3049#[inline]
3050pub fn set_set_rnext(&mut self, val: __u32) {
3051unsafe {
3052let val: u32 = ::core::mem::transmute(val);
3053self._bitfield_1.set(1usize, 1u8, val as u64)
3054}
3055}
3056#[inline]
3057pub unsafe fn set_rnext_raw(this: *const Self) -> __u32 {
3058unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u32) }
3059}
3060#[inline]
3061pub unsafe fn set_set_rnext_raw(this: *mut Self, val: __u32) {
3062unsafe {
3063let val: u32 = ::core::mem::transmute(val);
3064<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64)
3065}
3066}
3067#[inline]
3068pub fn del_async(&self) -> __u32 {
3069unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3070}
3071#[inline]
3072pub fn set_del_async(&mut self, val: __u32) {
3073unsafe {
3074let val: u32 = ::core::mem::transmute(val);
3075self._bitfield_1.set(2usize, 1u8, val as u64)
3076}
3077}
3078#[inline]
3079pub unsafe fn del_async_raw(this: *const Self) -> __u32 {
3080unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 1u8) as u32) }
3081}
3082#[inline]
3083pub unsafe fn set_del_async_raw(this: *mut Self, val: __u32) {
3084unsafe {
3085let val: u32 = ::core::mem::transmute(val);
3086<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 1u8, val as u64)
3087}
3088}
3089#[inline]
3090pub fn reserved(&self) -> __u32 {
3091unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 29u8) as u32) }
3092}
3093#[inline]
3094pub fn set_reserved(&mut self, val: __u32) {
3095unsafe {
3096let val: u32 = ::core::mem::transmute(val);
3097self._bitfield_1.set(3usize, 29u8, val as u64)
3098}
3099}
3100#[inline]
3101pub unsafe fn reserved_raw(this: *const Self) -> __u32 {
3102unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 29u8) as u32) }
3103}
3104#[inline]
3105pub unsafe fn set_reserved_raw(this: *mut Self, val: __u32) {
3106unsafe {
3107let val: u32 = ::core::mem::transmute(val);
3108<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 29u8, val as u64)
3109}
3110}
3111#[inline]
3112pub fn new_bitfield_1(set_current: __u32, set_rnext: __u32, del_async: __u32, reserved: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
3113let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
3114__bindgen_bitfield_unit.set(0usize, 1u8, {
3115let set_current: u32 = unsafe { ::core::mem::transmute(set_current) };
3116set_current as u64
3117});
3118__bindgen_bitfield_unit.set(1usize, 1u8, {
3119let set_rnext: u32 = unsafe { ::core::mem::transmute(set_rnext) };
3120set_rnext as u64
3121});
3122__bindgen_bitfield_unit.set(2usize, 1u8, {
3123let del_async: u32 = unsafe { ::core::mem::transmute(del_async) };
3124del_async as u64
3125});
3126__bindgen_bitfield_unit.set(3usize, 29u8, {
3127let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
3128reserved as u64
3129});
3130__bindgen_bitfield_unit
3131}
3132}
3133impl tcp_ao_info_opt {
3134#[inline]
3135pub fn set_current(&self) -> __u32 {
3136unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3137}
3138#[inline]
3139pub fn set_set_current(&mut self, val: __u32) {
3140unsafe {
3141let val: u32 = ::core::mem::transmute(val);
3142self._bitfield_1.set(0usize, 1u8, val as u64)
3143}
3144}
3145#[inline]
3146pub unsafe fn set_current_raw(this: *const Self) -> __u32 {
3147unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) }
3148}
3149#[inline]
3150pub unsafe fn set_set_current_raw(this: *mut Self, val: __u32) {
3151unsafe {
3152let val: u32 = ::core::mem::transmute(val);
3153<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64)
3154}
3155}
3156#[inline]
3157pub fn set_rnext(&self) -> __u32 {
3158unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3159}
3160#[inline]
3161pub fn set_set_rnext(&mut self, val: __u32) {
3162unsafe {
3163let val: u32 = ::core::mem::transmute(val);
3164self._bitfield_1.set(1usize, 1u8, val as u64)
3165}
3166}
3167#[inline]
3168pub unsafe fn set_rnext_raw(this: *const Self) -> __u32 {
3169unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u32) }
3170}
3171#[inline]
3172pub unsafe fn set_set_rnext_raw(this: *mut Self, val: __u32) {
3173unsafe {
3174let val: u32 = ::core::mem::transmute(val);
3175<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64)
3176}
3177}
3178#[inline]
3179pub fn ao_required(&self) -> __u32 {
3180unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3181}
3182#[inline]
3183pub fn set_ao_required(&mut self, val: __u32) {
3184unsafe {
3185let val: u32 = ::core::mem::transmute(val);
3186self._bitfield_1.set(2usize, 1u8, val as u64)
3187}
3188}
3189#[inline]
3190pub unsafe fn ao_required_raw(this: *const Self) -> __u32 {
3191unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 1u8) as u32) }
3192}
3193#[inline]
3194pub unsafe fn set_ao_required_raw(this: *mut Self, val: __u32) {
3195unsafe {
3196let val: u32 = ::core::mem::transmute(val);
3197<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 1u8, val as u64)
3198}
3199}
3200#[inline]
3201pub fn set_counters(&self) -> __u32 {
3202unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3203}
3204#[inline]
3205pub fn set_set_counters(&mut self, val: __u32) {
3206unsafe {
3207let val: u32 = ::core::mem::transmute(val);
3208self._bitfield_1.set(3usize, 1u8, val as u64)
3209}
3210}
3211#[inline]
3212pub unsafe fn set_counters_raw(this: *const Self) -> __u32 {
3213unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 1u8) as u32) }
3214}
3215#[inline]
3216pub unsafe fn set_set_counters_raw(this: *mut Self, val: __u32) {
3217unsafe {
3218let val: u32 = ::core::mem::transmute(val);
3219<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 1u8, val as u64)
3220}
3221}
3222#[inline]
3223pub fn accept_icmps(&self) -> __u32 {
3224unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
3225}
3226#[inline]
3227pub fn set_accept_icmps(&mut self, val: __u32) {
3228unsafe {
3229let val: u32 = ::core::mem::transmute(val);
3230self._bitfield_1.set(4usize, 1u8, val as u64)
3231}
3232}
3233#[inline]
3234pub unsafe fn accept_icmps_raw(this: *const Self) -> __u32 {
3235unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 1u8) as u32) }
3236}
3237#[inline]
3238pub unsafe fn set_accept_icmps_raw(this: *mut Self, val: __u32) {
3239unsafe {
3240let val: u32 = ::core::mem::transmute(val);
3241<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 1u8, val as u64)
3242}
3243}
3244#[inline]
3245pub fn reserved(&self) -> __u32 {
3246unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 27u8) as u32) }
3247}
3248#[inline]
3249pub fn set_reserved(&mut self, val: __u32) {
3250unsafe {
3251let val: u32 = ::core::mem::transmute(val);
3252self._bitfield_1.set(5usize, 27u8, val as u64)
3253}
3254}
3255#[inline]
3256pub unsafe fn reserved_raw(this: *const Self) -> __u32 {
3257unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 5usize, 27u8) as u32) }
3258}
3259#[inline]
3260pub unsafe fn set_reserved_raw(this: *mut Self, val: __u32) {
3261unsafe {
3262let val: u32 = ::core::mem::transmute(val);
3263<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 5usize, 27u8, val as u64)
3264}
3265}
3266#[inline]
3267pub fn new_bitfield_1(set_current: __u32, set_rnext: __u32, ao_required: __u32, set_counters: __u32, accept_icmps: __u32, reserved: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
3268let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
3269__bindgen_bitfield_unit.set(0usize, 1u8, {
3270let set_current: u32 = unsafe { ::core::mem::transmute(set_current) };
3271set_current as u64
3272});
3273__bindgen_bitfield_unit.set(1usize, 1u8, {
3274let set_rnext: u32 = unsafe { ::core::mem::transmute(set_rnext) };
3275set_rnext as u64
3276});
3277__bindgen_bitfield_unit.set(2usize, 1u8, {
3278let ao_required: u32 = unsafe { ::core::mem::transmute(ao_required) };
3279ao_required as u64
3280});
3281__bindgen_bitfield_unit.set(3usize, 1u8, {
3282let set_counters: u32 = unsafe { ::core::mem::transmute(set_counters) };
3283set_counters as u64
3284});
3285__bindgen_bitfield_unit.set(4usize, 1u8, {
3286let accept_icmps: u32 = unsafe { ::core::mem::transmute(accept_icmps) };
3287accept_icmps as u64
3288});
3289__bindgen_bitfield_unit.set(5usize, 27u8, {
3290let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
3291reserved as u64
3292});
3293__bindgen_bitfield_unit
3294}
3295}
3296impl tcp_ao_getsockopt {
3297#[inline]
3298pub fn is_current(&self) -> __u16 {
3299unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) }
3300}
3301#[inline]
3302pub fn set_is_current(&mut self, val: __u16) {
3303unsafe {
3304let val: u16 = ::core::mem::transmute(val);
3305self._bitfield_1.set(0usize, 1u8, val as u64)
3306}
3307}
3308#[inline]
3309pub unsafe fn is_current_raw(this: *const Self) -> __u16 {
3310unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) }
3311}
3312#[inline]
3313pub unsafe fn set_is_current_raw(this: *mut Self, val: __u16) {
3314unsafe {
3315let val: u16 = ::core::mem::transmute(val);
3316<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64)
3317}
3318}
3319#[inline]
3320pub fn is_rnext(&self) -> __u16 {
3321unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u16) }
3322}
3323#[inline]
3324pub fn set_is_rnext(&mut self, val: __u16) {
3325unsafe {
3326let val: u16 = ::core::mem::transmute(val);
3327self._bitfield_1.set(1usize, 1u8, val as u64)
3328}
3329}
3330#[inline]
3331pub unsafe fn is_rnext_raw(this: *const Self) -> __u16 {
3332unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u16) }
3333}
3334#[inline]
3335pub unsafe fn set_is_rnext_raw(this: *mut Self, val: __u16) {
3336unsafe {
3337let val: u16 = ::core::mem::transmute(val);
3338<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64)
3339}
3340}
3341#[inline]
3342pub fn get_all(&self) -> __u16 {
3343unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u16) }
3344}
3345#[inline]
3346pub fn set_get_all(&mut self, val: __u16) {
3347unsafe {
3348let val: u16 = ::core::mem::transmute(val);
3349self._bitfield_1.set(2usize, 1u8, val as u64)
3350}
3351}
3352#[inline]
3353pub unsafe fn get_all_raw(this: *const Self) -> __u16 {
3354unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 1u8) as u16) }
3355}
3356#[inline]
3357pub unsafe fn set_get_all_raw(this: *mut Self, val: __u16) {
3358unsafe {
3359let val: u16 = ::core::mem::transmute(val);
3360<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 1u8, val as u64)
3361}
3362}
3363#[inline]
3364pub fn reserved(&self) -> __u16 {
3365unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 13u8) as u16) }
3366}
3367#[inline]
3368pub fn set_reserved(&mut self, val: __u16) {
3369unsafe {
3370let val: u16 = ::core::mem::transmute(val);
3371self._bitfield_1.set(3usize, 13u8, val as u64)
3372}
3373}
3374#[inline]
3375pub unsafe fn reserved_raw(this: *const Self) -> __u16 {
3376unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 13u8) as u16) }
3377}
3378#[inline]
3379pub unsafe fn set_reserved_raw(this: *mut Self, val: __u16) {
3380unsafe {
3381let val: u16 = ::core::mem::transmute(val);
3382<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 13u8, val as u64)
3383}
3384}
3385#[inline]
3386pub fn new_bitfield_1(is_current: __u16, is_rnext: __u16, get_all: __u16, reserved: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> {
3387let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
3388__bindgen_bitfield_unit.set(0usize, 1u8, {
3389let is_current: u16 = unsafe { ::core::mem::transmute(is_current) };
3390is_current as u64
3391});
3392__bindgen_bitfield_unit.set(1usize, 1u8, {
3393let is_rnext: u16 = unsafe { ::core::mem::transmute(is_rnext) };
3394is_rnext as u64
3395});
3396__bindgen_bitfield_unit.set(2usize, 1u8, {
3397let get_all: u16 = unsafe { ::core::mem::transmute(get_all) };
3398get_all as u64
3399});
3400__bindgen_bitfield_unit.set(3usize, 13u8, {
3401let reserved: u16 = unsafe { ::core::mem::transmute(reserved) };
3402reserved as u64
3403});
3404__bindgen_bitfield_unit
3405}
3406}
3407impl nf_inet_hooks {
3408pub const NF_INET_INGRESS: nf_inet_hooks = nf_inet_hooks::NF_INET_NUMHOOKS;
3409}
3410impl nf_ip_hook_priorities {
3411pub const NF_IP_PRI_LAST: nf_ip_hook_priorities = nf_ip_hook_priorities::NF_IP_PRI_CONNTRACK_CONFIRM;
3412}
3413impl hwtstamp_flags {
3414pub const HWTSTAMP_FLAG_LAST: hwtstamp_flags = hwtstamp_flags::HWTSTAMP_FLAG_BONDED_PHC_INDEX;
3415}
3416impl hwtstamp_flags {
3417pub const HWTSTAMP_FLAG_MASK: hwtstamp_flags = hwtstamp_flags::HWTSTAMP_FLAG_BONDED_PHC_INDEX;
3418}
3419impl txtime_flags {
3420pub const SOF_TXTIME_FLAGS_LAST: txtime_flags = txtime_flags::SOF_TXTIME_REPORT_ERRORS;
3421}