1/* automatically generated by rust-bindgen 0.66.1 */
2
3pub 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_old_uid_t = crate::ctypes::c_ushort;
14pub type __kernel_old_gid_t = crate::ctypes::c_ushort;
15pub type __kernel_old_dev_t = crate::ctypes::c_ulong;
16pub type __kernel_long_t = crate::ctypes::c_long;
17pub type __kernel_ulong_t = crate::ctypes::c_ulong;
18pub type __kernel_ino_t = __kernel_ulong_t;
19pub type __kernel_mode_t = crate::ctypes::c_uint;
20pub type __kernel_pid_t = crate::ctypes::c_int;
21pub type __kernel_ipc_pid_t = crate::ctypes::c_int;
22pub type __kernel_uid_t = crate::ctypes::c_uint;
23pub type __kernel_gid_t = crate::ctypes::c_uint;
24pub type __kernel_suseconds_t = __kernel_long_t;
25pub type __kernel_daddr_t = crate::ctypes::c_int;
26pub type __kernel_uid32_t = crate::ctypes::c_uint;
27pub type __kernel_gid32_t = crate::ctypes::c_uint;
28pub type __kernel_size_t = __kernel_ulong_t;
29pub type __kernel_ssize_t = __kernel_long_t;
30pub type __kernel_ptrdiff_t = __kernel_long_t;
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: [u64; 34usize],
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,
430}
431#[repr(C)]
432#[derive(Copy, Clone)]
433pub struct tcp_md5sig {
434pub tcpm_addr: __kernel_sockaddr_storage,
435pub tcpm_flags: __u8,
436pub tcpm_prefixlen: __u8,
437pub tcpm_keylen: __u16,
438pub tcpm_ifindex: crate::ctypes::c_int,
439pub tcpm_key: [__u8; 80usize],
440}
441#[repr(C)]
442#[derive(Debug, Copy, Clone)]
443pub struct tcp_diag_md5sig {
444pub tcpm_family: __u8,
445pub tcpm_prefixlen: __u8,
446pub tcpm_keylen: __u16,
447pub tcpm_addr: [__be32; 4usize],
448pub tcpm_key: [__u8; 80usize],
449}
450#[repr(C)]
451#[derive(Debug, Copy, Clone)]
452pub struct tcp_zerocopy_receive {
453pub address: __u64,
454pub length: __u32,
455pub recv_skip_hint: __u32,
456pub inq: __u32,
457pub err: __s32,
458pub copybuf_address: __u64,
459pub copybuf_len: __s32,
460pub flags: __u32,
461pub msg_control: __u64,
462pub msg_controllen: __u64,
463pub msg_flags: __u32,
464pub reserved: __u32,
465}
466#[repr(C)]
467#[derive(Debug, Copy, Clone)]
468pub struct sockaddr_un {
469pub sun_family: __kernel_sa_family_t,
470pub sun_path: [crate::ctypes::c_char; 108usize],
471}
472#[repr(C)]
473#[derive(Copy, Clone)]
474pub struct sockaddr {
475pub __storage: __kernel_sockaddr_storage,
476}
477#[repr(C)]
478#[derive(Debug, Copy, Clone)]
479pub struct sync_serial_settings {
480pub clock_rate: crate::ctypes::c_uint,
481pub clock_type: crate::ctypes::c_uint,
482pub loopback: crate::ctypes::c_ushort,
483}
484#[repr(C)]
485#[derive(Debug, Copy, Clone)]
486pub struct te1_settings {
487pub clock_rate: crate::ctypes::c_uint,
488pub clock_type: crate::ctypes::c_uint,
489pub loopback: crate::ctypes::c_ushort,
490pub slot_map: crate::ctypes::c_uint,
491}
492#[repr(C)]
493#[derive(Debug, Copy, Clone)]
494pub struct raw_hdlc_proto {
495pub encoding: crate::ctypes::c_ushort,
496pub parity: crate::ctypes::c_ushort,
497}
498#[repr(C)]
499#[derive(Debug, Copy, Clone)]
500pub struct fr_proto {
501pub t391: crate::ctypes::c_uint,
502pub t392: crate::ctypes::c_uint,
503pub n391: crate::ctypes::c_uint,
504pub n392: crate::ctypes::c_uint,
505pub n393: crate::ctypes::c_uint,
506pub lmi: crate::ctypes::c_ushort,
507pub dce: crate::ctypes::c_ushort,
508}
509#[repr(C)]
510#[derive(Debug, Copy, Clone)]
511pub struct fr_proto_pvc {
512pub dlci: crate::ctypes::c_uint,
513}
514#[repr(C)]
515#[derive(Debug, Copy, Clone)]
516pub struct fr_proto_pvc_info {
517pub dlci: crate::ctypes::c_uint,
518pub master: [crate::ctypes::c_char; 16usize],
519}
520#[repr(C)]
521#[derive(Debug, Copy, Clone)]
522pub struct cisco_proto {
523pub interval: crate::ctypes::c_uint,
524pub timeout: crate::ctypes::c_uint,
525}
526#[repr(C)]
527#[derive(Debug, Copy, Clone)]
528pub struct x25_hdlc_proto {
529pub dce: crate::ctypes::c_ushort,
530pub modulo: crate::ctypes::c_uint,
531pub window: crate::ctypes::c_uint,
532pub t1: crate::ctypes::c_uint,
533pub t2: crate::ctypes::c_uint,
534pub n2: crate::ctypes::c_uint,
535}
536#[repr(C)]
537#[derive(Debug, Copy, Clone)]
538pub struct ifmap {
539pub mem_start: crate::ctypes::c_ulong,
540pub mem_end: crate::ctypes::c_ulong,
541pub base_addr: crate::ctypes::c_ushort,
542pub irq: crate::ctypes::c_uchar,
543pub dma: crate::ctypes::c_uchar,
544pub port: crate::ctypes::c_uchar,
545}
546#[repr(C)]
547#[derive(Copy, Clone)]
548pub struct if_settings {
549pub type_: crate::ctypes::c_uint,
550pub size: crate::ctypes::c_uint,
551pub ifs_ifsu: if_settings__bindgen_ty_1,
552}
553#[repr(C)]
554#[derive(Copy, Clone)]
555pub struct ifreq {
556pub ifr_ifrn: ifreq__bindgen_ty_1,
557pub ifr_ifru: ifreq__bindgen_ty_2,
558}
559#[repr(C)]
560#[derive(Copy, Clone)]
561pub struct ifconf {
562pub ifc_len: crate::ctypes::c_int,
563pub ifc_ifcu: ifconf__bindgen_ty_1,
564}
565#[repr(C)]
566pub struct xt_entry_match {
567pub u: xt_entry_match__bindgen_ty_1,
568pub data: __IncompleteArrayField<crate::ctypes::c_uchar>,
569}
570#[repr(C)]
571#[derive(Debug, Copy, Clone)]
572pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_1 {
573pub match_size: __u16,
574pub name: [crate::ctypes::c_char; 29usize],
575pub revision: __u8,
576}
577#[repr(C)]
578#[derive(Debug, Copy, Clone)]
579pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
580pub match_size: __u16,
581pub match_: *mut xt_match,
582}
583#[repr(C)]
584pub struct xt_entry_target {
585pub u: xt_entry_target__bindgen_ty_1,
586pub data: __IncompleteArrayField<crate::ctypes::c_uchar>,
587}
588#[repr(C)]
589#[derive(Debug, Copy, Clone)]
590pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_1 {
591pub target_size: __u16,
592pub name: [crate::ctypes::c_char; 29usize],
593pub revision: __u8,
594}
595#[repr(C)]
596#[derive(Debug, Copy, Clone)]
597pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
598pub target_size: __u16,
599pub target: *mut xt_target,
600}
601#[repr(C)]
602pub struct xt_standard_target {
603pub target: xt_entry_target,
604pub verdict: crate::ctypes::c_int,
605}
606#[repr(C)]
607pub struct xt_error_target {
608pub target: xt_entry_target,
609pub errorname: [crate::ctypes::c_char; 30usize],
610}
611#[repr(C)]
612#[derive(Debug, Copy, Clone)]
613pub struct xt_get_revision {
614pub name: [crate::ctypes::c_char; 29usize],
615pub revision: __u8,
616}
617#[repr(C)]
618#[derive(Debug, Copy, Clone)]
619pub struct _xt_align {
620pub u8_: __u8,
621pub u16_: __u16,
622pub u32_: __u32,
623pub u64_: __u64,
624}
625#[repr(C)]
626#[derive(Debug, Copy, Clone)]
627pub struct xt_counters {
628pub pcnt: __u64,
629pub bcnt: __u64,
630}
631#[repr(C)]
632#[derive(Debug)]
633pub struct xt_counters_info {
634pub name: [crate::ctypes::c_char; 32usize],
635pub num_counters: crate::ctypes::c_uint,
636pub counters: __IncompleteArrayField<xt_counters>,
637}
638#[repr(C)]
639#[derive(Debug, Copy, Clone)]
640pub struct xt_tcp {
641pub spts: [__u16; 2usize],
642pub dpts: [__u16; 2usize],
643pub option: __u8,
644pub flg_mask: __u8,
645pub flg_cmp: __u8,
646pub invflags: __u8,
647}
648#[repr(C)]
649#[derive(Debug, Copy, Clone)]
650pub struct xt_udp {
651pub spts: [__u16; 2usize],
652pub dpts: [__u16; 2usize],
653pub invflags: __u8,
654}
655#[repr(C)]
656#[derive(Copy, Clone)]
657pub struct ip6t_ip6 {
658pub src: in6_addr,
659pub dst: in6_addr,
660pub smsk: in6_addr,
661pub dmsk: in6_addr,
662pub iniface: [crate::ctypes::c_char; 16usize],
663pub outiface: [crate::ctypes::c_char; 16usize],
664pub iniface_mask: [crate::ctypes::c_uchar; 16usize],
665pub outiface_mask: [crate::ctypes::c_uchar; 16usize],
666pub proto: __u16,
667pub tos: __u8,
668pub flags: __u8,
669pub invflags: __u8,
670}
671#[repr(C)]
672pub struct ip6t_entry {
673pub ipv6: ip6t_ip6,
674pub nfcache: crate::ctypes::c_uint,
675pub target_offset: __u16,
676pub next_offset: __u16,
677pub comefrom: crate::ctypes::c_uint,
678pub counters: xt_counters,
679pub elems: __IncompleteArrayField<crate::ctypes::c_uchar>,
680}
681#[repr(C)]
682pub struct ip6t_standard {
683pub entry: ip6t_entry,
684pub target: xt_standard_target,
685}
686#[repr(C)]
687pub struct ip6t_error {
688pub entry: ip6t_entry,
689pub target: xt_error_target,
690}
691#[repr(C)]
692#[derive(Debug, Copy, Clone)]
693pub struct ip6t_icmp {
694pub type_: __u8,
695pub code: [__u8; 2usize],
696pub invflags: __u8,
697}
698#[repr(C)]
699#[derive(Debug, Copy, Clone)]
700pub struct ip6t_getinfo {
701pub name: [crate::ctypes::c_char; 32usize],
702pub valid_hooks: crate::ctypes::c_uint,
703pub hook_entry: [crate::ctypes::c_uint; 5usize],
704pub underflow: [crate::ctypes::c_uint; 5usize],
705pub num_entries: crate::ctypes::c_uint,
706pub size: crate::ctypes::c_uint,
707}
708#[repr(C)]
709pub struct ip6t_replace {
710pub name: [crate::ctypes::c_char; 32usize],
711pub valid_hooks: crate::ctypes::c_uint,
712pub num_entries: crate::ctypes::c_uint,
713pub size: crate::ctypes::c_uint,
714pub hook_entry: [crate::ctypes::c_uint; 5usize],
715pub underflow: [crate::ctypes::c_uint; 5usize],
716pub num_counters: crate::ctypes::c_uint,
717pub counters: *mut xt_counters,
718pub entries: __IncompleteArrayField<ip6t_entry>,
719}
720#[repr(C)]
721pub struct ip6t_get_entries {
722pub name: [crate::ctypes::c_char; 32usize],
723pub size: crate::ctypes::c_uint,
724pub entrytable: __IncompleteArrayField<ip6t_entry>,
725}
726#[repr(C)]
727#[derive(Debug, Copy, Clone)]
728pub struct linger {
729pub l_onoff: crate::ctypes::c_int,
730pub l_linger: crate::ctypes::c_int,
731}
732#[repr(C)]
733#[derive(Debug, Copy, Clone)]
734pub struct msghdr {
735pub msg_name: *mut crate::ctypes::c_void,
736pub msg_namelen: crate::ctypes::c_int,
737pub msg_iov: *mut iovec,
738pub msg_iovlen: usize,
739pub msg_control: *mut crate::ctypes::c_void,
740pub msg_controllen: usize,
741pub msg_flags: crate::ctypes::c_uint,
742}
743#[repr(C)]
744#[derive(Debug, Copy, Clone)]
745pub struct cmsghdr {
746pub cmsg_len: usize,
747pub cmsg_level: crate::ctypes::c_int,
748pub cmsg_type: crate::ctypes::c_int,
749}
750#[repr(C)]
751#[derive(Debug, Copy, Clone)]
752pub struct ucred {
753pub pid: __u32,
754pub uid: __u32,
755pub gid: __u32,
756}
757#[repr(C)]
758#[derive(Debug, Copy, Clone)]
759pub struct mmsghdr {
760pub msg_hdr: msghdr,
761pub msg_len: crate::ctypes::c_uint,
762}
763#[repr(C)]
764#[derive(Debug, Copy, Clone)]
765pub struct xt_match {
766pub _address: u8,
767}
768#[repr(C)]
769#[derive(Debug, Copy, Clone)]
770pub struct xt_target {
771pub _address: u8,
772}
773#[repr(C)]
774#[derive(Debug, Copy, Clone)]
775pub struct iovec {
776pub _address: u8,
777}
778pub const _K_SS_MAXSIZE: u32 = 128;
779pub const SOCK_SNDBUF_LOCK: u32 = 1;
780pub const SOCK_RCVBUF_LOCK: u32 = 2;
781pub const SOCK_BUF_LOCK_MASK: u32 = 3;
782pub const SOCK_TXREHASH_DEFAULT: u32 = 255;
783pub const SOCK_TXREHASH_DISABLED: u32 = 0;
784pub const SOCK_TXREHASH_ENABLED: u32 = 1;
785pub const IP_TOS: u32 = 1;
786pub const IP_TTL: u32 = 2;
787pub const IP_HDRINCL: u32 = 3;
788pub const IP_OPTIONS: u32 = 4;
789pub const IP_ROUTER_ALERT: u32 = 5;
790pub const IP_RECVOPTS: u32 = 6;
791pub const IP_RETOPTS: u32 = 7;
792pub const IP_PKTINFO: u32 = 8;
793pub const IP_PKTOPTIONS: u32 = 9;
794pub const IP_MTU_DISCOVER: u32 = 10;
795pub const IP_RECVERR: u32 = 11;
796pub const IP_RECVTTL: u32 = 12;
797pub const IP_RECVTOS: u32 = 13;
798pub const IP_MTU: u32 = 14;
799pub const IP_FREEBIND: u32 = 15;
800pub const IP_IPSEC_POLICY: u32 = 16;
801pub const IP_XFRM_POLICY: u32 = 17;
802pub const IP_PASSSEC: u32 = 18;
803pub const IP_TRANSPARENT: u32 = 19;
804pub const IP_RECVRETOPTS: u32 = 7;
805pub const IP_ORIGDSTADDR: u32 = 20;
806pub const IP_RECVORIGDSTADDR: u32 = 20;
807pub const IP_MINTTL: u32 = 21;
808pub const IP_NODEFRAG: u32 = 22;
809pub const IP_CHECKSUM: u32 = 23;
810pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24;
811pub const IP_RECVFRAGSIZE: u32 = 25;
812pub const IP_RECVERR_RFC4884: u32 = 26;
813pub const IP_PMTUDISC_DONT: u32 = 0;
814pub const IP_PMTUDISC_WANT: u32 = 1;
815pub const IP_PMTUDISC_DO: u32 = 2;
816pub const IP_PMTUDISC_PROBE: u32 = 3;
817pub const IP_PMTUDISC_INTERFACE: u32 = 4;
818pub const IP_PMTUDISC_OMIT: u32 = 5;
819pub const IP_MULTICAST_IF: u32 = 32;
820pub const IP_MULTICAST_TTL: u32 = 33;
821pub const IP_MULTICAST_LOOP: u32 = 34;
822pub const IP_ADD_MEMBERSHIP: u32 = 35;
823pub const IP_DROP_MEMBERSHIP: u32 = 36;
824pub const IP_UNBLOCK_SOURCE: u32 = 37;
825pub const IP_BLOCK_SOURCE: u32 = 38;
826pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39;
827pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40;
828pub const IP_MSFILTER: u32 = 41;
829pub const MCAST_JOIN_GROUP: u32 = 42;
830pub const MCAST_BLOCK_SOURCE: u32 = 43;
831pub const MCAST_UNBLOCK_SOURCE: u32 = 44;
832pub const MCAST_LEAVE_GROUP: u32 = 45;
833pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46;
834pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47;
835pub const MCAST_MSFILTER: u32 = 48;
836pub const IP_MULTICAST_ALL: u32 = 49;
837pub const IP_UNICAST_IF: u32 = 50;
838pub const IP_LOCAL_PORT_RANGE: u32 = 51;
839pub const MCAST_EXCLUDE: u32 = 0;
840pub const MCAST_INCLUDE: u32 = 1;
841pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1;
842pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1;
843pub const __SOCK_SIZE__: u32 = 16;
844pub const IN_CLASSA_NET: u32 = 4278190080;
845pub const IN_CLASSA_NSHIFT: u32 = 24;
846pub const IN_CLASSA_HOST: u32 = 16777215;
847pub const IN_CLASSA_MAX: u32 = 128;
848pub const IN_CLASSB_NET: u32 = 4294901760;
849pub const IN_CLASSB_NSHIFT: u32 = 16;
850pub const IN_CLASSB_HOST: u32 = 65535;
851pub const IN_CLASSB_MAX: u32 = 65536;
852pub const IN_CLASSC_NET: u32 = 4294967040;
853pub const IN_CLASSC_NSHIFT: u32 = 8;
854pub const IN_CLASSC_HOST: u32 = 255;
855pub const IN_MULTICAST_NET: u32 = 3758096384;
856pub const IN_CLASSE_NET: u32 = 4294967295;
857pub const IN_CLASSE_NSHIFT: u32 = 0;
858pub const IN_LOOPBACKNET: u32 = 127;
859pub const INADDR_LOOPBACK: u32 = 2130706433;
860pub const INADDR_UNSPEC_GROUP: u32 = 3758096384;
861pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
862pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
863pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
864pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
865pub const __LITTLE_ENDIAN: u32 = 1234;
866pub const IPTOS_TOS_MASK: u32 = 30;
867pub const IPTOS_LOWDELAY: u32 = 16;
868pub const IPTOS_THROUGHPUT: u32 = 8;
869pub const IPTOS_RELIABILITY: u32 = 4;
870pub const IPTOS_MINCOST: u32 = 2;
871pub const IPTOS_PREC_MASK: u32 = 224;
872pub const IPTOS_PREC_NETCONTROL: u32 = 224;
873pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
874pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
875pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
876pub const IPTOS_PREC_FLASH: u32 = 96;
877pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
878pub const IPTOS_PREC_PRIORITY: u32 = 32;
879pub const IPTOS_PREC_ROUTINE: u32 = 0;
880pub const IPOPT_COPY: u32 = 128;
881pub const IPOPT_CLASS_MASK: u32 = 96;
882pub const IPOPT_NUMBER_MASK: u32 = 31;
883pub const IPOPT_CONTROL: u32 = 0;
884pub const IPOPT_RESERVED1: u32 = 32;
885pub const IPOPT_MEASUREMENT: u32 = 64;
886pub const IPOPT_RESERVED2: u32 = 96;
887pub const IPOPT_END: u32 = 0;
888pub const IPOPT_NOOP: u32 = 1;
889pub const IPOPT_SEC: u32 = 130;
890pub const IPOPT_LSRR: u32 = 131;
891pub const IPOPT_TIMESTAMP: u32 = 68;
892pub const IPOPT_CIPSO: u32 = 134;
893pub const IPOPT_RR: u32 = 7;
894pub const IPOPT_SID: u32 = 136;
895pub const IPOPT_SSRR: u32 = 137;
896pub const IPOPT_RA: u32 = 148;
897pub const IPVERSION: u32 = 4;
898pub const MAXTTL: u32 = 255;
899pub const IPDEFTTL: u32 = 64;
900pub const IPOPT_OPTVAL: u32 = 0;
901pub const IPOPT_OLEN: u32 = 1;
902pub const IPOPT_OFFSET: u32 = 2;
903pub const IPOPT_MINOFF: u32 = 4;
904pub const MAX_IPOPTLEN: u32 = 40;
905pub const IPOPT_NOP: u32 = 1;
906pub const IPOPT_EOL: u32 = 0;
907pub const IPOPT_TS: u32 = 68;
908pub const IPOPT_TS_TSONLY: u32 = 0;
909pub const IPOPT_TS_TSANDADDR: u32 = 1;
910pub const IPOPT_TS_PRESPEC: u32 = 3;
911pub const IPV4_BEET_PHMAXLEN: u32 = 8;
912pub const IPV6_FL_A_GET: u32 = 0;
913pub const IPV6_FL_A_PUT: u32 = 1;
914pub const IPV6_FL_A_RENEW: u32 = 2;
915pub const IPV6_FL_F_CREATE: u32 = 1;
916pub const IPV6_FL_F_EXCL: u32 = 2;
917pub const IPV6_FL_F_REFLECT: u32 = 4;
918pub const IPV6_FL_F_REMOTE: u32 = 8;
919pub const IPV6_FL_S_NONE: u32 = 0;
920pub const IPV6_FL_S_EXCL: u32 = 1;
921pub const IPV6_FL_S_PROCESS: u32 = 2;
922pub const IPV6_FL_S_USER: u32 = 3;
923pub const IPV6_FL_S_ANY: u32 = 255;
924pub const IPV6_FLOWINFO_FLOWLABEL: u32 = 1048575;
925pub const IPV6_FLOWINFO_PRIORITY: u32 = 267386880;
926pub const IPV6_PRIORITY_UNCHARACTERIZED: u32 = 0;
927pub const IPV6_PRIORITY_FILLER: u32 = 256;
928pub const IPV6_PRIORITY_UNATTENDED: u32 = 512;
929pub const IPV6_PRIORITY_RESERVED1: u32 = 768;
930pub const IPV6_PRIORITY_BULK: u32 = 1024;
931pub const IPV6_PRIORITY_RESERVED2: u32 = 1280;
932pub const IPV6_PRIORITY_INTERACTIVE: u32 = 1536;
933pub const IPV6_PRIORITY_CONTROL: u32 = 1792;
934pub const IPV6_PRIORITY_8: u32 = 2048;
935pub const IPV6_PRIORITY_9: u32 = 2304;
936pub const IPV6_PRIORITY_10: u32 = 2560;
937pub const IPV6_PRIORITY_11: u32 = 2816;
938pub const IPV6_PRIORITY_12: u32 = 3072;
939pub const IPV6_PRIORITY_13: u32 = 3328;
940pub const IPV6_PRIORITY_14: u32 = 3584;
941pub const IPV6_PRIORITY_15: u32 = 3840;
942pub const IPPROTO_HOPOPTS: u32 = 0;
943pub const IPPROTO_ROUTING: u32 = 43;
944pub const IPPROTO_FRAGMENT: u32 = 44;
945pub const IPPROTO_ICMPV6: u32 = 58;
946pub const IPPROTO_NONE: u32 = 59;
947pub const IPPROTO_DSTOPTS: u32 = 60;
948pub const IPPROTO_MH: u32 = 135;
949pub const IPV6_TLV_PAD1: u32 = 0;
950pub const IPV6_TLV_PADN: u32 = 1;
951pub const IPV6_TLV_ROUTERALERT: u32 = 5;
952pub const IPV6_TLV_CALIPSO: u32 = 7;
953pub const IPV6_TLV_IOAM: u32 = 49;
954pub const IPV6_TLV_JUMBO: u32 = 194;
955pub const IPV6_TLV_HAO: u32 = 201;
956pub const IPV6_ADDRFORM: u32 = 1;
957pub const IPV6_2292PKTINFO: u32 = 2;
958pub const IPV6_2292HOPOPTS: u32 = 3;
959pub const IPV6_2292DSTOPTS: u32 = 4;
960pub const IPV6_2292RTHDR: u32 = 5;
961pub const IPV6_2292PKTOPTIONS: u32 = 6;
962pub const IPV6_CHECKSUM: u32 = 7;
963pub const IPV6_2292HOPLIMIT: u32 = 8;
964pub const IPV6_NEXTHOP: u32 = 9;
965pub const IPV6_AUTHHDR: u32 = 10;
966pub const IPV6_FLOWINFO: u32 = 11;
967pub const IPV6_UNICAST_HOPS: u32 = 16;
968pub const IPV6_MULTICAST_IF: u32 = 17;
969pub const IPV6_MULTICAST_HOPS: u32 = 18;
970pub const IPV6_MULTICAST_LOOP: u32 = 19;
971pub const IPV6_ADD_MEMBERSHIP: u32 = 20;
972pub const IPV6_DROP_MEMBERSHIP: u32 = 21;
973pub const IPV6_ROUTER_ALERT: u32 = 22;
974pub const IPV6_MTU_DISCOVER: u32 = 23;
975pub const IPV6_MTU: u32 = 24;
976pub const IPV6_RECVERR: u32 = 25;
977pub const IPV6_V6ONLY: u32 = 26;
978pub const IPV6_JOIN_ANYCAST: u32 = 27;
979pub const IPV6_LEAVE_ANYCAST: u32 = 28;
980pub const IPV6_MULTICAST_ALL: u32 = 29;
981pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30;
982pub const IPV6_RECVERR_RFC4884: u32 = 31;
983pub const IPV6_PMTUDISC_DONT: u32 = 0;
984pub const IPV6_PMTUDISC_WANT: u32 = 1;
985pub const IPV6_PMTUDISC_DO: u32 = 2;
986pub const IPV6_PMTUDISC_PROBE: u32 = 3;
987pub const IPV6_PMTUDISC_INTERFACE: u32 = 4;
988pub const IPV6_PMTUDISC_OMIT: u32 = 5;
989pub const IPV6_FLOWLABEL_MGR: u32 = 32;
990pub const IPV6_FLOWINFO_SEND: u32 = 33;
991pub const IPV6_IPSEC_POLICY: u32 = 34;
992pub const IPV6_XFRM_POLICY: u32 = 35;
993pub const IPV6_HDRINCL: u32 = 36;
994pub const IPV6_RECVPKTINFO: u32 = 49;
995pub const IPV6_PKTINFO: u32 = 50;
996pub const IPV6_RECVHOPLIMIT: u32 = 51;
997pub const IPV6_HOPLIMIT: u32 = 52;
998pub const IPV6_RECVHOPOPTS: u32 = 53;
999pub const IPV6_HOPOPTS: u32 = 54;
1000pub const IPV6_RTHDRDSTOPTS: u32 = 55;
1001pub const IPV6_RECVRTHDR: u32 = 56;
1002pub const IPV6_RTHDR: u32 = 57;
1003pub const IPV6_RECVDSTOPTS: u32 = 58;
1004pub const IPV6_DSTOPTS: u32 = 59;
1005pub const IPV6_RECVPATHMTU: u32 = 60;
1006pub const IPV6_PATHMTU: u32 = 61;
1007pub const IPV6_DONTFRAG: u32 = 62;
1008pub const IPV6_RECVTCLASS: u32 = 66;
1009pub const IPV6_TCLASS: u32 = 67;
1010pub const IPV6_AUTOFLOWLABEL: u32 = 70;
1011pub const IPV6_ADDR_PREFERENCES: u32 = 72;
1012pub const IPV6_PREFER_SRC_TMP: u32 = 1;
1013pub const IPV6_PREFER_SRC_PUBLIC: u32 = 2;
1014pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT: u32 = 256;
1015pub const IPV6_PREFER_SRC_COA: u32 = 4;
1016pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
1017pub const IPV6_PREFER_SRC_CGA: u32 = 8;
1018pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
1019pub const IPV6_MINHOPCOUNT: u32 = 73;
1020pub const IPV6_ORIGDSTADDR: u32 = 74;
1021pub const IPV6_RECVORIGDSTADDR: u32 = 74;
1022pub const IPV6_TRANSPARENT: u32 = 75;
1023pub const IPV6_UNICAST_IF: u32 = 76;
1024pub const IPV6_RECVFRAGSIZE: u32 = 77;
1025pub const IPV6_FREEBIND: u32 = 78;
1026pub const IPV6_MIN_MTU: u32 = 1280;
1027pub const IPV6_SRCRT_STRICT: u32 = 1;
1028pub const IPV6_SRCRT_TYPE_0: u32 = 0;
1029pub const IPV6_SRCRT_TYPE_2: u32 = 2;
1030pub const IPV6_SRCRT_TYPE_3: u32 = 3;
1031pub const IPV6_SRCRT_TYPE_4: u32 = 4;
1032pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
1033pub const SIOCGSTAMP_OLD: u32 = 35078;
1034pub const SIOCGSTAMPNS_OLD: u32 = 35079;
1035pub const SOL_SOCKET: u32 = 1;
1036pub const SO_DEBUG: u32 = 1;
1037pub const SO_REUSEADDR: u32 = 2;
1038pub const SO_TYPE: u32 = 3;
1039pub const SO_ERROR: u32 = 4;
1040pub const SO_DONTROUTE: u32 = 5;
1041pub const SO_BROADCAST: u32 = 6;
1042pub const SO_SNDBUF: u32 = 7;
1043pub const SO_RCVBUF: u32 = 8;
1044pub const SO_SNDBUFFORCE: u32 = 32;
1045pub const SO_RCVBUFFORCE: u32 = 33;
1046pub const SO_KEEPALIVE: u32 = 9;
1047pub const SO_OOBINLINE: u32 = 10;
1048pub const SO_NO_CHECK: u32 = 11;
1049pub const SO_PRIORITY: u32 = 12;
1050pub const SO_LINGER: u32 = 13;
1051pub const SO_BSDCOMPAT: u32 = 14;
1052pub const SO_REUSEPORT: u32 = 15;
1053pub const SO_PASSCRED: u32 = 16;
1054pub const SO_PEERCRED: u32 = 17;
1055pub const SO_RCVLOWAT: u32 = 18;
1056pub const SO_SNDLOWAT: u32 = 19;
1057pub const SO_RCVTIMEO_OLD: u32 = 20;
1058pub const SO_SNDTIMEO_OLD: u32 = 21;
1059pub const SO_SECURITY_AUTHENTICATION: u32 = 22;
1060pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23;
1061pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24;
1062pub const SO_BINDTODEVICE: u32 = 25;
1063pub const SO_ATTACH_FILTER: u32 = 26;
1064pub const SO_DETACH_FILTER: u32 = 27;
1065pub const SO_GET_FILTER: u32 = 26;
1066pub const SO_PEERNAME: u32 = 28;
1067pub const SO_ACCEPTCONN: u32 = 30;
1068pub const SO_PEERSEC: u32 = 31;
1069pub const SO_PASSSEC: u32 = 34;
1070pub const SO_MARK: u32 = 36;
1071pub const SO_PROTOCOL: u32 = 38;
1072pub const SO_DOMAIN: u32 = 39;
1073pub const SO_RXQ_OVFL: u32 = 40;
1074pub const SO_WIFI_STATUS: u32 = 41;
1075pub const SCM_WIFI_STATUS: u32 = 41;
1076pub const SO_PEEK_OFF: u32 = 42;
1077pub const SO_NOFCS: u32 = 43;
1078pub const SO_LOCK_FILTER: u32 = 44;
1079pub const SO_SELECT_ERR_QUEUE: u32 = 45;
1080pub const SO_BUSY_POLL: u32 = 46;
1081pub const SO_MAX_PACING_RATE: u32 = 47;
1082pub const SO_BPF_EXTENSIONS: u32 = 48;
1083pub const SO_INCOMING_CPU: u32 = 49;
1084pub const SO_ATTACH_BPF: u32 = 50;
1085pub const SO_DETACH_BPF: u32 = 27;
1086pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51;
1087pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52;
1088pub const SO_CNX_ADVICE: u32 = 53;
1089pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54;
1090pub const SO_MEMINFO: u32 = 55;
1091pub const SO_INCOMING_NAPI_ID: u32 = 56;
1092pub const SO_COOKIE: u32 = 57;
1093pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58;
1094pub const SO_PEERGROUPS: u32 = 59;
1095pub const SO_ZEROCOPY: u32 = 60;
1096pub const SO_TXTIME: u32 = 61;
1097pub const SCM_TXTIME: u32 = 61;
1098pub const SO_BINDTOIFINDEX: u32 = 62;
1099pub const SO_TIMESTAMP_OLD: u32 = 29;
1100pub const SO_TIMESTAMPNS_OLD: u32 = 35;
1101pub const SO_TIMESTAMPING_OLD: u32 = 37;
1102pub const SO_TIMESTAMP_NEW: u32 = 63;
1103pub const SO_TIMESTAMPNS_NEW: u32 = 64;
1104pub const SO_TIMESTAMPING_NEW: u32 = 65;
1105pub const SO_RCVTIMEO_NEW: u32 = 66;
1106pub const SO_SNDTIMEO_NEW: u32 = 67;
1107pub const SO_DETACH_REUSEPORT_BPF: u32 = 68;
1108pub const SO_PREFER_BUSY_POLL: u32 = 69;
1109pub const SO_BUSY_POLL_BUDGET: u32 = 70;
1110pub const SO_NETNS_COOKIE: u32 = 71;
1111pub const SO_BUF_LOCK: u32 = 72;
1112pub const SO_RESERVE_MEM: u32 = 73;
1113pub const SO_TXREHASH: u32 = 74;
1114pub const SO_RCVMARK: u32 = 75;
1115pub const SO_TIMESTAMP: u32 = 29;
1116pub const SO_TIMESTAMPNS: u32 = 35;
1117pub const SO_TIMESTAMPING: u32 = 37;
1118pub const SO_RCVTIMEO: u32 = 20;
1119pub const SO_SNDTIMEO: u32 = 21;
1120pub const SCM_TIMESTAMP: u32 = 29;
1121pub const SCM_TIMESTAMPNS: u32 = 35;
1122pub const SCM_TIMESTAMPING: u32 = 37;
1123pub const SYS_SOCKET: u32 = 1;
1124pub const SYS_BIND: u32 = 2;
1125pub const SYS_CONNECT: u32 = 3;
1126pub const SYS_LISTEN: u32 = 4;
1127pub const SYS_ACCEPT: u32 = 5;
1128pub const SYS_GETSOCKNAME: u32 = 6;
1129pub const SYS_GETPEERNAME: u32 = 7;
1130pub const SYS_SOCKETPAIR: u32 = 8;
1131pub const SYS_SEND: u32 = 9;
1132pub const SYS_RECV: u32 = 10;
1133pub const SYS_SENDTO: u32 = 11;
1134pub const SYS_RECVFROM: u32 = 12;
1135pub const SYS_SHUTDOWN: u32 = 13;
1136pub const SYS_SETSOCKOPT: u32 = 14;
1137pub const SYS_GETSOCKOPT: u32 = 15;
1138pub const SYS_SENDMSG: u32 = 16;
1139pub const SYS_RECVMSG: u32 = 17;
1140pub const SYS_ACCEPT4: u32 = 18;
1141pub const SYS_RECVMMSG: u32 = 19;
1142pub const SYS_SENDMMSG: u32 = 20;
1143pub const __SO_ACCEPTCON: u32 = 65536;
1144pub const TCP_MSS_DEFAULT: u32 = 536;
1145pub const TCP_MSS_DESIRED: u32 = 1220;
1146pub const TCP_NODELAY: u32 = 1;
1147pub const TCP_MAXSEG: u32 = 2;
1148pub const TCP_CORK: u32 = 3;
1149pub const TCP_KEEPIDLE: u32 = 4;
1150pub const TCP_KEEPINTVL: u32 = 5;
1151pub const TCP_KEEPCNT: u32 = 6;
1152pub const TCP_SYNCNT: u32 = 7;
1153pub const TCP_LINGER2: u32 = 8;
1154pub const TCP_DEFER_ACCEPT: u32 = 9;
1155pub const TCP_WINDOW_CLAMP: u32 = 10;
1156pub const TCP_INFO: u32 = 11;
1157pub const TCP_QUICKACK: u32 = 12;
1158pub const TCP_CONGESTION: u32 = 13;
1159pub const TCP_MD5SIG: u32 = 14;
1160pub const TCP_THIN_LINEAR_TIMEOUTS: u32 = 16;
1161pub const TCP_THIN_DUPACK: u32 = 17;
1162pub const TCP_USER_TIMEOUT: u32 = 18;
1163pub const TCP_REPAIR: u32 = 19;
1164pub const TCP_REPAIR_QUEUE: u32 = 20;
1165pub const TCP_QUEUE_SEQ: u32 = 21;
1166pub const TCP_REPAIR_OPTIONS: u32 = 22;
1167pub const TCP_FASTOPEN: u32 = 23;
1168pub const TCP_TIMESTAMP: u32 = 24;
1169pub const TCP_NOTSENT_LOWAT: u32 = 25;
1170pub const TCP_CC_INFO: u32 = 26;
1171pub const TCP_SAVE_SYN: u32 = 27;
1172pub const TCP_SAVED_SYN: u32 = 28;
1173pub const TCP_REPAIR_WINDOW: u32 = 29;
1174pub const TCP_FASTOPEN_CONNECT: u32 = 30;
1175pub const TCP_ULP: u32 = 31;
1176pub const TCP_MD5SIG_EXT: u32 = 32;
1177pub const TCP_FASTOPEN_KEY: u32 = 33;
1178pub const TCP_FASTOPEN_NO_COOKIE: u32 = 34;
1179pub const TCP_ZEROCOPY_RECEIVE: u32 = 35;
1180pub const TCP_INQ: u32 = 36;
1181pub const TCP_CM_INQ: u32 = 36;
1182pub const TCP_TX_DELAY: u32 = 37;
1183pub const TCP_REPAIR_ON: u32 = 1;
1184pub const TCP_REPAIR_OFF: u32 = 0;
1185pub const TCP_REPAIR_OFF_NO_WP: i32 = -1;
1186pub const TCPI_OPT_TIMESTAMPS: u32 = 1;
1187pub const TCPI_OPT_SACK: u32 = 2;
1188pub const TCPI_OPT_WSCALE: u32 = 4;
1189pub const TCPI_OPT_ECN: u32 = 8;
1190pub const TCPI_OPT_ECN_SEEN: u32 = 16;
1191pub const TCPI_OPT_SYN_DATA: u32 = 32;
1192pub const TCP_MD5SIG_MAXKEYLEN: u32 = 80;
1193pub const TCP_MD5SIG_FLAG_PREFIX: u32 = 1;
1194pub const TCP_MD5SIG_FLAG_IFINDEX: u32 = 2;
1195pub const TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT: u32 = 1;
1196pub const UNIX_PATH_MAX: u32 = 108;
1197pub const IFNAMSIZ: u32 = 16;
1198pub const IFALIASZ: u32 = 256;
1199pub const ALTIFNAMSIZ: u32 = 128;
1200pub const GENERIC_HDLC_VERSION: u32 = 4;
1201pub const CLOCK_DEFAULT: u32 = 0;
1202pub const CLOCK_EXT: u32 = 1;
1203pub const CLOCK_INT: u32 = 2;
1204pub const CLOCK_TXINT: u32 = 3;
1205pub const CLOCK_TXFROMRX: u32 = 4;
1206pub const ENCODING_DEFAULT: u32 = 0;
1207pub const ENCODING_NRZ: u32 = 1;
1208pub const ENCODING_NRZI: u32 = 2;
1209pub const ENCODING_FM_MARK: u32 = 3;
1210pub const ENCODING_FM_SPACE: u32 = 4;
1211pub const ENCODING_MANCHESTER: u32 = 5;
1212pub const PARITY_DEFAULT: u32 = 0;
1213pub const PARITY_NONE: u32 = 1;
1214pub const PARITY_CRC16_PR0: u32 = 2;
1215pub const PARITY_CRC16_PR1: u32 = 3;
1216pub const PARITY_CRC16_PR0_CCITT: u32 = 4;
1217pub const PARITY_CRC16_PR1_CCITT: u32 = 5;
1218pub const PARITY_CRC32_PR0_CCITT: u32 = 6;
1219pub const PARITY_CRC32_PR1_CCITT: u32 = 7;
1220pub const LMI_DEFAULT: u32 = 0;
1221pub const LMI_NONE: u32 = 1;
1222pub const LMI_ANSI: u32 = 2;
1223pub const LMI_CCITT: u32 = 3;
1224pub const LMI_CISCO: u32 = 4;
1225pub const IF_GET_IFACE: u32 = 1;
1226pub const IF_GET_PROTO: u32 = 2;
1227pub const IF_IFACE_V35: u32 = 4096;
1228pub const IF_IFACE_V24: u32 = 4097;
1229pub const IF_IFACE_X21: u32 = 4098;
1230pub const IF_IFACE_T1: u32 = 4099;
1231pub const IF_IFACE_E1: u32 = 4100;
1232pub const IF_IFACE_SYNC_SERIAL: u32 = 4101;
1233pub const IF_IFACE_X21D: u32 = 4102;
1234pub const IF_PROTO_HDLC: u32 = 8192;
1235pub const IF_PROTO_PPP: u32 = 8193;
1236pub const IF_PROTO_CISCO: u32 = 8194;
1237pub const IF_PROTO_FR: u32 = 8195;
1238pub const IF_PROTO_FR_ADD_PVC: u32 = 8196;
1239pub const IF_PROTO_FR_DEL_PVC: u32 = 8197;
1240pub const IF_PROTO_X25: u32 = 8198;
1241pub const IF_PROTO_HDLC_ETH: u32 = 8199;
1242pub const IF_PROTO_FR_ADD_ETH_PVC: u32 = 8200;
1243pub const IF_PROTO_FR_DEL_ETH_PVC: u32 = 8201;
1244pub const IF_PROTO_FR_PVC: u32 = 8202;
1245pub const IF_PROTO_FR_ETH_PVC: u32 = 8203;
1246pub const IF_PROTO_RAW: u32 = 8204;
1247pub const IFHWADDRLEN: u32 = 6;
1248pub const NF_DROP: u32 = 0;
1249pub const NF_ACCEPT: u32 = 1;
1250pub const NF_STOLEN: u32 = 2;
1251pub const NF_QUEUE: u32 = 3;
1252pub const NF_REPEAT: u32 = 4;
1253pub const NF_STOP: u32 = 5;
1254pub const NF_MAX_VERDICT: u32 = 5;
1255pub const NF_VERDICT_MASK: u32 = 255;
1256pub const NF_VERDICT_FLAG_QUEUE_BYPASS: u32 = 32768;
1257pub const NF_VERDICT_QMASK: u32 = 4294901760;
1258pub const NF_VERDICT_QBITS: u32 = 16;
1259pub const NF_VERDICT_BITS: u32 = 16;
1260pub const NF_IP6_PRE_ROUTING: u32 = 0;
1261pub const NF_IP6_LOCAL_IN: u32 = 1;
1262pub const NF_IP6_FORWARD: u32 = 2;
1263pub const NF_IP6_LOCAL_OUT: u32 = 3;
1264pub const NF_IP6_POST_ROUTING: u32 = 4;
1265pub const NF_IP6_NUMHOOKS: u32 = 5;
1266pub const XT_FUNCTION_MAXNAMELEN: u32 = 30;
1267pub const XT_EXTENSION_MAXNAMELEN: u32 = 29;
1268pub const XT_TABLE_MAXNAMELEN: u32 = 32;
1269pub const XT_CONTINUE: u32 = 4294967295;
1270pub const XT_RETURN: i32 = -5;
1271pub const XT_STANDARD_TARGET: &[u8; 1] = b"\0";
1272pub const XT_ERROR_TARGET: &[u8; 6] = b"ERROR\0";
1273pub const XT_INV_PROTO: u32 = 64;
1274pub const IP6T_FUNCTION_MAXNAMELEN: u32 = 30;
1275pub const IP6T_TABLE_MAXNAMELEN: u32 = 32;
1276pub const IP6T_CONTINUE: u32 = 4294967295;
1277pub const IP6T_RETURN: i32 = -5;
1278pub const XT_TCP_INV_SRCPT: u32 = 1;
1279pub const XT_TCP_INV_DSTPT: u32 = 2;
1280pub const XT_TCP_INV_FLAGS: u32 = 4;
1281pub const XT_TCP_INV_OPTION: u32 = 8;
1282pub const XT_TCP_INV_MASK: u32 = 15;
1283pub const XT_UDP_INV_SRCPT: u32 = 1;
1284pub const XT_UDP_INV_DSTPT: u32 = 2;
1285pub const XT_UDP_INV_MASK: u32 = 3;
1286pub const IP6T_TCP_INV_SRCPT: u32 = 1;
1287pub const IP6T_TCP_INV_DSTPT: u32 = 2;
1288pub const IP6T_TCP_INV_FLAGS: u32 = 4;
1289pub const IP6T_TCP_INV_OPTION: u32 = 8;
1290pub const IP6T_TCP_INV_MASK: u32 = 15;
1291pub const IP6T_UDP_INV_SRCPT: u32 = 1;
1292pub const IP6T_UDP_INV_DSTPT: u32 = 2;
1293pub const IP6T_UDP_INV_MASK: u32 = 3;
1294pub const IP6T_STANDARD_TARGET: &[u8; 1] = b"\0";
1295pub const IP6T_ERROR_TARGET: &[u8; 6] = b"ERROR\0";
1296pub const IP6T_F_PROTO: u32 = 1;
1297pub const IP6T_F_TOS: u32 = 2;
1298pub const IP6T_F_GOTO: u32 = 4;
1299pub const IP6T_F_MASK: u32 = 7;
1300pub const IP6T_INV_VIA_IN: u32 = 1;
1301pub const IP6T_INV_VIA_OUT: u32 = 2;
1302pub const IP6T_INV_TOS: u32 = 4;
1303pub const IP6T_INV_SRCIP: u32 = 8;
1304pub const IP6T_INV_DSTIP: u32 = 16;
1305pub const IP6T_INV_FRAG: u32 = 32;
1306pub const IP6T_INV_PROTO: u32 = 64;
1307pub const IP6T_INV_MASK: u32 = 127;
1308pub const IP6T_BASE_CTL: u32 = 64;
1309pub const IP6T_SO_SET_REPLACE: u32 = 64;
1310pub const IP6T_SO_SET_ADD_COUNTERS: u32 = 65;
1311pub const IP6T_SO_SET_MAX: u32 = 65;
1312pub const IP6T_SO_GET_INFO: u32 = 64;
1313pub const IP6T_SO_GET_ENTRIES: u32 = 65;
1314pub const IP6T_SO_GET_REVISION_MATCH: u32 = 68;
1315pub const IP6T_SO_GET_REVISION_TARGET: u32 = 69;
1316pub const IP6T_SO_GET_MAX: u32 = 69;
1317pub const IP6T_SO_ORIGINAL_DST: u32 = 80;
1318pub const IP6T_ICMP_INV: u32 = 1;
1319pub const NF_IP_PRE_ROUTING: u32 = 0;
1320pub const NF_IP_LOCAL_IN: u32 = 1;
1321pub const NF_IP_FORWARD: u32 = 2;
1322pub const NF_IP_LOCAL_OUT: u32 = 3;
1323pub const NF_IP_POST_ROUTING: u32 = 4;
1324pub const NF_IP_NUMHOOKS: u32 = 5;
1325pub const SO_ORIGINAL_DST: u32 = 80;
1326pub const SHUT_RD: u32 = 0;
1327pub const SHUT_WR: u32 = 1;
1328pub const SHUT_RDWR: u32 = 2;
1329pub const SOCK_STREAM: u32 = 1;
1330pub const SOCK_DGRAM: u32 = 2;
1331pub const SOCK_RAW: u32 = 3;
1332pub const SOCK_RDM: u32 = 4;
1333pub const SOCK_SEQPACKET: u32 = 5;
1334pub const MSG_DONTWAIT: u32 = 64;
1335pub const AF_UNSPEC: u32 = 0;
1336pub const AF_UNIX: u32 = 1;
1337pub const AF_INET: u32 = 2;
1338pub const AF_AX25: u32 = 3;
1339pub const AF_IPX: u32 = 4;
1340pub const AF_APPLETALK: u32 = 5;
1341pub const AF_NETROM: u32 = 6;
1342pub const AF_BRIDGE: u32 = 7;
1343pub const AF_ATMPVC: u32 = 8;
1344pub const AF_X25: u32 = 9;
1345pub const AF_INET6: u32 = 10;
1346pub const AF_ROSE: u32 = 11;
1347pub const AF_DECnet: u32 = 12;
1348pub const AF_NETBEUI: u32 = 13;
1349pub const AF_SECURITY: u32 = 14;
1350pub const AF_KEY: u32 = 15;
1351pub const AF_NETLINK: u32 = 16;
1352pub const AF_PACKET: u32 = 17;
1353pub const AF_ASH: u32 = 18;
1354pub const AF_ECONET: u32 = 19;
1355pub const AF_ATMSVC: u32 = 20;
1356pub const AF_RDS: u32 = 21;
1357pub const AF_SNA: u32 = 22;
1358pub const AF_IRDA: u32 = 23;
1359pub const AF_PPPOX: u32 = 24;
1360pub const AF_WANPIPE: u32 = 25;
1361pub const AF_LLC: u32 = 26;
1362pub const AF_CAN: u32 = 29;
1363pub const AF_TIPC: u32 = 30;
1364pub const AF_BLUETOOTH: u32 = 31;
1365pub const AF_IUCV: u32 = 32;
1366pub const AF_RXRPC: u32 = 33;
1367pub const AF_ISDN: u32 = 34;
1368pub const AF_PHONET: u32 = 35;
1369pub const AF_IEEE802154: u32 = 36;
1370pub const AF_CAIF: u32 = 37;
1371pub const AF_ALG: u32 = 38;
1372pub const AF_NFC: u32 = 39;
1373pub const AF_VSOCK: u32 = 40;
1374pub const AF_KCM: u32 = 41;
1375pub const AF_QIPCRTR: u32 = 42;
1376pub const AF_SMC: u32 = 43;
1377pub const AF_XDP: u32 = 44;
1378pub const AF_MCTP: u32 = 45;
1379pub const AF_MAX: u32 = 46;
1380pub const MSG_OOB: u32 = 1;
1381pub const MSG_PEEK: u32 = 2;
1382pub const MSG_DONTROUTE: u32 = 4;
1383pub const MSG_CTRUNC: u32 = 8;
1384pub const MSG_PROBE: u32 = 16;
1385pub const MSG_TRUNC: u32 = 32;
1386pub const MSG_EOR: u32 = 128;
1387pub const MSG_WAITALL: u32 = 256;
1388pub const MSG_FIN: u32 = 512;
1389pub const MSG_SYN: u32 = 1024;
1390pub const MSG_CONFIRM: u32 = 2048;
1391pub const MSG_RST: u32 = 4096;
1392pub const MSG_ERRQUEUE: u32 = 8192;
1393pub const MSG_NOSIGNAL: u32 = 16384;
1394pub const MSG_MORE: u32 = 32768;
1395pub const MSG_CMSG_CLOEXEC: u32 = 1073741824;
1396pub const SCM_RIGHTS: u32 = 1;
1397pub const SCM_CREDENTIALS: u32 = 2;
1398pub const SCM_SECURITY: u32 = 3;
1399pub const SOL_IP: u32 = 0;
1400pub const SOL_TCP: u32 = 6;
1401pub const SOL_UDP: u32 = 17;
1402pub const SOL_IPV6: u32 = 41;
1403pub const SOL_ICMPV6: u32 = 58;
1404pub const SOL_SCTP: u32 = 132;
1405pub const SOL_UDPLITE: u32 = 136;
1406pub const SOL_RAW: u32 = 255;
1407pub const SOL_IPX: u32 = 256;
1408pub const SOL_AX25: u32 = 257;
1409pub const SOL_ATALK: u32 = 258;
1410pub const SOL_NETROM: u32 = 259;
1411pub const SOL_ROSE: u32 = 260;
1412pub const SOL_DECNET: u32 = 261;
1413pub const SOL_X25: u32 = 262;
1414pub const SOL_PACKET: u32 = 263;
1415pub const SOL_ATM: u32 = 264;
1416pub const SOL_AAL: u32 = 265;
1417pub const SOL_IRDA: u32 = 266;
1418pub const SOL_NETBEUI: u32 = 267;
1419pub const SOL_LLC: u32 = 268;
1420pub const SOL_DCCP: u32 = 269;
1421pub const SOL_NETLINK: u32 = 270;
1422pub const SOL_TIPC: u32 = 271;
1423pub const SOL_RXRPC: u32 = 272;
1424pub const SOL_PPPOL2TP: u32 = 273;
1425pub const SOL_BLUETOOTH: u32 = 274;
1426pub const SOL_PNPIPE: u32 = 275;
1427pub const SOL_RDS: u32 = 276;
1428pub const SOL_IUCV: u32 = 277;
1429pub const SOL_CAIF: u32 = 278;
1430pub const SOL_ALG: u32 = 279;
1431pub const SOL_NFC: u32 = 280;
1432pub const SOL_KCM: u32 = 281;
1433pub const SOL_TLS: u32 = 282;
1434pub const SOL_XDP: u32 = 283;
1435pub const SOL_MPTCP: u32 = 284;
1436pub const SOL_MCTP: u32 = 285;
1437pub const SOL_SMC: u32 = 286;
1438pub const IPPROTO_IP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IP;
1439pub const IPPROTO_ICMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ICMP;
1440pub const IPPROTO_IGMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IGMP;
1441pub const IPPROTO_IPIP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IPIP;
1442pub const IPPROTO_TCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_TCP;
1443pub const IPPROTO_EGP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_EGP;
1444pub const IPPROTO_PUP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_PUP;
1445pub const IPPROTO_UDP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_UDP;
1446pub const IPPROTO_IDP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IDP;
1447pub const IPPROTO_TP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_TP;
1448pub const IPPROTO_DCCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_DCCP;
1449pub const IPPROTO_IPV6: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IPV6;
1450pub const IPPROTO_RSVP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RSVP;
1451pub const IPPROTO_GRE: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_GRE;
1452pub const IPPROTO_ESP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ESP;
1453pub const IPPROTO_AH: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_AH;
1454pub const IPPROTO_MTP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MTP;
1455pub const IPPROTO_BEETPH: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_BEETPH;
1456pub const IPPROTO_ENCAP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ENCAP;
1457pub const IPPROTO_PIM: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_PIM;
1458pub const IPPROTO_COMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_COMP;
1459pub const IPPROTO_L2TP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_L2TP;
1460pub const IPPROTO_SCTP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_SCTP;
1461pub const IPPROTO_UDPLITE: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_UDPLITE;
1462pub const IPPROTO_MPLS: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MPLS;
1463pub const IPPROTO_ETHERNET: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ETHERNET;
1464pub const IPPROTO_RAW: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RAW;
1465pub const IPPROTO_MPTCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MPTCP;
1466pub const IPPROTO_MAX: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MAX;
1467pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING;
1468pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING;
1469pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP;
1470pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS;
1471pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS;
1472pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS;
1473pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA;
1474pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER;
1475pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE;
1476pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY;
1477pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS;
1478pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG;
1479pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER;
1480pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID;
1481pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM;
1482pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY;
1483pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION;
1484pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE;
1485pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE;
1486pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES;
1487pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT;
1488pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY;
1489pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL;
1490pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK;
1491pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN;
1492pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET;
1493pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL;
1494pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL;
1495pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
1496pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
1497pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP;
1498pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING;
1499pub const IPV4_DEVCONF_ARP_EVICT_NOCARRIER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_EVICT_NOCARRIER;
1500pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX;
1501pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING;
1502pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT;
1503pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6;
1504pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA;
1505pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS;
1506pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF;
1507pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS;
1508pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS;
1509pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL;
1510pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY;
1511pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR;
1512pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT;
1513pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT;
1514pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY;
1515pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR;
1516pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES;
1517pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION;
1518pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR;
1519pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO;
1520pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF;
1521pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL;
1522pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN;
1523pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP;
1524pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD;
1525pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE;
1526pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING;
1527pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6;
1528pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD;
1529pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO;
1530pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY;
1531pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL;
1532pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL;
1533pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC;
1534pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL;
1535pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC;
1536pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU;
1537pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET;
1538pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY;
1539pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT;
1540pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN;
1541pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST;
1542pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA;
1543pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN;
1544pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL;
1545pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED;
1546pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC;
1547pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD;
1548pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE;
1549pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY;
1550pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN;
1551pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS;
1552pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED;
1553pub const DEVCONF_RA_DEFRTR_METRIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RA_DEFRTR_METRIC;
1554pub const DEVCONF_IOAM6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ENABLED;
1555pub const DEVCONF_IOAM6_ID: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ID;
1556pub const DEVCONF_IOAM6_ID_WIDE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ID_WIDE;
1557pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_EVICT_NOCARRIER;
1558pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA;
1559pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX;
1560pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR;
1561pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE;
1562pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG;
1563pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK;
1564pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH;
1565pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST;
1566pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN;
1567pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN;
1568pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS;
1569pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET;
1570pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE;
1571pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE;
1572pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE;
1573pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR;
1574pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD;
1575pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY;
1576pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED;
1577pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED;
1578pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT;
1579pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS;
1580pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE;
1581pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE;
1582pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND;
1583pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING;
1584pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT;
1585pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS;
1586pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT;
1587pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE;
1588pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE;
1589pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH;
1590pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED;
1591pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE;
1592pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT;
1593pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS;
1594pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS;
1595pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN;
1596pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT;
1597pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH;
1598pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT;
1599pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT;
1600pub const TCP_NLA_TTL: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TTL;
1601pub const TCP_NLA_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REHASH;
1602pub const IF_OPER_UNKNOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_UNKNOWN;
1603pub const IF_OPER_NOTPRESENT: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_NOTPRESENT;
1604pub const IF_OPER_DOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_DOWN;
1605pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_LOWERLAYERDOWN;
1606pub const IF_OPER_TESTING: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_TESTING;
1607pub const IF_OPER_DORMANT: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_DORMANT;
1608pub const IF_OPER_UP: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_UP;
1609pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_DEFAULT;
1610pub const IF_LINK_MODE_DORMANT: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_DORMANT;
1611pub const IF_LINK_MODE_TESTING: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_TESTING;
1612pub const NFPROTO_UNSPEC: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_UNSPEC;
1613pub const NFPROTO_INET: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_INET;
1614pub const NFPROTO_IPV4: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_IPV4;
1615pub const NFPROTO_ARP: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_ARP;
1616pub const NFPROTO_NETDEV: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_NETDEV;
1617pub const NFPROTO_BRIDGE: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_BRIDGE;
1618pub const NFPROTO_IPV6: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_IPV6;
1619pub const NFPROTO_DECNET: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_DECNET;
1620pub const NFPROTO_NUMPROTO: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_NUMPROTO;
1621#[repr(u32)]
1622#[non_exhaustive]
1623#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1624pub enum _bindgen_ty_1 {
1625IPPROTO_IP = 0,
1626IPPROTO_ICMP = 1,
1627IPPROTO_IGMP = 2,
1628IPPROTO_IPIP = 4,
1629IPPROTO_TCP = 6,
1630IPPROTO_EGP = 8,
1631IPPROTO_PUP = 12,
1632IPPROTO_UDP = 17,
1633IPPROTO_IDP = 22,
1634IPPROTO_TP = 29,
1635IPPROTO_DCCP = 33,
1636IPPROTO_IPV6 = 41,
1637IPPROTO_RSVP = 46,
1638IPPROTO_GRE = 47,
1639IPPROTO_ESP = 50,
1640IPPROTO_AH = 51,
1641IPPROTO_MTP = 92,
1642IPPROTO_BEETPH = 94,
1643IPPROTO_ENCAP = 98,
1644IPPROTO_PIM = 103,
1645IPPROTO_COMP = 108,
1646IPPROTO_L2TP = 115,
1647IPPROTO_SCTP = 132,
1648IPPROTO_UDPLITE = 136,
1649IPPROTO_MPLS = 137,
1650IPPROTO_ETHERNET = 143,
1651IPPROTO_RAW = 255,
1652IPPROTO_MPTCP = 262,
1653IPPROTO_MAX = 263,
1654}
1655#[repr(u32)]
1656#[non_exhaustive]
1657#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1658pub enum _bindgen_ty_2 {
1659IPV4_DEVCONF_FORWARDING = 1,
1660IPV4_DEVCONF_MC_FORWARDING = 2,
1661IPV4_DEVCONF_PROXY_ARP = 3,
1662IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
1663IPV4_DEVCONF_SECURE_REDIRECTS = 5,
1664IPV4_DEVCONF_SEND_REDIRECTS = 6,
1665IPV4_DEVCONF_SHARED_MEDIA = 7,
1666IPV4_DEVCONF_RP_FILTER = 8,
1667IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
1668IPV4_DEVCONF_BOOTP_RELAY = 10,
1669IPV4_DEVCONF_LOG_MARTIANS = 11,
1670IPV4_DEVCONF_TAG = 12,
1671IPV4_DEVCONF_ARPFILTER = 13,
1672IPV4_DEVCONF_MEDIUM_ID = 14,
1673IPV4_DEVCONF_NOXFRM = 15,
1674IPV4_DEVCONF_NOPOLICY = 16,
1675IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
1676IPV4_DEVCONF_ARP_ANNOUNCE = 18,
1677IPV4_DEVCONF_ARP_IGNORE = 19,
1678IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
1679IPV4_DEVCONF_ARP_ACCEPT = 21,
1680IPV4_DEVCONF_ARP_NOTIFY = 22,
1681IPV4_DEVCONF_ACCEPT_LOCAL = 23,
1682IPV4_DEVCONF_SRC_VMARK = 24,
1683IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
1684IPV4_DEVCONF_ROUTE_LOCALNET = 26,
1685IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
1686IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
1687IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
1688IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
1689IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
1690IPV4_DEVCONF_BC_FORWARDING = 32,
1691IPV4_DEVCONF_ARP_EVICT_NOCARRIER = 33,
1692__IPV4_DEVCONF_MAX = 34,
1693}
1694#[repr(u32)]
1695#[non_exhaustive]
1696#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1697pub enum _bindgen_ty_3 {
1698DEVCONF_FORWARDING = 0,
1699DEVCONF_HOPLIMIT = 1,
1700DEVCONF_MTU6 = 2,
1701DEVCONF_ACCEPT_RA = 3,
1702DEVCONF_ACCEPT_REDIRECTS = 4,
1703DEVCONF_AUTOCONF = 5,
1704DEVCONF_DAD_TRANSMITS = 6,
1705DEVCONF_RTR_SOLICITS = 7,
1706DEVCONF_RTR_SOLICIT_INTERVAL = 8,
1707DEVCONF_RTR_SOLICIT_DELAY = 9,
1708DEVCONF_USE_TEMPADDR = 10,
1709DEVCONF_TEMP_VALID_LFT = 11,
1710DEVCONF_TEMP_PREFERED_LFT = 12,
1711DEVCONF_REGEN_MAX_RETRY = 13,
1712DEVCONF_MAX_DESYNC_FACTOR = 14,
1713DEVCONF_MAX_ADDRESSES = 15,
1714DEVCONF_FORCE_MLD_VERSION = 16,
1715DEVCONF_ACCEPT_RA_DEFRTR = 17,
1716DEVCONF_ACCEPT_RA_PINFO = 18,
1717DEVCONF_ACCEPT_RA_RTR_PREF = 19,
1718DEVCONF_RTR_PROBE_INTERVAL = 20,
1719DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
1720DEVCONF_PROXY_NDP = 22,
1721DEVCONF_OPTIMISTIC_DAD = 23,
1722DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
1723DEVCONF_MC_FORWARDING = 25,
1724DEVCONF_DISABLE_IPV6 = 26,
1725DEVCONF_ACCEPT_DAD = 27,
1726DEVCONF_FORCE_TLLAO = 28,
1727DEVCONF_NDISC_NOTIFY = 29,
1728DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
1729DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
1730DEVCONF_SUPPRESS_FRAG_NDISC = 32,
1731DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
1732DEVCONF_USE_OPTIMISTIC = 34,
1733DEVCONF_ACCEPT_RA_MTU = 35,
1734DEVCONF_STABLE_SECRET = 36,
1735DEVCONF_USE_OIF_ADDRS_ONLY = 37,
1736DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
1737DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
1738DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
1739DEVCONF_DROP_UNSOLICITED_NA = 41,
1740DEVCONF_KEEP_ADDR_ON_DOWN = 42,
1741DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
1742DEVCONF_SEG6_ENABLED = 44,
1743DEVCONF_SEG6_REQUIRE_HMAC = 45,
1744DEVCONF_ENHANCED_DAD = 46,
1745DEVCONF_ADDR_GEN_MODE = 47,
1746DEVCONF_DISABLE_POLICY = 48,
1747DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
1748DEVCONF_NDISC_TCLASS = 50,
1749DEVCONF_RPL_SEG_ENABLED = 51,
1750DEVCONF_RA_DEFRTR_METRIC = 52,
1751DEVCONF_IOAM6_ENABLED = 53,
1752DEVCONF_IOAM6_ID = 54,
1753DEVCONF_IOAM6_ID_WIDE = 55,
1754DEVCONF_NDISC_EVICT_NOCARRIER = 56,
1755DEVCONF_ACCEPT_UNTRACKED_NA = 57,
1756DEVCONF_MAX = 58,
1757}
1758#[repr(u32)]
1759#[non_exhaustive]
1760#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1761pub enum socket_state {
1762SS_FREE = 0,
1763SS_UNCONNECTED = 1,
1764SS_CONNECTING = 2,
1765SS_CONNECTED = 3,
1766SS_DISCONNECTING = 4,
1767}
1768#[repr(u32)]
1769#[non_exhaustive]
1770#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1771pub enum _bindgen_ty_4 {
1772TCP_FLAG_CWR = 32768,
1773TCP_FLAG_ECE = 16384,
1774TCP_FLAG_URG = 8192,
1775TCP_FLAG_ACK = 4096,
1776TCP_FLAG_PSH = 2048,
1777TCP_FLAG_RST = 1024,
1778TCP_FLAG_SYN = 512,
1779TCP_FLAG_FIN = 256,
1780TCP_RESERVED_BITS = 15,
1781TCP_DATA_OFFSET = 240,
1782}
1783#[repr(u32)]
1784#[non_exhaustive]
1785#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1786pub enum _bindgen_ty_5 {
1787TCP_NO_QUEUE = 0,
1788TCP_RECV_QUEUE = 1,
1789TCP_SEND_QUEUE = 2,
1790TCP_QUEUES_NR = 3,
1791}
1792#[repr(u32)]
1793#[non_exhaustive]
1794#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1795pub enum tcp_fastopen_client_fail {
1796TFO_STATUS_UNSPEC = 0,
1797TFO_COOKIE_UNAVAILABLE = 1,
1798TFO_DATA_NOT_ACKED = 2,
1799TFO_SYN_RETRANSMITTED = 3,
1800}
1801#[repr(u32)]
1802#[non_exhaustive]
1803#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1804pub enum tcp_ca_state {
1805TCP_CA_Open = 0,
1806TCP_CA_Disorder = 1,
1807TCP_CA_CWR = 2,
1808TCP_CA_Recovery = 3,
1809TCP_CA_Loss = 4,
1810}
1811#[repr(u32)]
1812#[non_exhaustive]
1813#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1814pub enum _bindgen_ty_6 {
1815TCP_NLA_PAD = 0,
1816TCP_NLA_BUSY = 1,
1817TCP_NLA_RWND_LIMITED = 2,
1818TCP_NLA_SNDBUF_LIMITED = 3,
1819TCP_NLA_DATA_SEGS_OUT = 4,
1820TCP_NLA_TOTAL_RETRANS = 5,
1821TCP_NLA_PACING_RATE = 6,
1822TCP_NLA_DELIVERY_RATE = 7,
1823TCP_NLA_SND_CWND = 8,
1824TCP_NLA_REORDERING = 9,
1825TCP_NLA_MIN_RTT = 10,
1826TCP_NLA_RECUR_RETRANS = 11,
1827TCP_NLA_DELIVERY_RATE_APP_LMT = 12,
1828TCP_NLA_SNDQ_SIZE = 13,
1829TCP_NLA_CA_STATE = 14,
1830TCP_NLA_SND_SSTHRESH = 15,
1831TCP_NLA_DELIVERED = 16,
1832TCP_NLA_DELIVERED_CE = 17,
1833TCP_NLA_BYTES_SENT = 18,
1834TCP_NLA_BYTES_RETRANS = 19,
1835TCP_NLA_DSACK_DUPS = 20,
1836TCP_NLA_REORD_SEEN = 21,
1837TCP_NLA_SRTT = 22,
1838TCP_NLA_TIMEOUT_REHASH = 23,
1839TCP_NLA_BYTES_NOTSENT = 24,
1840TCP_NLA_EDT = 25,
1841TCP_NLA_TTL = 26,
1842TCP_NLA_REHASH = 27,
1843}
1844#[repr(u32)]
1845#[non_exhaustive]
1846#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1847pub enum net_device_flags {
1848IFF_UP = 1,
1849IFF_BROADCAST = 2,
1850IFF_DEBUG = 4,
1851IFF_LOOPBACK = 8,
1852IFF_POINTOPOINT = 16,
1853IFF_NOTRAILERS = 32,
1854IFF_RUNNING = 64,
1855IFF_NOARP = 128,
1856IFF_PROMISC = 256,
1857IFF_ALLMULTI = 512,
1858IFF_MASTER = 1024,
1859IFF_SLAVE = 2048,
1860IFF_MULTICAST = 4096,
1861IFF_PORTSEL = 8192,
1862IFF_AUTOMEDIA = 16384,
1863IFF_DYNAMIC = 32768,
1864IFF_LOWER_UP = 65536,
1865IFF_DORMANT = 131072,
1866IFF_ECHO = 262144,
1867}
1868#[repr(u32)]
1869#[non_exhaustive]
1870#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1871pub enum _bindgen_ty_7 {
1872IF_OPER_UNKNOWN = 0,
1873IF_OPER_NOTPRESENT = 1,
1874IF_OPER_DOWN = 2,
1875IF_OPER_LOWERLAYERDOWN = 3,
1876IF_OPER_TESTING = 4,
1877IF_OPER_DORMANT = 5,
1878IF_OPER_UP = 6,
1879}
1880#[repr(u32)]
1881#[non_exhaustive]
1882#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1883pub enum _bindgen_ty_8 {
1884IF_LINK_MODE_DEFAULT = 0,
1885IF_LINK_MODE_DORMANT = 1,
1886IF_LINK_MODE_TESTING = 2,
1887}
1888#[repr(u32)]
1889#[non_exhaustive]
1890#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1891pub enum nf_inet_hooks {
1892NF_INET_PRE_ROUTING = 0,
1893NF_INET_LOCAL_IN = 1,
1894NF_INET_FORWARD = 2,
1895NF_INET_LOCAL_OUT = 3,
1896NF_INET_POST_ROUTING = 4,
1897NF_INET_NUMHOOKS = 5,
1898}
1899#[repr(u32)]
1900#[non_exhaustive]
1901#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1902pub enum nf_dev_hooks {
1903NF_NETDEV_INGRESS = 0,
1904NF_NETDEV_EGRESS = 1,
1905NF_NETDEV_NUMHOOKS = 2,
1906}
1907#[repr(u32)]
1908#[non_exhaustive]
1909#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1910pub enum _bindgen_ty_9 {
1911NFPROTO_UNSPEC = 0,
1912NFPROTO_INET = 1,
1913NFPROTO_IPV4 = 2,
1914NFPROTO_ARP = 3,
1915NFPROTO_NETDEV = 5,
1916NFPROTO_BRIDGE = 7,
1917NFPROTO_IPV6 = 10,
1918NFPROTO_DECNET = 12,
1919NFPROTO_NUMPROTO = 13,
1920}
1921#[repr(i32)]
1922#[non_exhaustive]
1923#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1924pub enum nf_ip6_hook_priorities {
1925NF_IP6_PRI_FIRST = -2147483648,
1926NF_IP6_PRI_RAW_BEFORE_DEFRAG = -450,
1927NF_IP6_PRI_CONNTRACK_DEFRAG = -400,
1928NF_IP6_PRI_RAW = -300,
1929NF_IP6_PRI_SELINUX_FIRST = -225,
1930NF_IP6_PRI_CONNTRACK = -200,
1931NF_IP6_PRI_MANGLE = -150,
1932NF_IP6_PRI_NAT_DST = -100,
1933NF_IP6_PRI_FILTER = 0,
1934NF_IP6_PRI_SECURITY = 50,
1935NF_IP6_PRI_NAT_SRC = 100,
1936NF_IP6_PRI_SELINUX_LAST = 225,
1937NF_IP6_PRI_CONNTRACK_HELPER = 300,
1938NF_IP6_PRI_LAST = 2147483647,
1939}
1940#[repr(i32)]
1941#[non_exhaustive]
1942#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
1943pub enum nf_ip_hook_priorities {
1944NF_IP_PRI_FIRST = -2147483648,
1945NF_IP_PRI_RAW_BEFORE_DEFRAG = -450,
1946NF_IP_PRI_CONNTRACK_DEFRAG = -400,
1947NF_IP_PRI_RAW = -300,
1948NF_IP_PRI_SELINUX_FIRST = -225,
1949NF_IP_PRI_CONNTRACK = -200,
1950NF_IP_PRI_MANGLE = -150,
1951NF_IP_PRI_NAT_DST = -100,
1952NF_IP_PRI_FILTER = 0,
1953NF_IP_PRI_SECURITY = 50,
1954NF_IP_PRI_NAT_SRC = 100,
1955NF_IP_PRI_SELINUX_LAST = 225,
1956NF_IP_PRI_CONNTRACK_HELPER = 300,
1957NF_IP_PRI_CONNTRACK_CONFIRM = 2147483647,
1958}
1959#[repr(C)]
1960#[derive(Copy, Clone)]
1961pub union __kernel_sockaddr_storage__bindgen_ty_1 {
1962pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1,
1963pub __align: *mut crate::ctypes::c_void,
1964}
1965#[repr(C)]
1966#[derive(Copy, Clone)]
1967pub union iphdr__bindgen_ty_1 {
1968pub __bindgen_anon_1: iphdr__bindgen_ty_1__bindgen_ty_1,
1969pub addrs: iphdr__bindgen_ty_1__bindgen_ty_2,
1970}
1971#[repr(C)]
1972#[derive(Copy, Clone)]
1973pub union in6_addr__bindgen_ty_1 {
1974pub u6_addr8: [__u8; 16usize],
1975pub u6_addr16: [__be16; 8usize],
1976pub u6_addr32: [__be32; 4usize],
1977}
1978#[repr(C)]
1979#[derive(Copy, Clone)]
1980pub union ipv6hdr__bindgen_ty_1 {
1981pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1__bindgen_ty_1,
1982pub addrs: ipv6hdr__bindgen_ty_1__bindgen_ty_2,
1983}
1984#[repr(C)]
1985#[derive(Copy, Clone)]
1986pub union tcp_word_hdr {
1987pub hdr: tcphdr,
1988pub words: [__be32; 5usize],
1989}
1990#[repr(C)]
1991#[derive(Copy, Clone)]
1992pub union if_settings__bindgen_ty_1 {
1993pub raw_hdlc: *mut raw_hdlc_proto,
1994pub cisco: *mut cisco_proto,
1995pub fr: *mut fr_proto,
1996pub fr_pvc: *mut fr_proto_pvc,
1997pub fr_pvc_info: *mut fr_proto_pvc_info,
1998pub x25: *mut x25_hdlc_proto,
1999pub sync: *mut sync_serial_settings,
2000pub te1: *mut te1_settings,
2001}
2002#[repr(C)]
2003#[derive(Copy, Clone)]
2004pub union ifreq__bindgen_ty_1 {
2005pub ifrn_name: [crate::ctypes::c_char; 16usize],
2006}
2007#[repr(C)]
2008#[derive(Copy, Clone)]
2009pub union ifreq__bindgen_ty_2 {
2010pub ifru_addr: sockaddr,
2011pub ifru_dstaddr: sockaddr,
2012pub ifru_broadaddr: sockaddr,
2013pub ifru_netmask: sockaddr,
2014pub ifru_hwaddr: sockaddr,
2015pub ifru_flags: crate::ctypes::c_short,
2016pub ifru_ivalue: crate::ctypes::c_int,
2017pub ifru_mtu: crate::ctypes::c_int,
2018pub ifru_map: ifmap,
2019pub ifru_slave: [crate::ctypes::c_char; 16usize],
2020pub ifru_newname: [crate::ctypes::c_char; 16usize],
2021pub ifru_data: *mut crate::ctypes::c_void,
2022pub ifru_settings: if_settings,
2023}
2024#[repr(C)]
2025#[derive(Copy, Clone)]
2026pub union ifconf__bindgen_ty_1 {
2027pub ifcu_buf: *mut crate::ctypes::c_char,
2028pub ifcu_req: *mut ifreq,
2029}
2030#[repr(C)]
2031#[derive(Copy, Clone)]
2032pub union nf_inet_addr {
2033pub all: [__u32; 4usize],
2034pub ip: __be32,
2035pub ip6: [__be32; 4usize],
2036pub in_: in_addr,
2037pub in6: in6_addr,
2038}
2039#[repr(C)]
2040#[derive(Copy, Clone)]
2041pub union xt_entry_match__bindgen_ty_1 {
2042pub user: xt_entry_match__bindgen_ty_1__bindgen_ty_1,
2043pub kernel: xt_entry_match__bindgen_ty_1__bindgen_ty_2,
2044pub match_size: __u16,
2045}
2046#[repr(C)]
2047#[derive(Copy, Clone)]
2048pub union xt_entry_target__bindgen_ty_1 {
2049pub user: xt_entry_target__bindgen_ty_1__bindgen_ty_1,
2050pub kernel: xt_entry_target__bindgen_ty_1__bindgen_ty_2,
2051pub target_size: __u16,
2052}
2053impl<Storage> __BindgenBitfieldUnit<Storage> {
2054#[inline]
2055pub const fn new(storage: Storage) -> Self {
2056Self { storage }
2057}
2058}
2059impl<Storage> __BindgenBitfieldUnit<Storage>
2060where
2061Storage: AsRef<[u8]> + AsMut<[u8]>,
2062{
2063#[inline]
2064pub fn get_bit(&self, index: usize) -> bool {
2065debug_assert!(index / 8 < self.storage.as_ref().len());
2066let byte_index = index / 8;
2067let byte = self.storage.as_ref()[byte_index];
2068let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
2069let mask = 1 << bit_index;
2070byte & mask == mask
2071}
2072#[inline]
2073pub fn set_bit(&mut self, index: usize, val: bool) {
2074debug_assert!(index / 8 < self.storage.as_ref().len());
2075let byte_index = index / 8;
2076let byte = &mut self.storage.as_mut()[byte_index];
2077let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
2078let mask = 1 << bit_index;
2079if val {
2080*byte |= mask;
2081} else {
2082*byte &= !mask;
2083}
2084}
2085#[inline]
2086pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
2087debug_assert!(bit_width <= 64);
2088debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
2089debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
2090let mut val = 0;
2091for i in 0..(bit_width as usize) {
2092if self.get_bit(i + bit_offset) {
2093let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
2094val |= 1 << index;
2095}
2096}
2097val
2098}
2099#[inline]
2100pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
2101debug_assert!(bit_width <= 64);
2102debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
2103debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
2104for i in 0..(bit_width as usize) {
2105let mask = 1 << i;
2106let val_bit_is_set = val & mask == mask;
2107let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
2108self.set_bit(index + bit_offset, val_bit_is_set);
2109}
2110}
2111}
2112impl<T> __IncompleteArrayField<T> {
2113#[inline]
2114pub const fn new() -> Self {
2115__IncompleteArrayField(::core::marker::PhantomData, [])
2116}
2117#[inline]
2118pub fn as_ptr(&self) -> *const T {
2119self as *const _ as *const T
2120}
2121#[inline]
2122pub fn as_mut_ptr(&mut self) -> *mut T {
2123self as *mut _ as *mut T
2124}
2125#[inline]
2126pub unsafe fn as_slice(&self, len: usize) -> &[T] {
2127::core::slice::from_raw_parts(self.as_ptr(), len)
2128}
2129#[inline]
2130pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
2131::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
2132}
2133}
2134impl<T> ::core::fmt::Debug for __IncompleteArrayField<T> {
2135fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2136fmt.write_str(data:"__IncompleteArrayField")
2137}
2138}
2139impl<T> __BindgenUnionField<T> {
2140#[inline]
2141pub const fn new() -> Self {
2142__BindgenUnionField(::core::marker::PhantomData)
2143}
2144#[inline]
2145pub unsafe fn as_ref(&self) -> &T {
2146::core::mem::transmute(self)
2147}
2148#[inline]
2149pub unsafe fn as_mut(&mut self) -> &mut T {
2150::core::mem::transmute(self)
2151}
2152}
2153impl<T> ::core::default::Default for __BindgenUnionField<T> {
2154#[inline]
2155fn default() -> Self {
2156Self::new()
2157}
2158}
2159impl<T> ::core::clone::Clone for __BindgenUnionField<T> {
2160#[inline]
2161fn clone(&self) -> Self {
2162Self::new()
2163}
2164}
2165impl<T> ::core::marker::Copy for __BindgenUnionField<T> {}
2166impl<T> ::core::fmt::Debug for __BindgenUnionField<T> {
2167fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2168fmt.write_str(data:"__BindgenUnionField")
2169}
2170}
2171impl<T> ::core::hash::Hash for __BindgenUnionField<T> {
2172fn hash<H: ::core::hash::Hasher>(&self, _state: &mut H) {}
2173}
2174impl<T> ::core::cmp::PartialEq for __BindgenUnionField<T> {
2175fn eq(&self, _other: &__BindgenUnionField<T>) -> bool {
2176true
2177}
2178}
2179impl<T> ::core::cmp::Eq for __BindgenUnionField<T> {}
2180impl iphdr {
2181#[inline]
2182pub fn ihl(&self) -> __u8 {
2183unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
2184}
2185#[inline]
2186pub fn set_ihl(&mut self, val: __u8) {
2187unsafe {
2188let val: u8 = ::core::mem::transmute(val);
2189self._bitfield_1.set(0usize, 4u8, val as u64)
2190}
2191}
2192#[inline]
2193pub fn version(&self) -> __u8 {
2194unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
2195}
2196#[inline]
2197pub fn set_version(&mut self, val: __u8) {
2198unsafe {
2199let val: u8 = ::core::mem::transmute(val);
2200self._bitfield_1.set(4usize, 4u8, val as u64)
2201}
2202}
2203#[inline]
2204pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
2205let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
2206__bindgen_bitfield_unit.set(0usize, 4u8, {
2207let ihl: u8 = unsafe { ::core::mem::transmute(ihl) };
2208ihl as u64
2209});
2210__bindgen_bitfield_unit.set(4usize, 4u8, {
2211let version: u8 = unsafe { ::core::mem::transmute(version) };
2212version as u64
2213});
2214__bindgen_bitfield_unit
2215}
2216}
2217impl ipv6hdr {
2218#[inline]
2219pub fn priority(&self) -> __u8 {
2220unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
2221}
2222#[inline]
2223pub fn set_priority(&mut self, val: __u8) {
2224unsafe {
2225let val: u8 = ::core::mem::transmute(val);
2226self._bitfield_1.set(0usize, 4u8, val as u64)
2227}
2228}
2229#[inline]
2230pub fn version(&self) -> __u8 {
2231unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
2232}
2233#[inline]
2234pub fn set_version(&mut self, val: __u8) {
2235unsafe {
2236let val: u8 = ::core::mem::transmute(val);
2237self._bitfield_1.set(4usize, 4u8, val as u64)
2238}
2239}
2240#[inline]
2241pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
2242let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
2243__bindgen_bitfield_unit.set(0usize, 4u8, {
2244let priority: u8 = unsafe { ::core::mem::transmute(priority) };
2245priority as u64
2246});
2247__bindgen_bitfield_unit.set(4usize, 4u8, {
2248let version: u8 = unsafe { ::core::mem::transmute(version) };
2249version as u64
2250});
2251__bindgen_bitfield_unit
2252}
2253}
2254impl tcphdr {
2255#[inline]
2256pub fn res1(&self) -> __u16 {
2257unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) }
2258}
2259#[inline]
2260pub fn set_res1(&mut self, val: __u16) {
2261unsafe {
2262let val: u16 = ::core::mem::transmute(val);
2263self._bitfield_1.set(0usize, 4u8, val as u64)
2264}
2265}
2266#[inline]
2267pub fn doff(&self) -> __u16 {
2268unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) }
2269}
2270#[inline]
2271pub fn set_doff(&mut self, val: __u16) {
2272unsafe {
2273let val: u16 = ::core::mem::transmute(val);
2274self._bitfield_1.set(4usize, 4u8, val as u64)
2275}
2276}
2277#[inline]
2278pub fn fin(&self) -> __u16 {
2279unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) }
2280}
2281#[inline]
2282pub fn set_fin(&mut self, val: __u16) {
2283unsafe {
2284let val: u16 = ::core::mem::transmute(val);
2285self._bitfield_1.set(8usize, 1u8, val as u64)
2286}
2287}
2288#[inline]
2289pub fn syn(&self) -> __u16 {
2290unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) }
2291}
2292#[inline]
2293pub fn set_syn(&mut self, val: __u16) {
2294unsafe {
2295let val: u16 = ::core::mem::transmute(val);
2296self._bitfield_1.set(9usize, 1u8, val as u64)
2297}
2298}
2299#[inline]
2300pub fn rst(&self) -> __u16 {
2301unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) }
2302}
2303#[inline]
2304pub fn set_rst(&mut self, val: __u16) {
2305unsafe {
2306let val: u16 = ::core::mem::transmute(val);
2307self._bitfield_1.set(10usize, 1u8, val as u64)
2308}
2309}
2310#[inline]
2311pub fn psh(&self) -> __u16 {
2312unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) }
2313}
2314#[inline]
2315pub fn set_psh(&mut self, val: __u16) {
2316unsafe {
2317let val: u16 = ::core::mem::transmute(val);
2318self._bitfield_1.set(11usize, 1u8, val as u64)
2319}
2320}
2321#[inline]
2322pub fn ack(&self) -> __u16 {
2323unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) }
2324}
2325#[inline]
2326pub fn set_ack(&mut self, val: __u16) {
2327unsafe {
2328let val: u16 = ::core::mem::transmute(val);
2329self._bitfield_1.set(12usize, 1u8, val as u64)
2330}
2331}
2332#[inline]
2333pub fn urg(&self) -> __u16 {
2334unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) }
2335}
2336#[inline]
2337pub fn set_urg(&mut self, val: __u16) {
2338unsafe {
2339let val: u16 = ::core::mem::transmute(val);
2340self._bitfield_1.set(13usize, 1u8, val as u64)
2341}
2342}
2343#[inline]
2344pub fn ece(&self) -> __u16 {
2345unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u16) }
2346}
2347#[inline]
2348pub fn set_ece(&mut self, val: __u16) {
2349unsafe {
2350let val: u16 = ::core::mem::transmute(val);
2351self._bitfield_1.set(14usize, 1u8, val as u64)
2352}
2353}
2354#[inline]
2355pub fn cwr(&self) -> __u16 {
2356unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u16) }
2357}
2358#[inline]
2359pub fn set_cwr(&mut self, val: __u16) {
2360unsafe {
2361let val: u16 = ::core::mem::transmute(val);
2362self._bitfield_1.set(15usize, 1u8, val as u64)
2363}
2364}
2365#[inline]
2366pub 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]> {
2367let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
2368__bindgen_bitfield_unit.set(0usize, 4u8, {
2369let res1: u16 = unsafe { ::core::mem::transmute(res1) };
2370res1 as u64
2371});
2372__bindgen_bitfield_unit.set(4usize, 4u8, {
2373let doff: u16 = unsafe { ::core::mem::transmute(doff) };
2374doff as u64
2375});
2376__bindgen_bitfield_unit.set(8usize, 1u8, {
2377let fin: u16 = unsafe { ::core::mem::transmute(fin) };
2378fin as u64
2379});
2380__bindgen_bitfield_unit.set(9usize, 1u8, {
2381let syn: u16 = unsafe { ::core::mem::transmute(syn) };
2382syn as u64
2383});
2384__bindgen_bitfield_unit.set(10usize, 1u8, {
2385let rst: u16 = unsafe { ::core::mem::transmute(rst) };
2386rst as u64
2387});
2388__bindgen_bitfield_unit.set(11usize, 1u8, {
2389let psh: u16 = unsafe { ::core::mem::transmute(psh) };
2390psh as u64
2391});
2392__bindgen_bitfield_unit.set(12usize, 1u8, {
2393let ack: u16 = unsafe { ::core::mem::transmute(ack) };
2394ack as u64
2395});
2396__bindgen_bitfield_unit.set(13usize, 1u8, {
2397let urg: u16 = unsafe { ::core::mem::transmute(urg) };
2398urg as u64
2399});
2400__bindgen_bitfield_unit.set(14usize, 1u8, {
2401let ece: u16 = unsafe { ::core::mem::transmute(ece) };
2402ece as u64
2403});
2404__bindgen_bitfield_unit.set(15usize, 1u8, {
2405let cwr: u16 = unsafe { ::core::mem::transmute(cwr) };
2406cwr as u64
2407});
2408__bindgen_bitfield_unit
2409}
2410}
2411impl tcp_info {
2412#[inline]
2413pub fn tcpi_snd_wscale(&self) -> __u8 {
2414unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
2415}
2416#[inline]
2417pub fn set_tcpi_snd_wscale(&mut self, val: __u8) {
2418unsafe {
2419let val: u8 = ::core::mem::transmute(val);
2420self._bitfield_1.set(0usize, 4u8, val as u64)
2421}
2422}
2423#[inline]
2424pub fn tcpi_rcv_wscale(&self) -> __u8 {
2425unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
2426}
2427#[inline]
2428pub fn set_tcpi_rcv_wscale(&mut self, val: __u8) {
2429unsafe {
2430let val: u8 = ::core::mem::transmute(val);
2431self._bitfield_1.set(4usize, 4u8, val as u64)
2432}
2433}
2434#[inline]
2435pub fn tcpi_delivery_rate_app_limited(&self) -> __u8 {
2436unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u8) }
2437}
2438#[inline]
2439pub fn set_tcpi_delivery_rate_app_limited(&mut self, val: __u8) {
2440unsafe {
2441let val: u8 = ::core::mem::transmute(val);
2442self._bitfield_1.set(8usize, 1u8, val as u64)
2443}
2444}
2445#[inline]
2446pub fn tcpi_fastopen_client_fail(&self) -> __u8 {
2447unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 2u8) as u8) }
2448}
2449#[inline]
2450pub fn set_tcpi_fastopen_client_fail(&mut self, val: __u8) {
2451unsafe {
2452let val: u8 = ::core::mem::transmute(val);
2453self._bitfield_1.set(9usize, 2u8, val as u64)
2454}
2455}
2456#[inline]
2457pub 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]> {
2458let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
2459__bindgen_bitfield_unit.set(0usize, 4u8, {
2460let tcpi_snd_wscale: u8 = unsafe { ::core::mem::transmute(tcpi_snd_wscale) };
2461tcpi_snd_wscale as u64
2462});
2463__bindgen_bitfield_unit.set(4usize, 4u8, {
2464let tcpi_rcv_wscale: u8 = unsafe { ::core::mem::transmute(tcpi_rcv_wscale) };
2465tcpi_rcv_wscale as u64
2466});
2467__bindgen_bitfield_unit.set(8usize, 1u8, {
2468let tcpi_delivery_rate_app_limited: u8 = unsafe { ::core::mem::transmute(tcpi_delivery_rate_app_limited) };
2469tcpi_delivery_rate_app_limited as u64
2470});
2471__bindgen_bitfield_unit.set(9usize, 2u8, {
2472let tcpi_fastopen_client_fail: u8 = unsafe { ::core::mem::transmute(tcpi_fastopen_client_fail) };
2473tcpi_fastopen_client_fail as u64
2474});
2475__bindgen_bitfield_unit
2476}
2477}
2478impl nf_inet_hooks {
2479pub const NF_INET_INGRESS: nf_inet_hooks = nf_inet_hooks::NF_INET_NUMHOOKS;
2480}
2481impl nf_ip_hook_priorities {
2482pub const NF_IP_PRI_LAST: nf_ip_hook_priorities = nf_ip_hook_priorities::NF_IP_PRI_CONNTRACK_CONFIRM;
2483}
2484