linux_raw_sys/x86_64/
net.rs

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