Skip to main content

linux_uapi/
x86_64.rs

1/* automatically generated by rust-bindgen 0.72.0 */
2
3// Copyright 2026 The Fuchsia Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style license that can be
5// found in the LICENSE file.
6
7// LINT.IfChange
8
9#![allow(dead_code)]
10#![allow(non_camel_case_types)]
11#![allow(non_snake_case)]
12#![allow(non_upper_case_globals)]
13#![allow(clippy::missing_safety_doc)]
14#![allow(clippy::undocumented_unsafe_blocks, reason = "bindgen-generated code")]
15#![allow(unused_unsafe)]
16
17//! WARNING - This file was auto generated by //src/starnix/lib/linux_uapi/generate.py.
18//! Do not modify this file. To re-generate, run the following command from the root of
19//! your Fuchsia checkout:
20//!
21//!    ./src/starnix/lib/linux_uapi/generate.py
22
23use crate::fscrypt_key_specifier;
24use zerocopy::{FromBytes, Immutable, IntoBytes, KnownLayout};
25
26// SAFETY: The IntoBytes implementation is safe because the array size is a
27// multiple of 8, so there is no padding.
28unsafe impl IntoBytes for __BindgenOpaqueArray8<[u8; 8usize]> {
29    fn only_derive_is_allowed_to_implement_this_trait() {}
30}
31
32// SAFETY: The IntoBytes implementation is safe because the array size is a
33// multiple of 8, so there is no padding.
34unsafe impl IntoBytes for __BindgenOpaqueArray8<[u8; 16usize]> {
35    fn only_derive_is_allowed_to_implement_this_trait() {}
36}
37
38// SAFETY: The IntoBytes implementation is safe because the array size is a
39// multiple of 8, so there is no padding.
40unsafe impl IntoBytes for __BindgenOpaqueArray8<[u8; 144usize]> {
41    fn only_derive_is_allowed_to_implement_this_trait() {}
42}
43
44// SAFETY: The IntoBytes implementation is safe because the array size is a
45// multiple of 8, so there is no padding.
46unsafe impl IntoBytes for __BindgenOpaqueArray8<[u8; 272usize]> {
47    fn only_derive_is_allowed_to_implement_this_trait() {}
48}
49
50#[repr(transparent)]
51#[derive(
52    Debug,
53    Default,
54    Clone,
55    Copy,
56    Eq,
57    PartialEq,
58    Hash,
59    Ord,
60    PartialOrd,
61    IntoBytes,
62    FromBytes,
63    KnownLayout,
64    Immutable,
65)]
66pub struct uaddr {
67    pub addr: u64,
68}
69
70#[derive(
71    Debug,
72    Default,
73    Eq,
74    PartialEq,
75    Hash,
76    Ord,
77    PartialOrd,
78    IntoBytes,
79    FromBytes,
80    KnownLayout,
81    Immutable,
82)]
83#[repr(transparent)]
84pub struct uref<T> {
85    pub addr: uaddr,
86    _phantom: std::marker::PhantomData<T>,
87}
88
89impl<T> Copy for uref<T> {}
90
91impl<T> Clone for uref<T> {
92    fn clone(&self) -> Self {
93        Self { addr: self.addr, _phantom: Default::default() }
94    }
95}
96
97impl<T> From<uaddr> for uref<T> {
98    fn from(addr: uaddr) -> Self {
99        Self { addr, _phantom: Default::default() }
100    }
101}
102
103#[repr(transparent)]
104#[derive(
105    Debug,
106    Default,
107    Clone,
108    Copy,
109    Eq,
110    PartialEq,
111    Hash,
112    Ord,
113    PartialOrd,
114    IntoBytes,
115    FromBytes,
116    KnownLayout,
117    Immutable,
118)]
119pub struct uaddr32 {
120    pub addr: u32,
121}
122
123impl From<uaddr32> for uaddr {
124    fn from(addr32: uaddr32) -> Self {
125        Self { addr: addr32.addr.into() }
126    }
127}
128
129impl TryFrom<uaddr> for uaddr32 {
130    type Error = ();
131    fn try_from(addr: uaddr) -> Result<Self, ()> {
132        Ok(Self { addr: addr.addr.try_into().map_err(|_| ())? })
133    }
134}
135
136#[derive(
137    Debug,
138    Default,
139    Clone,
140    Copy,
141    Eq,
142    PartialEq,
143    Hash,
144    Ord,
145    PartialOrd,
146    IntoBytes,
147    FromBytes,
148    KnownLayout,
149    Immutable,
150)]
151#[repr(transparent)]
152pub struct uref32<T> {
153    pub addr: uaddr32,
154    _phantom: std::marker::PhantomData<T>,
155}
156
157impl<T> From<uaddr32> for uref32<T> {
158    fn from(addr: uaddr32) -> Self {
159        Self { addr, _phantom: Default::default() }
160    }
161}
162
163impl<T> From<uaddr32> for uref<T> {
164    fn from(addr: uaddr32) -> Self {
165        Self { addr: addr.into(), _phantom: Default::default() }
166    }
167}
168
169impl<T> From<uref32<T>> for uref<T> {
170    fn from(ur: uref32<T>) -> Self {
171        Self { addr: ur.addr.into(), _phantom: Default::default() }
172    }
173}
174
175impl<T> TryFrom<uref<T>> for uref32<T> {
176    type Error = ();
177    fn try_from(ur: uref<T>) -> Result<Self, ()> {
178        Ok(Self { addr: ur.addr.try_into().map_err(|_| ())?, _phantom: Default::default() })
179    }
180}
181
182#[repr(C)]
183#[derive(
184    Clone,
185    Copy,
186    Debug,
187    Default,
188    Eq,
189    FromBytes,
190    Hash,
191    Immutable,
192    IntoBytes,
193    KnownLayout,
194    Ord,
195    PartialEq,
196    PartialOrd,
197)]
198pub struct __BindgenBitfieldUnit<Storage> {
199    storage: Storage,
200}
201impl<Storage> __BindgenBitfieldUnit<Storage> {
202    #[inline]
203    pub const fn new(storage: Storage) -> Self {
204        Self { storage }
205    }
206}
207impl<Storage> __BindgenBitfieldUnit<Storage>
208where
209    Storage: AsRef<[u8]> + AsMut<[u8]>,
210{
211    #[inline]
212    fn extract_bit(byte: u8, index: usize) -> bool {
213        let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
214        let mask = 1 << bit_index;
215        byte & mask == mask
216    }
217    #[inline]
218    pub fn get_bit(&self, index: usize) -> bool {
219        debug_assert!(index / 8 < self.storage.as_ref().len());
220        let byte_index = index / 8;
221        let byte = self.storage.as_ref()[byte_index];
222        Self::extract_bit(byte, index)
223    }
224    #[inline]
225    pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
226        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
227        let byte_index = index / 8;
228        let byte = unsafe {
229            *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize)
230        };
231        Self::extract_bit(byte, index)
232    }
233    #[inline]
234    fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
235        let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
236        let mask = 1 << bit_index;
237        if val { byte | mask } else { byte & !mask }
238    }
239    #[inline]
240    pub fn set_bit(&mut self, index: usize, val: bool) {
241        debug_assert!(index / 8 < self.storage.as_ref().len());
242        let byte_index = index / 8;
243        let byte = &mut self.storage.as_mut()[byte_index];
244        *byte = Self::change_bit(*byte, index, val);
245    }
246    #[inline]
247    pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
248        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
249        let byte_index = index / 8;
250        let byte = unsafe {
251            (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize)
252        };
253        unsafe { *byte = Self::change_bit(*byte, index, val) };
254    }
255    #[inline]
256    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
257        debug_assert!(bit_width <= 64);
258        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
259        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
260        if bit_width == 0 {
261            return 0;
262        }
263        let mut val = 0u64;
264        let storage = self.storage.as_ref();
265        let start_byte = bit_offset / 8;
266        let bit_shift = bit_offset % 8;
267        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
268        if cfg!(target_endian = "big") {
269            for i in 0..bytes_needed {
270                val |= (storage[start_byte + i].reverse_bits() as u64) << (i * 8);
271            }
272        } else {
273            for i in 0..bytes_needed {
274                val |= (storage[start_byte + i] as u64) << (i * 8);
275            }
276        }
277        val >>= bit_shift;
278        if bit_width < 64 {
279            val &= (1u64 << bit_width) - 1;
280        }
281        if cfg!(target_endian = "big") {
282            val = val.reverse_bits() >> (64 - bit_width as usize);
283        }
284        val
285    }
286    #[inline]
287    pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
288        debug_assert!(bit_width <= 64);
289        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
290        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
291        if bit_width == 0 {
292            return 0;
293        }
294        let mut val = 0u64;
295        let start_byte = bit_offset / 8;
296        let bit_shift = bit_offset % 8;
297        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
298        let storage_ptr = unsafe { core::ptr::addr_of!((*this).storage) as *const u8 };
299        if cfg!(target_endian = "big") {
300            for i in 0..bytes_needed {
301                let byte = unsafe { *storage_ptr.add(start_byte + i) };
302                val |= (byte.reverse_bits() as u64) << (i * 8);
303            }
304        } else {
305            for i in 0..bytes_needed {
306                let byte = unsafe { *storage_ptr.add(start_byte + i) };
307                val |= (byte as u64) << (i * 8);
308            }
309        }
310        val >>= bit_shift;
311        if bit_width < 64 {
312            val &= (1u64 << bit_width) - 1;
313        }
314        if cfg!(target_endian = "big") {
315            val = val.reverse_bits() >> (64 - bit_width as usize);
316        }
317        val
318    }
319    #[inline]
320    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
321        debug_assert!(bit_width <= 64);
322        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
323        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
324        if bit_width == 0 {
325            return;
326        }
327        let mut val = val;
328        if bit_width < 64 {
329            val &= (1u64 << bit_width) - 1;
330        }
331        if cfg!(target_endian = "big") {
332            val = val.reverse_bits() >> (64 - bit_width as usize);
333        }
334        let storage = self.storage.as_mut();
335        let start_byte = bit_offset / 8;
336        let bit_shift = bit_offset % 8;
337        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
338        val <<= bit_shift;
339        let field_mask = if bit_width as usize + bit_shift >= 64 {
340            !0u64 << bit_shift
341        } else {
342            ((1u64 << bit_width) - 1) << bit_shift
343        };
344        for i in 0..bytes_needed {
345            let byte_val = (val >> (i * 8)) as u8;
346            let byte_mask = (field_mask >> (i * 8)) as u8;
347            if cfg!(target_endian = "big") {
348                let byte = storage[start_byte + i].reverse_bits();
349                let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
350                storage[start_byte + i] = new_byte.reverse_bits();
351            } else {
352                storage[start_byte + i] =
353                    (storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
354            }
355        }
356    }
357    #[inline]
358    pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
359        debug_assert!(bit_width <= 64);
360        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
361        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
362        if bit_width == 0 {
363            return;
364        }
365        let mut val = val;
366        if bit_width < 64 {
367            val &= (1u64 << bit_width) - 1;
368        }
369        if cfg!(target_endian = "big") {
370            val = val.reverse_bits() >> (64 - bit_width as usize);
371        }
372        let start_byte = bit_offset / 8;
373        let bit_shift = bit_offset % 8;
374        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
375        val <<= bit_shift;
376        let field_mask = if bit_width as usize + bit_shift >= 64 {
377            !0u64 << bit_shift
378        } else {
379            ((1u64 << bit_width) - 1) << bit_shift
380        };
381        let storage_ptr = unsafe { core::ptr::addr_of_mut!((*this).storage) as *mut u8 };
382        for i in 0..bytes_needed {
383            let byte_val = (val >> (i * 8)) as u8;
384            let byte_mask = (field_mask >> (i * 8)) as u8;
385            let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
386            if cfg!(target_endian = "big") {
387                let byte = unsafe { (*byte_ptr).reverse_bits() };
388                let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
389                unsafe { *byte_ptr = new_byte.reverse_bits() };
390            } else {
391                unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
392            }
393        }
394    }
395}
396#[doc = " Const-generic methods for efficient bitfield access when offset and width"]
397#[doc = " are known at compile time."]
398impl<const N: usize> __BindgenBitfieldUnit<[u8; N]> {
399    #[doc = " Get a field using const generics for compile-time optimization."]
400    #[doc = " Uses native word size operations when the field fits in usize."]
401    #[inline]
402    pub const fn get_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(&self) -> u64 {
403        debug_assert!(BIT_WIDTH <= 64);
404        debug_assert!(BIT_OFFSET / 8 < N);
405        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize)) / 8 <= N);
406        if BIT_WIDTH == 0 {
407            return 0;
408        }
409        let start_byte = BIT_OFFSET / 8;
410        let bit_shift = BIT_OFFSET % 8;
411        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
412        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
413            let mut val = 0usize;
414            if cfg!(target_endian = "big") {
415                let mut i = 0;
416                while i < bytes_needed {
417                    val |= (self.storage[start_byte + i].reverse_bits() as usize) << (i * 8);
418                    i += 1;
419                }
420            } else {
421                let mut i = 0;
422                while i < bytes_needed {
423                    val |= (self.storage[start_byte + i] as usize) << (i * 8);
424                    i += 1;
425                }
426            }
427            val >>= bit_shift;
428            val &= (1usize << BIT_WIDTH) - 1;
429            if cfg!(target_endian = "big") {
430                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
431            }
432            val as u64
433        } else {
434            let mut val = 0u64;
435            if cfg!(target_endian = "big") {
436                let mut i = 0;
437                while i < bytes_needed {
438                    val |= (self.storage[start_byte + i].reverse_bits() as u64) << (i * 8);
439                    i += 1;
440                }
441            } else {
442                let mut i = 0;
443                while i < bytes_needed {
444                    val |= (self.storage[start_byte + i] as u64) << (i * 8);
445                    i += 1;
446                }
447            }
448            val >>= bit_shift;
449            if BIT_WIDTH < 64 {
450                val &= (1u64 << BIT_WIDTH) - 1;
451            }
452            if cfg!(target_endian = "big") {
453                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
454            }
455            val
456        }
457    }
458    #[doc = " Set a field using const generics for compile-time optimization."]
459    #[doc = " Uses native word size operations when the field fits in usize."]
460    #[inline]
461    pub fn set_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(&mut self, val: u64) {
462        debug_assert!(BIT_WIDTH <= 64);
463        debug_assert!(BIT_OFFSET / 8 < N);
464        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize)) / 8 <= N);
465        if BIT_WIDTH == 0 {
466            return;
467        }
468        let start_byte = BIT_OFFSET / 8;
469        let bit_shift = BIT_OFFSET % 8;
470        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
471        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
472            let mut val = val as usize;
473            val &= (1usize << BIT_WIDTH) - 1;
474            if cfg!(target_endian = "big") {
475                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
476            }
477            val <<= bit_shift;
478            let field_mask = ((1usize << BIT_WIDTH) - 1) << bit_shift;
479            let mut i = 0;
480            while i < bytes_needed {
481                let byte_val = (val >> (i * 8)) as u8;
482                let byte_mask = (field_mask >> (i * 8)) as u8;
483                if cfg!(target_endian = "big") {
484                    let byte = self.storage[start_byte + i].reverse_bits();
485                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
486                    self.storage[start_byte + i] = new_byte.reverse_bits();
487                } else {
488                    self.storage[start_byte + i] =
489                        (self.storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
490                }
491                i += 1;
492            }
493        } else {
494            let mut val = val;
495            if BIT_WIDTH < 64 {
496                val &= (1u64 << BIT_WIDTH) - 1;
497            }
498            if cfg!(target_endian = "big") {
499                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
500            }
501            val <<= bit_shift;
502            let field_mask = if BIT_WIDTH as usize + bit_shift >= 64 {
503                !0u64 << bit_shift
504            } else {
505                ((1u64 << BIT_WIDTH) - 1) << bit_shift
506            };
507            let mut i = 0;
508            while i < bytes_needed {
509                let byte_val = (val >> (i * 8)) as u8;
510                let byte_mask = (field_mask >> (i * 8)) as u8;
511                if cfg!(target_endian = "big") {
512                    let byte = self.storage[start_byte + i].reverse_bits();
513                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
514                    self.storage[start_byte + i] = new_byte.reverse_bits();
515                } else {
516                    self.storage[start_byte + i] =
517                        (self.storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
518                }
519                i += 1;
520            }
521        }
522    }
523    #[doc = " Raw pointer get using const generics for compile-time optimization."]
524    #[doc = " Uses native word size operations when the field fits in usize."]
525    #[inline]
526    pub const unsafe fn raw_get_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(
527        this: *const Self,
528    ) -> u64 {
529        debug_assert!(BIT_WIDTH <= 64);
530        debug_assert!(BIT_OFFSET / 8 < N);
531        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize)) / 8 <= N);
532        if BIT_WIDTH == 0 {
533            return 0;
534        }
535        let start_byte = BIT_OFFSET / 8;
536        let bit_shift = BIT_OFFSET % 8;
537        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
538        let storage_ptr = unsafe { core::ptr::addr_of!((*this).storage) as *const u8 };
539        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
540            let mut val = 0usize;
541            if cfg!(target_endian = "big") {
542                let mut i = 0;
543                while i < bytes_needed {
544                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
545                    val |= (byte.reverse_bits() as usize) << (i * 8);
546                    i += 1;
547                }
548            } else {
549                let mut i = 0;
550                while i < bytes_needed {
551                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
552                    val |= (byte as usize) << (i * 8);
553                    i += 1;
554                }
555            }
556            val >>= bit_shift;
557            val &= (1usize << BIT_WIDTH) - 1;
558            if cfg!(target_endian = "big") {
559                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
560            }
561            val as u64
562        } else {
563            let mut val = 0u64;
564            if cfg!(target_endian = "big") {
565                let mut i = 0;
566                while i < bytes_needed {
567                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
568                    val |= (byte.reverse_bits() as u64) << (i * 8);
569                    i += 1;
570                }
571            } else {
572                let mut i = 0;
573                while i < bytes_needed {
574                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
575                    val |= (byte as u64) << (i * 8);
576                    i += 1;
577                }
578            }
579            val >>= bit_shift;
580            if BIT_WIDTH < 64 {
581                val &= (1u64 << BIT_WIDTH) - 1;
582            }
583            if cfg!(target_endian = "big") {
584                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
585            }
586            val
587        }
588    }
589    #[doc = " Raw pointer set using const generics for compile-time optimization."]
590    #[doc = " Uses native word size operations when the field fits in usize."]
591    #[inline]
592    pub unsafe fn raw_set_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(
593        this: *mut Self,
594        val: u64,
595    ) {
596        debug_assert!(BIT_WIDTH <= 64);
597        debug_assert!(BIT_OFFSET / 8 < N);
598        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize)) / 8 <= N);
599        if BIT_WIDTH == 0 {
600            return;
601        }
602        let start_byte = BIT_OFFSET / 8;
603        let bit_shift = BIT_OFFSET % 8;
604        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
605        let storage_ptr = this.cast::<[u8; N]>().cast::<u8>();
606        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
607            let mut val = val as usize;
608            val &= (1usize << BIT_WIDTH) - 1;
609            if cfg!(target_endian = "big") {
610                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
611            }
612            val <<= bit_shift;
613            let field_mask = ((1usize << BIT_WIDTH) - 1) << bit_shift;
614            let mut i = 0;
615            while i < bytes_needed {
616                let byte_val = (val >> (i * 8)) as u8;
617                let byte_mask = (field_mask >> (i * 8)) as u8;
618                let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
619                if cfg!(target_endian = "big") {
620                    let byte = unsafe { (*byte_ptr).reverse_bits() };
621                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
622                    unsafe { *byte_ptr = new_byte.reverse_bits() };
623                } else {
624                    unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
625                }
626                i += 1;
627            }
628        } else {
629            let mut val = val;
630            if BIT_WIDTH < 64 {
631                val &= (1u64 << BIT_WIDTH) - 1;
632            }
633            if cfg!(target_endian = "big") {
634                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
635            }
636            val <<= bit_shift;
637            let field_mask = if BIT_WIDTH as usize + bit_shift >= 64 {
638                !0u64 << bit_shift
639            } else {
640                ((1u64 << BIT_WIDTH) - 1) << bit_shift
641            };
642            let mut i = 0;
643            while i < bytes_needed {
644                let byte_val = (val >> (i * 8)) as u8;
645                let byte_mask = (field_mask >> (i * 8)) as u8;
646                let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
647                if cfg!(target_endian = "big") {
648                    let byte = unsafe { (*byte_ptr).reverse_bits() };
649                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
650                    unsafe { *byte_ptr = new_byte.reverse_bits() };
651                } else {
652                    unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
653                }
654                i += 1;
655            }
656        }
657    }
658}
659#[derive(PartialEq, Eq, Copy, Clone, Debug, Hash)]
660#[repr(C, align(8))]
661#[derive(FromBytes, Immutable, KnownLayout)]
662pub struct __BindgenOpaqueArray8<T>(pub T);
663impl<T: Copy + Default, const N: usize> Default for __BindgenOpaqueArray8<[T; N]> {
664    fn default() -> Self {
665        Self([<T as Default>::default(); N])
666    }
667}
668#[repr(transparent)]
669#[derive(Clone, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
670pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]);
671impl<T> __IncompleteArrayField<T> {
672    #[inline]
673    pub const fn new() -> Self {
674        __IncompleteArrayField(::std::marker::PhantomData, [])
675    }
676    #[inline]
677    pub fn as_ptr(&self) -> *const T {
678        self as *const _ as *const T
679    }
680    #[inline]
681    pub fn as_mut_ptr(&mut self) -> *mut T {
682        self as *mut _ as *mut T
683    }
684    #[inline]
685    pub unsafe fn as_slice(&self, len: usize) -> &[T] {
686        unsafe { ::std::slice::from_raw_parts(self.as_ptr(), len) }
687    }
688    #[inline]
689    pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
690        unsafe { ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) }
691    }
692}
693impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> {
694    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
695        fmt.write_str("__IncompleteArrayField")
696    }
697}
698#[repr(transparent)]
699#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
700pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>);
701impl<T> __BindgenUnionField<T> {
702    #[inline]
703    pub const fn new() -> Self {
704        __BindgenUnionField(::std::marker::PhantomData)
705    }
706    #[inline]
707    pub const unsafe fn as_ref(&self) -> &T {
708        unsafe { ::std::mem::transmute(self) }
709    }
710    #[inline]
711    pub const unsafe fn as_mut(&mut self) -> &mut T {
712        unsafe { ::std::mem::transmute(self) }
713    }
714}
715impl<T> ::std::default::Default for __BindgenUnionField<T> {
716    #[inline]
717    fn default() -> Self {
718        Self::new()
719    }
720}
721impl<T> ::std::clone::Clone for __BindgenUnionField<T> {
722    #[inline]
723    fn clone(&self) -> Self {
724        *self
725    }
726}
727impl<T> ::std::marker::Copy for __BindgenUnionField<T> {}
728impl<T> ::std::fmt::Debug for __BindgenUnionField<T> {
729    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
730        fmt.write_str("__BindgenUnionField")
731    }
732}
733impl<T> ::std::hash::Hash for __BindgenUnionField<T> {
734    fn hash<H: ::std::hash::Hasher>(&self, _state: &mut H) {}
735}
736impl<T> ::std::cmp::PartialEq for __BindgenUnionField<T> {
737    fn eq(&self, _other: &__BindgenUnionField<T>) -> bool {
738        true
739    }
740}
741impl<T> ::std::cmp::Eq for __BindgenUnionField<T> {}
742pub const __BITS_PER_LONG: u32 = 64;
743pub const __BITS_PER_LONG_LONG: u32 = 64;
744pub const _K_SS_MAXSIZE: u32 = 128;
745pub const SOCK_SNDBUF_LOCK: u32 = 1;
746pub const SOCK_RCVBUF_LOCK: u32 = 2;
747pub const SOCK_BUF_LOCK_MASK: u32 = 3;
748pub const SOCK_TXREHASH_DEFAULT: u32 = 255;
749pub const SOCK_TXREHASH_DISABLED: u32 = 0;
750pub const SOCK_TXREHASH_ENABLED: u32 = 1;
751pub const AF_UNSPEC: u32 = 0;
752pub const AF_INET: u32 = 2;
753pub const AF_INET6: u32 = 10;
754pub const AF_QIPCRTR: u32 = 42;
755pub const __FD_SETSIZE: u32 = 1024;
756pub const _KERNEL_NSIG: u32 = 32;
757pub const SIGHUP: u32 = 1;
758pub const SIGINT: u32 = 2;
759pub const SIGQUIT: u32 = 3;
760pub const SIGILL: u32 = 4;
761pub const SIGTRAP: u32 = 5;
762pub const SIGABRT: u32 = 6;
763pub const SIGIOT: u32 = 6;
764pub const SIGBUS: u32 = 7;
765pub const SIGFPE: u32 = 8;
766pub const SIGKILL: u32 = 9;
767pub const SIGUSR1: u32 = 10;
768pub const SIGSEGV: u32 = 11;
769pub const SIGUSR2: u32 = 12;
770pub const SIGPIPE: u32 = 13;
771pub const SIGALRM: u32 = 14;
772pub const SIGTERM: u32 = 15;
773pub const SIGSTKFLT: u32 = 16;
774pub const SIGCHLD: u32 = 17;
775pub const SIGCONT: u32 = 18;
776pub const SIGSTOP: u32 = 19;
777pub const SIGTSTP: u32 = 20;
778pub const SIGTTIN: u32 = 21;
779pub const SIGTTOU: u32 = 22;
780pub const SIGURG: u32 = 23;
781pub const SIGXCPU: u32 = 24;
782pub const SIGXFSZ: u32 = 25;
783pub const SIGVTALRM: u32 = 26;
784pub const SIGPROF: u32 = 27;
785pub const SIGWINCH: u32 = 28;
786pub const SIGIO: u32 = 29;
787pub const SIGPOLL: u32 = 29;
788pub const SIGPWR: u32 = 30;
789pub const SIGSYS: u32 = 31;
790pub const SIGUNUSED: u32 = 31;
791pub const __SIGRTMIN: u32 = 32;
792pub const SA_RESTORER: u32 = 67108864;
793pub const MINSIGSTKSZ: u32 = 2048;
794pub const SIGSTKSZ: u32 = 8192;
795pub const SA_NOCLDSTOP: u32 = 1;
796pub const SA_NOCLDWAIT: u32 = 2;
797pub const SA_SIGINFO: u32 = 4;
798pub const SA_UNSUPPORTED: u32 = 1024;
799pub const SA_EXPOSE_TAGBITS: u32 = 2048;
800pub const SA_ONSTACK: u32 = 134217728;
801pub const SA_RESTART: u32 = 268435456;
802pub const SA_NODEFER: u32 = 1073741824;
803pub const SA_RESETHAND: u32 = 2147483648;
804pub const SA_NOMASK: u32 = 1073741824;
805pub const SA_ONESHOT: u32 = 2147483648;
806pub const SIG_BLOCK: u32 = 0;
807pub const SIG_UNBLOCK: u32 = 1;
808pub const SIG_SETMASK: u32 = 2;
809pub const _IOC_NRBITS: u32 = 8;
810pub const _IOC_TYPEBITS: u32 = 8;
811pub const _IOC_SIZEBITS: u32 = 14;
812pub const _IOC_DIRBITS: u32 = 2;
813pub const _IOC_NRMASK: u32 = 255;
814pub const _IOC_TYPEMASK: u32 = 255;
815pub const _IOC_SIZEMASK: u32 = 16383;
816pub const _IOC_DIRMASK: u32 = 3;
817pub const _IOC_NRSHIFT: u32 = 0;
818pub const _IOC_TYPESHIFT: u32 = 8;
819pub const _IOC_SIZESHIFT: u32 = 16;
820pub const _IOC_DIRSHIFT: u32 = 30;
821pub const _IOC_NONE: u32 = 0;
822pub const _IOC_WRITE: u32 = 1;
823pub const _IOC_READ: u32 = 2;
824pub const IOC_IN: u32 = 1073741824;
825pub const IOC_OUT: u32 = 2147483648;
826pub const IOC_INOUT: u32 = 3221225472;
827pub const IOCSIZE_MASK: u32 = 1073676288;
828pub const IOCSIZE_SHIFT: u32 = 16;
829pub const TCGETS: u32 = 21505;
830pub const TCSETS: u32 = 21506;
831pub const TCSETSW: u32 = 21507;
832pub const TCSETSF: u32 = 21508;
833pub const TCGETA: u32 = 21509;
834pub const TCSETA: u32 = 21510;
835pub const TCSETAW: u32 = 21511;
836pub const TCSETAF: u32 = 21512;
837pub const TCSBRK: u32 = 21513;
838pub const TCXONC: u32 = 21514;
839pub const TCFLSH: u32 = 21515;
840pub const TIOCEXCL: u32 = 21516;
841pub const TIOCNXCL: u32 = 21517;
842pub const TIOCSCTTY: u32 = 21518;
843pub const TIOCGPGRP: u32 = 21519;
844pub const TIOCSPGRP: u32 = 21520;
845pub const TIOCOUTQ: u32 = 21521;
846pub const TIOCSTI: u32 = 21522;
847pub const TIOCGWINSZ: u32 = 21523;
848pub const TIOCSWINSZ: u32 = 21524;
849pub const TIOCMGET: u32 = 21525;
850pub const TIOCMBIS: u32 = 21526;
851pub const TIOCMBIC: u32 = 21527;
852pub const TIOCMSET: u32 = 21528;
853pub const TIOCGSOFTCAR: u32 = 21529;
854pub const TIOCSSOFTCAR: u32 = 21530;
855pub const FIONREAD: u32 = 21531;
856pub const TIOCINQ: u32 = 21531;
857pub const TIOCLINUX: u32 = 21532;
858pub const TIOCCONS: u32 = 21533;
859pub const TIOCGSERIAL: u32 = 21534;
860pub const TIOCSSERIAL: u32 = 21535;
861pub const TIOCPKT: u32 = 21536;
862pub const FIONBIO: u32 = 21537;
863pub const TIOCNOTTY: u32 = 21538;
864pub const TIOCSETD: u32 = 21539;
865pub const TIOCGETD: u32 = 21540;
866pub const TCSBRKP: u32 = 21541;
867pub const TIOCSBRK: u32 = 21543;
868pub const TIOCCBRK: u32 = 21544;
869pub const TIOCGSID: u32 = 21545;
870pub const TIOCGRS485: u32 = 21550;
871pub const TIOCSRS485: u32 = 21551;
872pub const TCGETX: u32 = 21554;
873pub const TCSETX: u32 = 21555;
874pub const TCSETXF: u32 = 21556;
875pub const TCSETXW: u32 = 21557;
876pub const TIOCVHANGUP: u32 = 21559;
877pub const FIONCLEX: u32 = 21584;
878pub const FIOCLEX: u32 = 21585;
879pub const FIOASYNC: u32 = 21586;
880pub const TIOCSERCONFIG: u32 = 21587;
881pub const TIOCSERGWILD: u32 = 21588;
882pub const TIOCSERSWILD: u32 = 21589;
883pub const TIOCGLCKTRMIOS: u32 = 21590;
884pub const TIOCSLCKTRMIOS: u32 = 21591;
885pub const TIOCSERGSTRUCT: u32 = 21592;
886pub const TIOCSERGETLSR: u32 = 21593;
887pub const TIOCSERGETMULTI: u32 = 21594;
888pub const TIOCSERSETMULTI: u32 = 21595;
889pub const TIOCMIWAIT: u32 = 21596;
890pub const TIOCGICOUNT: u32 = 21597;
891pub const FIOQSIZE: u32 = 21600;
892pub const TIOCPKT_DATA: u32 = 0;
893pub const TIOCPKT_FLUSHREAD: u32 = 1;
894pub const TIOCPKT_FLUSHWRITE: u32 = 2;
895pub const TIOCPKT_STOP: u32 = 4;
896pub const TIOCPKT_START: u32 = 8;
897pub const TIOCPKT_NOSTOP: u32 = 16;
898pub const TIOCPKT_DOSTOP: u32 = 32;
899pub const TIOCPKT_IOCTL: u32 = 64;
900pub const TIOCSER_TEMT: u32 = 1;
901pub const POLLIN: u32 = 1;
902pub const POLLPRI: u32 = 2;
903pub const POLLOUT: u32 = 4;
904pub const POLLERR: u32 = 8;
905pub const POLLHUP: u32 = 16;
906pub const POLLNVAL: u32 = 32;
907pub const POLLRDNORM: u32 = 64;
908pub const POLLRDBAND: u32 = 128;
909pub const POLLWRNORM: u32 = 256;
910pub const POLLWRBAND: u32 = 512;
911pub const POLLMSG: u32 = 1024;
912pub const POLLREMOVE: u32 = 4096;
913pub const POLLRDHUP: u32 = 8192;
914pub const FP_XSTATE_MAGIC1: u32 = 1179670611;
915pub const FP_XSTATE_MAGIC2: u32 = 1179670597;
916pub const X86_FXSR_MAGIC: u32 = 0;
917pub const FIOSETOWN: u32 = 35073;
918pub const SIOCSPGRP: u32 = 35074;
919pub const FIOGETOWN: u32 = 35075;
920pub const SIOCGPGRP: u32 = 35076;
921pub const SIOCATMARK: u32 = 35077;
922pub const SIOCGSTAMP_OLD: u32 = 35078;
923pub const SIOCGSTAMPNS_OLD: u32 = 35079;
924pub const SOL_SOCKET: u32 = 1;
925pub const SO_DEBUG: u32 = 1;
926pub const SO_REUSEADDR: u32 = 2;
927pub const SO_TYPE: u32 = 3;
928pub const SO_ERROR: u32 = 4;
929pub const SO_DONTROUTE: u32 = 5;
930pub const SO_BROADCAST: u32 = 6;
931pub const SO_SNDBUF: u32 = 7;
932pub const SO_RCVBUF: u32 = 8;
933pub const SO_SNDBUFFORCE: u32 = 32;
934pub const SO_RCVBUFFORCE: u32 = 33;
935pub const SO_KEEPALIVE: u32 = 9;
936pub const SO_OOBINLINE: u32 = 10;
937pub const SO_NO_CHECK: u32 = 11;
938pub const SO_PRIORITY: u32 = 12;
939pub const SO_LINGER: u32 = 13;
940pub const SO_BSDCOMPAT: u32 = 14;
941pub const SO_REUSEPORT: u32 = 15;
942pub const SO_PASSCRED: u32 = 16;
943pub const SO_PEERCRED: u32 = 17;
944pub const SO_RCVLOWAT: u32 = 18;
945pub const SO_SNDLOWAT: u32 = 19;
946pub const SO_RCVTIMEO_OLD: u32 = 20;
947pub const SO_SNDTIMEO_OLD: u32 = 21;
948pub const SO_SECURITY_AUTHENTICATION: u32 = 22;
949pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23;
950pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24;
951pub const SO_BINDTODEVICE: u32 = 25;
952pub const SO_ATTACH_FILTER: u32 = 26;
953pub const SO_DETACH_FILTER: u32 = 27;
954pub const SO_GET_FILTER: u32 = 26;
955pub const SO_PEERNAME: u32 = 28;
956pub const SO_ACCEPTCONN: u32 = 30;
957pub const SO_PEERSEC: u32 = 31;
958pub const SO_PASSSEC: u32 = 34;
959pub const SO_MARK: u32 = 36;
960pub const SO_PROTOCOL: u32 = 38;
961pub const SO_DOMAIN: u32 = 39;
962pub const SO_RXQ_OVFL: u32 = 40;
963pub const SO_WIFI_STATUS: u32 = 41;
964pub const SCM_WIFI_STATUS: u32 = 41;
965pub const SO_PEEK_OFF: u32 = 42;
966pub const SO_NOFCS: u32 = 43;
967pub const SO_LOCK_FILTER: u32 = 44;
968pub const SO_SELECT_ERR_QUEUE: u32 = 45;
969pub const SO_BUSY_POLL: u32 = 46;
970pub const SO_MAX_PACING_RATE: u32 = 47;
971pub const SO_BPF_EXTENSIONS: u32 = 48;
972pub const SO_INCOMING_CPU: u32 = 49;
973pub const SO_ATTACH_BPF: u32 = 50;
974pub const SO_DETACH_BPF: u32 = 27;
975pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51;
976pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52;
977pub const SO_CNX_ADVICE: u32 = 53;
978pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54;
979pub const SO_MEMINFO: u32 = 55;
980pub const SO_INCOMING_NAPI_ID: u32 = 56;
981pub const SO_COOKIE: u32 = 57;
982pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58;
983pub const SO_PEERGROUPS: u32 = 59;
984pub const SO_ZEROCOPY: u32 = 60;
985pub const SO_TXTIME: u32 = 61;
986pub const SCM_TXTIME: u32 = 61;
987pub const SO_BINDTOIFINDEX: u32 = 62;
988pub const SO_TIMESTAMP_OLD: u32 = 29;
989pub const SO_TIMESTAMPNS_OLD: u32 = 35;
990pub const SO_TIMESTAMPING_OLD: u32 = 37;
991pub const SO_TIMESTAMP_NEW: u32 = 63;
992pub const SO_TIMESTAMPNS_NEW: u32 = 64;
993pub const SO_TIMESTAMPING_NEW: u32 = 65;
994pub const SO_RCVTIMEO_NEW: u32 = 66;
995pub const SO_SNDTIMEO_NEW: u32 = 67;
996pub const SO_DETACH_REUSEPORT_BPF: u32 = 68;
997pub const SO_PREFER_BUSY_POLL: u32 = 69;
998pub const SO_BUSY_POLL_BUDGET: u32 = 70;
999pub const SO_NETNS_COOKIE: u32 = 71;
1000pub const SO_BUF_LOCK: u32 = 72;
1001pub const SO_RESERVE_MEM: u32 = 73;
1002pub const SO_TXREHASH: u32 = 74;
1003pub const SO_RCVMARK: u32 = 75;
1004pub const SO_PASSPIDFD: u32 = 76;
1005pub const SO_PEERPIDFD: u32 = 77;
1006pub const SO_DEVMEM_LINEAR: u32 = 78;
1007pub const SCM_DEVMEM_LINEAR: u32 = 78;
1008pub const SO_DEVMEM_DMABUF: u32 = 79;
1009pub const SCM_DEVMEM_DMABUF: u32 = 79;
1010pub const SO_DEVMEM_DONTNEED: u32 = 80;
1011pub const SO_TIMESTAMP: u32 = 29;
1012pub const SO_TIMESTAMPNS: u32 = 35;
1013pub const SO_TIMESTAMPING: u32 = 37;
1014pub const SO_RCVTIMEO: u32 = 20;
1015pub const SO_SNDTIMEO: u32 = 21;
1016pub const SCM_TIMESTAMP: u32 = 29;
1017pub const SCM_TIMESTAMPNS: u32 = 35;
1018pub const SCM_TIMESTAMPING: u32 = 37;
1019pub const STAT_HAVE_NSEC: u32 = 1;
1020pub const NR_OPEN: u32 = 1024;
1021pub const NGROUPS_MAX: u32 = 65536;
1022pub const ARG_MAX: u32 = 131072;
1023pub const LINK_MAX: u32 = 127;
1024pub const MAX_CANON: u32 = 255;
1025pub const MAX_INPUT: u32 = 255;
1026pub const NAME_MAX: u32 = 255;
1027pub const PATH_MAX: u32 = 4096;
1028pub const PIPE_BUF: u32 = 4096;
1029pub const XATTR_NAME_MAX: u32 = 255;
1030pub const XATTR_SIZE_MAX: u32 = 65536;
1031pub const XATTR_LIST_MAX: u32 = 65536;
1032pub const RTSIG_MAX: u32 = 32;
1033pub const FSCRYPT_POLICY_FLAGS_PAD_4: u32 = 0;
1034pub const FSCRYPT_POLICY_FLAGS_PAD_8: u32 = 1;
1035pub const FSCRYPT_POLICY_FLAGS_PAD_16: u32 = 2;
1036pub const FSCRYPT_POLICY_FLAGS_PAD_32: u32 = 3;
1037pub const FSCRYPT_POLICY_FLAGS_PAD_MASK: u32 = 3;
1038pub const FSCRYPT_POLICY_FLAG_DIRECT_KEY: u32 = 4;
1039pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64: u32 = 8;
1040pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32: u32 = 16;
1041pub const FSCRYPT_MODE_AES_256_XTS: u32 = 1;
1042pub const FSCRYPT_MODE_AES_256_CTS: u32 = 4;
1043pub const FSCRYPT_MODE_AES_128_CBC: u32 = 5;
1044pub const FSCRYPT_MODE_AES_128_CTS: u32 = 6;
1045pub const FSCRYPT_MODE_SM4_XTS: u32 = 7;
1046pub const FSCRYPT_MODE_SM4_CTS: u32 = 8;
1047pub const FSCRYPT_MODE_ADIANTUM: u32 = 9;
1048pub const FSCRYPT_MODE_AES_256_HCTR2: u32 = 10;
1049pub const FSCRYPT_POLICY_V1: u32 = 0;
1050pub const FSCRYPT_KEY_DESCRIPTOR_SIZE: u32 = 8;
1051pub const FSCRYPT_KEY_DESC_PREFIX: &'static std::ffi::CStr = c"fscrypt:";
1052pub const FSCRYPT_KEY_DESC_PREFIX_SIZE: u32 = 8;
1053pub const FSCRYPT_MAX_KEY_SIZE: u32 = 64;
1054pub const FSCRYPT_POLICY_V2: u32 = 2;
1055pub const FSCRYPT_KEY_IDENTIFIER_SIZE: u32 = 16;
1056pub const FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR: u32 = 1;
1057pub const FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER: u32 = 2;
1058pub const __FSCRYPT_ADD_KEY_FLAG_HW_WRAPPED: u32 = 1;
1059pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY: u32 = 1;
1060pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS: u32 = 2;
1061pub const FSCRYPT_KEY_STATUS_ABSENT: u32 = 1;
1062pub const FSCRYPT_KEY_STATUS_PRESENT: u32 = 2;
1063pub const FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED: u32 = 3;
1064pub const FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF: u32 = 1;
1065pub const FS_KEY_DESCRIPTOR_SIZE: u32 = 8;
1066pub const FS_POLICY_FLAGS_PAD_4: u32 = 0;
1067pub const FS_POLICY_FLAGS_PAD_8: u32 = 1;
1068pub const FS_POLICY_FLAGS_PAD_16: u32 = 2;
1069pub const FS_POLICY_FLAGS_PAD_32: u32 = 3;
1070pub const FS_POLICY_FLAGS_PAD_MASK: u32 = 3;
1071pub const FS_POLICY_FLAG_DIRECT_KEY: u32 = 4;
1072pub const FS_POLICY_FLAGS_VALID: u32 = 7;
1073pub const FS_ENCRYPTION_MODE_INVALID: u32 = 0;
1074pub const FS_ENCRYPTION_MODE_AES_256_XTS: u32 = 1;
1075pub const FS_ENCRYPTION_MODE_AES_256_GCM: u32 = 2;
1076pub const FS_ENCRYPTION_MODE_AES_256_CBC: u32 = 3;
1077pub const FS_ENCRYPTION_MODE_AES_256_CTS: u32 = 4;
1078pub const FS_ENCRYPTION_MODE_AES_128_CBC: u32 = 5;
1079pub const FS_ENCRYPTION_MODE_AES_128_CTS: u32 = 6;
1080pub const FS_ENCRYPTION_MODE_ADIANTUM: u32 = 9;
1081pub const FS_KEY_DESC_PREFIX: &'static std::ffi::CStr = c"fscrypt:";
1082pub const FS_KEY_DESC_PREFIX_SIZE: u32 = 8;
1083pub const FS_MAX_KEY_SIZE: u32 = 64;
1084pub const MS_RDONLY: u32 = 1;
1085pub const MS_NOSUID: u32 = 2;
1086pub const MS_NODEV: u32 = 4;
1087pub const MS_NOEXEC: u32 = 8;
1088pub const MS_SYNCHRONOUS: u32 = 16;
1089pub const MS_REMOUNT: u32 = 32;
1090pub const MS_MANDLOCK: u32 = 64;
1091pub const MS_DIRSYNC: u32 = 128;
1092pub const MS_NOSYMFOLLOW: u32 = 256;
1093pub const MS_NOATIME: u32 = 1024;
1094pub const MS_NODIRATIME: u32 = 2048;
1095pub const MS_BIND: u32 = 4096;
1096pub const MS_MOVE: u32 = 8192;
1097pub const MS_REC: u32 = 16384;
1098pub const MS_VERBOSE: u32 = 32768;
1099pub const MS_SILENT: u32 = 32768;
1100pub const MS_POSIXACL: u32 = 65536;
1101pub const MS_UNBINDABLE: u32 = 131072;
1102pub const MS_PRIVATE: u32 = 262144;
1103pub const MS_SLAVE: u32 = 524288;
1104pub const MS_SHARED: u32 = 1048576;
1105pub const MS_RELATIME: u32 = 2097152;
1106pub const MS_KERNMOUNT: u32 = 4194304;
1107pub const MS_I_VERSION: u32 = 8388608;
1108pub const MS_STRICTATIME: u32 = 16777216;
1109pub const MS_LAZYTIME: u32 = 33554432;
1110pub const MS_SUBMOUNT: u32 = 67108864;
1111pub const MS_NOREMOTELOCK: u32 = 134217728;
1112pub const MS_NOSEC: u32 = 268435456;
1113pub const MS_BORN: u32 = 536870912;
1114pub const MS_ACTIVE: u32 = 1073741824;
1115pub const MS_NOUSER: u32 = 2147483648;
1116pub const MS_RMT_MASK: u32 = 41943121;
1117pub const MS_MGC_VAL: u32 = 3236757504;
1118pub const MS_MGC_MSK: u32 = 4294901760;
1119pub const OPEN_TREE_CLONE: u32 = 1;
1120pub const MOVE_MOUNT_F_SYMLINKS: u32 = 1;
1121pub const MOVE_MOUNT_F_AUTOMOUNTS: u32 = 2;
1122pub const MOVE_MOUNT_F_EMPTY_PATH: u32 = 4;
1123pub const MOVE_MOUNT_T_SYMLINKS: u32 = 16;
1124pub const MOVE_MOUNT_T_AUTOMOUNTS: u32 = 32;
1125pub const MOVE_MOUNT_T_EMPTY_PATH: u32 = 64;
1126pub const MOVE_MOUNT_SET_GROUP: u32 = 256;
1127pub const MOVE_MOUNT_BENEATH: u32 = 512;
1128pub const MOVE_MOUNT__MASK: u32 = 887;
1129pub const FSOPEN_CLOEXEC: u32 = 1;
1130pub const FSPICK_CLOEXEC: u32 = 1;
1131pub const FSPICK_SYMLINK_NOFOLLOW: u32 = 2;
1132pub const FSPICK_NO_AUTOMOUNT: u32 = 4;
1133pub const FSPICK_EMPTY_PATH: u32 = 8;
1134pub const FSMOUNT_CLOEXEC: u32 = 1;
1135pub const MOUNT_ATTR_RDONLY: u32 = 1;
1136pub const MOUNT_ATTR_NOSUID: u32 = 2;
1137pub const MOUNT_ATTR_NODEV: u32 = 4;
1138pub const MOUNT_ATTR_NOEXEC: u32 = 8;
1139pub const MOUNT_ATTR__ATIME: u32 = 112;
1140pub const MOUNT_ATTR_RELATIME: u32 = 0;
1141pub const MOUNT_ATTR_NOATIME: u32 = 16;
1142pub const MOUNT_ATTR_STRICTATIME: u32 = 32;
1143pub const MOUNT_ATTR_NODIRATIME: u32 = 128;
1144pub const MOUNT_ATTR_IDMAP: u32 = 1048576;
1145pub const MOUNT_ATTR_NOSYMFOLLOW: u32 = 2097152;
1146pub const MOUNT_ATTR_SIZE_VER0: u32 = 32;
1147pub const MNT_ID_REQ_SIZE_VER0: u32 = 24;
1148pub const MNT_ID_REQ_SIZE_VER1: u32 = 32;
1149pub const STATMOUNT_SB_BASIC: u32 = 1;
1150pub const STATMOUNT_MNT_BASIC: u32 = 2;
1151pub const STATMOUNT_PROPAGATE_FROM: u32 = 4;
1152pub const STATMOUNT_MNT_ROOT: u32 = 8;
1153pub const STATMOUNT_MNT_POINT: u32 = 16;
1154pub const STATMOUNT_FS_TYPE: u32 = 32;
1155pub const STATMOUNT_MNT_NS_ID: u32 = 64;
1156pub const STATMOUNT_MNT_OPTS: u32 = 128;
1157pub const LSMT_ROOT: i32 = -1;
1158pub const LISTMOUNT_REVERSE: u32 = 1;
1159pub const INR_OPEN_CUR: u32 = 1024;
1160pub const INR_OPEN_MAX: u32 = 4096;
1161pub const BLOCK_SIZE_BITS: u32 = 10;
1162pub const BLOCK_SIZE: u32 = 1024;
1163pub const SEEK_SET: u32 = 0;
1164pub const SEEK_CUR: u32 = 1;
1165pub const SEEK_END: u32 = 2;
1166pub const SEEK_DATA: u32 = 3;
1167pub const SEEK_HOLE: u32 = 4;
1168pub const SEEK_MAX: u32 = 4;
1169pub const RENAME_NOREPLACE: u32 = 1;
1170pub const RENAME_EXCHANGE: u32 = 2;
1171pub const RENAME_WHITEOUT: u32 = 4;
1172pub const FILE_DEDUPE_RANGE_SAME: u32 = 0;
1173pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1;
1174pub const NR_FILE: u32 = 8192;
1175pub const FS_XFLAG_REALTIME: u32 = 1;
1176pub const FS_XFLAG_PREALLOC: u32 = 2;
1177pub const FS_XFLAG_IMMUTABLE: u32 = 8;
1178pub const FS_XFLAG_APPEND: u32 = 16;
1179pub const FS_XFLAG_SYNC: u32 = 32;
1180pub const FS_XFLAG_NOATIME: u32 = 64;
1181pub const FS_XFLAG_NODUMP: u32 = 128;
1182pub const FS_XFLAG_RTINHERIT: u32 = 256;
1183pub const FS_XFLAG_PROJINHERIT: u32 = 512;
1184pub const FS_XFLAG_NOSYMLINKS: u32 = 1024;
1185pub const FS_XFLAG_EXTSIZE: u32 = 2048;
1186pub const FS_XFLAG_EXTSZINHERIT: u32 = 4096;
1187pub const FS_XFLAG_NODEFRAG: u32 = 8192;
1188pub const FS_XFLAG_FILESTREAM: u32 = 16384;
1189pub const FS_XFLAG_DAX: u32 = 32768;
1190pub const FS_XFLAG_COWEXTSIZE: u32 = 65536;
1191pub const FS_XFLAG_HASATTR: u32 = 2147483648;
1192pub const BMAP_IOCTL: u32 = 1;
1193pub const FSLABEL_MAX: u32 = 256;
1194pub const FS_SECRM_FL: u32 = 1;
1195pub const FS_UNRM_FL: u32 = 2;
1196pub const FS_COMPR_FL: u32 = 4;
1197pub const FS_SYNC_FL: u32 = 8;
1198pub const FS_IMMUTABLE_FL: u32 = 16;
1199pub const FS_APPEND_FL: u32 = 32;
1200pub const FS_NODUMP_FL: u32 = 64;
1201pub const FS_NOATIME_FL: u32 = 128;
1202pub const FS_DIRTY_FL: u32 = 256;
1203pub const FS_COMPRBLK_FL: u32 = 512;
1204pub const FS_NOCOMP_FL: u32 = 1024;
1205pub const FS_ENCRYPT_FL: u32 = 2048;
1206pub const FS_BTREE_FL: u32 = 4096;
1207pub const FS_INDEX_FL: u32 = 4096;
1208pub const FS_IMAGIC_FL: u32 = 8192;
1209pub const FS_JOURNAL_DATA_FL: u32 = 16384;
1210pub const FS_NOTAIL_FL: u32 = 32768;
1211pub const FS_DIRSYNC_FL: u32 = 65536;
1212pub const FS_TOPDIR_FL: u32 = 131072;
1213pub const FS_HUGE_FILE_FL: u32 = 262144;
1214pub const FS_EXTENT_FL: u32 = 524288;
1215pub const FS_VERITY_FL: u32 = 1048576;
1216pub const FS_EA_INODE_FL: u32 = 2097152;
1217pub const FS_EOFBLOCKS_FL: u32 = 4194304;
1218pub const FS_NOCOW_FL: u32 = 8388608;
1219pub const FS_DAX_FL: u32 = 33554432;
1220pub const FS_INLINE_DATA_FL: u32 = 268435456;
1221pub const FS_PROJINHERIT_FL: u32 = 536870912;
1222pub const FS_CASEFOLD_FL: u32 = 1073741824;
1223pub const FS_RESERVED_FL: u32 = 2147483648;
1224pub const FS_FL_USER_VISIBLE: u32 = 253951;
1225pub const FS_FL_USER_MODIFIABLE: u32 = 229631;
1226pub const SYNC_FILE_RANGE_WAIT_BEFORE: u32 = 1;
1227pub const SYNC_FILE_RANGE_WRITE: u32 = 2;
1228pub const SYNC_FILE_RANGE_WAIT_AFTER: u32 = 4;
1229pub const SYNC_FILE_RANGE_WRITE_AND_WAIT: u32 = 7;
1230pub const PROCFS_IOCTL_MAGIC: u8 = 102u8;
1231pub const PAGE_IS_WPALLOWED: u32 = 1;
1232pub const PAGE_IS_WRITTEN: u32 = 2;
1233pub const PAGE_IS_FILE: u32 = 4;
1234pub const PAGE_IS_PRESENT: u32 = 8;
1235pub const PAGE_IS_SWAPPED: u32 = 16;
1236pub const PAGE_IS_PFNZERO: u32 = 32;
1237pub const PAGE_IS_HUGE: u32 = 64;
1238pub const PAGE_IS_SOFT_DIRTY: u32 = 128;
1239pub const PM_SCAN_WP_MATCHING: u32 = 1;
1240pub const PM_SCAN_CHECK_WPASYNC: u32 = 2;
1241pub const __LITTLE_ENDIAN: u32 = 1234;
1242pub const IOCB_FLAG_RESFD: u32 = 1;
1243pub const IOCB_FLAG_IOPRIO: u32 = 2;
1244pub const B_TYPE_LARGE: u32 = 133;
1245pub const BINDER_CURRENT_PROTOCOL_VERSION: u32 = 8;
1246pub const BINDERFS_MAX_NAME: u32 = 255;
1247pub const ASHMEM_NAME_LEN: u32 = 256;
1248pub const ASHMEM_NAME_DEF: &'static std::ffi::CStr = c"dev/ashmem";
1249pub const ASHMEM_NOT_PURGED: u32 = 0;
1250pub const ASHMEM_WAS_PURGED: u32 = 1;
1251pub const ASHMEM_IS_UNPINNED: u32 = 0;
1252pub const ASHMEM_IS_PINNED: u32 = 1;
1253pub const __ASHMEMIOC: u32 = 119;
1254pub const EM_NONE: u32 = 0;
1255pub const EM_M32: u32 = 1;
1256pub const EM_SPARC: u32 = 2;
1257pub const EM_386: u32 = 3;
1258pub const EM_68K: u32 = 4;
1259pub const EM_88K: u32 = 5;
1260pub const EM_486: u32 = 6;
1261pub const EM_860: u32 = 7;
1262pub const EM_MIPS: u32 = 8;
1263pub const EM_MIPS_RS3_LE: u32 = 10;
1264pub const EM_MIPS_RS4_BE: u32 = 10;
1265pub const EM_PARISC: u32 = 15;
1266pub const EM_SPARC32PLUS: u32 = 18;
1267pub const EM_PPC: u32 = 20;
1268pub const EM_PPC64: u32 = 21;
1269pub const EM_SPU: u32 = 23;
1270pub const EM_ARM: u32 = 40;
1271pub const EM_SH: u32 = 42;
1272pub const EM_SPARCV9: u32 = 43;
1273pub const EM_H8_300: u32 = 46;
1274pub const EM_IA_64: u32 = 50;
1275pub const EM_X86_64: u32 = 62;
1276pub const EM_S390: u32 = 22;
1277pub const EM_CRIS: u32 = 76;
1278pub const EM_M32R: u32 = 88;
1279pub const EM_MN10300: u32 = 89;
1280pub const EM_OPENRISC: u32 = 92;
1281pub const EM_ARCOMPACT: u32 = 93;
1282pub const EM_XTENSA: u32 = 94;
1283pub const EM_BLACKFIN: u32 = 106;
1284pub const EM_UNICORE: u32 = 110;
1285pub const EM_ALTERA_NIOS2: u32 = 113;
1286pub const EM_TI_C6000: u32 = 140;
1287pub const EM_HEXAGON: u32 = 164;
1288pub const EM_NDS32: u32 = 167;
1289pub const EM_AARCH64: u32 = 183;
1290pub const EM_TILEPRO: u32 = 188;
1291pub const EM_MICROBLAZE: u32 = 189;
1292pub const EM_TILEGX: u32 = 191;
1293pub const EM_ARCV2: u32 = 195;
1294pub const EM_RISCV: u32 = 243;
1295pub const EM_BPF: u32 = 247;
1296pub const EM_CSKY: u32 = 252;
1297pub const EM_LOONGARCH: u32 = 258;
1298pub const EM_FRV: u32 = 21569;
1299pub const EM_ALPHA: u32 = 36902;
1300pub const EM_CYGNUS_M32R: u32 = 36929;
1301pub const EM_S390_OLD: u32 = 41872;
1302pub const EM_CYGNUS_MN10300: u32 = 48879;
1303pub const AUDIT_GET: u32 = 1000;
1304pub const AUDIT_SET: u32 = 1001;
1305pub const AUDIT_LIST: u32 = 1002;
1306pub const AUDIT_ADD: u32 = 1003;
1307pub const AUDIT_DEL: u32 = 1004;
1308pub const AUDIT_USER: u32 = 1005;
1309pub const AUDIT_LOGIN: u32 = 1006;
1310pub const AUDIT_WATCH_INS: u32 = 1007;
1311pub const AUDIT_WATCH_REM: u32 = 1008;
1312pub const AUDIT_WATCH_LIST: u32 = 1009;
1313pub const AUDIT_SIGNAL_INFO: u32 = 1010;
1314pub const AUDIT_ADD_RULE: u32 = 1011;
1315pub const AUDIT_DEL_RULE: u32 = 1012;
1316pub const AUDIT_LIST_RULES: u32 = 1013;
1317pub const AUDIT_TRIM: u32 = 1014;
1318pub const AUDIT_MAKE_EQUIV: u32 = 1015;
1319pub const AUDIT_TTY_GET: u32 = 1016;
1320pub const AUDIT_TTY_SET: u32 = 1017;
1321pub const AUDIT_SET_FEATURE: u32 = 1018;
1322pub const AUDIT_GET_FEATURE: u32 = 1019;
1323pub const AUDIT_FIRST_USER_MSG: u32 = 1100;
1324pub const AUDIT_USER_AVC: u32 = 1107;
1325pub const AUDIT_USER_TTY: u32 = 1124;
1326pub const AUDIT_LAST_USER_MSG: u32 = 1199;
1327pub const AUDIT_FIRST_USER_MSG2: u32 = 2100;
1328pub const AUDIT_LAST_USER_MSG2: u32 = 2999;
1329pub const AUDIT_DAEMON_START: u32 = 1200;
1330pub const AUDIT_DAEMON_END: u32 = 1201;
1331pub const AUDIT_DAEMON_ABORT: u32 = 1202;
1332pub const AUDIT_DAEMON_CONFIG: u32 = 1203;
1333pub const AUDIT_SYSCALL: u32 = 1300;
1334pub const AUDIT_PATH: u32 = 1302;
1335pub const AUDIT_IPC: u32 = 1303;
1336pub const AUDIT_SOCKETCALL: u32 = 1304;
1337pub const AUDIT_CONFIG_CHANGE: u32 = 1305;
1338pub const AUDIT_SOCKADDR: u32 = 1306;
1339pub const AUDIT_CWD: u32 = 1307;
1340pub const AUDIT_EXECVE: u32 = 1309;
1341pub const AUDIT_IPC_SET_PERM: u32 = 1311;
1342pub const AUDIT_MQ_OPEN: u32 = 1312;
1343pub const AUDIT_MQ_SENDRECV: u32 = 1313;
1344pub const AUDIT_MQ_NOTIFY: u32 = 1314;
1345pub const AUDIT_MQ_GETSETATTR: u32 = 1315;
1346pub const AUDIT_KERNEL_OTHER: u32 = 1316;
1347pub const AUDIT_FD_PAIR: u32 = 1317;
1348pub const AUDIT_OBJ_PID: u32 = 1318;
1349pub const AUDIT_TTY: u32 = 1319;
1350pub const AUDIT_EOE: u32 = 1320;
1351pub const AUDIT_BPRM_FCAPS: u32 = 1321;
1352pub const AUDIT_CAPSET: u32 = 1322;
1353pub const AUDIT_MMAP: u32 = 1323;
1354pub const AUDIT_NETFILTER_PKT: u32 = 1324;
1355pub const AUDIT_NETFILTER_CFG: u32 = 1325;
1356pub const AUDIT_SECCOMP: u32 = 1326;
1357pub const AUDIT_PROCTITLE: u32 = 1327;
1358pub const AUDIT_FEATURE_CHANGE: u32 = 1328;
1359pub const AUDIT_REPLACE: u32 = 1329;
1360pub const AUDIT_KERN_MODULE: u32 = 1330;
1361pub const AUDIT_FANOTIFY: u32 = 1331;
1362pub const AUDIT_TIME_INJOFFSET: u32 = 1332;
1363pub const AUDIT_TIME_ADJNTPVAL: u32 = 1333;
1364pub const AUDIT_BPF: u32 = 1334;
1365pub const AUDIT_EVENT_LISTENER: u32 = 1335;
1366pub const AUDIT_URINGOP: u32 = 1336;
1367pub const AUDIT_OPENAT2: u32 = 1337;
1368pub const AUDIT_DM_CTRL: u32 = 1338;
1369pub const AUDIT_DM_EVENT: u32 = 1339;
1370pub const AUDIT_AVC: u32 = 1400;
1371pub const AUDIT_SELINUX_ERR: u32 = 1401;
1372pub const AUDIT_AVC_PATH: u32 = 1402;
1373pub const AUDIT_MAC_POLICY_LOAD: u32 = 1403;
1374pub const AUDIT_MAC_STATUS: u32 = 1404;
1375pub const AUDIT_MAC_CONFIG_CHANGE: u32 = 1405;
1376pub const AUDIT_MAC_UNLBL_ALLOW: u32 = 1406;
1377pub const AUDIT_MAC_CIPSOV4_ADD: u32 = 1407;
1378pub const AUDIT_MAC_CIPSOV4_DEL: u32 = 1408;
1379pub const AUDIT_MAC_MAP_ADD: u32 = 1409;
1380pub const AUDIT_MAC_MAP_DEL: u32 = 1410;
1381pub const AUDIT_MAC_IPSEC_ADDSA: u32 = 1411;
1382pub const AUDIT_MAC_IPSEC_DELSA: u32 = 1412;
1383pub const AUDIT_MAC_IPSEC_ADDSPD: u32 = 1413;
1384pub const AUDIT_MAC_IPSEC_DELSPD: u32 = 1414;
1385pub const AUDIT_MAC_IPSEC_EVENT: u32 = 1415;
1386pub const AUDIT_MAC_UNLBL_STCADD: u32 = 1416;
1387pub const AUDIT_MAC_UNLBL_STCDEL: u32 = 1417;
1388pub const AUDIT_MAC_CALIPSO_ADD: u32 = 1418;
1389pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419;
1390pub const AUDIT_IPE_ACCESS: u32 = 1420;
1391pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421;
1392pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422;
1393pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700;
1394pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799;
1395pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700;
1396pub const AUDIT_ANOM_ABEND: u32 = 1701;
1397pub const AUDIT_ANOM_LINK: u32 = 1702;
1398pub const AUDIT_ANOM_CREAT: u32 = 1703;
1399pub const AUDIT_INTEGRITY_DATA: u32 = 1800;
1400pub const AUDIT_INTEGRITY_METADATA: u32 = 1801;
1401pub const AUDIT_INTEGRITY_STATUS: u32 = 1802;
1402pub const AUDIT_INTEGRITY_HASH: u32 = 1803;
1403pub const AUDIT_INTEGRITY_PCR: u32 = 1804;
1404pub const AUDIT_INTEGRITY_RULE: u32 = 1805;
1405pub const AUDIT_INTEGRITY_EVM_XATTR: u32 = 1806;
1406pub const AUDIT_INTEGRITY_POLICY_RULE: u32 = 1807;
1407pub const AUDIT_KERNEL: u32 = 2000;
1408pub const AUDIT_FILTER_USER: u32 = 0;
1409pub const AUDIT_FILTER_TASK: u32 = 1;
1410pub const AUDIT_FILTER_ENTRY: u32 = 2;
1411pub const AUDIT_FILTER_WATCH: u32 = 3;
1412pub const AUDIT_FILTER_EXIT: u32 = 4;
1413pub const AUDIT_FILTER_EXCLUDE: u32 = 5;
1414pub const AUDIT_FILTER_TYPE: u32 = 5;
1415pub const AUDIT_FILTER_FS: u32 = 6;
1416pub const AUDIT_FILTER_URING_EXIT: u32 = 7;
1417pub const AUDIT_NR_FILTERS: u32 = 8;
1418pub const AUDIT_FILTER_PREPEND: u32 = 16;
1419pub const AUDIT_NEVER: u32 = 0;
1420pub const AUDIT_POSSIBLE: u32 = 1;
1421pub const AUDIT_ALWAYS: u32 = 2;
1422pub const AUDIT_MAX_FIELDS: u32 = 64;
1423pub const AUDIT_MAX_KEY_LEN: u32 = 256;
1424pub const AUDIT_BITMASK_SIZE: u32 = 64;
1425pub const AUDIT_SYSCALL_CLASSES: u32 = 16;
1426pub const AUDIT_CLASS_DIR_WRITE: u32 = 0;
1427pub const AUDIT_CLASS_DIR_WRITE_32: u32 = 1;
1428pub const AUDIT_CLASS_CHATTR: u32 = 2;
1429pub const AUDIT_CLASS_CHATTR_32: u32 = 3;
1430pub const AUDIT_CLASS_READ: u32 = 4;
1431pub const AUDIT_CLASS_READ_32: u32 = 5;
1432pub const AUDIT_CLASS_WRITE: u32 = 6;
1433pub const AUDIT_CLASS_WRITE_32: u32 = 7;
1434pub const AUDIT_CLASS_SIGNAL: u32 = 8;
1435pub const AUDIT_CLASS_SIGNAL_32: u32 = 9;
1436pub const AUDIT_UNUSED_BITS: u32 = 134216704;
1437pub const AUDIT_COMPARE_UID_TO_OBJ_UID: u32 = 1;
1438pub const AUDIT_COMPARE_GID_TO_OBJ_GID: u32 = 2;
1439pub const AUDIT_COMPARE_EUID_TO_OBJ_UID: u32 = 3;
1440pub const AUDIT_COMPARE_EGID_TO_OBJ_GID: u32 = 4;
1441pub const AUDIT_COMPARE_AUID_TO_OBJ_UID: u32 = 5;
1442pub const AUDIT_COMPARE_SUID_TO_OBJ_UID: u32 = 6;
1443pub const AUDIT_COMPARE_SGID_TO_OBJ_GID: u32 = 7;
1444pub const AUDIT_COMPARE_FSUID_TO_OBJ_UID: u32 = 8;
1445pub const AUDIT_COMPARE_FSGID_TO_OBJ_GID: u32 = 9;
1446pub const AUDIT_COMPARE_UID_TO_AUID: u32 = 10;
1447pub const AUDIT_COMPARE_UID_TO_EUID: u32 = 11;
1448pub const AUDIT_COMPARE_UID_TO_FSUID: u32 = 12;
1449pub const AUDIT_COMPARE_UID_TO_SUID: u32 = 13;
1450pub const AUDIT_COMPARE_AUID_TO_FSUID: u32 = 14;
1451pub const AUDIT_COMPARE_AUID_TO_SUID: u32 = 15;
1452pub const AUDIT_COMPARE_AUID_TO_EUID: u32 = 16;
1453pub const AUDIT_COMPARE_EUID_TO_SUID: u32 = 17;
1454pub const AUDIT_COMPARE_EUID_TO_FSUID: u32 = 18;
1455pub const AUDIT_COMPARE_SUID_TO_FSUID: u32 = 19;
1456pub const AUDIT_COMPARE_GID_TO_EGID: u32 = 20;
1457pub const AUDIT_COMPARE_GID_TO_FSGID: u32 = 21;
1458pub const AUDIT_COMPARE_GID_TO_SGID: u32 = 22;
1459pub const AUDIT_COMPARE_EGID_TO_FSGID: u32 = 23;
1460pub const AUDIT_COMPARE_EGID_TO_SGID: u32 = 24;
1461pub const AUDIT_COMPARE_SGID_TO_FSGID: u32 = 25;
1462pub const AUDIT_MAX_FIELD_COMPARE: u32 = 25;
1463pub const AUDIT_PID: u32 = 0;
1464pub const AUDIT_UID: u32 = 1;
1465pub const AUDIT_EUID: u32 = 2;
1466pub const AUDIT_SUID: u32 = 3;
1467pub const AUDIT_FSUID: u32 = 4;
1468pub const AUDIT_GID: u32 = 5;
1469pub const AUDIT_EGID: u32 = 6;
1470pub const AUDIT_SGID: u32 = 7;
1471pub const AUDIT_FSGID: u32 = 8;
1472pub const AUDIT_LOGINUID: u32 = 9;
1473pub const AUDIT_PERS: u32 = 10;
1474pub const AUDIT_ARCH: u32 = 11;
1475pub const AUDIT_MSGTYPE: u32 = 12;
1476pub const AUDIT_SUBJ_USER: u32 = 13;
1477pub const AUDIT_SUBJ_ROLE: u32 = 14;
1478pub const AUDIT_SUBJ_TYPE: u32 = 15;
1479pub const AUDIT_SUBJ_SEN: u32 = 16;
1480pub const AUDIT_SUBJ_CLR: u32 = 17;
1481pub const AUDIT_PPID: u32 = 18;
1482pub const AUDIT_OBJ_USER: u32 = 19;
1483pub const AUDIT_OBJ_ROLE: u32 = 20;
1484pub const AUDIT_OBJ_TYPE: u32 = 21;
1485pub const AUDIT_OBJ_LEV_LOW: u32 = 22;
1486pub const AUDIT_OBJ_LEV_HIGH: u32 = 23;
1487pub const AUDIT_LOGINUID_SET: u32 = 24;
1488pub const AUDIT_SESSIONID: u32 = 25;
1489pub const AUDIT_FSTYPE: u32 = 26;
1490pub const AUDIT_DEVMAJOR: u32 = 100;
1491pub const AUDIT_DEVMINOR: u32 = 101;
1492pub const AUDIT_INODE: u32 = 102;
1493pub const AUDIT_EXIT: u32 = 103;
1494pub const AUDIT_SUCCESS: u32 = 104;
1495pub const AUDIT_WATCH: u32 = 105;
1496pub const AUDIT_PERM: u32 = 106;
1497pub const AUDIT_DIR: u32 = 107;
1498pub const AUDIT_FILETYPE: u32 = 108;
1499pub const AUDIT_OBJ_UID: u32 = 109;
1500pub const AUDIT_OBJ_GID: u32 = 110;
1501pub const AUDIT_FIELD_COMPARE: u32 = 111;
1502pub const AUDIT_EXE: u32 = 112;
1503pub const AUDIT_SADDR_FAM: u32 = 113;
1504pub const AUDIT_ARG0: u32 = 200;
1505pub const AUDIT_ARG1: u32 = 201;
1506pub const AUDIT_ARG2: u32 = 202;
1507pub const AUDIT_ARG3: u32 = 203;
1508pub const AUDIT_FILTERKEY: u32 = 210;
1509pub const AUDIT_NEGATE: u32 = 2147483648;
1510pub const AUDIT_BIT_MASK: u32 = 134217728;
1511pub const AUDIT_LESS_THAN: u32 = 268435456;
1512pub const AUDIT_GREATER_THAN: u32 = 536870912;
1513pub const AUDIT_NOT_EQUAL: u32 = 805306368;
1514pub const AUDIT_EQUAL: u32 = 1073741824;
1515pub const AUDIT_BIT_TEST: u32 = 1207959552;
1516pub const AUDIT_LESS_THAN_OR_EQUAL: u32 = 1342177280;
1517pub const AUDIT_GREATER_THAN_OR_EQUAL: u32 = 1610612736;
1518pub const AUDIT_OPERATORS: u32 = 2013265920;
1519pub const AUDIT_STATUS_ENABLED: u32 = 1;
1520pub const AUDIT_STATUS_FAILURE: u32 = 2;
1521pub const AUDIT_STATUS_PID: u32 = 4;
1522pub const AUDIT_STATUS_RATE_LIMIT: u32 = 8;
1523pub const AUDIT_STATUS_BACKLOG_LIMIT: u32 = 16;
1524pub const AUDIT_STATUS_BACKLOG_WAIT_TIME: u32 = 32;
1525pub const AUDIT_STATUS_LOST: u32 = 64;
1526pub const AUDIT_STATUS_BACKLOG_WAIT_TIME_ACTUAL: u32 = 128;
1527pub const AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT: u32 = 1;
1528pub const AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME: u32 = 2;
1529pub const AUDIT_FEATURE_BITMAP_EXECUTABLE_PATH: u32 = 4;
1530pub const AUDIT_FEATURE_BITMAP_EXCLUDE_EXTEND: u32 = 8;
1531pub const AUDIT_FEATURE_BITMAP_SESSIONID_FILTER: u32 = 16;
1532pub const AUDIT_FEATURE_BITMAP_LOST_RESET: u32 = 32;
1533pub const AUDIT_FEATURE_BITMAP_FILTER_FS: u32 = 64;
1534pub const AUDIT_FEATURE_BITMAP_ALL: u32 = 127;
1535pub const AUDIT_VERSION_LATEST: u32 = 127;
1536pub const AUDIT_VERSION_BACKLOG_LIMIT: u32 = 1;
1537pub const AUDIT_VERSION_BACKLOG_WAIT_TIME: u32 = 2;
1538pub const AUDIT_FAIL_SILENT: u32 = 0;
1539pub const AUDIT_FAIL_PRINTK: u32 = 1;
1540pub const AUDIT_FAIL_PANIC: u32 = 2;
1541pub const __AUDIT_ARCH_CONVENTION_MASK: u32 = 805306368;
1542pub const __AUDIT_ARCH_CONVENTION_MIPS64_N32: u32 = 536870912;
1543pub const __AUDIT_ARCH_64BIT: u32 = 2147483648;
1544pub const __AUDIT_ARCH_LE: u32 = 1073741824;
1545pub const AUDIT_ARCH_AARCH64: u32 = 3221225655;
1546pub const AUDIT_ARCH_ALPHA: u32 = 3221262374;
1547pub const AUDIT_ARCH_ARCOMPACT: u32 = 1073741917;
1548pub const AUDIT_ARCH_ARCOMPACTBE: u32 = 93;
1549pub const AUDIT_ARCH_ARCV2: u32 = 1073742019;
1550pub const AUDIT_ARCH_ARCV2BE: u32 = 195;
1551pub const AUDIT_ARCH_ARM: u32 = 1073741864;
1552pub const AUDIT_ARCH_ARMEB: u32 = 40;
1553pub const AUDIT_ARCH_C6X: u32 = 1073741964;
1554pub const AUDIT_ARCH_C6XBE: u32 = 140;
1555pub const AUDIT_ARCH_CRIS: u32 = 1073741900;
1556pub const AUDIT_ARCH_CSKY: u32 = 1073742076;
1557pub const AUDIT_ARCH_FRV: u32 = 21569;
1558pub const AUDIT_ARCH_H8300: u32 = 46;
1559pub const AUDIT_ARCH_HEXAGON: u32 = 164;
1560pub const AUDIT_ARCH_I386: u32 = 1073741827;
1561pub const AUDIT_ARCH_IA64: u32 = 3221225522;
1562pub const AUDIT_ARCH_M32R: u32 = 88;
1563pub const AUDIT_ARCH_M68K: u32 = 4;
1564pub const AUDIT_ARCH_MICROBLAZE: u32 = 189;
1565pub const AUDIT_ARCH_MIPS: u32 = 8;
1566pub const AUDIT_ARCH_MIPSEL: u32 = 1073741832;
1567pub const AUDIT_ARCH_MIPS64: u32 = 2147483656;
1568pub const AUDIT_ARCH_MIPS64N32: u32 = 2684354568;
1569pub const AUDIT_ARCH_MIPSEL64: u32 = 3221225480;
1570pub const AUDIT_ARCH_MIPSEL64N32: u32 = 3758096392;
1571pub const AUDIT_ARCH_NDS32: u32 = 1073741991;
1572pub const AUDIT_ARCH_NDS32BE: u32 = 167;
1573pub const AUDIT_ARCH_NIOS2: u32 = 1073741937;
1574pub const AUDIT_ARCH_OPENRISC: u32 = 92;
1575pub const AUDIT_ARCH_PARISC: u32 = 15;
1576pub const AUDIT_ARCH_PARISC64: u32 = 2147483663;
1577pub const AUDIT_ARCH_PPC: u32 = 20;
1578pub const AUDIT_ARCH_PPC64: u32 = 2147483669;
1579pub const AUDIT_ARCH_PPC64LE: u32 = 3221225493;
1580pub const AUDIT_ARCH_RISCV32: u32 = 1073742067;
1581pub const AUDIT_ARCH_RISCV64: u32 = 3221225715;
1582pub const AUDIT_ARCH_S390: u32 = 22;
1583pub const AUDIT_ARCH_S390X: u32 = 2147483670;
1584pub const AUDIT_ARCH_SH: u32 = 42;
1585pub const AUDIT_ARCH_SHEL: u32 = 1073741866;
1586pub const AUDIT_ARCH_SH64: u32 = 2147483690;
1587pub const AUDIT_ARCH_SHEL64: u32 = 3221225514;
1588pub const AUDIT_ARCH_SPARC: u32 = 2;
1589pub const AUDIT_ARCH_SPARC64: u32 = 2147483691;
1590pub const AUDIT_ARCH_TILEGX: u32 = 3221225663;
1591pub const AUDIT_ARCH_TILEGX32: u32 = 1073742015;
1592pub const AUDIT_ARCH_TILEPRO: u32 = 1073742012;
1593pub const AUDIT_ARCH_UNICORE: u32 = 1073741934;
1594pub const AUDIT_ARCH_X86_64: u32 = 3221225534;
1595pub const AUDIT_ARCH_XTENSA: u32 = 94;
1596pub const AUDIT_ARCH_LOONGARCH32: u32 = 1073742082;
1597pub const AUDIT_ARCH_LOONGARCH64: u32 = 3221225730;
1598pub const AUDIT_PERM_EXEC: u32 = 1;
1599pub const AUDIT_PERM_WRITE: u32 = 2;
1600pub const AUDIT_PERM_READ: u32 = 4;
1601pub const AUDIT_PERM_ATTR: u32 = 8;
1602pub const AUDIT_MESSAGE_TEXT_MAX: u32 = 8560;
1603pub const AUDIT_FEATURE_VERSION: u32 = 1;
1604pub const AUDIT_FEATURE_ONLY_UNSET_LOGINUID: u32 = 0;
1605pub const AUDIT_FEATURE_LOGINUID_IMMUTABLE: u32 = 1;
1606pub const AUDIT_LAST_FEATURE: u32 = 1;
1607pub const AT_SYSINFO_EHDR: u32 = 33;
1608pub const AT_VECTOR_SIZE_ARCH: u32 = 3;
1609pub const AT_NULL: u32 = 0;
1610pub const AT_IGNORE: u32 = 1;
1611pub const AT_EXECFD: u32 = 2;
1612pub const AT_PHDR: u32 = 3;
1613pub const AT_PHENT: u32 = 4;
1614pub const AT_PHNUM: u32 = 5;
1615pub const AT_PAGESZ: u32 = 6;
1616pub const AT_BASE: u32 = 7;
1617pub const AT_FLAGS: u32 = 8;
1618pub const AT_ENTRY: u32 = 9;
1619pub const AT_NOTELF: u32 = 10;
1620pub const AT_UID: u32 = 11;
1621pub const AT_EUID: u32 = 12;
1622pub const AT_GID: u32 = 13;
1623pub const AT_EGID: u32 = 14;
1624pub const AT_PLATFORM: u32 = 15;
1625pub const AT_HWCAP: u32 = 16;
1626pub const AT_CLKTCK: u32 = 17;
1627pub const AT_SECURE: u32 = 23;
1628pub const AT_BASE_PLATFORM: u32 = 24;
1629pub const AT_RANDOM: u32 = 25;
1630pub const AT_HWCAP2: u32 = 26;
1631pub const AT_RSEQ_FEATURE_SIZE: u32 = 27;
1632pub const AT_RSEQ_ALIGN: u32 = 28;
1633pub const AT_HWCAP3: u32 = 29;
1634pub const AT_HWCAP4: u32 = 30;
1635pub const AT_EXECFN: u32 = 31;
1636pub const AT_MINSIGSTKSZ: u32 = 51;
1637pub const _LINUX_CAPABILITY_VERSION_1: u32 = 429392688;
1638pub const _LINUX_CAPABILITY_U32S_1: u32 = 1;
1639pub const _LINUX_CAPABILITY_VERSION_2: u32 = 537333798;
1640pub const _LINUX_CAPABILITY_U32S_2: u32 = 2;
1641pub const _LINUX_CAPABILITY_VERSION_3: u32 = 537396514;
1642pub const _LINUX_CAPABILITY_U32S_3: u32 = 2;
1643pub const VFS_CAP_REVISION_MASK: u32 = 4278190080;
1644pub const VFS_CAP_REVISION_SHIFT: u32 = 24;
1645pub const VFS_CAP_FLAGS_MASK: i64 = -4278190081;
1646pub const VFS_CAP_FLAGS_EFFECTIVE: u32 = 1;
1647pub const VFS_CAP_REVISION_1: u32 = 16777216;
1648pub const VFS_CAP_U32_1: u32 = 1;
1649pub const VFS_CAP_REVISION_2: u32 = 33554432;
1650pub const VFS_CAP_U32_2: u32 = 2;
1651pub const VFS_CAP_REVISION_3: u32 = 50331648;
1652pub const VFS_CAP_U32_3: u32 = 2;
1653pub const VFS_CAP_U32: u32 = 2;
1654pub const VFS_CAP_REVISION: u32 = 50331648;
1655pub const _LINUX_CAPABILITY_VERSION: u32 = 429392688;
1656pub const _LINUX_CAPABILITY_U32S: u32 = 1;
1657pub const CAP_CHOWN: u32 = 0;
1658pub const CAP_DAC_OVERRIDE: u32 = 1;
1659pub const CAP_DAC_READ_SEARCH: u32 = 2;
1660pub const CAP_FOWNER: u32 = 3;
1661pub const CAP_FSETID: u32 = 4;
1662pub const CAP_KILL: u32 = 5;
1663pub const CAP_SETGID: u32 = 6;
1664pub const CAP_SETUID: u32 = 7;
1665pub const CAP_SETPCAP: u32 = 8;
1666pub const CAP_LINUX_IMMUTABLE: u32 = 9;
1667pub const CAP_NET_BIND_SERVICE: u32 = 10;
1668pub const CAP_NET_BROADCAST: u32 = 11;
1669pub const CAP_NET_ADMIN: u32 = 12;
1670pub const CAP_NET_RAW: u32 = 13;
1671pub const CAP_IPC_LOCK: u32 = 14;
1672pub const CAP_IPC_OWNER: u32 = 15;
1673pub const CAP_SYS_MODULE: u32 = 16;
1674pub const CAP_SYS_RAWIO: u32 = 17;
1675pub const CAP_SYS_CHROOT: u32 = 18;
1676pub const CAP_SYS_PTRACE: u32 = 19;
1677pub const CAP_SYS_PACCT: u32 = 20;
1678pub const CAP_SYS_ADMIN: u32 = 21;
1679pub const CAP_SYS_BOOT: u32 = 22;
1680pub const CAP_SYS_NICE: u32 = 23;
1681pub const CAP_SYS_RESOURCE: u32 = 24;
1682pub const CAP_SYS_TIME: u32 = 25;
1683pub const CAP_SYS_TTY_CONFIG: u32 = 26;
1684pub const CAP_MKNOD: u32 = 27;
1685pub const CAP_LEASE: u32 = 28;
1686pub const CAP_AUDIT_WRITE: u32 = 29;
1687pub const CAP_AUDIT_CONTROL: u32 = 30;
1688pub const CAP_SETFCAP: u32 = 31;
1689pub const CAP_MAC_OVERRIDE: u32 = 32;
1690pub const CAP_MAC_ADMIN: u32 = 33;
1691pub const CAP_SYSLOG: u32 = 34;
1692pub const CAP_WAKE_ALARM: u32 = 35;
1693pub const CAP_BLOCK_SUSPEND: u32 = 36;
1694pub const CAP_AUDIT_READ: u32 = 37;
1695pub const CAP_PERFMON: u32 = 38;
1696pub const CAP_BPF: u32 = 39;
1697pub const CAP_CHECKPOINT_RESTORE: u32 = 40;
1698pub const CAP_LAST_CAP: u32 = 40;
1699pub const CLOSE_RANGE_UNSHARE: u32 = 2;
1700pub const CLOSE_RANGE_CLOEXEC: u32 = 4;
1701pub const DM_DIR: &'static std::ffi::CStr = c"mapper";
1702pub const DM_CONTROL_NODE: &'static std::ffi::CStr = c"control";
1703pub const DM_MAX_TYPE_NAME: u32 = 16;
1704pub const DM_NAME_LEN: u32 = 128;
1705pub const DM_UUID_LEN: u32 = 129;
1706pub const DM_NAME_LIST_FLAG_HAS_UUID: u32 = 1;
1707pub const DM_NAME_LIST_FLAG_DOESNT_HAVE_UUID: u32 = 2;
1708pub const DM_IOCTL: u32 = 253;
1709pub const DM_VERSION_MAJOR: u32 = 4;
1710pub const DM_VERSION_MINOR: u32 = 48;
1711pub const DM_VERSION_PATCHLEVEL: u32 = 0;
1712pub const DM_VERSION_EXTRA: &'static std::ffi::CStr = c"-ioctl(2023-03-01)";
1713pub const DM_READONLY_FLAG: u32 = 1;
1714pub const DM_SUSPEND_FLAG: u32 = 2;
1715pub const DM_PERSISTENT_DEV_FLAG: u32 = 8;
1716pub const DM_STATUS_TABLE_FLAG: u32 = 16;
1717pub const DM_ACTIVE_PRESENT_FLAG: u32 = 32;
1718pub const DM_INACTIVE_PRESENT_FLAG: u32 = 64;
1719pub const DM_BUFFER_FULL_FLAG: u32 = 256;
1720pub const DM_SKIP_BDGET_FLAG: u32 = 512;
1721pub const DM_SKIP_LOCKFS_FLAG: u32 = 1024;
1722pub const DM_NOFLUSH_FLAG: u32 = 2048;
1723pub const DM_QUERY_INACTIVE_TABLE_FLAG: u32 = 4096;
1724pub const DM_UEVENT_GENERATED_FLAG: u32 = 8192;
1725pub const DM_UUID_FLAG: u32 = 16384;
1726pub const DM_SECURE_DATA_FLAG: u32 = 32768;
1727pub const DM_DATA_OUT_FLAG: u32 = 65536;
1728pub const DM_DEFERRED_REMOVE: u32 = 131072;
1729pub const DM_INTERNAL_SUSPEND_FLAG: u32 = 262144;
1730pub const DM_IMA_MEASUREMENT_FLAG: u32 = 524288;
1731pub const DMA_BUF_SYNC_READ: u32 = 1;
1732pub const DMA_BUF_SYNC_WRITE: u32 = 2;
1733pub const DMA_BUF_SYNC_RW: u32 = 3;
1734pub const DMA_BUF_SYNC_START: u32 = 0;
1735pub const DMA_BUF_SYNC_END: u32 = 4;
1736pub const DMA_BUF_SYNC_VALID_FLAGS_MASK: u32 = 7;
1737pub const DMA_BUF_NAME_LEN: u32 = 32;
1738pub const DMA_BUF_BASE: u8 = 98u8;
1739pub const DMA_HEAP_VALID_HEAP_FLAGS: u32 = 0;
1740pub const DMA_HEAP_IOC_MAGIC: u8 = 72u8;
1741pub const PT_NULL: u32 = 0;
1742pub const PT_LOAD: u32 = 1;
1743pub const PT_DYNAMIC: u32 = 2;
1744pub const PT_INTERP: u32 = 3;
1745pub const PT_NOTE: u32 = 4;
1746pub const PT_SHLIB: u32 = 5;
1747pub const PT_PHDR: u32 = 6;
1748pub const PT_TLS: u32 = 7;
1749pub const PT_LOOS: u32 = 1610612736;
1750pub const PT_HIOS: u32 = 1879048191;
1751pub const PT_LOPROC: u32 = 1879048192;
1752pub const PT_HIPROC: u32 = 2147483647;
1753pub const PT_GNU_EH_FRAME: u32 = 1685382480;
1754pub const PT_GNU_STACK: u32 = 1685382481;
1755pub const PT_GNU_RELRO: u32 = 1685382482;
1756pub const PT_GNU_PROPERTY: u32 = 1685382483;
1757pub const PT_AARCH64_MEMTAG_MTE: u32 = 1879048194;
1758pub const PN_XNUM: u32 = 65535;
1759pub const ET_NONE: u32 = 0;
1760pub const ET_REL: u32 = 1;
1761pub const ET_EXEC: u32 = 2;
1762pub const ET_DYN: u32 = 3;
1763pub const ET_CORE: u32 = 4;
1764pub const ET_LOPROC: u32 = 65280;
1765pub const ET_HIPROC: u32 = 65535;
1766pub const DT_NULL: u32 = 0;
1767pub const DT_NEEDED: u32 = 1;
1768pub const DT_PLTRELSZ: u32 = 2;
1769pub const DT_PLTGOT: u32 = 3;
1770pub const DT_HASH: u32 = 4;
1771pub const DT_STRTAB: u32 = 5;
1772pub const DT_SYMTAB: u32 = 6;
1773pub const DT_RELA: u32 = 7;
1774pub const DT_RELASZ: u32 = 8;
1775pub const DT_RELAENT: u32 = 9;
1776pub const DT_STRSZ: u32 = 10;
1777pub const DT_SYMENT: u32 = 11;
1778pub const DT_INIT: u32 = 12;
1779pub const DT_FINI: u32 = 13;
1780pub const DT_SONAME: u32 = 14;
1781pub const DT_RPATH: u32 = 15;
1782pub const DT_SYMBOLIC: u32 = 16;
1783pub const DT_REL: u32 = 17;
1784pub const DT_RELSZ: u32 = 18;
1785pub const DT_RELENT: u32 = 19;
1786pub const DT_PLTREL: u32 = 20;
1787pub const DT_DEBUG: u32 = 21;
1788pub const DT_TEXTREL: u32 = 22;
1789pub const DT_JMPREL: u32 = 23;
1790pub const DT_ENCODING: u32 = 32;
1791pub const OLD_DT_LOOS: u32 = 1610612736;
1792pub const DT_LOOS: u32 = 1610612749;
1793pub const DT_HIOS: u32 = 1879044096;
1794pub const DT_VALRNGLO: u32 = 1879047424;
1795pub const DT_VALRNGHI: u32 = 1879047679;
1796pub const DT_ADDRRNGLO: u32 = 1879047680;
1797pub const DT_ADDRRNGHI: u32 = 1879047935;
1798pub const DT_VERSYM: u32 = 1879048176;
1799pub const DT_RELACOUNT: u32 = 1879048185;
1800pub const DT_RELCOUNT: u32 = 1879048186;
1801pub const DT_FLAGS_1: u32 = 1879048187;
1802pub const DT_VERDEF: u32 = 1879048188;
1803pub const DT_VERDEFNUM: u32 = 1879048189;
1804pub const DT_VERNEED: u32 = 1879048190;
1805pub const DT_VERNEEDNUM: u32 = 1879048191;
1806pub const OLD_DT_HIOS: u32 = 1879048191;
1807pub const DT_LOPROC: u32 = 1879048192;
1808pub const DT_HIPROC: u32 = 2147483647;
1809pub const STB_LOCAL: u32 = 0;
1810pub const STB_GLOBAL: u32 = 1;
1811pub const STB_WEAK: u32 = 2;
1812pub const STT_NOTYPE: u32 = 0;
1813pub const STT_OBJECT: u32 = 1;
1814pub const STT_FUNC: u32 = 2;
1815pub const STT_SECTION: u32 = 3;
1816pub const STT_FILE: u32 = 4;
1817pub const STT_COMMON: u32 = 5;
1818pub const STT_TLS: u32 = 6;
1819pub const EI_NIDENT: u32 = 16;
1820pub const PF_R: u32 = 4;
1821pub const PF_W: u32 = 2;
1822pub const PF_X: u32 = 1;
1823pub const SHT_NULL: u32 = 0;
1824pub const SHT_PROGBITS: u32 = 1;
1825pub const SHT_SYMTAB: u32 = 2;
1826pub const SHT_STRTAB: u32 = 3;
1827pub const SHT_RELA: u32 = 4;
1828pub const SHT_HASH: u32 = 5;
1829pub const SHT_DYNAMIC: u32 = 6;
1830pub const SHT_NOTE: u32 = 7;
1831pub const SHT_NOBITS: u32 = 8;
1832pub const SHT_REL: u32 = 9;
1833pub const SHT_SHLIB: u32 = 10;
1834pub const SHT_DYNSYM: u32 = 11;
1835pub const SHT_NUM: u32 = 12;
1836pub const SHT_LOPROC: u32 = 1879048192;
1837pub const SHT_HIPROC: u32 = 2147483647;
1838pub const SHT_LOUSER: u32 = 2147483648;
1839pub const SHT_HIUSER: u32 = 4294967295;
1840pub const SHF_WRITE: u32 = 1;
1841pub const SHF_ALLOC: u32 = 2;
1842pub const SHF_EXECINSTR: u32 = 4;
1843pub const SHF_RELA_LIVEPATCH: u32 = 1048576;
1844pub const SHF_RO_AFTER_INIT: u32 = 2097152;
1845pub const SHF_MASKPROC: u32 = 4026531840;
1846pub const SHN_UNDEF: u32 = 0;
1847pub const SHN_LORESERVE: u32 = 65280;
1848pub const SHN_LOPROC: u32 = 65280;
1849pub const SHN_HIPROC: u32 = 65311;
1850pub const SHN_LIVEPATCH: u32 = 65312;
1851pub const SHN_ABS: u32 = 65521;
1852pub const SHN_COMMON: u32 = 65522;
1853pub const SHN_HIRESERVE: u32 = 65535;
1854pub const EI_MAG0: u32 = 0;
1855pub const EI_MAG1: u32 = 1;
1856pub const EI_MAG2: u32 = 2;
1857pub const EI_MAG3: u32 = 3;
1858pub const EI_CLASS: u32 = 4;
1859pub const EI_DATA: u32 = 5;
1860pub const EI_VERSION: u32 = 6;
1861pub const EI_OSABI: u32 = 7;
1862pub const EI_PAD: u32 = 8;
1863pub const ELFMAG0: u32 = 127;
1864pub const ELFMAG1: u8 = 69u8;
1865pub const ELFMAG2: u8 = 76u8;
1866pub const ELFMAG3: u8 = 70u8;
1867pub const ELFMAG: &'static std::ffi::CStr = c"\x7FELF";
1868pub const SELFMAG: u32 = 4;
1869pub const ELFCLASSNONE: u32 = 0;
1870pub const ELFCLASS32: u32 = 1;
1871pub const ELFCLASS64: u32 = 2;
1872pub const ELFCLASSNUM: u32 = 3;
1873pub const ELFDATANONE: u32 = 0;
1874pub const ELFDATA2LSB: u32 = 1;
1875pub const ELFDATA2MSB: u32 = 2;
1876pub const EV_NONE: u32 = 0;
1877pub const EV_CURRENT: u32 = 1;
1878pub const EV_NUM: u32 = 2;
1879pub const ELFOSABI_NONE: u32 = 0;
1880pub const ELFOSABI_LINUX: u32 = 3;
1881pub const ELF_OSABI: u32 = 0;
1882pub const NT_PRSTATUS: u32 = 1;
1883pub const NT_PRFPREG: u32 = 2;
1884pub const NT_PRPSINFO: u32 = 3;
1885pub const NT_TASKSTRUCT: u32 = 4;
1886pub const NT_AUXV: u32 = 6;
1887pub const NT_SIGINFO: u32 = 1397311305;
1888pub const NT_FILE: u32 = 1179208773;
1889pub const NT_PRXFPREG: u32 = 1189489535;
1890pub const NT_PPC_VMX: u32 = 256;
1891pub const NT_PPC_SPE: u32 = 257;
1892pub const NT_PPC_VSX: u32 = 258;
1893pub const NT_PPC_TAR: u32 = 259;
1894pub const NT_PPC_PPR: u32 = 260;
1895pub const NT_PPC_DSCR: u32 = 261;
1896pub const NT_PPC_EBB: u32 = 262;
1897pub const NT_PPC_PMU: u32 = 263;
1898pub const NT_PPC_TM_CGPR: u32 = 264;
1899pub const NT_PPC_TM_CFPR: u32 = 265;
1900pub const NT_PPC_TM_CVMX: u32 = 266;
1901pub const NT_PPC_TM_CVSX: u32 = 267;
1902pub const NT_PPC_TM_SPR: u32 = 268;
1903pub const NT_PPC_TM_CTAR: u32 = 269;
1904pub const NT_PPC_TM_CPPR: u32 = 270;
1905pub const NT_PPC_TM_CDSCR: u32 = 271;
1906pub const NT_PPC_PKEY: u32 = 272;
1907pub const NT_PPC_DEXCR: u32 = 273;
1908pub const NT_PPC_HASHKEYR: u32 = 274;
1909pub const NT_386_TLS: u32 = 512;
1910pub const NT_386_IOPERM: u32 = 513;
1911pub const NT_X86_XSTATE: u32 = 514;
1912pub const NT_X86_SHSTK: u32 = 516;
1913pub const NT_X86_XSAVE_LAYOUT: u32 = 517;
1914pub const NT_S390_HIGH_GPRS: u32 = 768;
1915pub const NT_S390_TIMER: u32 = 769;
1916pub const NT_S390_TODCMP: u32 = 770;
1917pub const NT_S390_TODPREG: u32 = 771;
1918pub const NT_S390_CTRS: u32 = 772;
1919pub const NT_S390_PREFIX: u32 = 773;
1920pub const NT_S390_LAST_BREAK: u32 = 774;
1921pub const NT_S390_SYSTEM_CALL: u32 = 775;
1922pub const NT_S390_TDB: u32 = 776;
1923pub const NT_S390_VXRS_LOW: u32 = 777;
1924pub const NT_S390_VXRS_HIGH: u32 = 778;
1925pub const NT_S390_GS_CB: u32 = 779;
1926pub const NT_S390_GS_BC: u32 = 780;
1927pub const NT_S390_RI_CB: u32 = 781;
1928pub const NT_S390_PV_CPU_DATA: u32 = 782;
1929pub const NT_ARM_VFP: u32 = 1024;
1930pub const NT_ARM_TLS: u32 = 1025;
1931pub const NT_ARM_HW_BREAK: u32 = 1026;
1932pub const NT_ARM_HW_WATCH: u32 = 1027;
1933pub const NT_ARM_SYSTEM_CALL: u32 = 1028;
1934pub const NT_ARM_SVE: u32 = 1029;
1935pub const NT_ARM_PAC_MASK: u32 = 1030;
1936pub const NT_ARM_PACA_KEYS: u32 = 1031;
1937pub const NT_ARM_PACG_KEYS: u32 = 1032;
1938pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033;
1939pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034;
1940pub const NT_ARM_SSVE: u32 = 1035;
1941pub const NT_ARM_ZA: u32 = 1036;
1942pub const NT_ARM_ZT: u32 = 1037;
1943pub const NT_ARM_FPMR: u32 = 1038;
1944pub const NT_ARM_POE: u32 = 1039;
1945pub const NT_ARC_V2: u32 = 1536;
1946pub const NT_VMCOREDD: u32 = 1792;
1947pub const NT_MIPS_DSP: u32 = 2048;
1948pub const NT_MIPS_FP_MODE: u32 = 2049;
1949pub const NT_MIPS_MSA: u32 = 2050;
1950pub const NT_RISCV_CSR: u32 = 2304;
1951pub const NT_RISCV_VECTOR: u32 = 2305;
1952pub const NT_LOONGARCH_CPUCFG: u32 = 2560;
1953pub const NT_LOONGARCH_CSR: u32 = 2561;
1954pub const NT_LOONGARCH_LSX: u32 = 2562;
1955pub const NT_LOONGARCH_LASX: u32 = 2563;
1956pub const NT_LOONGARCH_LBT: u32 = 2564;
1957pub const NT_LOONGARCH_HW_BREAK: u32 = 2565;
1958pub const NT_LOONGARCH_HW_WATCH: u32 = 2566;
1959pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5;
1960pub const GNU_PROPERTY_AARCH64_FEATURE_1_AND: u32 = 3221225472;
1961pub const GNU_PROPERTY_AARCH64_FEATURE_1_BTI: u32 = 1;
1962pub const EPERM: u32 = 1;
1963pub const ENOENT: u32 = 2;
1964pub const ESRCH: u32 = 3;
1965pub const EINTR: u32 = 4;
1966pub const EIO: u32 = 5;
1967pub const ENXIO: u32 = 6;
1968pub const E2BIG: u32 = 7;
1969pub const ENOEXEC: u32 = 8;
1970pub const EBADF: u32 = 9;
1971pub const ECHILD: u32 = 10;
1972pub const EAGAIN: u32 = 11;
1973pub const ENOMEM: u32 = 12;
1974pub const EACCES: u32 = 13;
1975pub const EFAULT: u32 = 14;
1976pub const ENOTBLK: u32 = 15;
1977pub const EBUSY: u32 = 16;
1978pub const EEXIST: u32 = 17;
1979pub const EXDEV: u32 = 18;
1980pub const ENODEV: u32 = 19;
1981pub const ENOTDIR: u32 = 20;
1982pub const EISDIR: u32 = 21;
1983pub const EINVAL: u32 = 22;
1984pub const ENFILE: u32 = 23;
1985pub const EMFILE: u32 = 24;
1986pub const ENOTTY: u32 = 25;
1987pub const ETXTBSY: u32 = 26;
1988pub const EFBIG: u32 = 27;
1989pub const ENOSPC: u32 = 28;
1990pub const ESPIPE: u32 = 29;
1991pub const EROFS: u32 = 30;
1992pub const EMLINK: u32 = 31;
1993pub const EPIPE: u32 = 32;
1994pub const EDOM: u32 = 33;
1995pub const ERANGE: u32 = 34;
1996pub const EDEADLK: u32 = 35;
1997pub const ENAMETOOLONG: u32 = 36;
1998pub const ENOLCK: u32 = 37;
1999pub const ENOSYS: u32 = 38;
2000pub const ENOTEMPTY: u32 = 39;
2001pub const ELOOP: u32 = 40;
2002pub const EWOULDBLOCK: u32 = 11;
2003pub const ENOMSG: u32 = 42;
2004pub const EIDRM: u32 = 43;
2005pub const ECHRNG: u32 = 44;
2006pub const EL2NSYNC: u32 = 45;
2007pub const EL3HLT: u32 = 46;
2008pub const EL3RST: u32 = 47;
2009pub const ELNRNG: u32 = 48;
2010pub const EUNATCH: u32 = 49;
2011pub const ENOCSI: u32 = 50;
2012pub const EL2HLT: u32 = 51;
2013pub const EBADE: u32 = 52;
2014pub const EBADR: u32 = 53;
2015pub const EXFULL: u32 = 54;
2016pub const ENOANO: u32 = 55;
2017pub const EBADRQC: u32 = 56;
2018pub const EBADSLT: u32 = 57;
2019pub const EDEADLOCK: u32 = 35;
2020pub const EBFONT: u32 = 59;
2021pub const ENOSTR: u32 = 60;
2022pub const ENODATA: u32 = 61;
2023pub const ETIME: u32 = 62;
2024pub const ENOSR: u32 = 63;
2025pub const ENONET: u32 = 64;
2026pub const ENOPKG: u32 = 65;
2027pub const EREMOTE: u32 = 66;
2028pub const ENOLINK: u32 = 67;
2029pub const EADV: u32 = 68;
2030pub const ESRMNT: u32 = 69;
2031pub const ECOMM: u32 = 70;
2032pub const EPROTO: u32 = 71;
2033pub const EMULTIHOP: u32 = 72;
2034pub const EDOTDOT: u32 = 73;
2035pub const EBADMSG: u32 = 74;
2036pub const EOVERFLOW: u32 = 75;
2037pub const ENOTUNIQ: u32 = 76;
2038pub const EBADFD: u32 = 77;
2039pub const EREMCHG: u32 = 78;
2040pub const ELIBACC: u32 = 79;
2041pub const ELIBBAD: u32 = 80;
2042pub const ELIBSCN: u32 = 81;
2043pub const ELIBMAX: u32 = 82;
2044pub const ELIBEXEC: u32 = 83;
2045pub const EILSEQ: u32 = 84;
2046pub const ERESTART: u32 = 85;
2047pub const ESTRPIPE: u32 = 86;
2048pub const EUSERS: u32 = 87;
2049pub const ENOTSOCK: u32 = 88;
2050pub const EDESTADDRREQ: u32 = 89;
2051pub const EMSGSIZE: u32 = 90;
2052pub const EPROTOTYPE: u32 = 91;
2053pub const ENOPROTOOPT: u32 = 92;
2054pub const EPROTONOSUPPORT: u32 = 93;
2055pub const ESOCKTNOSUPPORT: u32 = 94;
2056pub const EOPNOTSUPP: u32 = 95;
2057pub const EPFNOSUPPORT: u32 = 96;
2058pub const EAFNOSUPPORT: u32 = 97;
2059pub const EADDRINUSE: u32 = 98;
2060pub const EADDRNOTAVAIL: u32 = 99;
2061pub const ENETDOWN: u32 = 100;
2062pub const ENETUNREACH: u32 = 101;
2063pub const ENETRESET: u32 = 102;
2064pub const ECONNABORTED: u32 = 103;
2065pub const ECONNRESET: u32 = 104;
2066pub const ENOBUFS: u32 = 105;
2067pub const EISCONN: u32 = 106;
2068pub const ENOTCONN: u32 = 107;
2069pub const ESHUTDOWN: u32 = 108;
2070pub const ETOOMANYREFS: u32 = 109;
2071pub const ETIMEDOUT: u32 = 110;
2072pub const ECONNREFUSED: u32 = 111;
2073pub const EHOSTDOWN: u32 = 112;
2074pub const EHOSTUNREACH: u32 = 113;
2075pub const EALREADY: u32 = 114;
2076pub const EINPROGRESS: u32 = 115;
2077pub const ESTALE: u32 = 116;
2078pub const EUCLEAN: u32 = 117;
2079pub const ENOTNAM: u32 = 118;
2080pub const ENAVAIL: u32 = 119;
2081pub const EISNAM: u32 = 120;
2082pub const EREMOTEIO: u32 = 121;
2083pub const EDQUOT: u32 = 122;
2084pub const ENOMEDIUM: u32 = 123;
2085pub const EMEDIUMTYPE: u32 = 124;
2086pub const ECANCELED: u32 = 125;
2087pub const ENOKEY: u32 = 126;
2088pub const EKEYEXPIRED: u32 = 127;
2089pub const EKEYREVOKED: u32 = 128;
2090pub const EKEYREJECTED: u32 = 129;
2091pub const EOWNERDEAD: u32 = 130;
2092pub const ENOTRECOVERABLE: u32 = 131;
2093pub const ERFKILL: u32 = 132;
2094pub const EHWPOISON: u32 = 133;
2095pub const F_GETLK64: u32 = 12;
2096pub const F_SETLK64: u32 = 13;
2097pub const F_SETLKW64: u32 = 14;
2098pub const O_ACCMODE: u32 = 3;
2099pub const O_RDONLY: u32 = 0;
2100pub const O_WRONLY: u32 = 1;
2101pub const O_RDWR: u32 = 2;
2102pub const O_CREAT: u32 = 64;
2103pub const O_EXCL: u32 = 128;
2104pub const O_NOCTTY: u32 = 256;
2105pub const O_TRUNC: u32 = 512;
2106pub const O_APPEND: u32 = 1024;
2107pub const O_NONBLOCK: u32 = 2048;
2108pub const O_DSYNC: u32 = 4096;
2109pub const FASYNC: u32 = 8192;
2110pub const O_DIRECT: u32 = 16384;
2111pub const O_LARGEFILE: u32 = 32768;
2112pub const O_DIRECTORY: u32 = 65536;
2113pub const O_NOFOLLOW: u32 = 131072;
2114pub const O_NOATIME: u32 = 262144;
2115pub const O_CLOEXEC: u32 = 524288;
2116pub const __O_SYNC: u32 = 1048576;
2117pub const O_SYNC: u32 = 1052672;
2118pub const O_PATH: u32 = 2097152;
2119pub const __O_TMPFILE: u32 = 4194304;
2120pub const O_TMPFILE: u32 = 4259840;
2121pub const O_NDELAY: u32 = 2048;
2122pub const F_DUPFD: u32 = 0;
2123pub const F_GETFD: u32 = 1;
2124pub const F_SETFD: u32 = 2;
2125pub const F_GETFL: u32 = 3;
2126pub const F_SETFL: u32 = 4;
2127pub const F_GETLK: u32 = 5;
2128pub const F_SETLK: u32 = 6;
2129pub const F_SETLKW: u32 = 7;
2130pub const F_SETOWN: u32 = 8;
2131pub const F_GETOWN: u32 = 9;
2132pub const F_SETSIG: u32 = 10;
2133pub const F_GETSIG: u32 = 11;
2134pub const F_SETOWN_EX: u32 = 15;
2135pub const F_GETOWN_EX: u32 = 16;
2136pub const F_GETOWNER_UIDS: u32 = 17;
2137pub const F_OFD_GETLK: u32 = 36;
2138pub const F_OFD_SETLK: u32 = 37;
2139pub const F_OFD_SETLKW: u32 = 38;
2140pub const F_OWNER_TID: u32 = 0;
2141pub const F_OWNER_PID: u32 = 1;
2142pub const F_OWNER_PGRP: u32 = 2;
2143pub const FD_CLOEXEC: u32 = 1;
2144pub const F_RDLCK: u32 = 0;
2145pub const F_WRLCK: u32 = 1;
2146pub const F_UNLCK: u32 = 2;
2147pub const F_EXLCK: u32 = 4;
2148pub const F_SHLCK: u32 = 8;
2149pub const LOCK_SH: u32 = 1;
2150pub const LOCK_EX: u32 = 2;
2151pub const LOCK_NB: u32 = 4;
2152pub const LOCK_UN: u32 = 8;
2153pub const LOCK_MAND: u32 = 32;
2154pub const LOCK_READ: u32 = 64;
2155pub const LOCK_WRITE: u32 = 128;
2156pub const LOCK_RW: u32 = 192;
2157pub const F_LINUX_SPECIFIC_BASE: u32 = 1024;
2158pub const RESOLVE_NO_XDEV: u32 = 1;
2159pub const RESOLVE_NO_MAGICLINKS: u32 = 2;
2160pub const RESOLVE_NO_SYMLINKS: u32 = 4;
2161pub const RESOLVE_BENEATH: u32 = 8;
2162pub const RESOLVE_IN_ROOT: u32 = 16;
2163pub const RESOLVE_CACHED: u32 = 32;
2164pub const F_SETLEASE: u32 = 1024;
2165pub const F_GETLEASE: u32 = 1025;
2166pub const F_NOTIFY: u32 = 1026;
2167pub const F_DUPFD_QUERY: u32 = 1027;
2168pub const F_CREATED_QUERY: u32 = 1028;
2169pub const F_CANCELLK: u32 = 1029;
2170pub const F_DUPFD_CLOEXEC: u32 = 1030;
2171pub const F_SETPIPE_SZ: u32 = 1031;
2172pub const F_GETPIPE_SZ: u32 = 1032;
2173pub const F_ADD_SEALS: u32 = 1033;
2174pub const F_GET_SEALS: u32 = 1034;
2175pub const F_SEAL_SEAL: u32 = 1;
2176pub const F_SEAL_SHRINK: u32 = 2;
2177pub const F_SEAL_GROW: u32 = 4;
2178pub const F_SEAL_WRITE: u32 = 8;
2179pub const F_SEAL_FUTURE_WRITE: u32 = 16;
2180pub const F_SEAL_EXEC: u32 = 32;
2181pub const F_GET_RW_HINT: u32 = 1035;
2182pub const F_SET_RW_HINT: u32 = 1036;
2183pub const F_GET_FILE_RW_HINT: u32 = 1037;
2184pub const F_SET_FILE_RW_HINT: u32 = 1038;
2185pub const RWH_WRITE_LIFE_NOT_SET: u32 = 0;
2186pub const RWH_WRITE_LIFE_NONE: u32 = 1;
2187pub const RWH_WRITE_LIFE_SHORT: u32 = 2;
2188pub const RWH_WRITE_LIFE_MEDIUM: u32 = 3;
2189pub const RWH_WRITE_LIFE_LONG: u32 = 4;
2190pub const RWH_WRITE_LIFE_EXTREME: u32 = 5;
2191pub const RWF_WRITE_LIFE_NOT_SET: u32 = 0;
2192pub const DN_ACCESS: u32 = 1;
2193pub const DN_MODIFY: u32 = 2;
2194pub const DN_CREATE: u32 = 4;
2195pub const DN_DELETE: u32 = 8;
2196pub const DN_RENAME: u32 = 16;
2197pub const DN_ATTRIB: u32 = 32;
2198pub const DN_MULTISHOT: u32 = 2147483648;
2199pub const AT_FDCWD: i32 = -100;
2200pub const AT_SYMLINK_NOFOLLOW: u32 = 256;
2201pub const AT_SYMLINK_FOLLOW: u32 = 1024;
2202pub const AT_NO_AUTOMOUNT: u32 = 2048;
2203pub const AT_EMPTY_PATH: u32 = 4096;
2204pub const AT_STATX_SYNC_TYPE: u32 = 24576;
2205pub const AT_STATX_SYNC_AS_STAT: u32 = 0;
2206pub const AT_STATX_FORCE_SYNC: u32 = 8192;
2207pub const AT_STATX_DONT_SYNC: u32 = 16384;
2208pub const AT_RECURSIVE: u32 = 32768;
2209pub const AT_RENAME_NOREPLACE: u32 = 1;
2210pub const AT_RENAME_EXCHANGE: u32 = 2;
2211pub const AT_RENAME_WHITEOUT: u32 = 4;
2212pub const AT_EACCESS: u32 = 512;
2213pub const AT_REMOVEDIR: u32 = 512;
2214pub const AT_HANDLE_FID: u32 = 512;
2215pub const AT_HANDLE_MNT_ID_UNIQUE: u32 = 1;
2216pub const EPOLL_CLOEXEC: u32 = 524288;
2217pub const EPOLL_CTL_ADD: u32 = 1;
2218pub const EPOLL_CTL_DEL: u32 = 2;
2219pub const EPOLL_CTL_MOD: u32 = 3;
2220pub const EPOLL_IOC_TYPE: u32 = 138;
2221pub const POSIX_FADV_NORMAL: u32 = 0;
2222pub const POSIX_FADV_RANDOM: u32 = 1;
2223pub const POSIX_FADV_SEQUENTIAL: u32 = 2;
2224pub const POSIX_FADV_WILLNEED: u32 = 3;
2225pub const POSIX_FADV_DONTNEED: u32 = 4;
2226pub const POSIX_FADV_NOREUSE: u32 = 5;
2227pub const FALLOC_FL_ALLOCATE_RANGE: u32 = 0;
2228pub const FALLOC_FL_KEEP_SIZE: u32 = 1;
2229pub const FALLOC_FL_PUNCH_HOLE: u32 = 2;
2230pub const FALLOC_FL_NO_HIDE_STALE: u32 = 4;
2231pub const FALLOC_FL_COLLAPSE_RANGE: u32 = 8;
2232pub const FALLOC_FL_ZERO_RANGE: u32 = 16;
2233pub const FALLOC_FL_INSERT_RANGE: u32 = 32;
2234pub const FALLOC_FL_UNSHARE_RANGE: u32 = 64;
2235pub const I2C_M_RD: u32 = 1;
2236pub const I2C_M_TEN: u32 = 16;
2237pub const I2C_M_DMA_SAFE: u32 = 512;
2238pub const I2C_M_RECV_LEN: u32 = 1024;
2239pub const I2C_M_NO_RD_ACK: u32 = 2048;
2240pub const I2C_M_IGNORE_NAK: u32 = 4096;
2241pub const I2C_M_REV_DIR_ADDR: u32 = 8192;
2242pub const I2C_M_NOSTART: u32 = 16384;
2243pub const I2C_M_STOP: u32 = 32768;
2244pub const I2C_FUNC_I2C: u32 = 1;
2245pub const I2C_FUNC_10BIT_ADDR: u32 = 2;
2246pub const I2C_FUNC_PROTOCOL_MANGLING: u32 = 4;
2247pub const I2C_FUNC_SMBUS_PEC: u32 = 8;
2248pub const I2C_FUNC_NOSTART: u32 = 16;
2249pub const I2C_FUNC_SLAVE: u32 = 32;
2250pub const I2C_FUNC_SMBUS_BLOCK_PROC_CALL: u32 = 32768;
2251pub const I2C_FUNC_SMBUS_QUICK: u32 = 65536;
2252pub const I2C_FUNC_SMBUS_READ_BYTE: u32 = 131072;
2253pub const I2C_FUNC_SMBUS_WRITE_BYTE: u32 = 262144;
2254pub const I2C_FUNC_SMBUS_READ_BYTE_DATA: u32 = 524288;
2255pub const I2C_FUNC_SMBUS_WRITE_BYTE_DATA: u32 = 1048576;
2256pub const I2C_FUNC_SMBUS_READ_WORD_DATA: u32 = 2097152;
2257pub const I2C_FUNC_SMBUS_WRITE_WORD_DATA: u32 = 4194304;
2258pub const I2C_FUNC_SMBUS_PROC_CALL: u32 = 8388608;
2259pub const I2C_FUNC_SMBUS_READ_BLOCK_DATA: u32 = 16777216;
2260pub const I2C_FUNC_SMBUS_WRITE_BLOCK_DATA: u32 = 33554432;
2261pub const I2C_FUNC_SMBUS_READ_I2C_BLOCK: u32 = 67108864;
2262pub const I2C_FUNC_SMBUS_WRITE_I2C_BLOCK: u32 = 134217728;
2263pub const I2C_FUNC_SMBUS_HOST_NOTIFY: u32 = 268435456;
2264pub const I2C_FUNC_SMBUS_BYTE: u32 = 393216;
2265pub const I2C_FUNC_SMBUS_BYTE_DATA: u32 = 1572864;
2266pub const I2C_FUNC_SMBUS_WORD_DATA: u32 = 6291456;
2267pub const I2C_FUNC_SMBUS_BLOCK_DATA: u32 = 50331648;
2268pub const I2C_FUNC_SMBUS_I2C_BLOCK: u32 = 201326592;
2269pub const I2C_FUNC_SMBUS_EMUL: u32 = 251592712;
2270pub const I2C_FUNC_SMBUS_EMUL_ALL: u32 = 268402696;
2271pub const I2C_SMBUS_BLOCK_MAX: u32 = 32;
2272pub const I2C_SMBUS_READ: u32 = 1;
2273pub const I2C_SMBUS_WRITE: u32 = 0;
2274pub const I2C_SMBUS_QUICK: u32 = 0;
2275pub const I2C_SMBUS_BYTE: u32 = 1;
2276pub const I2C_SMBUS_BYTE_DATA: u32 = 2;
2277pub const I2C_SMBUS_WORD_DATA: u32 = 3;
2278pub const I2C_SMBUS_PROC_CALL: u32 = 4;
2279pub const I2C_SMBUS_BLOCK_DATA: u32 = 5;
2280pub const I2C_SMBUS_I2C_BLOCK_BROKEN: u32 = 6;
2281pub const I2C_SMBUS_BLOCK_PROC_CALL: u32 = 7;
2282pub const I2C_SMBUS_I2C_BLOCK_DATA: u32 = 8;
2283pub const FB_MAX: u32 = 32;
2284pub const FBIOGET_VSCREENINFO: u32 = 17920;
2285pub const FBIOPUT_VSCREENINFO: u32 = 17921;
2286pub const FBIOGET_FSCREENINFO: u32 = 17922;
2287pub const FBIOGETCMAP: u32 = 17924;
2288pub const FBIOPUTCMAP: u32 = 17925;
2289pub const FBIOPAN_DISPLAY: u32 = 17926;
2290pub const FBIOGET_CON2FBMAP: u32 = 17935;
2291pub const FBIOPUT_CON2FBMAP: u32 = 17936;
2292pub const FBIOBLANK: u32 = 17937;
2293pub const FBIO_ALLOC: u32 = 17939;
2294pub const FBIO_FREE: u32 = 17940;
2295pub const FBIOGET_GLYPH: u32 = 17941;
2296pub const FBIOGET_HWCINFO: u32 = 17942;
2297pub const FBIOPUT_MODEINFO: u32 = 17943;
2298pub const FBIOGET_DISPINFO: u32 = 17944;
2299pub const FB_TYPE_PACKED_PIXELS: u32 = 0;
2300pub const FB_TYPE_PLANES: u32 = 1;
2301pub const FB_TYPE_INTERLEAVED_PLANES: u32 = 2;
2302pub const FB_TYPE_TEXT: u32 = 3;
2303pub const FB_TYPE_VGA_PLANES: u32 = 4;
2304pub const FB_TYPE_FOURCC: u32 = 5;
2305pub const FB_AUX_TEXT_MDA: u32 = 0;
2306pub const FB_AUX_TEXT_CGA: u32 = 1;
2307pub const FB_AUX_TEXT_S3_MMIO: u32 = 2;
2308pub const FB_AUX_TEXT_MGA_STEP16: u32 = 3;
2309pub const FB_AUX_TEXT_MGA_STEP8: u32 = 4;
2310pub const FB_AUX_TEXT_SVGA_GROUP: u32 = 8;
2311pub const FB_AUX_TEXT_SVGA_MASK: u32 = 7;
2312pub const FB_AUX_TEXT_SVGA_STEP2: u32 = 8;
2313pub const FB_AUX_TEXT_SVGA_STEP4: u32 = 9;
2314pub const FB_AUX_TEXT_SVGA_STEP8: u32 = 10;
2315pub const FB_AUX_TEXT_SVGA_STEP16: u32 = 11;
2316pub const FB_AUX_TEXT_SVGA_LAST: u32 = 15;
2317pub const FB_AUX_VGA_PLANES_VGA4: u32 = 0;
2318pub const FB_AUX_VGA_PLANES_CFB4: u32 = 1;
2319pub const FB_AUX_VGA_PLANES_CFB8: u32 = 2;
2320pub const FB_VISUAL_MONO01: u32 = 0;
2321pub const FB_VISUAL_MONO10: u32 = 1;
2322pub const FB_VISUAL_TRUECOLOR: u32 = 2;
2323pub const FB_VISUAL_PSEUDOCOLOR: u32 = 3;
2324pub const FB_VISUAL_DIRECTCOLOR: u32 = 4;
2325pub const FB_VISUAL_STATIC_PSEUDOCOLOR: u32 = 5;
2326pub const FB_VISUAL_FOURCC: u32 = 6;
2327pub const FB_ACCEL_NONE: u32 = 0;
2328pub const FB_ACCEL_ATARIBLITT: u32 = 1;
2329pub const FB_ACCEL_AMIGABLITT: u32 = 2;
2330pub const FB_ACCEL_S3_TRIO64: u32 = 3;
2331pub const FB_ACCEL_NCR_77C32BLT: u32 = 4;
2332pub const FB_ACCEL_S3_VIRGE: u32 = 5;
2333pub const FB_ACCEL_ATI_MACH64GX: u32 = 6;
2334pub const FB_ACCEL_DEC_TGA: u32 = 7;
2335pub const FB_ACCEL_ATI_MACH64CT: u32 = 8;
2336pub const FB_ACCEL_ATI_MACH64VT: u32 = 9;
2337pub const FB_ACCEL_ATI_MACH64GT: u32 = 10;
2338pub const FB_ACCEL_SUN_CREATOR: u32 = 11;
2339pub const FB_ACCEL_SUN_CGSIX: u32 = 12;
2340pub const FB_ACCEL_SUN_LEO: u32 = 13;
2341pub const FB_ACCEL_IMS_TWINTURBO: u32 = 14;
2342pub const FB_ACCEL_3DLABS_PERMEDIA2: u32 = 15;
2343pub const FB_ACCEL_MATROX_MGA2064W: u32 = 16;
2344pub const FB_ACCEL_MATROX_MGA1064SG: u32 = 17;
2345pub const FB_ACCEL_MATROX_MGA2164W: u32 = 18;
2346pub const FB_ACCEL_MATROX_MGA2164W_AGP: u32 = 19;
2347pub const FB_ACCEL_MATROX_MGAG100: u32 = 20;
2348pub const FB_ACCEL_MATROX_MGAG200: u32 = 21;
2349pub const FB_ACCEL_SUN_CG14: u32 = 22;
2350pub const FB_ACCEL_SUN_BWTWO: u32 = 23;
2351pub const FB_ACCEL_SUN_CGTHREE: u32 = 24;
2352pub const FB_ACCEL_SUN_TCX: u32 = 25;
2353pub const FB_ACCEL_MATROX_MGAG400: u32 = 26;
2354pub const FB_ACCEL_NV3: u32 = 27;
2355pub const FB_ACCEL_NV4: u32 = 28;
2356pub const FB_ACCEL_NV5: u32 = 29;
2357pub const FB_ACCEL_CT_6555x: u32 = 30;
2358pub const FB_ACCEL_3DFX_BANSHEE: u32 = 31;
2359pub const FB_ACCEL_ATI_RAGE128: u32 = 32;
2360pub const FB_ACCEL_IGS_CYBER2000: u32 = 33;
2361pub const FB_ACCEL_IGS_CYBER2010: u32 = 34;
2362pub const FB_ACCEL_IGS_CYBER5000: u32 = 35;
2363pub const FB_ACCEL_SIS_GLAMOUR: u32 = 36;
2364pub const FB_ACCEL_3DLABS_PERMEDIA3: u32 = 37;
2365pub const FB_ACCEL_ATI_RADEON: u32 = 38;
2366pub const FB_ACCEL_I810: u32 = 39;
2367pub const FB_ACCEL_SIS_GLAMOUR_2: u32 = 40;
2368pub const FB_ACCEL_SIS_XABRE: u32 = 41;
2369pub const FB_ACCEL_I830: u32 = 42;
2370pub const FB_ACCEL_NV_10: u32 = 43;
2371pub const FB_ACCEL_NV_20: u32 = 44;
2372pub const FB_ACCEL_NV_30: u32 = 45;
2373pub const FB_ACCEL_NV_40: u32 = 46;
2374pub const FB_ACCEL_XGI_VOLARI_V: u32 = 47;
2375pub const FB_ACCEL_XGI_VOLARI_Z: u32 = 48;
2376pub const FB_ACCEL_OMAP1610: u32 = 49;
2377pub const FB_ACCEL_TRIDENT_TGUI: u32 = 50;
2378pub const FB_ACCEL_TRIDENT_3DIMAGE: u32 = 51;
2379pub const FB_ACCEL_TRIDENT_BLADE3D: u32 = 52;
2380pub const FB_ACCEL_TRIDENT_BLADEXP: u32 = 53;
2381pub const FB_ACCEL_CIRRUS_ALPINE: u32 = 53;
2382pub const FB_ACCEL_NEOMAGIC_NM2070: u32 = 90;
2383pub const FB_ACCEL_NEOMAGIC_NM2090: u32 = 91;
2384pub const FB_ACCEL_NEOMAGIC_NM2093: u32 = 92;
2385pub const FB_ACCEL_NEOMAGIC_NM2097: u32 = 93;
2386pub const FB_ACCEL_NEOMAGIC_NM2160: u32 = 94;
2387pub const FB_ACCEL_NEOMAGIC_NM2200: u32 = 95;
2388pub const FB_ACCEL_NEOMAGIC_NM2230: u32 = 96;
2389pub const FB_ACCEL_NEOMAGIC_NM2360: u32 = 97;
2390pub const FB_ACCEL_NEOMAGIC_NM2380: u32 = 98;
2391pub const FB_ACCEL_PXA3XX: u32 = 99;
2392pub const FB_ACCEL_SAVAGE4: u32 = 128;
2393pub const FB_ACCEL_SAVAGE3D: u32 = 129;
2394pub const FB_ACCEL_SAVAGE3D_MV: u32 = 130;
2395pub const FB_ACCEL_SAVAGE2000: u32 = 131;
2396pub const FB_ACCEL_SAVAGE_MX_MV: u32 = 132;
2397pub const FB_ACCEL_SAVAGE_MX: u32 = 133;
2398pub const FB_ACCEL_SAVAGE_IX_MV: u32 = 134;
2399pub const FB_ACCEL_SAVAGE_IX: u32 = 135;
2400pub const FB_ACCEL_PROSAVAGE_PM: u32 = 136;
2401pub const FB_ACCEL_PROSAVAGE_KM: u32 = 137;
2402pub const FB_ACCEL_S3TWISTER_P: u32 = 138;
2403pub const FB_ACCEL_S3TWISTER_K: u32 = 139;
2404pub const FB_ACCEL_SUPERSAVAGE: u32 = 140;
2405pub const FB_ACCEL_PROSAVAGE_DDR: u32 = 141;
2406pub const FB_ACCEL_PROSAVAGE_DDRK: u32 = 142;
2407pub const FB_ACCEL_PUV3_UNIGFX: u32 = 160;
2408pub const FB_CAP_FOURCC: u32 = 1;
2409pub const FB_NONSTD_HAM: u32 = 1;
2410pub const FB_NONSTD_REV_PIX_IN_B: u32 = 2;
2411pub const FB_ACTIVATE_NOW: u32 = 0;
2412pub const FB_ACTIVATE_NXTOPEN: u32 = 1;
2413pub const FB_ACTIVATE_TEST: u32 = 2;
2414pub const FB_ACTIVATE_MASK: u32 = 15;
2415pub const FB_ACTIVATE_VBL: u32 = 16;
2416pub const FB_CHANGE_CMAP_VBL: u32 = 32;
2417pub const FB_ACTIVATE_ALL: u32 = 64;
2418pub const FB_ACTIVATE_FORCE: u32 = 128;
2419pub const FB_ACTIVATE_INV_MODE: u32 = 256;
2420pub const FB_ACTIVATE_KD_TEXT: u32 = 512;
2421pub const FB_ACCELF_TEXT: u32 = 1;
2422pub const FB_SYNC_HOR_HIGH_ACT: u32 = 1;
2423pub const FB_SYNC_VERT_HIGH_ACT: u32 = 2;
2424pub const FB_SYNC_EXT: u32 = 4;
2425pub const FB_SYNC_COMP_HIGH_ACT: u32 = 8;
2426pub const FB_SYNC_BROADCAST: u32 = 16;
2427pub const FB_SYNC_ON_GREEN: u32 = 32;
2428pub const FB_VMODE_NONINTERLACED: u32 = 0;
2429pub const FB_VMODE_INTERLACED: u32 = 1;
2430pub const FB_VMODE_DOUBLE: u32 = 2;
2431pub const FB_VMODE_ODD_FLD_FIRST: u32 = 4;
2432pub const FB_VMODE_MASK: u32 = 255;
2433pub const FB_VMODE_YWRAP: u32 = 256;
2434pub const FB_VMODE_SMOOTH_XPAN: u32 = 512;
2435pub const FB_VMODE_CONUPDATE: u32 = 512;
2436pub const FB_ROTATE_UR: u32 = 0;
2437pub const FB_ROTATE_CW: u32 = 1;
2438pub const FB_ROTATE_UD: u32 = 2;
2439pub const FB_ROTATE_CCW: u32 = 3;
2440pub const FB_VBLANK_VBLANKING: u32 = 1;
2441pub const FB_VBLANK_HBLANKING: u32 = 2;
2442pub const FB_VBLANK_HAVE_VBLANK: u32 = 4;
2443pub const FB_VBLANK_HAVE_HBLANK: u32 = 8;
2444pub const FB_VBLANK_HAVE_COUNT: u32 = 16;
2445pub const FB_VBLANK_HAVE_VCOUNT: u32 = 32;
2446pub const FB_VBLANK_HAVE_HCOUNT: u32 = 64;
2447pub const FB_VBLANK_VSYNCING: u32 = 128;
2448pub const FB_VBLANK_HAVE_VSYNC: u32 = 256;
2449pub const ROP_COPY: u32 = 0;
2450pub const ROP_XOR: u32 = 1;
2451pub const FB_CUR_SETIMAGE: u32 = 1;
2452pub const FB_CUR_SETPOS: u32 = 2;
2453pub const FB_CUR_SETHOT: u32 = 4;
2454pub const FB_CUR_SETCMAP: u32 = 8;
2455pub const FB_CUR_SETSHAPE: u32 = 16;
2456pub const FB_CUR_SETSIZE: u32 = 32;
2457pub const FB_CUR_SETALL: u32 = 255;
2458pub const FB_BACKLIGHT_LEVELS: u32 = 128;
2459pub const FB_BACKLIGHT_MAX: u32 = 255;
2460pub const NETLINK_ROUTE: u32 = 0;
2461pub const NETLINK_UNUSED: u32 = 1;
2462pub const NETLINK_USERSOCK: u32 = 2;
2463pub const NETLINK_FIREWALL: u32 = 3;
2464pub const NETLINK_SOCK_DIAG: u32 = 4;
2465pub const NETLINK_NFLOG: u32 = 5;
2466pub const NETLINK_XFRM: u32 = 6;
2467pub const NETLINK_SELINUX: u32 = 7;
2468pub const NETLINK_ISCSI: u32 = 8;
2469pub const NETLINK_AUDIT: u32 = 9;
2470pub const NETLINK_FIB_LOOKUP: u32 = 10;
2471pub const NETLINK_CONNECTOR: u32 = 11;
2472pub const NETLINK_NETFILTER: u32 = 12;
2473pub const NETLINK_IP6_FW: u32 = 13;
2474pub const NETLINK_DNRTMSG: u32 = 14;
2475pub const NETLINK_KOBJECT_UEVENT: u32 = 15;
2476pub const NETLINK_GENERIC: u32 = 16;
2477pub const NETLINK_SCSITRANSPORT: u32 = 18;
2478pub const NETLINK_ECRYPTFS: u32 = 19;
2479pub const NETLINK_RDMA: u32 = 20;
2480pub const NETLINK_CRYPTO: u32 = 21;
2481pub const NETLINK_SMC: u32 = 22;
2482pub const NETLINK_INET_DIAG: u32 = 4;
2483pub const MAX_LINKS: u32 = 32;
2484pub const NLM_F_REQUEST: u32 = 1;
2485pub const NLM_F_MULTI: u32 = 2;
2486pub const NLM_F_ACK: u32 = 4;
2487pub const NLM_F_ECHO: u32 = 8;
2488pub const NLM_F_DUMP_INTR: u32 = 16;
2489pub const NLM_F_DUMP_FILTERED: u32 = 32;
2490pub const NLM_F_ROOT: u32 = 256;
2491pub const NLM_F_MATCH: u32 = 512;
2492pub const NLM_F_ATOMIC: u32 = 1024;
2493pub const NLM_F_DUMP: u32 = 768;
2494pub const NLM_F_REPLACE: u32 = 256;
2495pub const NLM_F_EXCL: u32 = 512;
2496pub const NLM_F_CREATE: u32 = 1024;
2497pub const NLM_F_APPEND: u32 = 2048;
2498pub const NLM_F_NONREC: u32 = 256;
2499pub const NLM_F_BULK: u32 = 512;
2500pub const NLM_F_CAPPED: u32 = 256;
2501pub const NLM_F_ACK_TLVS: u32 = 512;
2502pub const NLMSG_ALIGNTO: u32 = 4;
2503pub const NLMSG_NOOP: u32 = 1;
2504pub const NLMSG_ERROR: u32 = 2;
2505pub const NLMSG_DONE: u32 = 3;
2506pub const NLMSG_OVERRUN: u32 = 4;
2507pub const NLMSG_MIN_TYPE: u32 = 16;
2508pub const NETLINK_ADD_MEMBERSHIP: u32 = 1;
2509pub const NETLINK_DROP_MEMBERSHIP: u32 = 2;
2510pub const NETLINK_PKTINFO: u32 = 3;
2511pub const NETLINK_BROADCAST_ERROR: u32 = 4;
2512pub const NETLINK_NO_ENOBUFS: u32 = 5;
2513pub const NETLINK_RX_RING: u32 = 6;
2514pub const NETLINK_TX_RING: u32 = 7;
2515pub const NETLINK_LISTEN_ALL_NSID: u32 = 8;
2516pub const NETLINK_LIST_MEMBERSHIPS: u32 = 9;
2517pub const NETLINK_CAP_ACK: u32 = 10;
2518pub const NETLINK_EXT_ACK: u32 = 11;
2519pub const NETLINK_GET_STRICT_CHK: u32 = 12;
2520pub const NL_MMAP_MSG_ALIGNMENT: u32 = 4;
2521pub const NET_MAJOR: u32 = 36;
2522pub const NLA_F_NESTED: u32 = 32768;
2523pub const NLA_F_NET_BYTEORDER: u32 = 16384;
2524pub const NLA_TYPE_MASK: i32 = -49153;
2525pub const NLA_ALIGNTO: u32 = 4;
2526pub const MACVLAN_FLAG_NOPROMISC: u32 = 1;
2527pub const MACVLAN_FLAG_NODST: u32 = 2;
2528pub const IPVLAN_F_PRIVATE: u32 = 1;
2529pub const IPVLAN_F_VEPA: u32 = 2;
2530pub const TUNNEL_MSG_FLAG_STATS: u32 = 1;
2531pub const TUNNEL_MSG_VALID_USER_FLAGS: u32 = 1;
2532pub const MAX_VLAN_LIST_LEN: u32 = 1;
2533pub const PORT_PROFILE_MAX: u32 = 40;
2534pub const PORT_UUID_MAX: u32 = 16;
2535pub const PORT_SELF_VF: i32 = -1;
2536pub const XDP_FLAGS_UPDATE_IF_NOEXIST: u32 = 1;
2537pub const XDP_FLAGS_SKB_MODE: u32 = 2;
2538pub const XDP_FLAGS_DRV_MODE: u32 = 4;
2539pub const XDP_FLAGS_HW_MODE: u32 = 8;
2540pub const XDP_FLAGS_REPLACE: u32 = 16;
2541pub const XDP_FLAGS_MODES: u32 = 14;
2542pub const XDP_FLAGS_MASK: u32 = 31;
2543pub const RMNET_FLAGS_INGRESS_DEAGGREGATION: u32 = 1;
2544pub const RMNET_FLAGS_INGRESS_MAP_COMMANDS: u32 = 2;
2545pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV4: u32 = 4;
2546pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV4: u32 = 8;
2547pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV5: u32 = 16;
2548pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV5: u32 = 32;
2549pub const IFA_F_SECONDARY: u32 = 1;
2550pub const IFA_F_TEMPORARY: u32 = 1;
2551pub const IFA_F_NODAD: u32 = 2;
2552pub const IFA_F_OPTIMISTIC: u32 = 4;
2553pub const IFA_F_DADFAILED: u32 = 8;
2554pub const IFA_F_HOMEADDRESS: u32 = 16;
2555pub const IFA_F_DEPRECATED: u32 = 32;
2556pub const IFA_F_TENTATIVE: u32 = 64;
2557pub const IFA_F_PERMANENT: u32 = 128;
2558pub const IFA_F_MANAGETEMPADDR: u32 = 256;
2559pub const IFA_F_NOPREFIXROUTE: u32 = 512;
2560pub const IFA_F_MCAUTOJOIN: u32 = 1024;
2561pub const IFA_F_STABLE_PRIVACY: u32 = 2048;
2562pub const IFAPROT_UNSPEC: u32 = 0;
2563pub const IFAPROT_KERNEL_LO: u32 = 1;
2564pub const IFAPROT_KERNEL_RA: u32 = 2;
2565pub const IFAPROT_KERNEL_LL: u32 = 3;
2566pub const NTF_USE: u32 = 1;
2567pub const NTF_SELF: u32 = 2;
2568pub const NTF_MASTER: u32 = 4;
2569pub const NTF_PROXY: u32 = 8;
2570pub const NTF_EXT_LEARNED: u32 = 16;
2571pub const NTF_OFFLOADED: u32 = 32;
2572pub const NTF_STICKY: u32 = 64;
2573pub const NTF_ROUTER: u32 = 128;
2574pub const NTF_EXT_MANAGED: u32 = 1;
2575pub const NTF_EXT_LOCKED: u32 = 2;
2576pub const NUD_INCOMPLETE: u32 = 1;
2577pub const NUD_REACHABLE: u32 = 2;
2578pub const NUD_STALE: u32 = 4;
2579pub const NUD_DELAY: u32 = 8;
2580pub const NUD_PROBE: u32 = 16;
2581pub const NUD_FAILED: u32 = 32;
2582pub const NUD_NOARP: u32 = 64;
2583pub const NUD_PERMANENT: u32 = 128;
2584pub const NUD_NONE: u32 = 0;
2585pub const RTNL_FAMILY_IPMR: u32 = 128;
2586pub const RTNL_FAMILY_IP6MR: u32 = 129;
2587pub const RTNL_FAMILY_MAX: u32 = 129;
2588pub const RTA_ALIGNTO: u32 = 4;
2589pub const RTPROT_UNSPEC: u32 = 0;
2590pub const RTPROT_REDIRECT: u32 = 1;
2591pub const RTPROT_KERNEL: u32 = 2;
2592pub const RTPROT_BOOT: u32 = 3;
2593pub const RTPROT_STATIC: u32 = 4;
2594pub const RTPROT_GATED: u32 = 8;
2595pub const RTPROT_RA: u32 = 9;
2596pub const RTPROT_MRT: u32 = 10;
2597pub const RTPROT_ZEBRA: u32 = 11;
2598pub const RTPROT_BIRD: u32 = 12;
2599pub const RTPROT_DNROUTED: u32 = 13;
2600pub const RTPROT_XORP: u32 = 14;
2601pub const RTPROT_NTK: u32 = 15;
2602pub const RTPROT_DHCP: u32 = 16;
2603pub const RTPROT_MROUTED: u32 = 17;
2604pub const RTPROT_KEEPALIVED: u32 = 18;
2605pub const RTPROT_BABEL: u32 = 42;
2606pub const RTPROT_OPENR: u32 = 99;
2607pub const RTPROT_BGP: u32 = 186;
2608pub const RTPROT_ISIS: u32 = 187;
2609pub const RTPROT_OSPF: u32 = 188;
2610pub const RTPROT_RIP: u32 = 189;
2611pub const RTPROT_EIGRP: u32 = 192;
2612pub const RTM_F_NOTIFY: u32 = 256;
2613pub const RTM_F_CLONED: u32 = 512;
2614pub const RTM_F_EQUALIZE: u32 = 1024;
2615pub const RTM_F_PREFIX: u32 = 2048;
2616pub const RTM_F_LOOKUP_TABLE: u32 = 4096;
2617pub const RTM_F_FIB_MATCH: u32 = 8192;
2618pub const RTM_F_OFFLOAD: u32 = 16384;
2619pub const RTM_F_TRAP: u32 = 32768;
2620pub const RTM_F_OFFLOAD_FAILED: u32 = 536870912;
2621pub const RTNH_F_DEAD: u32 = 1;
2622pub const RTNH_F_PERVASIVE: u32 = 2;
2623pub const RTNH_F_ONLINK: u32 = 4;
2624pub const RTNH_F_OFFLOAD: u32 = 8;
2625pub const RTNH_F_LINKDOWN: u32 = 16;
2626pub const RTNH_F_UNRESOLVED: u32 = 32;
2627pub const RTNH_F_TRAP: u32 = 64;
2628pub const RTNH_COMPARE_MASK: u32 = 89;
2629pub const RTNH_ALIGNTO: u32 = 4;
2630pub const RTNETLINK_HAVE_PEERINFO: u32 = 1;
2631pub const RTAX_FEATURE_ECN: u32 = 1;
2632pub const RTAX_FEATURE_SACK: u32 = 2;
2633pub const RTAX_FEATURE_TIMESTAMP: u32 = 4;
2634pub const RTAX_FEATURE_ALLFRAG: u32 = 8;
2635pub const RTAX_FEATURE_TCP_USEC_TS: u32 = 16;
2636pub const RTAX_FEATURE_MASK: u32 = 31;
2637pub const TCM_IFINDEX_MAGIC_BLOCK: u32 = 4294967295;
2638pub const TCA_DUMP_FLAGS_TERSE: u32 = 1;
2639pub const RTMGRP_LINK: u32 = 1;
2640pub const RTMGRP_NOTIFY: u32 = 2;
2641pub const RTMGRP_NEIGH: u32 = 4;
2642pub const RTMGRP_TC: u32 = 8;
2643pub const RTMGRP_IPV4_IFADDR: u32 = 16;
2644pub const RTMGRP_IPV4_MROUTE: u32 = 32;
2645pub const RTMGRP_IPV4_ROUTE: u32 = 64;
2646pub const RTMGRP_IPV4_RULE: u32 = 128;
2647pub const RTMGRP_IPV6_IFADDR: u32 = 256;
2648pub const RTMGRP_IPV6_MROUTE: u32 = 512;
2649pub const RTMGRP_IPV6_ROUTE: u32 = 1024;
2650pub const RTMGRP_IPV6_IFINFO: u32 = 2048;
2651pub const RTMGRP_DECnet_IFADDR: u32 = 4096;
2652pub const RTMGRP_DECnet_ROUTE: u32 = 16384;
2653pub const RTMGRP_IPV6_PREFIX: u32 = 131072;
2654pub const TCA_FLAG_LARGE_DUMP_ON: u32 = 1;
2655pub const TCA_ACT_FLAG_LARGE_DUMP_ON: u32 = 1;
2656pub const TCA_ACT_FLAG_TERSE_DUMP: u32 = 2;
2657pub const RTEXT_FILTER_VF: u32 = 1;
2658pub const RTEXT_FILTER_BRVLAN: u32 = 2;
2659pub const RTEXT_FILTER_BRVLAN_COMPRESSED: u32 = 4;
2660pub const RTEXT_FILTER_SKIP_STATS: u32 = 8;
2661pub const RTEXT_FILTER_MRP: u32 = 16;
2662pub const RTEXT_FILTER_CFM_CONFIG: u32 = 32;
2663pub const RTEXT_FILTER_CFM_STATUS: u32 = 64;
2664pub const RTEXT_FILTER_MST: u32 = 128;
2665pub const FIB_RULE_PERMANENT: u32 = 1;
2666pub const FIB_RULE_INVERT: u32 = 2;
2667pub const FIB_RULE_UNRESOLVED: u32 = 4;
2668pub const FIB_RULE_IIF_DETACHED: u32 = 8;
2669pub const FIB_RULE_DEV_DETACHED: u32 = 8;
2670pub const FIB_RULE_OIF_DETACHED: u32 = 16;
2671pub const FIB_RULE_FIND_SADDR: u32 = 65536;
2672pub const BPF_LD: u32 = 0;
2673pub const BPF_LDX: u32 = 1;
2674pub const BPF_ST: u32 = 2;
2675pub const BPF_STX: u32 = 3;
2676pub const BPF_ALU: u32 = 4;
2677pub const BPF_JMP: u32 = 5;
2678pub const BPF_RET: u32 = 6;
2679pub const BPF_MISC: u32 = 7;
2680pub const BPF_W: u32 = 0;
2681pub const BPF_H: u32 = 8;
2682pub const BPF_B: u32 = 16;
2683pub const BPF_IMM: u32 = 0;
2684pub const BPF_ABS: u32 = 32;
2685pub const BPF_IND: u32 = 64;
2686pub const BPF_MEM: u32 = 96;
2687pub const BPF_LEN: u32 = 128;
2688pub const BPF_MSH: u32 = 160;
2689pub const BPF_ADD: u32 = 0;
2690pub const BPF_SUB: u32 = 16;
2691pub const BPF_MUL: u32 = 32;
2692pub const BPF_DIV: u32 = 48;
2693pub const BPF_OR: u32 = 64;
2694pub const BPF_AND: u32 = 80;
2695pub const BPF_LSH: u32 = 96;
2696pub const BPF_RSH: u32 = 112;
2697pub const BPF_NEG: u32 = 128;
2698pub const BPF_MOD: u32 = 144;
2699pub const BPF_XOR: u32 = 160;
2700pub const BPF_JA: u32 = 0;
2701pub const BPF_JEQ: u32 = 16;
2702pub const BPF_JGT: u32 = 32;
2703pub const BPF_JGE: u32 = 48;
2704pub const BPF_JSET: u32 = 64;
2705pub const BPF_K: u32 = 0;
2706pub const BPF_X: u32 = 8;
2707pub const BPF_MAXINSNS: u32 = 4096;
2708pub const BPF_MAJOR_VERSION: u32 = 1;
2709pub const BPF_MINOR_VERSION: u32 = 1;
2710pub const BPF_A: u32 = 16;
2711pub const BPF_TAX: u32 = 0;
2712pub const BPF_TXA: u32 = 128;
2713pub const BPF_MEMWORDS: u32 = 16;
2714pub const SKF_AD_OFF: i32 = -4096;
2715pub const SKF_AD_PROTOCOL: u32 = 0;
2716pub const SKF_AD_PKTTYPE: u32 = 4;
2717pub const SKF_AD_IFINDEX: u32 = 8;
2718pub const SKF_AD_NLATTR: u32 = 12;
2719pub const SKF_AD_NLATTR_NEST: u32 = 16;
2720pub const SKF_AD_MARK: u32 = 20;
2721pub const SKF_AD_QUEUE: u32 = 24;
2722pub const SKF_AD_HATYPE: u32 = 28;
2723pub const SKF_AD_RXHASH: u32 = 32;
2724pub const SKF_AD_CPU: u32 = 36;
2725pub const SKF_AD_ALU_XOR_X: u32 = 40;
2726pub const SKF_AD_VLAN_TAG: u32 = 44;
2727pub const SKF_AD_VLAN_TAG_PRESENT: u32 = 48;
2728pub const SKF_AD_PAY_OFFSET: u32 = 52;
2729pub const SKF_AD_RANDOM: u32 = 56;
2730pub const SKF_AD_VLAN_TPID: u32 = 60;
2731pub const SKF_AD_MAX: u32 = 64;
2732pub const SKF_NET_OFF: i32 = -1048576;
2733pub const SKF_LL_OFF: i32 = -2097152;
2734pub const BPF_NET_OFF: i32 = -1048576;
2735pub const BPF_LL_OFF: i32 = -2097152;
2736pub const FS_VERITY_HASH_ALG_SHA256: u32 = 1;
2737pub const FS_VERITY_HASH_ALG_SHA512: u32 = 2;
2738pub const FS_VERITY_METADATA_TYPE_MERKLE_TREE: u32 = 1;
2739pub const FS_VERITY_METADATA_TYPE_DESCRIPTOR: u32 = 2;
2740pub const FS_VERITY_METADATA_TYPE_SIGNATURE: u32 = 3;
2741pub const FUTEX_WAIT: u32 = 0;
2742pub const FUTEX_WAKE: u32 = 1;
2743pub const FUTEX_FD: u32 = 2;
2744pub const FUTEX_REQUEUE: u32 = 3;
2745pub const FUTEX_CMP_REQUEUE: u32 = 4;
2746pub const FUTEX_WAKE_OP: u32 = 5;
2747pub const FUTEX_LOCK_PI: u32 = 6;
2748pub const FUTEX_UNLOCK_PI: u32 = 7;
2749pub const FUTEX_TRYLOCK_PI: u32 = 8;
2750pub const FUTEX_WAIT_BITSET: u32 = 9;
2751pub const FUTEX_WAKE_BITSET: u32 = 10;
2752pub const FUTEX_WAIT_REQUEUE_PI: u32 = 11;
2753pub const FUTEX_CMP_REQUEUE_PI: u32 = 12;
2754pub const FUTEX_LOCK_PI2: u32 = 13;
2755pub const FUTEX_PRIVATE_FLAG: u32 = 128;
2756pub const FUTEX_CLOCK_REALTIME: u32 = 256;
2757pub const FUTEX_CMD_MASK: i32 = -385;
2758pub const FUTEX_WAIT_PRIVATE: u32 = 128;
2759pub const FUTEX_WAKE_PRIVATE: u32 = 129;
2760pub const FUTEX_REQUEUE_PRIVATE: u32 = 131;
2761pub const FUTEX_CMP_REQUEUE_PRIVATE: u32 = 132;
2762pub const FUTEX_WAKE_OP_PRIVATE: u32 = 133;
2763pub const FUTEX_LOCK_PI_PRIVATE: u32 = 134;
2764pub const FUTEX_LOCK_PI2_PRIVATE: u32 = 141;
2765pub const FUTEX_UNLOCK_PI_PRIVATE: u32 = 135;
2766pub const FUTEX_TRYLOCK_PI_PRIVATE: u32 = 136;
2767pub const FUTEX_WAIT_BITSET_PRIVATE: u32 = 137;
2768pub const FUTEX_WAKE_BITSET_PRIVATE: u32 = 138;
2769pub const FUTEX_WAIT_REQUEUE_PI_PRIVATE: u32 = 139;
2770pub const FUTEX_CMP_REQUEUE_PI_PRIVATE: u32 = 140;
2771pub const FUTEX2_SIZE_U8: u32 = 0;
2772pub const FUTEX2_SIZE_U16: u32 = 1;
2773pub const FUTEX2_SIZE_U32: u32 = 2;
2774pub const FUTEX2_SIZE_U64: u32 = 3;
2775pub const FUTEX2_NUMA: u32 = 4;
2776pub const FUTEX2_PRIVATE: u32 = 128;
2777pub const FUTEX2_SIZE_MASK: u32 = 3;
2778pub const FUTEX_32: u32 = 2;
2779pub const FUTEX_WAITV_MAX: u32 = 128;
2780pub const FUTEX_WAITERS: u32 = 2147483648;
2781pub const FUTEX_OWNER_DIED: u32 = 1073741824;
2782pub const FUTEX_TID_MASK: u32 = 1073741823;
2783pub const ROBUST_LIST_LIMIT: u32 = 2048;
2784pub const FUTEX_BITSET_MATCH_ANY: u32 = 4294967295;
2785pub const FUTEX_OP_SET: u32 = 0;
2786pub const FUTEX_OP_ADD: u32 = 1;
2787pub const FUTEX_OP_OR: u32 = 2;
2788pub const FUTEX_OP_ANDN: u32 = 3;
2789pub const FUTEX_OP_XOR: u32 = 4;
2790pub const FUTEX_OP_OPARG_SHIFT: u32 = 8;
2791pub const FUTEX_OP_CMP_EQ: u32 = 0;
2792pub const FUTEX_OP_CMP_NE: u32 = 1;
2793pub const FUTEX_OP_CMP_LT: u32 = 2;
2794pub const FUTEX_OP_CMP_LE: u32 = 3;
2795pub const FUTEX_OP_CMP_GT: u32 = 4;
2796pub const FUTEX_OP_CMP_GE: u32 = 5;
2797pub const __UAPI_DEF_IF_IFCONF: u32 = 1;
2798pub const __UAPI_DEF_IF_IFMAP: u32 = 1;
2799pub const __UAPI_DEF_IF_IFNAMSIZ: u32 = 1;
2800pub const __UAPI_DEF_IF_IFREQ: u32 = 1;
2801pub const __UAPI_DEF_IF_NET_DEVICE_FLAGS: u32 = 1;
2802pub const __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO: u32 = 1;
2803pub const __UAPI_DEF_IN_ADDR: u32 = 1;
2804pub const __UAPI_DEF_IN_IPPROTO: u32 = 1;
2805pub const __UAPI_DEF_IN_PKTINFO: u32 = 1;
2806pub const __UAPI_DEF_IP_MREQ: u32 = 1;
2807pub const __UAPI_DEF_SOCKADDR_IN: u32 = 1;
2808pub const __UAPI_DEF_IN_CLASS: u32 = 1;
2809pub const __UAPI_DEF_IN6_ADDR: u32 = 1;
2810pub const __UAPI_DEF_IN6_ADDR_ALT: u32 = 1;
2811pub const __UAPI_DEF_SOCKADDR_IN6: u32 = 1;
2812pub const __UAPI_DEF_IPV6_MREQ: u32 = 1;
2813pub const __UAPI_DEF_IPPROTO_V6: u32 = 1;
2814pub const __UAPI_DEF_IPV6_OPTIONS: u32 = 1;
2815pub const __UAPI_DEF_IN6_PKTINFO: u32 = 1;
2816pub const __UAPI_DEF_IP6_MTUINFO: u32 = 1;
2817pub const __UAPI_DEF_XATTR: u32 = 1;
2818pub const IFNAMSIZ: u32 = 16;
2819pub const IFALIASZ: u32 = 256;
2820pub const ALTIFNAMSIZ: u32 = 128;
2821pub const GENERIC_HDLC_VERSION: u32 = 4;
2822pub const CLOCK_DEFAULT: u32 = 0;
2823pub const CLOCK_EXT: u32 = 1;
2824pub const CLOCK_INT: u32 = 2;
2825pub const CLOCK_TXINT: u32 = 3;
2826pub const CLOCK_TXFROMRX: u32 = 4;
2827pub const ENCODING_DEFAULT: u32 = 0;
2828pub const ENCODING_NRZ: u32 = 1;
2829pub const ENCODING_NRZI: u32 = 2;
2830pub const ENCODING_FM_MARK: u32 = 3;
2831pub const ENCODING_FM_SPACE: u32 = 4;
2832pub const ENCODING_MANCHESTER: u32 = 5;
2833pub const PARITY_DEFAULT: u32 = 0;
2834pub const PARITY_NONE: u32 = 1;
2835pub const PARITY_CRC16_PR0: u32 = 2;
2836pub const PARITY_CRC16_PR1: u32 = 3;
2837pub const PARITY_CRC16_PR0_CCITT: u32 = 4;
2838pub const PARITY_CRC16_PR1_CCITT: u32 = 5;
2839pub const PARITY_CRC32_PR0_CCITT: u32 = 6;
2840pub const PARITY_CRC32_PR1_CCITT: u32 = 7;
2841pub const LMI_DEFAULT: u32 = 0;
2842pub const LMI_NONE: u32 = 1;
2843pub const LMI_ANSI: u32 = 2;
2844pub const LMI_CCITT: u32 = 3;
2845pub const LMI_CISCO: u32 = 4;
2846pub const IF_GET_IFACE: u32 = 1;
2847pub const IF_GET_PROTO: u32 = 2;
2848pub const IF_IFACE_V35: u32 = 4096;
2849pub const IF_IFACE_V24: u32 = 4097;
2850pub const IF_IFACE_X21: u32 = 4098;
2851pub const IF_IFACE_T1: u32 = 4099;
2852pub const IF_IFACE_E1: u32 = 4100;
2853pub const IF_IFACE_SYNC_SERIAL: u32 = 4101;
2854pub const IF_IFACE_X21D: u32 = 4102;
2855pub const IF_PROTO_HDLC: u32 = 8192;
2856pub const IF_PROTO_PPP: u32 = 8193;
2857pub const IF_PROTO_CISCO: u32 = 8194;
2858pub const IF_PROTO_FR: u32 = 8195;
2859pub const IF_PROTO_FR_ADD_PVC: u32 = 8196;
2860pub const IF_PROTO_FR_DEL_PVC: u32 = 8197;
2861pub const IF_PROTO_X25: u32 = 8198;
2862pub const IF_PROTO_HDLC_ETH: u32 = 8199;
2863pub const IF_PROTO_FR_ADD_ETH_PVC: u32 = 8200;
2864pub const IF_PROTO_FR_DEL_ETH_PVC: u32 = 8201;
2865pub const IF_PROTO_FR_PVC: u32 = 8202;
2866pub const IF_PROTO_FR_ETH_PVC: u32 = 8203;
2867pub const IF_PROTO_RAW: u32 = 8204;
2868pub const IFHWADDRLEN: u32 = 6;
2869pub const ETH_ALEN: u32 = 6;
2870pub const ETH_TLEN: u32 = 2;
2871pub const ETH_HLEN: u32 = 14;
2872pub const ETH_ZLEN: u32 = 60;
2873pub const ETH_DATA_LEN: u32 = 1500;
2874pub const ETH_FRAME_LEN: u32 = 1514;
2875pub const ETH_FCS_LEN: u32 = 4;
2876pub const ETH_MIN_MTU: u32 = 68;
2877pub const ETH_MAX_MTU: u32 = 65535;
2878pub const ETH_P_LOOP: u32 = 96;
2879pub const ETH_P_PUP: u32 = 512;
2880pub const ETH_P_PUPAT: u32 = 513;
2881pub const ETH_P_TSN: u32 = 8944;
2882pub const ETH_P_ERSPAN2: u32 = 8939;
2883pub const ETH_P_IP: u32 = 2048;
2884pub const ETH_P_X25: u32 = 2053;
2885pub const ETH_P_ARP: u32 = 2054;
2886pub const ETH_P_BPQ: u32 = 2303;
2887pub const ETH_P_IEEEPUP: u32 = 2560;
2888pub const ETH_P_IEEEPUPAT: u32 = 2561;
2889pub const ETH_P_BATMAN: u32 = 17157;
2890pub const ETH_P_DEC: u32 = 24576;
2891pub const ETH_P_DNA_DL: u32 = 24577;
2892pub const ETH_P_DNA_RC: u32 = 24578;
2893pub const ETH_P_DNA_RT: u32 = 24579;
2894pub const ETH_P_LAT: u32 = 24580;
2895pub const ETH_P_DIAG: u32 = 24581;
2896pub const ETH_P_CUST: u32 = 24582;
2897pub const ETH_P_SCA: u32 = 24583;
2898pub const ETH_P_TEB: u32 = 25944;
2899pub const ETH_P_RARP: u32 = 32821;
2900pub const ETH_P_ATALK: u32 = 32923;
2901pub const ETH_P_AARP: u32 = 33011;
2902pub const ETH_P_8021Q: u32 = 33024;
2903pub const ETH_P_ERSPAN: u32 = 35006;
2904pub const ETH_P_IPX: u32 = 33079;
2905pub const ETH_P_IPV6: u32 = 34525;
2906pub const ETH_P_PAUSE: u32 = 34824;
2907pub const ETH_P_SLOW: u32 = 34825;
2908pub const ETH_P_WCCP: u32 = 34878;
2909pub const ETH_P_MPLS_UC: u32 = 34887;
2910pub const ETH_P_MPLS_MC: u32 = 34888;
2911pub const ETH_P_ATMMPOA: u32 = 34892;
2912pub const ETH_P_PPP_DISC: u32 = 34915;
2913pub const ETH_P_PPP_SES: u32 = 34916;
2914pub const ETH_P_LINK_CTL: u32 = 34924;
2915pub const ETH_P_ATMFATE: u32 = 34948;
2916pub const ETH_P_PAE: u32 = 34958;
2917pub const ETH_P_PROFINET: u32 = 34962;
2918pub const ETH_P_REALTEK: u32 = 34969;
2919pub const ETH_P_AOE: u32 = 34978;
2920pub const ETH_P_ETHERCAT: u32 = 34980;
2921pub const ETH_P_8021AD: u32 = 34984;
2922pub const ETH_P_802_EX1: u32 = 34997;
2923pub const ETH_P_PREAUTH: u32 = 35015;
2924pub const ETH_P_TIPC: u32 = 35018;
2925pub const ETH_P_LLDP: u32 = 35020;
2926pub const ETH_P_MRP: u32 = 35043;
2927pub const ETH_P_MACSEC: u32 = 35045;
2928pub const ETH_P_8021AH: u32 = 35047;
2929pub const ETH_P_MVRP: u32 = 35061;
2930pub const ETH_P_1588: u32 = 35063;
2931pub const ETH_P_NCSI: u32 = 35064;
2932pub const ETH_P_PRP: u32 = 35067;
2933pub const ETH_P_CFM: u32 = 35074;
2934pub const ETH_P_FCOE: u32 = 35078;
2935pub const ETH_P_IBOE: u32 = 35093;
2936pub const ETH_P_TDLS: u32 = 35085;
2937pub const ETH_P_FIP: u32 = 35092;
2938pub const ETH_P_80221: u32 = 35095;
2939pub const ETH_P_HSR: u32 = 35119;
2940pub const ETH_P_NSH: u32 = 35151;
2941pub const ETH_P_LOOPBACK: u32 = 36864;
2942pub const ETH_P_QINQ1: u32 = 37120;
2943pub const ETH_P_QINQ2: u32 = 37376;
2944pub const ETH_P_QINQ3: u32 = 37632;
2945pub const ETH_P_EDSA: u32 = 56026;
2946pub const ETH_P_DSA_8021Q: u32 = 56027;
2947pub const ETH_P_DSA_A5PSW: u32 = 57345;
2948pub const ETH_P_IFE: u32 = 60734;
2949pub const ETH_P_AF_IUCV: u32 = 64507;
2950pub const ETH_P_802_3_MIN: u32 = 1536;
2951pub const ETH_P_802_3: u32 = 1;
2952pub const ETH_P_AX25: u32 = 2;
2953pub const ETH_P_ALL: u32 = 3;
2954pub const ETH_P_802_2: u32 = 4;
2955pub const ETH_P_SNAP: u32 = 5;
2956pub const ETH_P_DDCMP: u32 = 6;
2957pub const ETH_P_WAN_PPP: u32 = 7;
2958pub const ETH_P_PPP_MP: u32 = 8;
2959pub const ETH_P_LOCALTALK: u32 = 9;
2960pub const ETH_P_CAN: u32 = 12;
2961pub const ETH_P_CANFD: u32 = 13;
2962pub const ETH_P_CANXL: u32 = 14;
2963pub const ETH_P_PPPTALK: u32 = 16;
2964pub const ETH_P_TR_802_2: u32 = 17;
2965pub const ETH_P_MOBITEX: u32 = 21;
2966pub const ETH_P_CONTROL: u32 = 22;
2967pub const ETH_P_IRDA: u32 = 23;
2968pub const ETH_P_ECONET: u32 = 24;
2969pub const ETH_P_HDLC: u32 = 25;
2970pub const ETH_P_ARCNET: u32 = 26;
2971pub const ETH_P_DSA: u32 = 27;
2972pub const ETH_P_TRAILER: u32 = 28;
2973pub const ETH_P_PHONET: u32 = 245;
2974pub const ETH_P_IEEE802154: u32 = 246;
2975pub const ETH_P_CAIF: u32 = 247;
2976pub const ETH_P_XDSA: u32 = 248;
2977pub const ETH_P_MAP: u32 = 249;
2978pub const ETH_P_MCTP: u32 = 250;
2979pub const __UAPI_DEF_ETHHDR: u32 = 1;
2980pub const PACKET_HOST: u32 = 0;
2981pub const PACKET_BROADCAST: u32 = 1;
2982pub const PACKET_MULTICAST: u32 = 2;
2983pub const PACKET_OTHERHOST: u32 = 3;
2984pub const PACKET_OUTGOING: u32 = 4;
2985pub const PACKET_LOOPBACK: u32 = 5;
2986pub const PACKET_USER: u32 = 6;
2987pub const PACKET_KERNEL: u32 = 7;
2988pub const PACKET_FASTROUTE: u32 = 6;
2989pub const PACKET_ADD_MEMBERSHIP: u32 = 1;
2990pub const PACKET_DROP_MEMBERSHIP: u32 = 2;
2991pub const PACKET_RECV_OUTPUT: u32 = 3;
2992pub const PACKET_RX_RING: u32 = 5;
2993pub const PACKET_STATISTICS: u32 = 6;
2994pub const PACKET_COPY_THRESH: u32 = 7;
2995pub const PACKET_AUXDATA: u32 = 8;
2996pub const PACKET_ORIGDEV: u32 = 9;
2997pub const PACKET_VERSION: u32 = 10;
2998pub const PACKET_HDRLEN: u32 = 11;
2999pub const PACKET_RESERVE: u32 = 12;
3000pub const PACKET_TX_RING: u32 = 13;
3001pub const PACKET_LOSS: u32 = 14;
3002pub const PACKET_VNET_HDR: u32 = 15;
3003pub const PACKET_TX_TIMESTAMP: u32 = 16;
3004pub const PACKET_TIMESTAMP: u32 = 17;
3005pub const PACKET_FANOUT: u32 = 18;
3006pub const PACKET_TX_HAS_OFF: u32 = 19;
3007pub const PACKET_QDISC_BYPASS: u32 = 20;
3008pub const PACKET_ROLLOVER_STATS: u32 = 21;
3009pub const PACKET_FANOUT_DATA: u32 = 22;
3010pub const PACKET_IGNORE_OUTGOING: u32 = 23;
3011pub const PACKET_VNET_HDR_SZ: u32 = 24;
3012pub const PACKET_FANOUT_HASH: u32 = 0;
3013pub const PACKET_FANOUT_LB: u32 = 1;
3014pub const PACKET_FANOUT_CPU: u32 = 2;
3015pub const PACKET_FANOUT_ROLLOVER: u32 = 3;
3016pub const PACKET_FANOUT_RND: u32 = 4;
3017pub const PACKET_FANOUT_QM: u32 = 5;
3018pub const PACKET_FANOUT_CBPF: u32 = 6;
3019pub const PACKET_FANOUT_EBPF: u32 = 7;
3020pub const PACKET_FANOUT_FLAG_ROLLOVER: u32 = 4096;
3021pub const PACKET_FANOUT_FLAG_UNIQUEID: u32 = 8192;
3022pub const PACKET_FANOUT_FLAG_IGNORE_OUTGOING: u32 = 16384;
3023pub const PACKET_FANOUT_FLAG_DEFRAG: u32 = 32768;
3024pub const TP_STATUS_KERNEL: u32 = 0;
3025pub const TP_STATUS_USER: u32 = 1;
3026pub const TP_STATUS_COPY: u32 = 2;
3027pub const TP_STATUS_LOSING: u32 = 4;
3028pub const TP_STATUS_CSUMNOTREADY: u32 = 8;
3029pub const TP_STATUS_VLAN_VALID: u32 = 16;
3030pub const TP_STATUS_BLK_TMO: u32 = 32;
3031pub const TP_STATUS_VLAN_TPID_VALID: u32 = 64;
3032pub const TP_STATUS_CSUM_VALID: u32 = 128;
3033pub const TP_STATUS_GSO_TCP: u32 = 256;
3034pub const TP_STATUS_AVAILABLE: u32 = 0;
3035pub const TP_STATUS_SEND_REQUEST: u32 = 1;
3036pub const TP_STATUS_SENDING: u32 = 2;
3037pub const TP_STATUS_WRONG_FORMAT: u32 = 4;
3038pub const TP_STATUS_TS_SOFTWARE: u32 = 536870912;
3039pub const TP_STATUS_TS_SYS_HARDWARE: u32 = 1073741824;
3040pub const TP_STATUS_TS_RAW_HARDWARE: u32 = 2147483648;
3041pub const TP_FT_REQ_FILL_RXHASH: u32 = 1;
3042pub const TPACKET_ALIGNMENT: u32 = 16;
3043pub const PACKET_MR_MULTICAST: u32 = 0;
3044pub const PACKET_MR_PROMISC: u32 = 1;
3045pub const PACKET_MR_ALLMULTI: u32 = 2;
3046pub const PACKET_MR_UNICAST: u32 = 3;
3047pub const MAX_ADDR_LEN: u32 = 32;
3048pub const INIT_NETDEV_GROUP: u32 = 0;
3049pub const NET_NAME_UNKNOWN: u32 = 0;
3050pub const NET_NAME_ENUM: u32 = 1;
3051pub const NET_NAME_PREDICTABLE: u32 = 2;
3052pub const NET_NAME_USER: u32 = 3;
3053pub const NET_NAME_RENAMED: u32 = 4;
3054pub const NET_ADDR_PERM: u32 = 0;
3055pub const NET_ADDR_RANDOM: u32 = 1;
3056pub const NET_ADDR_STOLEN: u32 = 2;
3057pub const NET_ADDR_SET: u32 = 3;
3058pub const ARPHRD_NETROM: u32 = 0;
3059pub const ARPHRD_ETHER: u32 = 1;
3060pub const ARPHRD_EETHER: u32 = 2;
3061pub const ARPHRD_AX25: u32 = 3;
3062pub const ARPHRD_PRONET: u32 = 4;
3063pub const ARPHRD_CHAOS: u32 = 5;
3064pub const ARPHRD_IEEE802: u32 = 6;
3065pub const ARPHRD_ARCNET: u32 = 7;
3066pub const ARPHRD_APPLETLK: u32 = 8;
3067pub const ARPHRD_DLCI: u32 = 15;
3068pub const ARPHRD_ATM: u32 = 19;
3069pub const ARPHRD_METRICOM: u32 = 23;
3070pub const ARPHRD_IEEE1394: u32 = 24;
3071pub const ARPHRD_EUI64: u32 = 27;
3072pub const ARPHRD_INFINIBAND: u32 = 32;
3073pub const ARPHRD_SLIP: u32 = 256;
3074pub const ARPHRD_CSLIP: u32 = 257;
3075pub const ARPHRD_SLIP6: u32 = 258;
3076pub const ARPHRD_CSLIP6: u32 = 259;
3077pub const ARPHRD_RSRVD: u32 = 260;
3078pub const ARPHRD_ADAPT: u32 = 264;
3079pub const ARPHRD_ROSE: u32 = 270;
3080pub const ARPHRD_X25: u32 = 271;
3081pub const ARPHRD_HWX25: u32 = 272;
3082pub const ARPHRD_CAN: u32 = 280;
3083pub const ARPHRD_MCTP: u32 = 290;
3084pub const ARPHRD_PPP: u32 = 512;
3085pub const ARPHRD_CISCO: u32 = 513;
3086pub const ARPHRD_HDLC: u32 = 513;
3087pub const ARPHRD_LAPB: u32 = 516;
3088pub const ARPHRD_DDCMP: u32 = 517;
3089pub const ARPHRD_RAWHDLC: u32 = 518;
3090pub const ARPHRD_RAWIP: u32 = 519;
3091pub const ARPHRD_TUNNEL: u32 = 768;
3092pub const ARPHRD_TUNNEL6: u32 = 769;
3093pub const ARPHRD_FRAD: u32 = 770;
3094pub const ARPHRD_SKIP: u32 = 771;
3095pub const ARPHRD_LOOPBACK: u32 = 772;
3096pub const ARPHRD_LOCALTLK: u32 = 773;
3097pub const ARPHRD_FDDI: u32 = 774;
3098pub const ARPHRD_BIF: u32 = 775;
3099pub const ARPHRD_SIT: u32 = 776;
3100pub const ARPHRD_IPDDP: u32 = 777;
3101pub const ARPHRD_IPGRE: u32 = 778;
3102pub const ARPHRD_PIMREG: u32 = 779;
3103pub const ARPHRD_HIPPI: u32 = 780;
3104pub const ARPHRD_ASH: u32 = 781;
3105pub const ARPHRD_ECONET: u32 = 782;
3106pub const ARPHRD_IRDA: u32 = 783;
3107pub const ARPHRD_FCPP: u32 = 784;
3108pub const ARPHRD_FCAL: u32 = 785;
3109pub const ARPHRD_FCPL: u32 = 786;
3110pub const ARPHRD_FCFABRIC: u32 = 787;
3111pub const ARPHRD_IEEE802_TR: u32 = 800;
3112pub const ARPHRD_IEEE80211: u32 = 801;
3113pub const ARPHRD_IEEE80211_PRISM: u32 = 802;
3114pub const ARPHRD_IEEE80211_RADIOTAP: u32 = 803;
3115pub const ARPHRD_IEEE802154: u32 = 804;
3116pub const ARPHRD_IEEE802154_MONITOR: u32 = 805;
3117pub const ARPHRD_PHONET: u32 = 820;
3118pub const ARPHRD_PHONET_PIPE: u32 = 821;
3119pub const ARPHRD_CAIF: u32 = 822;
3120pub const ARPHRD_IP6GRE: u32 = 823;
3121pub const ARPHRD_NETLINK: u32 = 824;
3122pub const ARPHRD_6LOWPAN: u32 = 825;
3123pub const ARPHRD_VSOCKMON: u32 = 826;
3124pub const ARPHRD_VOID: u32 = 65535;
3125pub const ARPHRD_NONE: u32 = 65534;
3126pub const ARPOP_REQUEST: u32 = 1;
3127pub const ARPOP_REPLY: u32 = 2;
3128pub const ARPOP_RREQUEST: u32 = 3;
3129pub const ARPOP_RREPLY: u32 = 4;
3130pub const ARPOP_InREQUEST: u32 = 8;
3131pub const ARPOP_InREPLY: u32 = 9;
3132pub const ARPOP_NAK: u32 = 10;
3133pub const ATF_COM: u32 = 2;
3134pub const ATF_PERM: u32 = 4;
3135pub const ATF_PUBL: u32 = 8;
3136pub const ATF_USETRAILERS: u32 = 16;
3137pub const ATF_NETMASK: u32 = 32;
3138pub const ATF_DONTPUB: u32 = 64;
3139pub const TUN_READQ_SIZE: u32 = 500;
3140pub const TUN_TYPE_MASK: u32 = 15;
3141pub const IFF_TUN: u32 = 1;
3142pub const IFF_TAP: u32 = 2;
3143pub const IFF_NAPI: u32 = 16;
3144pub const IFF_NAPI_FRAGS: u32 = 32;
3145pub const IFF_NO_CARRIER: u32 = 64;
3146pub const IFF_NO_PI: u32 = 4096;
3147pub const IFF_ONE_QUEUE: u32 = 8192;
3148pub const IFF_VNET_HDR: u32 = 16384;
3149pub const IFF_TUN_EXCL: u32 = 32768;
3150pub const IFF_MULTI_QUEUE: u32 = 256;
3151pub const IFF_ATTACH_QUEUE: u32 = 512;
3152pub const IFF_DETACH_QUEUE: u32 = 1024;
3153pub const IFF_PERSIST: u32 = 2048;
3154pub const IFF_NOFILTER: u32 = 4096;
3155pub const TUN_TX_TIMESTAMP: u32 = 1;
3156pub const TUN_F_CSUM: u32 = 1;
3157pub const TUN_F_TSO4: u32 = 2;
3158pub const TUN_F_TSO6: u32 = 4;
3159pub const TUN_F_TSO_ECN: u32 = 8;
3160pub const TUN_F_UFO: u32 = 16;
3161pub const TUN_F_USO4: u32 = 32;
3162pub const TUN_F_USO6: u32 = 64;
3163pub const TUN_PKT_STRIP: u32 = 1;
3164pub const TUN_FLT_ALLMULTI: u32 = 1;
3165pub const IN_ACCESS: u32 = 1;
3166pub const IN_MODIFY: u32 = 2;
3167pub const IN_ATTRIB: u32 = 4;
3168pub const IN_CLOSE_WRITE: u32 = 8;
3169pub const IN_CLOSE_NOWRITE: u32 = 16;
3170pub const IN_OPEN: u32 = 32;
3171pub const IN_MOVED_FROM: u32 = 64;
3172pub const IN_MOVED_TO: u32 = 128;
3173pub const IN_CREATE: u32 = 256;
3174pub const IN_DELETE: u32 = 512;
3175pub const IN_DELETE_SELF: u32 = 1024;
3176pub const IN_MOVE_SELF: u32 = 2048;
3177pub const IN_UNMOUNT: u32 = 8192;
3178pub const IN_Q_OVERFLOW: u32 = 16384;
3179pub const IN_IGNORED: u32 = 32768;
3180pub const IN_CLOSE: u32 = 24;
3181pub const IN_MOVE: u32 = 192;
3182pub const IN_ONLYDIR: u32 = 16777216;
3183pub const IN_DONT_FOLLOW: u32 = 33554432;
3184pub const IN_EXCL_UNLINK: u32 = 67108864;
3185pub const IN_MASK_CREATE: u32 = 268435456;
3186pub const IN_MASK_ADD: u32 = 536870912;
3187pub const IN_ISDIR: u32 = 1073741824;
3188pub const IN_ONESHOT: u32 = 2147483648;
3189pub const IN_ALL_EVENTS: u32 = 4095;
3190pub const IN_CLOEXEC: u32 = 524288;
3191pub const IN_NONBLOCK: u32 = 2048;
3192pub const ITIMER_REAL: u32 = 0;
3193pub const ITIMER_VIRTUAL: u32 = 1;
3194pub const ITIMER_PROF: u32 = 2;
3195pub const CLOCK_REALTIME: u32 = 0;
3196pub const CLOCK_MONOTONIC: u32 = 1;
3197pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2;
3198pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3;
3199pub const CLOCK_MONOTONIC_RAW: u32 = 4;
3200pub const CLOCK_REALTIME_COARSE: u32 = 5;
3201pub const CLOCK_MONOTONIC_COARSE: u32 = 6;
3202pub const CLOCK_BOOTTIME: u32 = 7;
3203pub const CLOCK_REALTIME_ALARM: u32 = 8;
3204pub const CLOCK_BOOTTIME_ALARM: u32 = 9;
3205pub const CLOCK_SGI_CYCLE: u32 = 10;
3206pub const CLOCK_TAI: u32 = 11;
3207pub const MAX_CLOCKS: u32 = 16;
3208pub const CLOCKS_MASK: u32 = 1;
3209pub const CLOCKS_MONO: u32 = 1;
3210pub const TIMER_ABSTIME: u32 = 1;
3211pub const INPUT_PROP_POINTER: u32 = 0;
3212pub const INPUT_PROP_DIRECT: u32 = 1;
3213pub const INPUT_PROP_BUTTONPAD: u32 = 2;
3214pub const INPUT_PROP_SEMI_MT: u32 = 3;
3215pub const INPUT_PROP_TOPBUTTONPAD: u32 = 4;
3216pub const INPUT_PROP_POINTING_STICK: u32 = 5;
3217pub const INPUT_PROP_ACCELEROMETER: u32 = 6;
3218pub const INPUT_PROP_MAX: u32 = 31;
3219pub const INPUT_PROP_CNT: u32 = 32;
3220pub const EV_SYN: u32 = 0;
3221pub const EV_KEY: u32 = 1;
3222pub const EV_REL: u32 = 2;
3223pub const EV_ABS: u32 = 3;
3224pub const EV_MSC: u32 = 4;
3225pub const EV_SW: u32 = 5;
3226pub const EV_LED: u32 = 17;
3227pub const EV_SND: u32 = 18;
3228pub const EV_REP: u32 = 20;
3229pub const EV_FF: u32 = 21;
3230pub const EV_PWR: u32 = 22;
3231pub const EV_FF_STATUS: u32 = 23;
3232pub const EV_MAX: u32 = 31;
3233pub const EV_CNT: u32 = 32;
3234pub const SYN_REPORT: u32 = 0;
3235pub const SYN_CONFIG: u32 = 1;
3236pub const SYN_MT_REPORT: u32 = 2;
3237pub const SYN_DROPPED: u32 = 3;
3238pub const SYN_MAX: u32 = 15;
3239pub const SYN_CNT: u32 = 16;
3240pub const KEY_RESERVED: u32 = 0;
3241pub const KEY_ESC: u32 = 1;
3242pub const KEY_1: u32 = 2;
3243pub const KEY_2: u32 = 3;
3244pub const KEY_3: u32 = 4;
3245pub const KEY_4: u32 = 5;
3246pub const KEY_5: u32 = 6;
3247pub const KEY_6: u32 = 7;
3248pub const KEY_7: u32 = 8;
3249pub const KEY_8: u32 = 9;
3250pub const KEY_9: u32 = 10;
3251pub const KEY_0: u32 = 11;
3252pub const KEY_MINUS: u32 = 12;
3253pub const KEY_EQUAL: u32 = 13;
3254pub const KEY_BACKSPACE: u32 = 14;
3255pub const KEY_TAB: u32 = 15;
3256pub const KEY_Q: u32 = 16;
3257pub const KEY_W: u32 = 17;
3258pub const KEY_E: u32 = 18;
3259pub const KEY_R: u32 = 19;
3260pub const KEY_T: u32 = 20;
3261pub const KEY_Y: u32 = 21;
3262pub const KEY_U: u32 = 22;
3263pub const KEY_I: u32 = 23;
3264pub const KEY_O: u32 = 24;
3265pub const KEY_P: u32 = 25;
3266pub const KEY_LEFTBRACE: u32 = 26;
3267pub const KEY_RIGHTBRACE: u32 = 27;
3268pub const KEY_ENTER: u32 = 28;
3269pub const KEY_LEFTCTRL: u32 = 29;
3270pub const KEY_A: u32 = 30;
3271pub const KEY_S: u32 = 31;
3272pub const KEY_D: u32 = 32;
3273pub const KEY_F: u32 = 33;
3274pub const KEY_G: u32 = 34;
3275pub const KEY_H: u32 = 35;
3276pub const KEY_J: u32 = 36;
3277pub const KEY_K: u32 = 37;
3278pub const KEY_L: u32 = 38;
3279pub const KEY_SEMICOLON: u32 = 39;
3280pub const KEY_APOSTROPHE: u32 = 40;
3281pub const KEY_GRAVE: u32 = 41;
3282pub const KEY_LEFTSHIFT: u32 = 42;
3283pub const KEY_BACKSLASH: u32 = 43;
3284pub const KEY_Z: u32 = 44;
3285pub const KEY_X: u32 = 45;
3286pub const KEY_C: u32 = 46;
3287pub const KEY_V: u32 = 47;
3288pub const KEY_B: u32 = 48;
3289pub const KEY_N: u32 = 49;
3290pub const KEY_M: u32 = 50;
3291pub const KEY_COMMA: u32 = 51;
3292pub const KEY_DOT: u32 = 52;
3293pub const KEY_SLASH: u32 = 53;
3294pub const KEY_RIGHTSHIFT: u32 = 54;
3295pub const KEY_KPASTERISK: u32 = 55;
3296pub const KEY_LEFTALT: u32 = 56;
3297pub const KEY_SPACE: u32 = 57;
3298pub const KEY_CAPSLOCK: u32 = 58;
3299pub const KEY_F1: u32 = 59;
3300pub const KEY_F2: u32 = 60;
3301pub const KEY_F3: u32 = 61;
3302pub const KEY_F4: u32 = 62;
3303pub const KEY_F5: u32 = 63;
3304pub const KEY_F6: u32 = 64;
3305pub const KEY_F7: u32 = 65;
3306pub const KEY_F8: u32 = 66;
3307pub const KEY_F9: u32 = 67;
3308pub const KEY_F10: u32 = 68;
3309pub const KEY_NUMLOCK: u32 = 69;
3310pub const KEY_SCROLLLOCK: u32 = 70;
3311pub const KEY_KP7: u32 = 71;
3312pub const KEY_KP8: u32 = 72;
3313pub const KEY_KP9: u32 = 73;
3314pub const KEY_KPMINUS: u32 = 74;
3315pub const KEY_KP4: u32 = 75;
3316pub const KEY_KP5: u32 = 76;
3317pub const KEY_KP6: u32 = 77;
3318pub const KEY_KPPLUS: u32 = 78;
3319pub const KEY_KP1: u32 = 79;
3320pub const KEY_KP2: u32 = 80;
3321pub const KEY_KP3: u32 = 81;
3322pub const KEY_KP0: u32 = 82;
3323pub const KEY_KPDOT: u32 = 83;
3324pub const KEY_ZENKAKUHANKAKU: u32 = 85;
3325pub const KEY_102ND: u32 = 86;
3326pub const KEY_F11: u32 = 87;
3327pub const KEY_F12: u32 = 88;
3328pub const KEY_RO: u32 = 89;
3329pub const KEY_KATAKANA: u32 = 90;
3330pub const KEY_HIRAGANA: u32 = 91;
3331pub const KEY_HENKAN: u32 = 92;
3332pub const KEY_KATAKANAHIRAGANA: u32 = 93;
3333pub const KEY_MUHENKAN: u32 = 94;
3334pub const KEY_KPJPCOMMA: u32 = 95;
3335pub const KEY_KPENTER: u32 = 96;
3336pub const KEY_RIGHTCTRL: u32 = 97;
3337pub const KEY_KPSLASH: u32 = 98;
3338pub const KEY_SYSRQ: u32 = 99;
3339pub const KEY_RIGHTALT: u32 = 100;
3340pub const KEY_LINEFEED: u32 = 101;
3341pub const KEY_HOME: u32 = 102;
3342pub const KEY_UP: u32 = 103;
3343pub const KEY_PAGEUP: u32 = 104;
3344pub const KEY_LEFT: u32 = 105;
3345pub const KEY_RIGHT: u32 = 106;
3346pub const KEY_END: u32 = 107;
3347pub const KEY_DOWN: u32 = 108;
3348pub const KEY_PAGEDOWN: u32 = 109;
3349pub const KEY_INSERT: u32 = 110;
3350pub const KEY_DELETE: u32 = 111;
3351pub const KEY_MACRO: u32 = 112;
3352pub const KEY_MUTE: u32 = 113;
3353pub const KEY_VOLUMEDOWN: u32 = 114;
3354pub const KEY_VOLUMEUP: u32 = 115;
3355pub const KEY_POWER: u32 = 116;
3356pub const KEY_KPEQUAL: u32 = 117;
3357pub const KEY_KPPLUSMINUS: u32 = 118;
3358pub const KEY_PAUSE: u32 = 119;
3359pub const KEY_SCALE: u32 = 120;
3360pub const KEY_KPCOMMA: u32 = 121;
3361pub const KEY_HANGEUL: u32 = 122;
3362pub const KEY_HANGUEL: u32 = 122;
3363pub const KEY_HANJA: u32 = 123;
3364pub const KEY_YEN: u32 = 124;
3365pub const KEY_LEFTMETA: u32 = 125;
3366pub const KEY_RIGHTMETA: u32 = 126;
3367pub const KEY_COMPOSE: u32 = 127;
3368pub const KEY_STOP: u32 = 128;
3369pub const KEY_AGAIN: u32 = 129;
3370pub const KEY_PROPS: u32 = 130;
3371pub const KEY_UNDO: u32 = 131;
3372pub const KEY_FRONT: u32 = 132;
3373pub const KEY_COPY: u32 = 133;
3374pub const KEY_OPEN: u32 = 134;
3375pub const KEY_PASTE: u32 = 135;
3376pub const KEY_FIND: u32 = 136;
3377pub const KEY_CUT: u32 = 137;
3378pub const KEY_HELP: u32 = 138;
3379pub const KEY_MENU: u32 = 139;
3380pub const KEY_CALC: u32 = 140;
3381pub const KEY_SETUP: u32 = 141;
3382pub const KEY_SLEEP: u32 = 142;
3383pub const KEY_WAKEUP: u32 = 143;
3384pub const KEY_FILE: u32 = 144;
3385pub const KEY_SENDFILE: u32 = 145;
3386pub const KEY_DELETEFILE: u32 = 146;
3387pub const KEY_XFER: u32 = 147;
3388pub const KEY_PROG1: u32 = 148;
3389pub const KEY_PROG2: u32 = 149;
3390pub const KEY_WWW: u32 = 150;
3391pub const KEY_MSDOS: u32 = 151;
3392pub const KEY_COFFEE: u32 = 152;
3393pub const KEY_SCREENLOCK: u32 = 152;
3394pub const KEY_ROTATE_DISPLAY: u32 = 153;
3395pub const KEY_DIRECTION: u32 = 153;
3396pub const KEY_CYCLEWINDOWS: u32 = 154;
3397pub const KEY_MAIL: u32 = 155;
3398pub const KEY_BOOKMARKS: u32 = 156;
3399pub const KEY_COMPUTER: u32 = 157;
3400pub const KEY_BACK: u32 = 158;
3401pub const KEY_FORWARD: u32 = 159;
3402pub const KEY_CLOSECD: u32 = 160;
3403pub const KEY_EJECTCD: u32 = 161;
3404pub const KEY_EJECTCLOSECD: u32 = 162;
3405pub const KEY_NEXTSONG: u32 = 163;
3406pub const KEY_PLAYPAUSE: u32 = 164;
3407pub const KEY_PREVIOUSSONG: u32 = 165;
3408pub const KEY_STOPCD: u32 = 166;
3409pub const KEY_RECORD: u32 = 167;
3410pub const KEY_REWIND: u32 = 168;
3411pub const KEY_PHONE: u32 = 169;
3412pub const KEY_ISO: u32 = 170;
3413pub const KEY_CONFIG: u32 = 171;
3414pub const KEY_HOMEPAGE: u32 = 172;
3415pub const KEY_REFRESH: u32 = 173;
3416pub const KEY_EXIT: u32 = 174;
3417pub const KEY_MOVE: u32 = 175;
3418pub const KEY_EDIT: u32 = 176;
3419pub const KEY_SCROLLUP: u32 = 177;
3420pub const KEY_SCROLLDOWN: u32 = 178;
3421pub const KEY_KPLEFTPAREN: u32 = 179;
3422pub const KEY_KPRIGHTPAREN: u32 = 180;
3423pub const KEY_NEW: u32 = 181;
3424pub const KEY_REDO: u32 = 182;
3425pub const KEY_F13: u32 = 183;
3426pub const KEY_F14: u32 = 184;
3427pub const KEY_F15: u32 = 185;
3428pub const KEY_F16: u32 = 186;
3429pub const KEY_F17: u32 = 187;
3430pub const KEY_F18: u32 = 188;
3431pub const KEY_F19: u32 = 189;
3432pub const KEY_F20: u32 = 190;
3433pub const KEY_F21: u32 = 191;
3434pub const KEY_F22: u32 = 192;
3435pub const KEY_F23: u32 = 193;
3436pub const KEY_F24: u32 = 194;
3437pub const KEY_PLAYCD: u32 = 200;
3438pub const KEY_PAUSECD: u32 = 201;
3439pub const KEY_PROG3: u32 = 202;
3440pub const KEY_PROG4: u32 = 203;
3441pub const KEY_ALL_APPLICATIONS: u32 = 204;
3442pub const KEY_DASHBOARD: u32 = 204;
3443pub const KEY_SUSPEND: u32 = 205;
3444pub const KEY_CLOSE: u32 = 206;
3445pub const KEY_PLAY: u32 = 207;
3446pub const KEY_FASTFORWARD: u32 = 208;
3447pub const KEY_BASSBOOST: u32 = 209;
3448pub const KEY_PRINT: u32 = 210;
3449pub const KEY_HP: u32 = 211;
3450pub const KEY_CAMERA: u32 = 212;
3451pub const KEY_SOUND: u32 = 213;
3452pub const KEY_QUESTION: u32 = 214;
3453pub const KEY_EMAIL: u32 = 215;
3454pub const KEY_CHAT: u32 = 216;
3455pub const KEY_SEARCH: u32 = 217;
3456pub const KEY_CONNECT: u32 = 218;
3457pub const KEY_FINANCE: u32 = 219;
3458pub const KEY_SPORT: u32 = 220;
3459pub const KEY_SHOP: u32 = 221;
3460pub const KEY_ALTERASE: u32 = 222;
3461pub const KEY_CANCEL: u32 = 223;
3462pub const KEY_BRIGHTNESSDOWN: u32 = 224;
3463pub const KEY_BRIGHTNESSUP: u32 = 225;
3464pub const KEY_MEDIA: u32 = 226;
3465pub const KEY_SWITCHVIDEOMODE: u32 = 227;
3466pub const KEY_KBDILLUMTOGGLE: u32 = 228;
3467pub const KEY_KBDILLUMDOWN: u32 = 229;
3468pub const KEY_KBDILLUMUP: u32 = 230;
3469pub const KEY_SEND: u32 = 231;
3470pub const KEY_REPLY: u32 = 232;
3471pub const KEY_FORWARDMAIL: u32 = 233;
3472pub const KEY_SAVE: u32 = 234;
3473pub const KEY_DOCUMENTS: u32 = 235;
3474pub const KEY_BATTERY: u32 = 236;
3475pub const KEY_BLUETOOTH: u32 = 237;
3476pub const KEY_WLAN: u32 = 238;
3477pub const KEY_UWB: u32 = 239;
3478pub const KEY_UNKNOWN: u32 = 240;
3479pub const KEY_VIDEO_NEXT: u32 = 241;
3480pub const KEY_VIDEO_PREV: u32 = 242;
3481pub const KEY_BRIGHTNESS_CYCLE: u32 = 243;
3482pub const KEY_BRIGHTNESS_AUTO: u32 = 244;
3483pub const KEY_BRIGHTNESS_ZERO: u32 = 244;
3484pub const KEY_DISPLAY_OFF: u32 = 245;
3485pub const KEY_WWAN: u32 = 246;
3486pub const KEY_WIMAX: u32 = 246;
3487pub const KEY_RFKILL: u32 = 247;
3488pub const KEY_MICMUTE: u32 = 248;
3489pub const BTN_MISC: u32 = 256;
3490pub const BTN_0: u32 = 256;
3491pub const BTN_1: u32 = 257;
3492pub const BTN_2: u32 = 258;
3493pub const BTN_3: u32 = 259;
3494pub const BTN_4: u32 = 260;
3495pub const BTN_5: u32 = 261;
3496pub const BTN_6: u32 = 262;
3497pub const BTN_7: u32 = 263;
3498pub const BTN_8: u32 = 264;
3499pub const BTN_9: u32 = 265;
3500pub const BTN_MOUSE: u32 = 272;
3501pub const BTN_LEFT: u32 = 272;
3502pub const BTN_RIGHT: u32 = 273;
3503pub const BTN_MIDDLE: u32 = 274;
3504pub const BTN_SIDE: u32 = 275;
3505pub const BTN_EXTRA: u32 = 276;
3506pub const BTN_FORWARD: u32 = 277;
3507pub const BTN_BACK: u32 = 278;
3508pub const BTN_TASK: u32 = 279;
3509pub const BTN_JOYSTICK: u32 = 288;
3510pub const BTN_TRIGGER: u32 = 288;
3511pub const BTN_THUMB: u32 = 289;
3512pub const BTN_THUMB2: u32 = 290;
3513pub const BTN_TOP: u32 = 291;
3514pub const BTN_TOP2: u32 = 292;
3515pub const BTN_PINKIE: u32 = 293;
3516pub const BTN_BASE: u32 = 294;
3517pub const BTN_BASE2: u32 = 295;
3518pub const BTN_BASE3: u32 = 296;
3519pub const BTN_BASE4: u32 = 297;
3520pub const BTN_BASE5: u32 = 298;
3521pub const BTN_BASE6: u32 = 299;
3522pub const BTN_DEAD: u32 = 303;
3523pub const BTN_GAMEPAD: u32 = 304;
3524pub const BTN_SOUTH: u32 = 304;
3525pub const BTN_A: u32 = 304;
3526pub const BTN_EAST: u32 = 305;
3527pub const BTN_B: u32 = 305;
3528pub const BTN_C: u32 = 306;
3529pub const BTN_NORTH: u32 = 307;
3530pub const BTN_X: u32 = 307;
3531pub const BTN_WEST: u32 = 308;
3532pub const BTN_Y: u32 = 308;
3533pub const BTN_Z: u32 = 309;
3534pub const BTN_TL: u32 = 310;
3535pub const BTN_TR: u32 = 311;
3536pub const BTN_TL2: u32 = 312;
3537pub const BTN_TR2: u32 = 313;
3538pub const BTN_SELECT: u32 = 314;
3539pub const BTN_START: u32 = 315;
3540pub const BTN_MODE: u32 = 316;
3541pub const BTN_THUMBL: u32 = 317;
3542pub const BTN_THUMBR: u32 = 318;
3543pub const BTN_DIGI: u32 = 320;
3544pub const BTN_TOOL_PEN: u32 = 320;
3545pub const BTN_TOOL_RUBBER: u32 = 321;
3546pub const BTN_TOOL_BRUSH: u32 = 322;
3547pub const BTN_TOOL_PENCIL: u32 = 323;
3548pub const BTN_TOOL_AIRBRUSH: u32 = 324;
3549pub const BTN_TOOL_FINGER: u32 = 325;
3550pub const BTN_TOOL_MOUSE: u32 = 326;
3551pub const BTN_TOOL_LENS: u32 = 327;
3552pub const BTN_TOOL_QUINTTAP: u32 = 328;
3553pub const BTN_STYLUS3: u32 = 329;
3554pub const BTN_TOUCH: u32 = 330;
3555pub const BTN_STYLUS: u32 = 331;
3556pub const BTN_STYLUS2: u32 = 332;
3557pub const BTN_TOOL_DOUBLETAP: u32 = 333;
3558pub const BTN_TOOL_TRIPLETAP: u32 = 334;
3559pub const BTN_TOOL_QUADTAP: u32 = 335;
3560pub const BTN_WHEEL: u32 = 336;
3561pub const BTN_GEAR_DOWN: u32 = 336;
3562pub const BTN_GEAR_UP: u32 = 337;
3563pub const KEY_OK: u32 = 352;
3564pub const KEY_SELECT: u32 = 353;
3565pub const KEY_GOTO: u32 = 354;
3566pub const KEY_CLEAR: u32 = 355;
3567pub const KEY_POWER2: u32 = 356;
3568pub const KEY_OPTION: u32 = 357;
3569pub const KEY_INFO: u32 = 358;
3570pub const KEY_TIME: u32 = 359;
3571pub const KEY_VENDOR: u32 = 360;
3572pub const KEY_ARCHIVE: u32 = 361;
3573pub const KEY_PROGRAM: u32 = 362;
3574pub const KEY_CHANNEL: u32 = 363;
3575pub const KEY_FAVORITES: u32 = 364;
3576pub const KEY_EPG: u32 = 365;
3577pub const KEY_PVR: u32 = 366;
3578pub const KEY_MHP: u32 = 367;
3579pub const KEY_LANGUAGE: u32 = 368;
3580pub const KEY_TITLE: u32 = 369;
3581pub const KEY_SUBTITLE: u32 = 370;
3582pub const KEY_ANGLE: u32 = 371;
3583pub const KEY_FULL_SCREEN: u32 = 372;
3584pub const KEY_ZOOM: u32 = 372;
3585pub const KEY_MODE: u32 = 373;
3586pub const KEY_KEYBOARD: u32 = 374;
3587pub const KEY_ASPECT_RATIO: u32 = 375;
3588pub const KEY_SCREEN: u32 = 375;
3589pub const KEY_PC: u32 = 376;
3590pub const KEY_TV: u32 = 377;
3591pub const KEY_TV2: u32 = 378;
3592pub const KEY_VCR: u32 = 379;
3593pub const KEY_VCR2: u32 = 380;
3594pub const KEY_SAT: u32 = 381;
3595pub const KEY_SAT2: u32 = 382;
3596pub const KEY_CD: u32 = 383;
3597pub const KEY_TAPE: u32 = 384;
3598pub const KEY_RADIO: u32 = 385;
3599pub const KEY_TUNER: u32 = 386;
3600pub const KEY_PLAYER: u32 = 387;
3601pub const KEY_TEXT: u32 = 388;
3602pub const KEY_DVD: u32 = 389;
3603pub const KEY_AUX: u32 = 390;
3604pub const KEY_MP3: u32 = 391;
3605pub const KEY_AUDIO: u32 = 392;
3606pub const KEY_VIDEO: u32 = 393;
3607pub const KEY_DIRECTORY: u32 = 394;
3608pub const KEY_LIST: u32 = 395;
3609pub const KEY_MEMO: u32 = 396;
3610pub const KEY_CALENDAR: u32 = 397;
3611pub const KEY_RED: u32 = 398;
3612pub const KEY_GREEN: u32 = 399;
3613pub const KEY_YELLOW: u32 = 400;
3614pub const KEY_BLUE: u32 = 401;
3615pub const KEY_CHANNELUP: u32 = 402;
3616pub const KEY_CHANNELDOWN: u32 = 403;
3617pub const KEY_FIRST: u32 = 404;
3618pub const KEY_LAST: u32 = 405;
3619pub const KEY_AB: u32 = 406;
3620pub const KEY_NEXT: u32 = 407;
3621pub const KEY_RESTART: u32 = 408;
3622pub const KEY_SLOW: u32 = 409;
3623pub const KEY_SHUFFLE: u32 = 410;
3624pub const KEY_BREAK: u32 = 411;
3625pub const KEY_PREVIOUS: u32 = 412;
3626pub const KEY_DIGITS: u32 = 413;
3627pub const KEY_TEEN: u32 = 414;
3628pub const KEY_TWEN: u32 = 415;
3629pub const KEY_VIDEOPHONE: u32 = 416;
3630pub const KEY_GAMES: u32 = 417;
3631pub const KEY_ZOOMIN: u32 = 418;
3632pub const KEY_ZOOMOUT: u32 = 419;
3633pub const KEY_ZOOMRESET: u32 = 420;
3634pub const KEY_WORDPROCESSOR: u32 = 421;
3635pub const KEY_EDITOR: u32 = 422;
3636pub const KEY_SPREADSHEET: u32 = 423;
3637pub const KEY_GRAPHICSEDITOR: u32 = 424;
3638pub const KEY_PRESENTATION: u32 = 425;
3639pub const KEY_DATABASE: u32 = 426;
3640pub const KEY_NEWS: u32 = 427;
3641pub const KEY_VOICEMAIL: u32 = 428;
3642pub const KEY_ADDRESSBOOK: u32 = 429;
3643pub const KEY_MESSENGER: u32 = 430;
3644pub const KEY_DISPLAYTOGGLE: u32 = 431;
3645pub const KEY_BRIGHTNESS_TOGGLE: u32 = 431;
3646pub const KEY_SPELLCHECK: u32 = 432;
3647pub const KEY_LOGOFF: u32 = 433;
3648pub const KEY_DOLLAR: u32 = 434;
3649pub const KEY_EURO: u32 = 435;
3650pub const KEY_FRAMEBACK: u32 = 436;
3651pub const KEY_FRAMEFORWARD: u32 = 437;
3652pub const KEY_CONTEXT_MENU: u32 = 438;
3653pub const KEY_MEDIA_REPEAT: u32 = 439;
3654pub const KEY_10CHANNELSUP: u32 = 440;
3655pub const KEY_10CHANNELSDOWN: u32 = 441;
3656pub const KEY_IMAGES: u32 = 442;
3657pub const KEY_NOTIFICATION_CENTER: u32 = 444;
3658pub const KEY_PICKUP_PHONE: u32 = 445;
3659pub const KEY_HANGUP_PHONE: u32 = 446;
3660pub const KEY_DEL_EOL: u32 = 448;
3661pub const KEY_DEL_EOS: u32 = 449;
3662pub const KEY_INS_LINE: u32 = 450;
3663pub const KEY_DEL_LINE: u32 = 451;
3664pub const KEY_FN: u32 = 464;
3665pub const KEY_FN_ESC: u32 = 465;
3666pub const KEY_FN_F1: u32 = 466;
3667pub const KEY_FN_F2: u32 = 467;
3668pub const KEY_FN_F3: u32 = 468;
3669pub const KEY_FN_F4: u32 = 469;
3670pub const KEY_FN_F5: u32 = 470;
3671pub const KEY_FN_F6: u32 = 471;
3672pub const KEY_FN_F7: u32 = 472;
3673pub const KEY_FN_F8: u32 = 473;
3674pub const KEY_FN_F9: u32 = 474;
3675pub const KEY_FN_F10: u32 = 475;
3676pub const KEY_FN_F11: u32 = 476;
3677pub const KEY_FN_F12: u32 = 477;
3678pub const KEY_FN_1: u32 = 478;
3679pub const KEY_FN_2: u32 = 479;
3680pub const KEY_FN_D: u32 = 480;
3681pub const KEY_FN_E: u32 = 481;
3682pub const KEY_FN_F: u32 = 482;
3683pub const KEY_FN_S: u32 = 483;
3684pub const KEY_FN_B: u32 = 484;
3685pub const KEY_FN_RIGHT_SHIFT: u32 = 485;
3686pub const KEY_BRL_DOT1: u32 = 497;
3687pub const KEY_BRL_DOT2: u32 = 498;
3688pub const KEY_BRL_DOT3: u32 = 499;
3689pub const KEY_BRL_DOT4: u32 = 500;
3690pub const KEY_BRL_DOT5: u32 = 501;
3691pub const KEY_BRL_DOT6: u32 = 502;
3692pub const KEY_BRL_DOT7: u32 = 503;
3693pub const KEY_BRL_DOT8: u32 = 504;
3694pub const KEY_BRL_DOT9: u32 = 505;
3695pub const KEY_BRL_DOT10: u32 = 506;
3696pub const KEY_NUMERIC_0: u32 = 512;
3697pub const KEY_NUMERIC_1: u32 = 513;
3698pub const KEY_NUMERIC_2: u32 = 514;
3699pub const KEY_NUMERIC_3: u32 = 515;
3700pub const KEY_NUMERIC_4: u32 = 516;
3701pub const KEY_NUMERIC_5: u32 = 517;
3702pub const KEY_NUMERIC_6: u32 = 518;
3703pub const KEY_NUMERIC_7: u32 = 519;
3704pub const KEY_NUMERIC_8: u32 = 520;
3705pub const KEY_NUMERIC_9: u32 = 521;
3706pub const KEY_NUMERIC_STAR: u32 = 522;
3707pub const KEY_NUMERIC_POUND: u32 = 523;
3708pub const KEY_NUMERIC_A: u32 = 524;
3709pub const KEY_NUMERIC_B: u32 = 525;
3710pub const KEY_NUMERIC_C: u32 = 526;
3711pub const KEY_NUMERIC_D: u32 = 527;
3712pub const KEY_CAMERA_FOCUS: u32 = 528;
3713pub const KEY_WPS_BUTTON: u32 = 529;
3714pub const KEY_TOUCHPAD_TOGGLE: u32 = 530;
3715pub const KEY_TOUCHPAD_ON: u32 = 531;
3716pub const KEY_TOUCHPAD_OFF: u32 = 532;
3717pub const KEY_CAMERA_ZOOMIN: u32 = 533;
3718pub const KEY_CAMERA_ZOOMOUT: u32 = 534;
3719pub const KEY_CAMERA_UP: u32 = 535;
3720pub const KEY_CAMERA_DOWN: u32 = 536;
3721pub const KEY_CAMERA_LEFT: u32 = 537;
3722pub const KEY_CAMERA_RIGHT: u32 = 538;
3723pub const KEY_ATTENDANT_ON: u32 = 539;
3724pub const KEY_ATTENDANT_OFF: u32 = 540;
3725pub const KEY_ATTENDANT_TOGGLE: u32 = 541;
3726pub const KEY_LIGHTS_TOGGLE: u32 = 542;
3727pub const BTN_DPAD_UP: u32 = 544;
3728pub const BTN_DPAD_DOWN: u32 = 545;
3729pub const BTN_DPAD_LEFT: u32 = 546;
3730pub const BTN_DPAD_RIGHT: u32 = 547;
3731pub const KEY_ALS_TOGGLE: u32 = 560;
3732pub const KEY_ROTATE_LOCK_TOGGLE: u32 = 561;
3733pub const KEY_REFRESH_RATE_TOGGLE: u32 = 562;
3734pub const KEY_BUTTONCONFIG: u32 = 576;
3735pub const KEY_TASKMANAGER: u32 = 577;
3736pub const KEY_JOURNAL: u32 = 578;
3737pub const KEY_CONTROLPANEL: u32 = 579;
3738pub const KEY_APPSELECT: u32 = 580;
3739pub const KEY_SCREENSAVER: u32 = 581;
3740pub const KEY_VOICECOMMAND: u32 = 582;
3741pub const KEY_ASSISTANT: u32 = 583;
3742pub const KEY_KBD_LAYOUT_NEXT: u32 = 584;
3743pub const KEY_EMOJI_PICKER: u32 = 585;
3744pub const KEY_DICTATE: u32 = 586;
3745pub const KEY_CAMERA_ACCESS_ENABLE: u32 = 587;
3746pub const KEY_CAMERA_ACCESS_DISABLE: u32 = 588;
3747pub const KEY_CAMERA_ACCESS_TOGGLE: u32 = 589;
3748pub const KEY_ACCESSIBILITY: u32 = 590;
3749pub const KEY_DO_NOT_DISTURB: u32 = 591;
3750pub const KEY_BRIGHTNESS_MIN: u32 = 592;
3751pub const KEY_BRIGHTNESS_MAX: u32 = 593;
3752pub const KEY_KBDINPUTASSIST_PREV: u32 = 608;
3753pub const KEY_KBDINPUTASSIST_NEXT: u32 = 609;
3754pub const KEY_KBDINPUTASSIST_PREVGROUP: u32 = 610;
3755pub const KEY_KBDINPUTASSIST_NEXTGROUP: u32 = 611;
3756pub const KEY_KBDINPUTASSIST_ACCEPT: u32 = 612;
3757pub const KEY_KBDINPUTASSIST_CANCEL: u32 = 613;
3758pub const KEY_RIGHT_UP: u32 = 614;
3759pub const KEY_RIGHT_DOWN: u32 = 615;
3760pub const KEY_LEFT_UP: u32 = 616;
3761pub const KEY_LEFT_DOWN: u32 = 617;
3762pub const KEY_ROOT_MENU: u32 = 618;
3763pub const KEY_MEDIA_TOP_MENU: u32 = 619;
3764pub const KEY_NUMERIC_11: u32 = 620;
3765pub const KEY_NUMERIC_12: u32 = 621;
3766pub const KEY_AUDIO_DESC: u32 = 622;
3767pub const KEY_3D_MODE: u32 = 623;
3768pub const KEY_NEXT_FAVORITE: u32 = 624;
3769pub const KEY_STOP_RECORD: u32 = 625;
3770pub const KEY_PAUSE_RECORD: u32 = 626;
3771pub const KEY_VOD: u32 = 627;
3772pub const KEY_UNMUTE: u32 = 628;
3773pub const KEY_FASTREVERSE: u32 = 629;
3774pub const KEY_SLOWREVERSE: u32 = 630;
3775pub const KEY_DATA: u32 = 631;
3776pub const KEY_ONSCREEN_KEYBOARD: u32 = 632;
3777pub const KEY_PRIVACY_SCREEN_TOGGLE: u32 = 633;
3778pub const KEY_SELECTIVE_SCREENSHOT: u32 = 634;
3779pub const KEY_NEXT_ELEMENT: u32 = 635;
3780pub const KEY_PREVIOUS_ELEMENT: u32 = 636;
3781pub const KEY_AUTOPILOT_ENGAGE_TOGGLE: u32 = 637;
3782pub const KEY_MARK_WAYPOINT: u32 = 638;
3783pub const KEY_SOS: u32 = 639;
3784pub const KEY_NAV_CHART: u32 = 640;
3785pub const KEY_FISHING_CHART: u32 = 641;
3786pub const KEY_SINGLE_RANGE_RADAR: u32 = 642;
3787pub const KEY_DUAL_RANGE_RADAR: u32 = 643;
3788pub const KEY_RADAR_OVERLAY: u32 = 644;
3789pub const KEY_TRADITIONAL_SONAR: u32 = 645;
3790pub const KEY_CLEARVU_SONAR: u32 = 646;
3791pub const KEY_SIDEVU_SONAR: u32 = 647;
3792pub const KEY_NAV_INFO: u32 = 648;
3793pub const KEY_BRIGHTNESS_MENU: u32 = 649;
3794pub const KEY_MACRO1: u32 = 656;
3795pub const KEY_MACRO2: u32 = 657;
3796pub const KEY_MACRO3: u32 = 658;
3797pub const KEY_MACRO4: u32 = 659;
3798pub const KEY_MACRO5: u32 = 660;
3799pub const KEY_MACRO6: u32 = 661;
3800pub const KEY_MACRO7: u32 = 662;
3801pub const KEY_MACRO8: u32 = 663;
3802pub const KEY_MACRO9: u32 = 664;
3803pub const KEY_MACRO10: u32 = 665;
3804pub const KEY_MACRO11: u32 = 666;
3805pub const KEY_MACRO12: u32 = 667;
3806pub const KEY_MACRO13: u32 = 668;
3807pub const KEY_MACRO14: u32 = 669;
3808pub const KEY_MACRO15: u32 = 670;
3809pub const KEY_MACRO16: u32 = 671;
3810pub const KEY_MACRO17: u32 = 672;
3811pub const KEY_MACRO18: u32 = 673;
3812pub const KEY_MACRO19: u32 = 674;
3813pub const KEY_MACRO20: u32 = 675;
3814pub const KEY_MACRO21: u32 = 676;
3815pub const KEY_MACRO22: u32 = 677;
3816pub const KEY_MACRO23: u32 = 678;
3817pub const KEY_MACRO24: u32 = 679;
3818pub const KEY_MACRO25: u32 = 680;
3819pub const KEY_MACRO26: u32 = 681;
3820pub const KEY_MACRO27: u32 = 682;
3821pub const KEY_MACRO28: u32 = 683;
3822pub const KEY_MACRO29: u32 = 684;
3823pub const KEY_MACRO30: u32 = 685;
3824pub const KEY_MACRO_RECORD_START: u32 = 688;
3825pub const KEY_MACRO_RECORD_STOP: u32 = 689;
3826pub const KEY_MACRO_PRESET_CYCLE: u32 = 690;
3827pub const KEY_MACRO_PRESET1: u32 = 691;
3828pub const KEY_MACRO_PRESET2: u32 = 692;
3829pub const KEY_MACRO_PRESET3: u32 = 693;
3830pub const KEY_KBD_LCD_MENU1: u32 = 696;
3831pub const KEY_KBD_LCD_MENU2: u32 = 697;
3832pub const KEY_KBD_LCD_MENU3: u32 = 698;
3833pub const KEY_KBD_LCD_MENU4: u32 = 699;
3834pub const KEY_KBD_LCD_MENU5: u32 = 700;
3835pub const BTN_TRIGGER_HAPPY: u32 = 704;
3836pub const BTN_TRIGGER_HAPPY1: u32 = 704;
3837pub const BTN_TRIGGER_HAPPY2: u32 = 705;
3838pub const BTN_TRIGGER_HAPPY3: u32 = 706;
3839pub const BTN_TRIGGER_HAPPY4: u32 = 707;
3840pub const BTN_TRIGGER_HAPPY5: u32 = 708;
3841pub const BTN_TRIGGER_HAPPY6: u32 = 709;
3842pub const BTN_TRIGGER_HAPPY7: u32 = 710;
3843pub const BTN_TRIGGER_HAPPY8: u32 = 711;
3844pub const BTN_TRIGGER_HAPPY9: u32 = 712;
3845pub const BTN_TRIGGER_HAPPY10: u32 = 713;
3846pub const BTN_TRIGGER_HAPPY11: u32 = 714;
3847pub const BTN_TRIGGER_HAPPY12: u32 = 715;
3848pub const BTN_TRIGGER_HAPPY13: u32 = 716;
3849pub const BTN_TRIGGER_HAPPY14: u32 = 717;
3850pub const BTN_TRIGGER_HAPPY15: u32 = 718;
3851pub const BTN_TRIGGER_HAPPY16: u32 = 719;
3852pub const BTN_TRIGGER_HAPPY17: u32 = 720;
3853pub const BTN_TRIGGER_HAPPY18: u32 = 721;
3854pub const BTN_TRIGGER_HAPPY19: u32 = 722;
3855pub const BTN_TRIGGER_HAPPY20: u32 = 723;
3856pub const BTN_TRIGGER_HAPPY21: u32 = 724;
3857pub const BTN_TRIGGER_HAPPY22: u32 = 725;
3858pub const BTN_TRIGGER_HAPPY23: u32 = 726;
3859pub const BTN_TRIGGER_HAPPY24: u32 = 727;
3860pub const BTN_TRIGGER_HAPPY25: u32 = 728;
3861pub const BTN_TRIGGER_HAPPY26: u32 = 729;
3862pub const BTN_TRIGGER_HAPPY27: u32 = 730;
3863pub const BTN_TRIGGER_HAPPY28: u32 = 731;
3864pub const BTN_TRIGGER_HAPPY29: u32 = 732;
3865pub const BTN_TRIGGER_HAPPY30: u32 = 733;
3866pub const BTN_TRIGGER_HAPPY31: u32 = 734;
3867pub const BTN_TRIGGER_HAPPY32: u32 = 735;
3868pub const BTN_TRIGGER_HAPPY33: u32 = 736;
3869pub const BTN_TRIGGER_HAPPY34: u32 = 737;
3870pub const BTN_TRIGGER_HAPPY35: u32 = 738;
3871pub const BTN_TRIGGER_HAPPY36: u32 = 739;
3872pub const BTN_TRIGGER_HAPPY37: u32 = 740;
3873pub const BTN_TRIGGER_HAPPY38: u32 = 741;
3874pub const BTN_TRIGGER_HAPPY39: u32 = 742;
3875pub const BTN_TRIGGER_HAPPY40: u32 = 743;
3876pub const KEY_MIN_INTERESTING: u32 = 113;
3877pub const KEY_MAX: u32 = 767;
3878pub const KEY_CNT: u32 = 768;
3879pub const REL_X: u32 = 0;
3880pub const REL_Y: u32 = 1;
3881pub const REL_Z: u32 = 2;
3882pub const REL_RX: u32 = 3;
3883pub const REL_RY: u32 = 4;
3884pub const REL_RZ: u32 = 5;
3885pub const REL_HWHEEL: u32 = 6;
3886pub const REL_DIAL: u32 = 7;
3887pub const REL_WHEEL: u32 = 8;
3888pub const REL_MISC: u32 = 9;
3889pub const REL_RESERVED: u32 = 10;
3890pub const REL_WHEEL_HI_RES: u32 = 11;
3891pub const REL_HWHEEL_HI_RES: u32 = 12;
3892pub const REL_MAX: u32 = 15;
3893pub const REL_CNT: u32 = 16;
3894pub const ABS_X: u32 = 0;
3895pub const ABS_Y: u32 = 1;
3896pub const ABS_Z: u32 = 2;
3897pub const ABS_RX: u32 = 3;
3898pub const ABS_RY: u32 = 4;
3899pub const ABS_RZ: u32 = 5;
3900pub const ABS_THROTTLE: u32 = 6;
3901pub const ABS_RUDDER: u32 = 7;
3902pub const ABS_WHEEL: u32 = 8;
3903pub const ABS_GAS: u32 = 9;
3904pub const ABS_BRAKE: u32 = 10;
3905pub const ABS_HAT0X: u32 = 16;
3906pub const ABS_HAT0Y: u32 = 17;
3907pub const ABS_HAT1X: u32 = 18;
3908pub const ABS_HAT1Y: u32 = 19;
3909pub const ABS_HAT2X: u32 = 20;
3910pub const ABS_HAT2Y: u32 = 21;
3911pub const ABS_HAT3X: u32 = 22;
3912pub const ABS_HAT3Y: u32 = 23;
3913pub const ABS_PRESSURE: u32 = 24;
3914pub const ABS_DISTANCE: u32 = 25;
3915pub const ABS_TILT_X: u32 = 26;
3916pub const ABS_TILT_Y: u32 = 27;
3917pub const ABS_TOOL_WIDTH: u32 = 28;
3918pub const ABS_VOLUME: u32 = 32;
3919pub const ABS_PROFILE: u32 = 33;
3920pub const ABS_MISC: u32 = 40;
3921pub const ABS_RESERVED: u32 = 46;
3922pub const ABS_MT_SLOT: u32 = 47;
3923pub const ABS_MT_TOUCH_MAJOR: u32 = 48;
3924pub const ABS_MT_TOUCH_MINOR: u32 = 49;
3925pub const ABS_MT_WIDTH_MAJOR: u32 = 50;
3926pub const ABS_MT_WIDTH_MINOR: u32 = 51;
3927pub const ABS_MT_ORIENTATION: u32 = 52;
3928pub const ABS_MT_POSITION_X: u32 = 53;
3929pub const ABS_MT_POSITION_Y: u32 = 54;
3930pub const ABS_MT_TOOL_TYPE: u32 = 55;
3931pub const ABS_MT_BLOB_ID: u32 = 56;
3932pub const ABS_MT_TRACKING_ID: u32 = 57;
3933pub const ABS_MT_PRESSURE: u32 = 58;
3934pub const ABS_MT_DISTANCE: u32 = 59;
3935pub const ABS_MT_TOOL_X: u32 = 60;
3936pub const ABS_MT_TOOL_Y: u32 = 61;
3937pub const ABS_MAX: u32 = 63;
3938pub const ABS_CNT: u32 = 64;
3939pub const SW_LID: u32 = 0;
3940pub const SW_TABLET_MODE: u32 = 1;
3941pub const SW_HEADPHONE_INSERT: u32 = 2;
3942pub const SW_RFKILL_ALL: u32 = 3;
3943pub const SW_RADIO: u32 = 3;
3944pub const SW_MICROPHONE_INSERT: u32 = 4;
3945pub const SW_DOCK: u32 = 5;
3946pub const SW_LINEOUT_INSERT: u32 = 6;
3947pub const SW_JACK_PHYSICAL_INSERT: u32 = 7;
3948pub const SW_VIDEOOUT_INSERT: u32 = 8;
3949pub const SW_CAMERA_LENS_COVER: u32 = 9;
3950pub const SW_KEYPAD_SLIDE: u32 = 10;
3951pub const SW_FRONT_PROXIMITY: u32 = 11;
3952pub const SW_ROTATE_LOCK: u32 = 12;
3953pub const SW_LINEIN_INSERT: u32 = 13;
3954pub const SW_MUTE_DEVICE: u32 = 14;
3955pub const SW_PEN_INSERTED: u32 = 15;
3956pub const SW_MACHINE_COVER: u32 = 16;
3957pub const SW_MAX: u32 = 16;
3958pub const SW_CNT: u32 = 17;
3959pub const MSC_SERIAL: u32 = 0;
3960pub const MSC_PULSELED: u32 = 1;
3961pub const MSC_GESTURE: u32 = 2;
3962pub const MSC_RAW: u32 = 3;
3963pub const MSC_SCAN: u32 = 4;
3964pub const MSC_TIMESTAMP: u32 = 5;
3965pub const MSC_MAX: u32 = 7;
3966pub const MSC_CNT: u32 = 8;
3967pub const LED_NUML: u32 = 0;
3968pub const LED_CAPSL: u32 = 1;
3969pub const LED_SCROLLL: u32 = 2;
3970pub const LED_COMPOSE: u32 = 3;
3971pub const LED_KANA: u32 = 4;
3972pub const LED_SLEEP: u32 = 5;
3973pub const LED_SUSPEND: u32 = 6;
3974pub const LED_MUTE: u32 = 7;
3975pub const LED_MISC: u32 = 8;
3976pub const LED_MAIL: u32 = 9;
3977pub const LED_CHARGING: u32 = 10;
3978pub const LED_MAX: u32 = 15;
3979pub const LED_CNT: u32 = 16;
3980pub const REP_DELAY: u32 = 0;
3981pub const REP_PERIOD: u32 = 1;
3982pub const REP_MAX: u32 = 1;
3983pub const REP_CNT: u32 = 2;
3984pub const SND_CLICK: u32 = 0;
3985pub const SND_BELL: u32 = 1;
3986pub const SND_TONE: u32 = 2;
3987pub const SND_MAX: u32 = 7;
3988pub const SND_CNT: u32 = 8;
3989pub const EV_VERSION: u32 = 65537;
3990pub const INPUT_KEYMAP_BY_INDEX: u32 = 1;
3991pub const ID_BUS: u32 = 0;
3992pub const ID_VENDOR: u32 = 1;
3993pub const ID_PRODUCT: u32 = 2;
3994pub const ID_VERSION: u32 = 3;
3995pub const BUS_PCI: u32 = 1;
3996pub const BUS_ISAPNP: u32 = 2;
3997pub const BUS_USB: u32 = 3;
3998pub const BUS_HIL: u32 = 4;
3999pub const BUS_BLUETOOTH: u32 = 5;
4000pub const BUS_VIRTUAL: u32 = 6;
4001pub const BUS_ISA: u32 = 16;
4002pub const BUS_I8042: u32 = 17;
4003pub const BUS_XTKBD: u32 = 18;
4004pub const BUS_RS232: u32 = 19;
4005pub const BUS_GAMEPORT: u32 = 20;
4006pub const BUS_PARPORT: u32 = 21;
4007pub const BUS_AMIGA: u32 = 22;
4008pub const BUS_ADB: u32 = 23;
4009pub const BUS_I2C: u32 = 24;
4010pub const BUS_HOST: u32 = 25;
4011pub const BUS_GSC: u32 = 26;
4012pub const BUS_ATARI: u32 = 27;
4013pub const BUS_SPI: u32 = 28;
4014pub const BUS_RMI: u32 = 29;
4015pub const BUS_CEC: u32 = 30;
4016pub const BUS_INTEL_ISHTP: u32 = 31;
4017pub const BUS_AMD_SFH: u32 = 32;
4018pub const MT_TOOL_FINGER: u32 = 0;
4019pub const MT_TOOL_PEN: u32 = 1;
4020pub const MT_TOOL_PALM: u32 = 2;
4021pub const MT_TOOL_DIAL: u32 = 10;
4022pub const MT_TOOL_MAX: u32 = 15;
4023pub const FF_STATUS_STOPPED: u32 = 0;
4024pub const FF_STATUS_PLAYING: u32 = 1;
4025pub const FF_STATUS_MAX: u32 = 1;
4026pub const FF_RUMBLE: u32 = 80;
4027pub const FF_PERIODIC: u32 = 81;
4028pub const FF_CONSTANT: u32 = 82;
4029pub const FF_SPRING: u32 = 83;
4030pub const FF_FRICTION: u32 = 84;
4031pub const FF_DAMPER: u32 = 85;
4032pub const FF_INERTIA: u32 = 86;
4033pub const FF_RAMP: u32 = 87;
4034pub const FF_EFFECT_MIN: u32 = 80;
4035pub const FF_EFFECT_MAX: u32 = 87;
4036pub const FF_SQUARE: u32 = 88;
4037pub const FF_TRIANGLE: u32 = 89;
4038pub const FF_SINE: u32 = 90;
4039pub const FF_SAW_UP: u32 = 91;
4040pub const FF_SAW_DOWN: u32 = 92;
4041pub const FF_CUSTOM: u32 = 93;
4042pub const FF_WAVEFORM_MIN: u32 = 88;
4043pub const FF_WAVEFORM_MAX: u32 = 93;
4044pub const FF_GAIN: u32 = 96;
4045pub const FF_AUTOCENTER: u32 = 97;
4046pub const FF_MAX_EFFECTS: u32 = 96;
4047pub const FF_MAX: u32 = 127;
4048pub const FF_CNT: u32 = 128;
4049pub const IORING_FILE_INDEX_ALLOC: i32 = -1;
4050pub const IORING_SETUP_IOPOLL: u32 = 1;
4051pub const IORING_SETUP_SQPOLL: u32 = 2;
4052pub const IORING_SETUP_SQ_AFF: u32 = 4;
4053pub const IORING_SETUP_CQSIZE: u32 = 8;
4054pub const IORING_SETUP_CLAMP: u32 = 16;
4055pub const IORING_SETUP_ATTACH_WQ: u32 = 32;
4056pub const IORING_SETUP_R_DISABLED: u32 = 64;
4057pub const IORING_SETUP_SUBMIT_ALL: u32 = 128;
4058pub const IORING_SETUP_COOP_TASKRUN: u32 = 256;
4059pub const IORING_SETUP_TASKRUN_FLAG: u32 = 512;
4060pub const IORING_SETUP_SQE128: u32 = 1024;
4061pub const IORING_SETUP_CQE32: u32 = 2048;
4062pub const IORING_SETUP_SINGLE_ISSUER: u32 = 4096;
4063pub const IORING_SETUP_DEFER_TASKRUN: u32 = 8192;
4064pub const IORING_SETUP_NO_MMAP: u32 = 16384;
4065pub const IORING_SETUP_REGISTERED_FD_ONLY: u32 = 32768;
4066pub const IORING_SETUP_NO_SQARRAY: u32 = 65536;
4067pub const IORING_URING_CMD_FIXED: u32 = 1;
4068pub const IORING_URING_CMD_MASK: u32 = 1;
4069pub const IORING_FSYNC_DATASYNC: u32 = 1;
4070pub const IORING_TIMEOUT_ABS: u32 = 1;
4071pub const IORING_TIMEOUT_UPDATE: u32 = 2;
4072pub const IORING_TIMEOUT_BOOTTIME: u32 = 4;
4073pub const IORING_TIMEOUT_REALTIME: u32 = 8;
4074pub const IORING_LINK_TIMEOUT_UPDATE: u32 = 16;
4075pub const IORING_TIMEOUT_ETIME_SUCCESS: u32 = 32;
4076pub const IORING_TIMEOUT_MULTISHOT: u32 = 64;
4077pub const IORING_TIMEOUT_CLOCK_MASK: u32 = 12;
4078pub const IORING_TIMEOUT_UPDATE_MASK: u32 = 18;
4079pub const SPLICE_F_FD_IN_FIXED: u32 = 2147483648;
4080pub const IORING_POLL_ADD_MULTI: u32 = 1;
4081pub const IORING_POLL_UPDATE_EVENTS: u32 = 2;
4082pub const IORING_POLL_UPDATE_USER_DATA: u32 = 4;
4083pub const IORING_POLL_ADD_LEVEL: u32 = 8;
4084pub const IORING_ASYNC_CANCEL_ALL: u32 = 1;
4085pub const IORING_ASYNC_CANCEL_FD: u32 = 2;
4086pub const IORING_ASYNC_CANCEL_ANY: u32 = 4;
4087pub const IORING_ASYNC_CANCEL_FD_FIXED: u32 = 8;
4088pub const IORING_ASYNC_CANCEL_USERDATA: u32 = 16;
4089pub const IORING_ASYNC_CANCEL_OP: u32 = 32;
4090pub const IORING_RECVSEND_POLL_FIRST: u32 = 1;
4091pub const IORING_RECV_MULTISHOT: u32 = 2;
4092pub const IORING_RECVSEND_FIXED_BUF: u32 = 4;
4093pub const IORING_SEND_ZC_REPORT_USAGE: u32 = 8;
4094pub const IORING_RECVSEND_BUNDLE: u32 = 16;
4095pub const IORING_NOTIF_USAGE_ZC_COPIED: u32 = 2147483648;
4096pub const IORING_ACCEPT_MULTISHOT: u32 = 1;
4097pub const IORING_ACCEPT_DONTWAIT: u32 = 2;
4098pub const IORING_ACCEPT_POLL_FIRST: u32 = 4;
4099pub const IORING_MSG_RING_CQE_SKIP: u32 = 1;
4100pub const IORING_MSG_RING_FLAGS_PASS: u32 = 2;
4101pub const IORING_FIXED_FD_NO_CLOEXEC: u32 = 1;
4102pub const IORING_NOP_INJECT_RESULT: u32 = 1;
4103pub const IORING_CQE_F_BUFFER: u32 = 1;
4104pub const IORING_CQE_F_MORE: u32 = 2;
4105pub const IORING_CQE_F_SOCK_NONEMPTY: u32 = 4;
4106pub const IORING_CQE_F_NOTIF: u32 = 8;
4107pub const IORING_CQE_F_BUF_MORE: u32 = 16;
4108pub const IORING_CQE_BUFFER_SHIFT: u32 = 16;
4109pub const IORING_OFF_SQ_RING: u32 = 0;
4110pub const IORING_OFF_CQ_RING: u32 = 134217728;
4111pub const IORING_OFF_SQES: u32 = 268435456;
4112pub const IORING_OFF_PBUF_RING: u32 = 2147483648;
4113pub const IORING_OFF_PBUF_SHIFT: u32 = 16;
4114pub const IORING_OFF_MMAP_MASK: u32 = 4160749568;
4115pub const IORING_SQ_NEED_WAKEUP: u32 = 1;
4116pub const IORING_SQ_CQ_OVERFLOW: u32 = 2;
4117pub const IORING_SQ_TASKRUN: u32 = 4;
4118pub const IORING_CQ_EVENTFD_DISABLED: u32 = 1;
4119pub const IORING_ENTER_GETEVENTS: u32 = 1;
4120pub const IORING_ENTER_SQ_WAKEUP: u32 = 2;
4121pub const IORING_ENTER_SQ_WAIT: u32 = 4;
4122pub const IORING_ENTER_EXT_ARG: u32 = 8;
4123pub const IORING_ENTER_REGISTERED_RING: u32 = 16;
4124pub const IORING_ENTER_ABS_TIMER: u32 = 32;
4125pub const IORING_FEAT_SINGLE_MMAP: u32 = 1;
4126pub const IORING_FEAT_NODROP: u32 = 2;
4127pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4;
4128pub const IORING_FEAT_RW_CUR_POS: u32 = 8;
4129pub const IORING_FEAT_CUR_PERSONALITY: u32 = 16;
4130pub const IORING_FEAT_FAST_POLL: u32 = 32;
4131pub const IORING_FEAT_POLL_32BITS: u32 = 64;
4132pub const IORING_FEAT_SQPOLL_NONFIXED: u32 = 128;
4133pub const IORING_FEAT_EXT_ARG: u32 = 256;
4134pub const IORING_FEAT_NATIVE_WORKERS: u32 = 512;
4135pub const IORING_FEAT_RSRC_TAGS: u32 = 1024;
4136pub const IORING_FEAT_CQE_SKIP: u32 = 2048;
4137pub const IORING_FEAT_LINKED_FILE: u32 = 4096;
4138pub const IORING_FEAT_REG_REG_RING: u32 = 8192;
4139pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384;
4140pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768;
4141pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1;
4142pub const IORING_REGISTER_FILES_SKIP: i32 = -2;
4143pub const IO_URING_OP_SUPPORTED: u32 = 1;
4144pub const IPTOS_TOS_MASK: u32 = 30;
4145pub const IPTOS_LOWDELAY: u32 = 16;
4146pub const IPTOS_THROUGHPUT: u32 = 8;
4147pub const IPTOS_RELIABILITY: u32 = 4;
4148pub const IPTOS_MINCOST: u32 = 2;
4149pub const IPTOS_PREC_MASK: u32 = 224;
4150pub const IPTOS_PREC_NETCONTROL: u32 = 224;
4151pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
4152pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
4153pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
4154pub const IPTOS_PREC_FLASH: u32 = 96;
4155pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
4156pub const IPTOS_PREC_PRIORITY: u32 = 32;
4157pub const IPTOS_PREC_ROUTINE: u32 = 0;
4158pub const IPOPT_COPY: u32 = 128;
4159pub const IPOPT_CLASS_MASK: u32 = 96;
4160pub const IPOPT_NUMBER_MASK: u32 = 31;
4161pub const IPOPT_CONTROL: u32 = 0;
4162pub const IPOPT_RESERVED1: u32 = 32;
4163pub const IPOPT_MEASUREMENT: u32 = 64;
4164pub const IPOPT_RESERVED2: u32 = 96;
4165pub const IPOPT_END: u32 = 0;
4166pub const IPOPT_NOOP: u32 = 1;
4167pub const IPOPT_SEC: u32 = 130;
4168pub const IPOPT_LSRR: u32 = 131;
4169pub const IPOPT_TIMESTAMP: u32 = 68;
4170pub const IPOPT_CIPSO: u32 = 134;
4171pub const IPOPT_RR: u32 = 7;
4172pub const IPOPT_SID: u32 = 136;
4173pub const IPOPT_SSRR: u32 = 137;
4174pub const IPOPT_RA: u32 = 148;
4175pub const IPVERSION: u32 = 4;
4176pub const MAXTTL: u32 = 255;
4177pub const IPDEFTTL: u32 = 64;
4178pub const IPOPT_OPTVAL: u32 = 0;
4179pub const IPOPT_OLEN: u32 = 1;
4180pub const IPOPT_OFFSET: u32 = 2;
4181pub const IPOPT_MINOFF: u32 = 4;
4182pub const MAX_IPOPTLEN: u32 = 40;
4183pub const IPOPT_NOP: u32 = 1;
4184pub const IPOPT_EOL: u32 = 0;
4185pub const IPOPT_TS: u32 = 68;
4186pub const IPOPT_TS_TSONLY: u32 = 0;
4187pub const IPOPT_TS_TSANDADDR: u32 = 1;
4188pub const IPOPT_TS_PRESPEC: u32 = 3;
4189pub const IPV4_BEET_PHMAXLEN: u32 = 8;
4190pub const IPV6_FL_A_GET: u32 = 0;
4191pub const IPV6_FL_A_PUT: u32 = 1;
4192pub const IPV6_FL_A_RENEW: u32 = 2;
4193pub const IPV6_FL_F_CREATE: u32 = 1;
4194pub const IPV6_FL_F_EXCL: u32 = 2;
4195pub const IPV6_FL_F_REFLECT: u32 = 4;
4196pub const IPV6_FL_F_REMOTE: u32 = 8;
4197pub const IPV6_FL_S_NONE: u32 = 0;
4198pub const IPV6_FL_S_EXCL: u32 = 1;
4199pub const IPV6_FL_S_PROCESS: u32 = 2;
4200pub const IPV6_FL_S_USER: u32 = 3;
4201pub const IPV6_FL_S_ANY: u32 = 255;
4202pub const IPV6_FLOWINFO_FLOWLABEL: u32 = 1048575;
4203pub const IPV6_FLOWINFO_PRIORITY: u32 = 267386880;
4204pub const IPV6_PRIORITY_UNCHARACTERIZED: u32 = 0;
4205pub const IPV6_PRIORITY_FILLER: u32 = 256;
4206pub const IPV6_PRIORITY_UNATTENDED: u32 = 512;
4207pub const IPV6_PRIORITY_RESERVED1: u32 = 768;
4208pub const IPV6_PRIORITY_BULK: u32 = 1024;
4209pub const IPV6_PRIORITY_RESERVED2: u32 = 1280;
4210pub const IPV6_PRIORITY_INTERACTIVE: u32 = 1536;
4211pub const IPV6_PRIORITY_CONTROL: u32 = 1792;
4212pub const IPV6_PRIORITY_8: u32 = 2048;
4213pub const IPV6_PRIORITY_9: u32 = 2304;
4214pub const IPV6_PRIORITY_10: u32 = 2560;
4215pub const IPV6_PRIORITY_11: u32 = 2816;
4216pub const IPV6_PRIORITY_12: u32 = 3072;
4217pub const IPV6_PRIORITY_13: u32 = 3328;
4218pub const IPV6_PRIORITY_14: u32 = 3584;
4219pub const IPV6_PRIORITY_15: u32 = 3840;
4220pub const IPPROTO_HOPOPTS: u32 = 0;
4221pub const IPPROTO_ROUTING: u32 = 43;
4222pub const IPPROTO_FRAGMENT: u32 = 44;
4223pub const IPPROTO_ICMPV6: u32 = 58;
4224pub const IPPROTO_NONE: u32 = 59;
4225pub const IPPROTO_DSTOPTS: u32 = 60;
4226pub const IPPROTO_MH: u32 = 135;
4227pub const IPV6_TLV_PAD1: u32 = 0;
4228pub const IPV6_TLV_PADN: u32 = 1;
4229pub const IPV6_TLV_ROUTERALERT: u32 = 5;
4230pub const IPV6_TLV_CALIPSO: u32 = 7;
4231pub const IPV6_TLV_IOAM: u32 = 49;
4232pub const IPV6_TLV_JUMBO: u32 = 194;
4233pub const IPV6_TLV_HAO: u32 = 201;
4234pub const IPV6_ADDRFORM: u32 = 1;
4235pub const IPV6_2292PKTINFO: u32 = 2;
4236pub const IPV6_2292HOPOPTS: u32 = 3;
4237pub const IPV6_2292DSTOPTS: u32 = 4;
4238pub const IPV6_2292RTHDR: u32 = 5;
4239pub const IPV6_2292PKTOPTIONS: u32 = 6;
4240pub const IPV6_CHECKSUM: u32 = 7;
4241pub const IPV6_2292HOPLIMIT: u32 = 8;
4242pub const IPV6_NEXTHOP: u32 = 9;
4243pub const IPV6_AUTHHDR: u32 = 10;
4244pub const IPV6_FLOWINFO: u32 = 11;
4245pub const IPV6_UNICAST_HOPS: u32 = 16;
4246pub const IPV6_MULTICAST_IF: u32 = 17;
4247pub const IPV6_MULTICAST_HOPS: u32 = 18;
4248pub const IPV6_MULTICAST_LOOP: u32 = 19;
4249pub const IPV6_ADD_MEMBERSHIP: u32 = 20;
4250pub const IPV6_DROP_MEMBERSHIP: u32 = 21;
4251pub const IPV6_ROUTER_ALERT: u32 = 22;
4252pub const IPV6_MTU_DISCOVER: u32 = 23;
4253pub const IPV6_MTU: u32 = 24;
4254pub const IPV6_RECVERR: u32 = 25;
4255pub const IPV6_V6ONLY: u32 = 26;
4256pub const IPV6_JOIN_ANYCAST: u32 = 27;
4257pub const IPV6_LEAVE_ANYCAST: u32 = 28;
4258pub const IPV6_MULTICAST_ALL: u32 = 29;
4259pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30;
4260pub const IPV6_RECVERR_RFC4884: u32 = 31;
4261pub const IPV6_PMTUDISC_DONT: u32 = 0;
4262pub const IPV6_PMTUDISC_WANT: u32 = 1;
4263pub const IPV6_PMTUDISC_DO: u32 = 2;
4264pub const IPV6_PMTUDISC_PROBE: u32 = 3;
4265pub const IPV6_PMTUDISC_INTERFACE: u32 = 4;
4266pub const IPV6_PMTUDISC_OMIT: u32 = 5;
4267pub const IPV6_FLOWLABEL_MGR: u32 = 32;
4268pub const IPV6_FLOWINFO_SEND: u32 = 33;
4269pub const IPV6_IPSEC_POLICY: u32 = 34;
4270pub const IPV6_XFRM_POLICY: u32 = 35;
4271pub const IPV6_HDRINCL: u32 = 36;
4272pub const IPV6_RECVPKTINFO: u32 = 49;
4273pub const IPV6_PKTINFO: u32 = 50;
4274pub const IPV6_RECVHOPLIMIT: u32 = 51;
4275pub const IPV6_HOPLIMIT: u32 = 52;
4276pub const IPV6_RECVHOPOPTS: u32 = 53;
4277pub const IPV6_HOPOPTS: u32 = 54;
4278pub const IPV6_RTHDRDSTOPTS: u32 = 55;
4279pub const IPV6_RECVRTHDR: u32 = 56;
4280pub const IPV6_RTHDR: u32 = 57;
4281pub const IPV6_RECVDSTOPTS: u32 = 58;
4282pub const IPV6_DSTOPTS: u32 = 59;
4283pub const IPV6_RECVPATHMTU: u32 = 60;
4284pub const IPV6_PATHMTU: u32 = 61;
4285pub const IPV6_DONTFRAG: u32 = 62;
4286pub const IPV6_RECVTCLASS: u32 = 66;
4287pub const IPV6_TCLASS: u32 = 67;
4288pub const IPV6_AUTOFLOWLABEL: u32 = 70;
4289pub const IPV6_ADDR_PREFERENCES: u32 = 72;
4290pub const IPV6_PREFER_SRC_TMP: u32 = 1;
4291pub const IPV6_PREFER_SRC_PUBLIC: u32 = 2;
4292pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT: u32 = 256;
4293pub const IPV6_PREFER_SRC_COA: u32 = 4;
4294pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
4295pub const IPV6_PREFER_SRC_CGA: u32 = 8;
4296pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
4297pub const IPV6_MINHOPCOUNT: u32 = 73;
4298pub const IPV6_ORIGDSTADDR: u32 = 74;
4299pub const IPV6_RECVORIGDSTADDR: u32 = 74;
4300pub const IPV6_TRANSPARENT: u32 = 75;
4301pub const IPV6_UNICAST_IF: u32 = 76;
4302pub const IPV6_RECVFRAGSIZE: u32 = 77;
4303pub const IPV6_FREEBIND: u32 = 78;
4304pub const IPV6_MIN_MTU: u32 = 1280;
4305pub const IPV6_SRCRT_STRICT: u32 = 1;
4306pub const IPV6_SRCRT_TYPE_0: u32 = 0;
4307pub const IPV6_SRCRT_TYPE_2: u32 = 2;
4308pub const IPV6_SRCRT_TYPE_3: u32 = 3;
4309pub const IPV6_SRCRT_TYPE_4: u32 = 4;
4310pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
4311pub const LO_NAME_SIZE: u32 = 64;
4312pub const LO_KEY_SIZE: u32 = 32;
4313pub const LO_CRYPT_NONE: u32 = 0;
4314pub const LO_CRYPT_XOR: u32 = 1;
4315pub const LO_CRYPT_DES: u32 = 2;
4316pub const LO_CRYPT_FISH2: u32 = 3;
4317pub const LO_CRYPT_BLOW: u32 = 4;
4318pub const LO_CRYPT_CAST128: u32 = 5;
4319pub const LO_CRYPT_IDEA: u32 = 6;
4320pub const LO_CRYPT_DUMMY: u32 = 9;
4321pub const LO_CRYPT_SKIPJACK: u32 = 10;
4322pub const LO_CRYPT_CRYPTOAPI: u32 = 18;
4323pub const MAX_LO_CRYPT: u32 = 20;
4324pub const LOOP_SET_FD: u32 = 19456;
4325pub const LOOP_CLR_FD: u32 = 19457;
4326pub const LOOP_SET_STATUS: u32 = 19458;
4327pub const LOOP_GET_STATUS: u32 = 19459;
4328pub const LOOP_SET_STATUS64: u32 = 19460;
4329pub const LOOP_GET_STATUS64: u32 = 19461;
4330pub const LOOP_CHANGE_FD: u32 = 19462;
4331pub const LOOP_SET_CAPACITY: u32 = 19463;
4332pub const LOOP_SET_DIRECT_IO: u32 = 19464;
4333pub const LOOP_SET_BLOCK_SIZE: u32 = 19465;
4334pub const LOOP_CONFIGURE: u32 = 19466;
4335pub const LOOP_CTL_ADD: u32 = 19584;
4336pub const LOOP_CTL_REMOVE: u32 = 19585;
4337pub const LOOP_CTL_GET_FREE: u32 = 19586;
4338pub const ADFS_SUPER_MAGIC: u32 = 44533;
4339pub const AFFS_SUPER_MAGIC: u32 = 44543;
4340pub const AFS_SUPER_MAGIC: u32 = 1397113167;
4341pub const AUTOFS_SUPER_MAGIC: u32 = 391;
4342pub const CEPH_SUPER_MAGIC: u32 = 12805120;
4343pub const CODA_SUPER_MAGIC: u32 = 1937076805;
4344pub const CRAMFS_MAGIC: u32 = 684539205;
4345pub const CRAMFS_MAGIC_WEND: u32 = 1161678120;
4346pub const DEBUGFS_MAGIC: u32 = 1684170528;
4347pub const SECURITYFS_MAGIC: u32 = 1935894131;
4348pub const SELINUX_MAGIC: u32 = 4185718668;
4349pub const SMACK_MAGIC: u32 = 1128357203;
4350pub const RAMFS_MAGIC: u32 = 2240043254;
4351pub const TMPFS_MAGIC: u32 = 16914836;
4352pub const HUGETLBFS_MAGIC: u32 = 2508478710;
4353pub const SQUASHFS_MAGIC: u32 = 1936814952;
4354pub const ECRYPTFS_SUPER_MAGIC: u32 = 61791;
4355pub const EFS_SUPER_MAGIC: u32 = 4278867;
4356pub const EROFS_SUPER_MAGIC_V1: u32 = 3774210530;
4357pub const EXT2_SUPER_MAGIC: u32 = 61267;
4358pub const EXT3_SUPER_MAGIC: u32 = 61267;
4359pub const XENFS_SUPER_MAGIC: u32 = 2881100148;
4360pub const EXT4_SUPER_MAGIC: u32 = 61267;
4361pub const BTRFS_SUPER_MAGIC: u32 = 2435016766;
4362pub const NILFS_SUPER_MAGIC: u32 = 13364;
4363pub const F2FS_SUPER_MAGIC: u32 = 4076150800;
4364pub const HPFS_SUPER_MAGIC: u32 = 4187351113;
4365pub const ISOFS_SUPER_MAGIC: u32 = 38496;
4366pub const JFFS2_SUPER_MAGIC: u32 = 29366;
4367pub const XFS_SUPER_MAGIC: u32 = 1481003842;
4368pub const PSTOREFS_MAGIC: u32 = 1634035564;
4369pub const EFIVARFS_MAGIC: u32 = 3730735588;
4370pub const HOSTFS_SUPER_MAGIC: u32 = 12648430;
4371pub const OVERLAYFS_SUPER_MAGIC: u32 = 2035054128;
4372pub const FUSE_SUPER_MAGIC: u32 = 1702057286;
4373pub const BCACHEFS_SUPER_MAGIC: u32 = 3393526350;
4374pub const MINIX_SUPER_MAGIC: u32 = 4991;
4375pub const MINIX_SUPER_MAGIC2: u32 = 5007;
4376pub const MINIX2_SUPER_MAGIC: u32 = 9320;
4377pub const MINIX2_SUPER_MAGIC2: u32 = 9336;
4378pub const MINIX3_SUPER_MAGIC: u32 = 19802;
4379pub const MSDOS_SUPER_MAGIC: u32 = 19780;
4380pub const EXFAT_SUPER_MAGIC: u32 = 538032816;
4381pub const NCP_SUPER_MAGIC: u32 = 22092;
4382pub const NFS_SUPER_MAGIC: u32 = 26985;
4383pub const OCFS2_SUPER_MAGIC: u32 = 1952539503;
4384pub const OPENPROM_SUPER_MAGIC: u32 = 40865;
4385pub const QNX4_SUPER_MAGIC: u32 = 47;
4386pub const QNX6_SUPER_MAGIC: u32 = 1746473250;
4387pub const AFS_FS_MAGIC: u32 = 1799439955;
4388pub const REISERFS_SUPER_MAGIC: u32 = 1382369651;
4389pub const REISERFS_SUPER_MAGIC_STRING: &'static std::ffi::CStr = c"ReIsErFs";
4390pub const REISER2FS_SUPER_MAGIC_STRING: &'static std::ffi::CStr = c"ReIsEr2Fs";
4391pub const REISER2FS_JR_SUPER_MAGIC_STRING: &'static std::ffi::CStr = c"ReIsEr3Fs";
4392pub const SMB_SUPER_MAGIC: u32 = 20859;
4393pub const CIFS_SUPER_MAGIC: u32 = 4283649346;
4394pub const SMB2_SUPER_MAGIC: u32 = 4266872130;
4395pub const CGROUP_SUPER_MAGIC: u32 = 2613483;
4396pub const CGROUP2_SUPER_MAGIC: u32 = 1667723888;
4397pub const RDTGROUP_SUPER_MAGIC: u32 = 124082209;
4398pub const STACK_END_MAGIC: u32 = 1470918301;
4399pub const TRACEFS_MAGIC: u32 = 1953653091;
4400pub const V9FS_MAGIC: u32 = 16914839;
4401pub const BDEVFS_MAGIC: u32 = 1650746742;
4402pub const DAXFS_MAGIC: u32 = 1684300152;
4403pub const BINFMTFS_MAGIC: u32 = 1112100429;
4404pub const DEVPTS_SUPER_MAGIC: u32 = 7377;
4405pub const BINDERFS_SUPER_MAGIC: u32 = 1819242352;
4406pub const FUTEXFS_SUPER_MAGIC: u32 = 195894762;
4407pub const PIPEFS_MAGIC: u32 = 1346981957;
4408pub const PROC_SUPER_MAGIC: u32 = 40864;
4409pub const SOCKFS_MAGIC: u32 = 1397703499;
4410pub const SYSFS_MAGIC: u32 = 1650812274;
4411pub const USBDEVICE_SUPER_MAGIC: u32 = 40866;
4412pub const MTD_INODE_FS_MAGIC: u32 = 288389204;
4413pub const ANON_INODE_FS_MAGIC: u32 = 151263540;
4414pub const BTRFS_TEST_MAGIC: u32 = 1936880249;
4415pub const NSFS_MAGIC: u32 = 1853056627;
4416pub const BPF_FS_MAGIC: u32 = 3405662737;
4417pub const AAFS_MAGIC: u32 = 1513908720;
4418pub const ZONEFS_MAGIC: u32 = 1515144787;
4419pub const UDF_SUPER_MAGIC: u32 = 352400198;
4420pub const DMA_BUF_MAGIC: u32 = 1145913666;
4421pub const DEVMEM_MAGIC: u32 = 1162691661;
4422pub const SECRETMEM_MAGIC: u32 = 1397048141;
4423pub const PID_FS_MAGIC: u32 = 1346978886;
4424pub const HUGETLB_FLAG_ENCODE_SHIFT: u32 = 26;
4425pub const HUGETLB_FLAG_ENCODE_MASK: u32 = 63;
4426pub const HUGETLB_FLAG_ENCODE_16KB: u32 = 939524096;
4427pub const HUGETLB_FLAG_ENCODE_64KB: u32 = 1073741824;
4428pub const HUGETLB_FLAG_ENCODE_512KB: u32 = 1275068416;
4429pub const HUGETLB_FLAG_ENCODE_1MB: u32 = 1342177280;
4430pub const HUGETLB_FLAG_ENCODE_2MB: u32 = 1409286144;
4431pub const HUGETLB_FLAG_ENCODE_8MB: u32 = 1543503872;
4432pub const HUGETLB_FLAG_ENCODE_16MB: u32 = 1610612736;
4433pub const HUGETLB_FLAG_ENCODE_32MB: u32 = 1677721600;
4434pub const HUGETLB_FLAG_ENCODE_256MB: u32 = 1879048192;
4435pub const HUGETLB_FLAG_ENCODE_512MB: u32 = 1946157056;
4436pub const HUGETLB_FLAG_ENCODE_1GB: u32 = 2013265920;
4437pub const HUGETLB_FLAG_ENCODE_2GB: u32 = 2080374784;
4438pub const HUGETLB_FLAG_ENCODE_16GB: u32 = 2281701376;
4439pub const MFD_CLOEXEC: u32 = 1;
4440pub const MFD_ALLOW_SEALING: u32 = 2;
4441pub const MFD_HUGETLB: u32 = 4;
4442pub const MFD_NOEXEC_SEAL: u32 = 8;
4443pub const MFD_EXEC: u32 = 16;
4444pub const MFD_HUGE_SHIFT: u32 = 26;
4445pub const MFD_HUGE_MASK: u32 = 63;
4446pub const MFD_HUGE_64KB: u32 = 1073741824;
4447pub const MFD_HUGE_512KB: u32 = 1275068416;
4448pub const MFD_HUGE_1MB: u32 = 1342177280;
4449pub const MFD_HUGE_2MB: u32 = 1409286144;
4450pub const MFD_HUGE_8MB: u32 = 1543503872;
4451pub const MFD_HUGE_16MB: u32 = 1610612736;
4452pub const MFD_HUGE_32MB: u32 = 1677721600;
4453pub const MFD_HUGE_256MB: u32 = 1879048192;
4454pub const MFD_HUGE_512MB: u32 = 1946157056;
4455pub const MFD_HUGE_1GB: u32 = 2013265920;
4456pub const MFD_HUGE_2GB: u32 = 2080374784;
4457pub const MFD_HUGE_16GB: u32 = 2281701376;
4458pub const MAP_32BIT: u32 = 64;
4459pub const MAP_ABOVE4G: u32 = 128;
4460pub const SHADOW_STACK_SET_TOKEN: u32 = 1;
4461pub const PROT_READ: u32 = 1;
4462pub const PROT_WRITE: u32 = 2;
4463pub const PROT_EXEC: u32 = 4;
4464pub const PROT_SEM: u32 = 8;
4465pub const PROT_NONE: u32 = 0;
4466pub const PROT_GROWSDOWN: u32 = 16777216;
4467pub const PROT_GROWSUP: u32 = 33554432;
4468pub const MAP_TYPE: u32 = 15;
4469pub const MAP_FIXED: u32 = 16;
4470pub const MAP_ANONYMOUS: u32 = 32;
4471pub const MAP_POPULATE: u32 = 32768;
4472pub const MAP_NONBLOCK: u32 = 65536;
4473pub const MAP_STACK: u32 = 131072;
4474pub const MAP_HUGETLB: u32 = 262144;
4475pub const MAP_SYNC: u32 = 524288;
4476pub const MAP_FIXED_NOREPLACE: u32 = 1048576;
4477pub const MAP_UNINITIALIZED: u32 = 67108864;
4478pub const MLOCK_ONFAULT: u32 = 1;
4479pub const MS_ASYNC: u32 = 1;
4480pub const MS_INVALIDATE: u32 = 2;
4481pub const MS_SYNC: u32 = 4;
4482pub const MADV_NORMAL: u32 = 0;
4483pub const MADV_RANDOM: u32 = 1;
4484pub const MADV_SEQUENTIAL: u32 = 2;
4485pub const MADV_WILLNEED: u32 = 3;
4486pub const MADV_DONTNEED: u32 = 4;
4487pub const MADV_FREE: u32 = 8;
4488pub const MADV_REMOVE: u32 = 9;
4489pub const MADV_DONTFORK: u32 = 10;
4490pub const MADV_DOFORK: u32 = 11;
4491pub const MADV_HWPOISON: u32 = 100;
4492pub const MADV_SOFT_OFFLINE: u32 = 101;
4493pub const MADV_MERGEABLE: u32 = 12;
4494pub const MADV_UNMERGEABLE: u32 = 13;
4495pub const MADV_HUGEPAGE: u32 = 14;
4496pub const MADV_NOHUGEPAGE: u32 = 15;
4497pub const MADV_DONTDUMP: u32 = 16;
4498pub const MADV_DODUMP: u32 = 17;
4499pub const MADV_WIPEONFORK: u32 = 18;
4500pub const MADV_KEEPONFORK: u32 = 19;
4501pub const MADV_COLD: u32 = 20;
4502pub const MADV_PAGEOUT: u32 = 21;
4503pub const MADV_POPULATE_READ: u32 = 22;
4504pub const MADV_POPULATE_WRITE: u32 = 23;
4505pub const MADV_DONTNEED_LOCKED: u32 = 24;
4506pub const MADV_COLLAPSE: u32 = 25;
4507pub const MAP_FILE: u32 = 0;
4508pub const PKEY_DISABLE_ACCESS: u32 = 1;
4509pub const PKEY_DISABLE_WRITE: u32 = 2;
4510pub const PKEY_ACCESS_MASK: u32 = 3;
4511pub const MAP_GROWSDOWN: u32 = 256;
4512pub const MAP_DENYWRITE: u32 = 2048;
4513pub const MAP_EXECUTABLE: u32 = 4096;
4514pub const MAP_LOCKED: u32 = 8192;
4515pub const MAP_NORESERVE: u32 = 16384;
4516pub const MCL_CURRENT: u32 = 1;
4517pub const MCL_FUTURE: u32 = 2;
4518pub const MCL_ONFAULT: u32 = 4;
4519pub const MREMAP_MAYMOVE: u32 = 1;
4520pub const MREMAP_FIXED: u32 = 2;
4521pub const MREMAP_DONTUNMAP: u32 = 4;
4522pub const OVERCOMMIT_GUESS: u32 = 0;
4523pub const OVERCOMMIT_ALWAYS: u32 = 1;
4524pub const OVERCOMMIT_NEVER: u32 = 2;
4525pub const MAP_SHARED: u32 = 1;
4526pub const MAP_PRIVATE: u32 = 2;
4527pub const MAP_SHARED_VALIDATE: u32 = 3;
4528pub const MAP_DROPPABLE: u32 = 8;
4529pub const MAP_HUGE_SHIFT: u32 = 26;
4530pub const MAP_HUGE_MASK: u32 = 63;
4531pub const MAP_HUGE_16KB: u32 = 939524096;
4532pub const MAP_HUGE_64KB: u32 = 1073741824;
4533pub const MAP_HUGE_512KB: u32 = 1275068416;
4534pub const MAP_HUGE_1MB: u32 = 1342177280;
4535pub const MAP_HUGE_2MB: u32 = 1409286144;
4536pub const MAP_HUGE_8MB: u32 = 1543503872;
4537pub const MAP_HUGE_16MB: u32 = 1610612736;
4538pub const MAP_HUGE_32MB: u32 = 1677721600;
4539pub const MAP_HUGE_256MB: u32 = 1879048192;
4540pub const MAP_HUGE_512MB: u32 = 1946157056;
4541pub const MAP_HUGE_1GB: u32 = 2013265920;
4542pub const MAP_HUGE_2GB: u32 = 2080374784;
4543pub const MAP_HUGE_16GB: u32 = 2281701376;
4544pub const MQ_PRIO_MAX: u32 = 32768;
4545pub const MQ_BYTES_MAX: u32 = 819200;
4546pub const NOTIFY_NONE: u32 = 0;
4547pub const NOTIFY_WOKENUP: u32 = 1;
4548pub const NOTIFY_REMOVED: u32 = 2;
4549pub const NOTIFY_COOKIE_LEN: u32 = 32;
4550pub const IP_TOS: u32 = 1;
4551pub const IP_TTL: u32 = 2;
4552pub const IP_HDRINCL: u32 = 3;
4553pub const IP_OPTIONS: u32 = 4;
4554pub const IP_ROUTER_ALERT: u32 = 5;
4555pub const IP_RECVOPTS: u32 = 6;
4556pub const IP_RETOPTS: u32 = 7;
4557pub const IP_PKTINFO: u32 = 8;
4558pub const IP_PKTOPTIONS: u32 = 9;
4559pub const IP_MTU_DISCOVER: u32 = 10;
4560pub const IP_RECVERR: u32 = 11;
4561pub const IP_RECVTTL: u32 = 12;
4562pub const IP_RECVTOS: u32 = 13;
4563pub const IP_MTU: u32 = 14;
4564pub const IP_FREEBIND: u32 = 15;
4565pub const IP_IPSEC_POLICY: u32 = 16;
4566pub const IP_XFRM_POLICY: u32 = 17;
4567pub const IP_PASSSEC: u32 = 18;
4568pub const IP_TRANSPARENT: u32 = 19;
4569pub const IP_RECVRETOPTS: u32 = 7;
4570pub const IP_ORIGDSTADDR: u32 = 20;
4571pub const IP_RECVORIGDSTADDR: u32 = 20;
4572pub const IP_MINTTL: u32 = 21;
4573pub const IP_NODEFRAG: u32 = 22;
4574pub const IP_CHECKSUM: u32 = 23;
4575pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24;
4576pub const IP_RECVFRAGSIZE: u32 = 25;
4577pub const IP_RECVERR_RFC4884: u32 = 26;
4578pub const IP_PMTUDISC_DONT: u32 = 0;
4579pub const IP_PMTUDISC_WANT: u32 = 1;
4580pub const IP_PMTUDISC_DO: u32 = 2;
4581pub const IP_PMTUDISC_PROBE: u32 = 3;
4582pub const IP_PMTUDISC_INTERFACE: u32 = 4;
4583pub const IP_PMTUDISC_OMIT: u32 = 5;
4584pub const IP_MULTICAST_IF: u32 = 32;
4585pub const IP_MULTICAST_TTL: u32 = 33;
4586pub const IP_MULTICAST_LOOP: u32 = 34;
4587pub const IP_ADD_MEMBERSHIP: u32 = 35;
4588pub const IP_DROP_MEMBERSHIP: u32 = 36;
4589pub const IP_UNBLOCK_SOURCE: u32 = 37;
4590pub const IP_BLOCK_SOURCE: u32 = 38;
4591pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39;
4592pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40;
4593pub const IP_MSFILTER: u32 = 41;
4594pub const MCAST_JOIN_GROUP: u32 = 42;
4595pub const MCAST_BLOCK_SOURCE: u32 = 43;
4596pub const MCAST_UNBLOCK_SOURCE: u32 = 44;
4597pub const MCAST_LEAVE_GROUP: u32 = 45;
4598pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46;
4599pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47;
4600pub const MCAST_MSFILTER: u32 = 48;
4601pub const IP_MULTICAST_ALL: u32 = 49;
4602pub const IP_UNICAST_IF: u32 = 50;
4603pub const IP_LOCAL_PORT_RANGE: u32 = 51;
4604pub const IP_PROTOCOL: u32 = 52;
4605pub const MCAST_EXCLUDE: u32 = 0;
4606pub const MCAST_INCLUDE: u32 = 1;
4607pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1;
4608pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1;
4609pub const __SOCK_SIZE__: u32 = 16;
4610pub const IN_CLASSA_NET: u32 = 4278190080;
4611pub const IN_CLASSA_NSHIFT: u32 = 24;
4612pub const IN_CLASSA_HOST: u32 = 16777215;
4613pub const IN_CLASSA_MAX: u32 = 128;
4614pub const IN_CLASSB_NET: u32 = 4294901760;
4615pub const IN_CLASSB_NSHIFT: u32 = 16;
4616pub const IN_CLASSB_HOST: u32 = 65535;
4617pub const IN_CLASSB_MAX: u32 = 65536;
4618pub const IN_CLASSC_NET: u32 = 4294967040;
4619pub const IN_CLASSC_NSHIFT: u32 = 8;
4620pub const IN_CLASSC_HOST: u32 = 255;
4621pub const IN_MULTICAST_NET: u32 = 3758096384;
4622pub const IN_CLASSE_NET: u32 = 4294967295;
4623pub const IN_CLASSE_NSHIFT: u32 = 0;
4624pub const IN_LOOPBACKNET: u32 = 127;
4625pub const INADDR_LOOPBACK: u32 = 2130706433;
4626pub const INADDR_UNSPEC_GROUP: u32 = 3758096384;
4627pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
4628pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
4629pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
4630pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
4631pub const NF_DROP: u32 = 0;
4632pub const NF_ACCEPT: u32 = 1;
4633pub const NF_STOLEN: u32 = 2;
4634pub const NF_QUEUE: u32 = 3;
4635pub const NF_REPEAT: u32 = 4;
4636pub const NF_STOP: u32 = 5;
4637pub const NF_MAX_VERDICT: u32 = 5;
4638pub const NF_VERDICT_MASK: u32 = 255;
4639pub const NF_VERDICT_FLAG_QUEUE_BYPASS: u32 = 32768;
4640pub const NF_VERDICT_QMASK: u32 = 4294901760;
4641pub const NF_VERDICT_QBITS: u32 = 16;
4642pub const NF_VERDICT_BITS: u32 = 16;
4643pub const NF_CT_STATE_INVALID_BIT: u32 = 1;
4644pub const NF_CT_STATE_UNTRACKED_BIT: u32 = 64;
4645pub const NF_CT_EXPECT_PERMANENT: u32 = 1;
4646pub const NF_CT_EXPECT_INACTIVE: u32 = 2;
4647pub const NF_CT_EXPECT_USERSPACE: u32 = 4;
4648pub const NF_NAT_RANGE_MAP_IPS: u32 = 1;
4649pub const NF_NAT_RANGE_PROTO_SPECIFIED: u32 = 2;
4650pub const NF_NAT_RANGE_PROTO_RANDOM: u32 = 4;
4651pub const NF_NAT_RANGE_PERSISTENT: u32 = 8;
4652pub const NF_NAT_RANGE_PROTO_RANDOM_FULLY: u32 = 16;
4653pub const NF_NAT_RANGE_PROTO_OFFSET: u32 = 32;
4654pub const NF_NAT_RANGE_NETMAP: u32 = 64;
4655pub const NF_NAT_RANGE_PROTO_RANDOM_ALL: u32 = 20;
4656pub const NF_NAT_RANGE_MASK: u32 = 127;
4657pub const XT_BPF_MAX_NUM_INSTR: u32 = 64;
4658pub const MB_LEN_MAX: u32 = 1;
4659pub const NF_IP_PRE_ROUTING: u32 = 0;
4660pub const NF_IP_LOCAL_IN: u32 = 1;
4661pub const NF_IP_FORWARD: u32 = 2;
4662pub const NF_IP_LOCAL_OUT: u32 = 3;
4663pub const NF_IP_POST_ROUTING: u32 = 4;
4664pub const NF_IP_NUMHOOKS: u32 = 5;
4665pub const SO_ORIGINAL_DST: u32 = 80;
4666pub const XT_FUNCTION_MAXNAMELEN: u32 = 30;
4667pub const XT_EXTENSION_MAXNAMELEN: u32 = 29;
4668pub const XT_TABLE_MAXNAMELEN: u32 = 32;
4669pub const XT_CONTINUE: u32 = 4294967295;
4670pub const XT_RETURN: i32 = -5;
4671pub const XT_STANDARD_TARGET: &'static std::ffi::CStr = c"";
4672pub const XT_ERROR_TARGET: &'static std::ffi::CStr = c"ERROR";
4673pub const XT_INV_PROTO: u32 = 64;
4674pub const IPT_FUNCTION_MAXNAMELEN: u32 = 30;
4675pub const IPT_TABLE_MAXNAMELEN: u32 = 32;
4676pub const IPT_CONTINUE: u32 = 4294967295;
4677pub const IPT_RETURN: i32 = -5;
4678pub const XT_TCP_INV_SRCPT: u32 = 1;
4679pub const XT_TCP_INV_DSTPT: u32 = 2;
4680pub const XT_TCP_INV_FLAGS: u32 = 4;
4681pub const XT_TCP_INV_OPTION: u32 = 8;
4682pub const XT_TCP_INV_MASK: u32 = 15;
4683pub const XT_UDP_INV_SRCPT: u32 = 1;
4684pub const XT_UDP_INV_DSTPT: u32 = 2;
4685pub const XT_UDP_INV_MASK: u32 = 3;
4686pub const IPT_TCP_INV_SRCPT: u32 = 1;
4687pub const IPT_TCP_INV_DSTPT: u32 = 2;
4688pub const IPT_TCP_INV_FLAGS: u32 = 4;
4689pub const IPT_TCP_INV_OPTION: u32 = 8;
4690pub const IPT_TCP_INV_MASK: u32 = 15;
4691pub const IPT_UDP_INV_SRCPT: u32 = 1;
4692pub const IPT_UDP_INV_DSTPT: u32 = 2;
4693pub const IPT_UDP_INV_MASK: u32 = 3;
4694pub const IPT_STANDARD_TARGET: &'static std::ffi::CStr = c"";
4695pub const IPT_ERROR_TARGET: &'static std::ffi::CStr = c"ERROR";
4696pub const IPT_F_FRAG: u32 = 1;
4697pub const IPT_F_GOTO: u32 = 2;
4698pub const IPT_F_MASK: u32 = 3;
4699pub const IPT_INV_VIA_IN: u32 = 1;
4700pub const IPT_INV_VIA_OUT: u32 = 2;
4701pub const IPT_INV_TOS: u32 = 4;
4702pub const IPT_INV_SRCIP: u32 = 8;
4703pub const IPT_INV_DSTIP: u32 = 16;
4704pub const IPT_INV_FRAG: u32 = 32;
4705pub const IPT_INV_PROTO: u32 = 64;
4706pub const IPT_INV_MASK: u32 = 127;
4707pub const IPT_BASE_CTL: u32 = 64;
4708pub const IPT_SO_SET_REPLACE: u32 = 64;
4709pub const IPT_SO_SET_ADD_COUNTERS: u32 = 65;
4710pub const IPT_SO_SET_MAX: u32 = 65;
4711pub const IPT_SO_GET_INFO: u32 = 64;
4712pub const IPT_SO_GET_ENTRIES: u32 = 65;
4713pub const IPT_SO_GET_REVISION_MATCH: u32 = 66;
4714pub const IPT_SO_GET_REVISION_TARGET: u32 = 67;
4715pub const IPT_SO_GET_MAX: u32 = 67;
4716pub const IPT_ICMP_INV: u32 = 1;
4717pub const NF_IP6_PRE_ROUTING: u32 = 0;
4718pub const NF_IP6_LOCAL_IN: u32 = 1;
4719pub const NF_IP6_FORWARD: u32 = 2;
4720pub const NF_IP6_LOCAL_OUT: u32 = 3;
4721pub const NF_IP6_POST_ROUTING: u32 = 4;
4722pub const NF_IP6_NUMHOOKS: u32 = 5;
4723pub const IP6T_FUNCTION_MAXNAMELEN: u32 = 30;
4724pub const IP6T_TABLE_MAXNAMELEN: u32 = 32;
4725pub const IP6T_CONTINUE: u32 = 4294967295;
4726pub const IP6T_RETURN: i32 = -5;
4727pub const IP6T_TCP_INV_SRCPT: u32 = 1;
4728pub const IP6T_TCP_INV_DSTPT: u32 = 2;
4729pub const IP6T_TCP_INV_FLAGS: u32 = 4;
4730pub const IP6T_TCP_INV_OPTION: u32 = 8;
4731pub const IP6T_TCP_INV_MASK: u32 = 15;
4732pub const IP6T_UDP_INV_SRCPT: u32 = 1;
4733pub const IP6T_UDP_INV_DSTPT: u32 = 2;
4734pub const IP6T_UDP_INV_MASK: u32 = 3;
4735pub const IP6T_STANDARD_TARGET: &'static std::ffi::CStr = c"";
4736pub const IP6T_ERROR_TARGET: &'static std::ffi::CStr = c"ERROR";
4737pub const IP6T_F_PROTO: u32 = 1;
4738pub const IP6T_F_TOS: u32 = 2;
4739pub const IP6T_F_GOTO: u32 = 4;
4740pub const IP6T_F_MASK: u32 = 7;
4741pub const IP6T_INV_VIA_IN: u32 = 1;
4742pub const IP6T_INV_VIA_OUT: u32 = 2;
4743pub const IP6T_INV_TOS: u32 = 4;
4744pub const IP6T_INV_SRCIP: u32 = 8;
4745pub const IP6T_INV_DSTIP: u32 = 16;
4746pub const IP6T_INV_FRAG: u32 = 32;
4747pub const IP6T_INV_PROTO: u32 = 64;
4748pub const IP6T_INV_MASK: u32 = 127;
4749pub const IP6T_BASE_CTL: u32 = 64;
4750pub const IP6T_SO_SET_REPLACE: u32 = 64;
4751pub const IP6T_SO_SET_ADD_COUNTERS: u32 = 65;
4752pub const IP6T_SO_SET_MAX: u32 = 65;
4753pub const IP6T_SO_GET_INFO: u32 = 64;
4754pub const IP6T_SO_GET_ENTRIES: u32 = 65;
4755pub const IP6T_SO_GET_REVISION_MATCH: u32 = 68;
4756pub const IP6T_SO_GET_REVISION_TARGET: u32 = 69;
4757pub const IP6T_SO_GET_MAX: u32 = 69;
4758pub const IP6T_SO_ORIGINAL_DST: u32 = 80;
4759pub const IP6T_ICMP_INV: u32 = 1;
4760pub const OOM_SCORE_ADJ_MIN: i32 = -1000;
4761pub const OOM_SCORE_ADJ_MAX: u32 = 1000;
4762pub const OOM_DISABLE: i32 = -17;
4763pub const OOM_ADJUST_MIN: i32 = -16;
4764pub const OOM_ADJUST_MAX: u32 = 15;
4765pub const PERF_PMU_TYPE_SHIFT: u32 = 32;
4766pub const PERF_HW_EVENT_MASK: u32 = 4294967295;
4767pub const PERF_ATTR_SIZE_VER0: u32 = 64;
4768pub const PERF_ATTR_SIZE_VER1: u32 = 72;
4769pub const PERF_ATTR_SIZE_VER2: u32 = 80;
4770pub const PERF_ATTR_SIZE_VER3: u32 = 96;
4771pub const PERF_ATTR_SIZE_VER4: u32 = 104;
4772pub const PERF_ATTR_SIZE_VER5: u32 = 112;
4773pub const PERF_ATTR_SIZE_VER6: u32 = 120;
4774pub const PERF_ATTR_SIZE_VER7: u32 = 128;
4775pub const PERF_ATTR_SIZE_VER8: u32 = 136;
4776pub const PERF_RECORD_MISC_CPUMODE_MASK: u32 = 7;
4777pub const PERF_RECORD_MISC_CPUMODE_UNKNOWN: u32 = 0;
4778pub const PERF_RECORD_MISC_KERNEL: u32 = 1;
4779pub const PERF_RECORD_MISC_USER: u32 = 2;
4780pub const PERF_RECORD_MISC_HYPERVISOR: u32 = 3;
4781pub const PERF_RECORD_MISC_GUEST_KERNEL: u32 = 4;
4782pub const PERF_RECORD_MISC_GUEST_USER: u32 = 5;
4783pub const PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT: u32 = 4096;
4784pub const PERF_RECORD_MISC_MMAP_DATA: u32 = 8192;
4785pub const PERF_RECORD_MISC_COMM_EXEC: u32 = 8192;
4786pub const PERF_RECORD_MISC_FORK_EXEC: u32 = 8192;
4787pub const PERF_RECORD_MISC_SWITCH_OUT: u32 = 8192;
4788pub const PERF_RECORD_MISC_EXACT_IP: u32 = 16384;
4789pub const PERF_RECORD_MISC_SWITCH_OUT_PREEMPT: u32 = 16384;
4790pub const PERF_RECORD_MISC_MMAP_BUILD_ID: u32 = 16384;
4791pub const PERF_RECORD_MISC_EXT_RESERVED: u32 = 32768;
4792pub const PERF_RECORD_KSYMBOL_FLAGS_UNREGISTER: u32 = 1;
4793pub const PERF_MAX_STACK_DEPTH: u32 = 127;
4794pub const PERF_MAX_CONTEXTS_PER_STACK: u32 = 8;
4795pub const PERF_AUX_FLAG_TRUNCATED: u32 = 1;
4796pub const PERF_AUX_FLAG_OVERWRITE: u32 = 2;
4797pub const PERF_AUX_FLAG_PARTIAL: u32 = 4;
4798pub const PERF_AUX_FLAG_COLLISION: u32 = 8;
4799pub const PERF_AUX_FLAG_PMU_FORMAT_TYPE_MASK: u32 = 65280;
4800pub const PERF_AUX_FLAG_CORESIGHT_FORMAT_CORESIGHT: u32 = 0;
4801pub const PERF_AUX_FLAG_CORESIGHT_FORMAT_RAW: u32 = 256;
4802pub const PERF_FLAG_FD_NO_GROUP: u32 = 1;
4803pub const PERF_FLAG_FD_OUTPUT: u32 = 2;
4804pub const PERF_FLAG_PID_CGROUP: u32 = 4;
4805pub const PERF_FLAG_FD_CLOEXEC: u32 = 8;
4806pub const PERF_MEM_OP_NA: u32 = 1;
4807pub const PERF_MEM_OP_LOAD: u32 = 2;
4808pub const PERF_MEM_OP_STORE: u32 = 4;
4809pub const PERF_MEM_OP_PFETCH: u32 = 8;
4810pub const PERF_MEM_OP_EXEC: u32 = 16;
4811pub const PERF_MEM_OP_SHIFT: u32 = 0;
4812pub const PERF_MEM_LVL_NA: u32 = 1;
4813pub const PERF_MEM_LVL_HIT: u32 = 2;
4814pub const PERF_MEM_LVL_MISS: u32 = 4;
4815pub const PERF_MEM_LVL_L1: u32 = 8;
4816pub const PERF_MEM_LVL_LFB: u32 = 16;
4817pub const PERF_MEM_LVL_L2: u32 = 32;
4818pub const PERF_MEM_LVL_L3: u32 = 64;
4819pub const PERF_MEM_LVL_LOC_RAM: u32 = 128;
4820pub const PERF_MEM_LVL_REM_RAM1: u32 = 256;
4821pub const PERF_MEM_LVL_REM_RAM2: u32 = 512;
4822pub const PERF_MEM_LVL_REM_CCE1: u32 = 1024;
4823pub const PERF_MEM_LVL_REM_CCE2: u32 = 2048;
4824pub const PERF_MEM_LVL_IO: u32 = 4096;
4825pub const PERF_MEM_LVL_UNC: u32 = 8192;
4826pub const PERF_MEM_LVL_SHIFT: u32 = 5;
4827pub const PERF_MEM_REMOTE_REMOTE: u32 = 1;
4828pub const PERF_MEM_REMOTE_SHIFT: u32 = 37;
4829pub const PERF_MEM_LVLNUM_L1: u32 = 1;
4830pub const PERF_MEM_LVLNUM_L2: u32 = 2;
4831pub const PERF_MEM_LVLNUM_L3: u32 = 3;
4832pub const PERF_MEM_LVLNUM_L4: u32 = 4;
4833pub const PERF_MEM_LVLNUM_L2_MHB: u32 = 5;
4834pub const PERF_MEM_LVLNUM_MSC: u32 = 6;
4835pub const PERF_MEM_LVLNUM_UNC: u32 = 8;
4836pub const PERF_MEM_LVLNUM_CXL: u32 = 9;
4837pub const PERF_MEM_LVLNUM_IO: u32 = 10;
4838pub const PERF_MEM_LVLNUM_ANY_CACHE: u32 = 11;
4839pub const PERF_MEM_LVLNUM_LFB: u32 = 12;
4840pub const PERF_MEM_LVLNUM_RAM: u32 = 13;
4841pub const PERF_MEM_LVLNUM_PMEM: u32 = 14;
4842pub const PERF_MEM_LVLNUM_NA: u32 = 15;
4843pub const PERF_MEM_LVLNUM_SHIFT: u32 = 33;
4844pub const PERF_MEM_SNOOP_NA: u32 = 1;
4845pub const PERF_MEM_SNOOP_NONE: u32 = 2;
4846pub const PERF_MEM_SNOOP_HIT: u32 = 4;
4847pub const PERF_MEM_SNOOP_MISS: u32 = 8;
4848pub const PERF_MEM_SNOOP_HITM: u32 = 16;
4849pub const PERF_MEM_SNOOP_SHIFT: u32 = 19;
4850pub const PERF_MEM_SNOOPX_FWD: u32 = 1;
4851pub const PERF_MEM_SNOOPX_PEER: u32 = 2;
4852pub const PERF_MEM_SNOOPX_SHIFT: u32 = 38;
4853pub const PERF_MEM_LOCK_NA: u32 = 1;
4854pub const PERF_MEM_LOCK_LOCKED: u32 = 2;
4855pub const PERF_MEM_LOCK_SHIFT: u32 = 24;
4856pub const PERF_MEM_TLB_NA: u32 = 1;
4857pub const PERF_MEM_TLB_HIT: u32 = 2;
4858pub const PERF_MEM_TLB_MISS: u32 = 4;
4859pub const PERF_MEM_TLB_L1: u32 = 8;
4860pub const PERF_MEM_TLB_L2: u32 = 16;
4861pub const PERF_MEM_TLB_WK: u32 = 32;
4862pub const PERF_MEM_TLB_OS: u32 = 64;
4863pub const PERF_MEM_TLB_SHIFT: u32 = 26;
4864pub const PERF_MEM_BLK_NA: u32 = 1;
4865pub const PERF_MEM_BLK_DATA: u32 = 2;
4866pub const PERF_MEM_BLK_ADDR: u32 = 4;
4867pub const PERF_MEM_BLK_SHIFT: u32 = 40;
4868pub const PERF_MEM_HOPS_0: u32 = 1;
4869pub const PERF_MEM_HOPS_1: u32 = 2;
4870pub const PERF_MEM_HOPS_2: u32 = 3;
4871pub const PERF_MEM_HOPS_3: u32 = 4;
4872pub const PERF_MEM_HOPS_SHIFT: u32 = 43;
4873pub const PERF_BRANCH_ENTRY_INFO_BITS_MAX: u32 = 33;
4874pub const PF_KEY_V2: u32 = 2;
4875pub const PFKEYV2_REVISION: u32 = 199806;
4876pub const SADB_RESERVED: u32 = 0;
4877pub const SADB_GETSPI: u32 = 1;
4878pub const SADB_UPDATE: u32 = 2;
4879pub const SADB_ADD: u32 = 3;
4880pub const SADB_DELETE: u32 = 4;
4881pub const SADB_GET: u32 = 5;
4882pub const SADB_ACQUIRE: u32 = 6;
4883pub const SADB_REGISTER: u32 = 7;
4884pub const SADB_EXPIRE: u32 = 8;
4885pub const SADB_FLUSH: u32 = 9;
4886pub const SADB_DUMP: u32 = 10;
4887pub const SADB_X_PROMISC: u32 = 11;
4888pub const SADB_X_PCHANGE: u32 = 12;
4889pub const SADB_X_SPDUPDATE: u32 = 13;
4890pub const SADB_X_SPDADD: u32 = 14;
4891pub const SADB_X_SPDDELETE: u32 = 15;
4892pub const SADB_X_SPDGET: u32 = 16;
4893pub const SADB_X_SPDACQUIRE: u32 = 17;
4894pub const SADB_X_SPDDUMP: u32 = 18;
4895pub const SADB_X_SPDFLUSH: u32 = 19;
4896pub const SADB_X_SPDSETIDX: u32 = 20;
4897pub const SADB_X_SPDEXPIRE: u32 = 21;
4898pub const SADB_X_SPDDELETE2: u32 = 22;
4899pub const SADB_X_NAT_T_NEW_MAPPING: u32 = 23;
4900pub const SADB_X_MIGRATE: u32 = 24;
4901pub const SADB_MAX: u32 = 24;
4902pub const SADB_SAFLAGS_PFS: u32 = 1;
4903pub const SADB_SAFLAGS_NOPMTUDISC: u32 = 536870912;
4904pub const SADB_SAFLAGS_DECAP_DSCP: u32 = 1073741824;
4905pub const SADB_SAFLAGS_NOECN: u32 = 2147483648;
4906pub const SADB_SASTATE_LARVAL: u32 = 0;
4907pub const SADB_SASTATE_MATURE: u32 = 1;
4908pub const SADB_SASTATE_DYING: u32 = 2;
4909pub const SADB_SASTATE_DEAD: u32 = 3;
4910pub const SADB_SASTATE_MAX: u32 = 3;
4911pub const SADB_SATYPE_UNSPEC: u32 = 0;
4912pub const SADB_SATYPE_AH: u32 = 2;
4913pub const SADB_SATYPE_ESP: u32 = 3;
4914pub const SADB_SATYPE_RSVP: u32 = 5;
4915pub const SADB_SATYPE_OSPFV2: u32 = 6;
4916pub const SADB_SATYPE_RIPV2: u32 = 7;
4917pub const SADB_SATYPE_MIP: u32 = 8;
4918pub const SADB_X_SATYPE_IPCOMP: u32 = 9;
4919pub const SADB_SATYPE_MAX: u32 = 9;
4920pub const SADB_AALG_NONE: u32 = 0;
4921pub const SADB_AALG_MD5HMAC: u32 = 2;
4922pub const SADB_AALG_SHA1HMAC: u32 = 3;
4923pub const SADB_X_AALG_SHA2_256HMAC: u32 = 5;
4924pub const SADB_X_AALG_SHA2_384HMAC: u32 = 6;
4925pub const SADB_X_AALG_SHA2_512HMAC: u32 = 7;
4926pub const SADB_X_AALG_RIPEMD160HMAC: u32 = 8;
4927pub const SADB_X_AALG_AES_XCBC_MAC: u32 = 9;
4928pub const SADB_X_AALG_SM3_256HMAC: u32 = 10;
4929pub const SADB_X_AALG_NULL: u32 = 251;
4930pub const SADB_AALG_MAX: u32 = 251;
4931pub const SADB_EALG_NONE: u32 = 0;
4932pub const SADB_EALG_DESCBC: u32 = 2;
4933pub const SADB_EALG_3DESCBC: u32 = 3;
4934pub const SADB_X_EALG_CASTCBC: u32 = 6;
4935pub const SADB_X_EALG_BLOWFISHCBC: u32 = 7;
4936pub const SADB_EALG_NULL: u32 = 11;
4937pub const SADB_X_EALG_AESCBC: u32 = 12;
4938pub const SADB_X_EALG_AESCTR: u32 = 13;
4939pub const SADB_X_EALG_AES_CCM_ICV8: u32 = 14;
4940pub const SADB_X_EALG_AES_CCM_ICV12: u32 = 15;
4941pub const SADB_X_EALG_AES_CCM_ICV16: u32 = 16;
4942pub const SADB_X_EALG_AES_GCM_ICV8: u32 = 18;
4943pub const SADB_X_EALG_AES_GCM_ICV12: u32 = 19;
4944pub const SADB_X_EALG_AES_GCM_ICV16: u32 = 20;
4945pub const SADB_X_EALG_CAMELLIACBC: u32 = 22;
4946pub const SADB_X_EALG_NULL_AES_GMAC: u32 = 23;
4947pub const SADB_X_EALG_SM4CBC: u32 = 24;
4948pub const SADB_EALG_MAX: u32 = 253;
4949pub const SADB_X_EALG_SERPENTCBC: u32 = 252;
4950pub const SADB_X_EALG_TWOFISHCBC: u32 = 253;
4951pub const SADB_X_CALG_NONE: u32 = 0;
4952pub const SADB_X_CALG_OUI: u32 = 1;
4953pub const SADB_X_CALG_DEFLATE: u32 = 2;
4954pub const SADB_X_CALG_LZS: u32 = 3;
4955pub const SADB_X_CALG_LZJH: u32 = 4;
4956pub const SADB_X_CALG_MAX: u32 = 4;
4957pub const SADB_EXT_RESERVED: u32 = 0;
4958pub const SADB_EXT_SA: u32 = 1;
4959pub const SADB_EXT_LIFETIME_CURRENT: u32 = 2;
4960pub const SADB_EXT_LIFETIME_HARD: u32 = 3;
4961pub const SADB_EXT_LIFETIME_SOFT: u32 = 4;
4962pub const SADB_EXT_ADDRESS_SRC: u32 = 5;
4963pub const SADB_EXT_ADDRESS_DST: u32 = 6;
4964pub const SADB_EXT_ADDRESS_PROXY: u32 = 7;
4965pub const SADB_EXT_KEY_AUTH: u32 = 8;
4966pub const SADB_EXT_KEY_ENCRYPT: u32 = 9;
4967pub const SADB_EXT_IDENTITY_SRC: u32 = 10;
4968pub const SADB_EXT_IDENTITY_DST: u32 = 11;
4969pub const SADB_EXT_SENSITIVITY: u32 = 12;
4970pub const SADB_EXT_PROPOSAL: u32 = 13;
4971pub const SADB_EXT_SUPPORTED_AUTH: u32 = 14;
4972pub const SADB_EXT_SUPPORTED_ENCRYPT: u32 = 15;
4973pub const SADB_EXT_SPIRANGE: u32 = 16;
4974pub const SADB_X_EXT_KMPRIVATE: u32 = 17;
4975pub const SADB_X_EXT_POLICY: u32 = 18;
4976pub const SADB_X_EXT_SA2: u32 = 19;
4977pub const SADB_X_EXT_NAT_T_TYPE: u32 = 20;
4978pub const SADB_X_EXT_NAT_T_SPORT: u32 = 21;
4979pub const SADB_X_EXT_NAT_T_DPORT: u32 = 22;
4980pub const SADB_X_EXT_NAT_T_OA: u32 = 23;
4981pub const SADB_X_EXT_SEC_CTX: u32 = 24;
4982pub const SADB_X_EXT_KMADDRESS: u32 = 25;
4983pub const SADB_X_EXT_FILTER: u32 = 26;
4984pub const SADB_EXT_MAX: u32 = 26;
4985pub const SADB_IDENTTYPE_RESERVED: u32 = 0;
4986pub const SADB_IDENTTYPE_PREFIX: u32 = 1;
4987pub const SADB_IDENTTYPE_FQDN: u32 = 2;
4988pub const SADB_IDENTTYPE_USERFQDN: u32 = 3;
4989pub const SADB_IDENTTYPE_MAX: u32 = 3;
4990pub const PIDFD_NONBLOCK: u32 = 2048;
4991pub const PIDFD_THREAD: u32 = 128;
4992pub const PIDFD_SIGNAL_THREAD: u32 = 1;
4993pub const PIDFD_SIGNAL_THREAD_GROUP: u32 = 2;
4994pub const PIDFD_SIGNAL_PROCESS_GROUP: u32 = 4;
4995pub const PIDFS_IOCTL_MAGIC: u32 = 255;
4996pub const PR_SET_PDEATHSIG: u32 = 1;
4997pub const PR_GET_PDEATHSIG: u32 = 2;
4998pub const PR_GET_DUMPABLE: u32 = 3;
4999pub const PR_SET_DUMPABLE: u32 = 4;
5000pub const PR_GET_UNALIGN: u32 = 5;
5001pub const PR_SET_UNALIGN: u32 = 6;
5002pub const PR_UNALIGN_NOPRINT: u32 = 1;
5003pub const PR_UNALIGN_SIGBUS: u32 = 2;
5004pub const PR_GET_KEEPCAPS: u32 = 7;
5005pub const PR_SET_KEEPCAPS: u32 = 8;
5006pub const PR_GET_FPEMU: u32 = 9;
5007pub const PR_SET_FPEMU: u32 = 10;
5008pub const PR_FPEMU_NOPRINT: u32 = 1;
5009pub const PR_FPEMU_SIGFPE: u32 = 2;
5010pub const PR_GET_FPEXC: u32 = 11;
5011pub const PR_SET_FPEXC: u32 = 12;
5012pub const PR_FP_EXC_SW_ENABLE: u32 = 128;
5013pub const PR_FP_EXC_DIV: u32 = 65536;
5014pub const PR_FP_EXC_OVF: u32 = 131072;
5015pub const PR_FP_EXC_UND: u32 = 262144;
5016pub const PR_FP_EXC_RES: u32 = 524288;
5017pub const PR_FP_EXC_INV: u32 = 1048576;
5018pub const PR_FP_EXC_DISABLED: u32 = 0;
5019pub const PR_FP_EXC_NONRECOV: u32 = 1;
5020pub const PR_FP_EXC_ASYNC: u32 = 2;
5021pub const PR_FP_EXC_PRECISE: u32 = 3;
5022pub const PR_GET_TIMING: u32 = 13;
5023pub const PR_SET_TIMING: u32 = 14;
5024pub const PR_TIMING_STATISTICAL: u32 = 0;
5025pub const PR_TIMING_TIMESTAMP: u32 = 1;
5026pub const PR_SET_NAME: u32 = 15;
5027pub const PR_GET_NAME: u32 = 16;
5028pub const PR_GET_ENDIAN: u32 = 19;
5029pub const PR_SET_ENDIAN: u32 = 20;
5030pub const PR_ENDIAN_BIG: u32 = 0;
5031pub const PR_ENDIAN_LITTLE: u32 = 1;
5032pub const PR_ENDIAN_PPC_LITTLE: u32 = 2;
5033pub const PR_GET_SECCOMP: u32 = 21;
5034pub const PR_SET_SECCOMP: u32 = 22;
5035pub const PR_CAPBSET_READ: u32 = 23;
5036pub const PR_CAPBSET_DROP: u32 = 24;
5037pub const PR_GET_TSC: u32 = 25;
5038pub const PR_SET_TSC: u32 = 26;
5039pub const PR_TSC_ENABLE: u32 = 1;
5040pub const PR_TSC_SIGSEGV: u32 = 2;
5041pub const PR_GET_SECUREBITS: u32 = 27;
5042pub const PR_SET_SECUREBITS: u32 = 28;
5043pub const PR_SET_TIMERSLACK: u32 = 29;
5044pub const PR_GET_TIMERSLACK: u32 = 30;
5045pub const PR_TASK_PERF_EVENTS_DISABLE: u32 = 31;
5046pub const PR_TASK_PERF_EVENTS_ENABLE: u32 = 32;
5047pub const PR_MCE_KILL: u32 = 33;
5048pub const PR_MCE_KILL_CLEAR: u32 = 0;
5049pub const PR_MCE_KILL_SET: u32 = 1;
5050pub const PR_MCE_KILL_LATE: u32 = 0;
5051pub const PR_MCE_KILL_EARLY: u32 = 1;
5052pub const PR_MCE_KILL_DEFAULT: u32 = 2;
5053pub const PR_MCE_KILL_GET: u32 = 34;
5054pub const PR_SET_MM: u32 = 35;
5055pub const PR_SET_MM_START_CODE: u32 = 1;
5056pub const PR_SET_MM_END_CODE: u32 = 2;
5057pub const PR_SET_MM_START_DATA: u32 = 3;
5058pub const PR_SET_MM_END_DATA: u32 = 4;
5059pub const PR_SET_MM_START_STACK: u32 = 5;
5060pub const PR_SET_MM_START_BRK: u32 = 6;
5061pub const PR_SET_MM_BRK: u32 = 7;
5062pub const PR_SET_MM_ARG_START: u32 = 8;
5063pub const PR_SET_MM_ARG_END: u32 = 9;
5064pub const PR_SET_MM_ENV_START: u32 = 10;
5065pub const PR_SET_MM_ENV_END: u32 = 11;
5066pub const PR_SET_MM_AUXV: u32 = 12;
5067pub const PR_SET_MM_EXE_FILE: u32 = 13;
5068pub const PR_SET_MM_MAP: u32 = 14;
5069pub const PR_SET_MM_MAP_SIZE: u32 = 15;
5070pub const PR_SET_PTRACER: u32 = 1499557217;
5071pub const PR_SET_CHILD_SUBREAPER: u32 = 36;
5072pub const PR_GET_CHILD_SUBREAPER: u32 = 37;
5073pub const PR_SET_NO_NEW_PRIVS: u32 = 38;
5074pub const PR_GET_NO_NEW_PRIVS: u32 = 39;
5075pub const PR_GET_TID_ADDRESS: u32 = 40;
5076pub const PR_SET_THP_DISABLE: u32 = 41;
5077pub const PR_GET_THP_DISABLE: u32 = 42;
5078pub const PR_MPX_ENABLE_MANAGEMENT: u32 = 43;
5079pub const PR_MPX_DISABLE_MANAGEMENT: u32 = 44;
5080pub const PR_SET_FP_MODE: u32 = 45;
5081pub const PR_GET_FP_MODE: u32 = 46;
5082pub const PR_FP_MODE_FR: u32 = 1;
5083pub const PR_FP_MODE_FRE: u32 = 2;
5084pub const PR_CAP_AMBIENT: u32 = 47;
5085pub const PR_CAP_AMBIENT_IS_SET: u32 = 1;
5086pub const PR_CAP_AMBIENT_RAISE: u32 = 2;
5087pub const PR_CAP_AMBIENT_LOWER: u32 = 3;
5088pub const PR_CAP_AMBIENT_CLEAR_ALL: u32 = 4;
5089pub const PR_SVE_SET_VL: u32 = 50;
5090pub const PR_SVE_SET_VL_ONEXEC: u32 = 262144;
5091pub const PR_SVE_GET_VL: u32 = 51;
5092pub const PR_SVE_VL_LEN_MASK: u32 = 65535;
5093pub const PR_SVE_VL_INHERIT: u32 = 131072;
5094pub const PR_GET_SPECULATION_CTRL: u32 = 52;
5095pub const PR_SET_SPECULATION_CTRL: u32 = 53;
5096pub const PR_SPEC_STORE_BYPASS: u32 = 0;
5097pub const PR_SPEC_INDIRECT_BRANCH: u32 = 1;
5098pub const PR_SPEC_L1D_FLUSH: u32 = 2;
5099pub const PR_SPEC_NOT_AFFECTED: u32 = 0;
5100pub const PR_SPEC_PRCTL: u32 = 1;
5101pub const PR_SPEC_ENABLE: u32 = 2;
5102pub const PR_SPEC_DISABLE: u32 = 4;
5103pub const PR_SPEC_FORCE_DISABLE: u32 = 8;
5104pub const PR_SPEC_DISABLE_NOEXEC: u32 = 16;
5105pub const PR_PAC_RESET_KEYS: u32 = 54;
5106pub const PR_PAC_APIAKEY: u32 = 1;
5107pub const PR_PAC_APIBKEY: u32 = 2;
5108pub const PR_PAC_APDAKEY: u32 = 4;
5109pub const PR_PAC_APDBKEY: u32 = 8;
5110pub const PR_PAC_APGAKEY: u32 = 16;
5111pub const PR_SET_TAGGED_ADDR_CTRL: u32 = 55;
5112pub const PR_GET_TAGGED_ADDR_CTRL: u32 = 56;
5113pub const PR_TAGGED_ADDR_ENABLE: u32 = 1;
5114pub const PR_MTE_TCF_NONE: u32 = 0;
5115pub const PR_MTE_TCF_SYNC: u32 = 2;
5116pub const PR_MTE_TCF_ASYNC: u32 = 4;
5117pub const PR_MTE_TCF_MASK: u32 = 6;
5118pub const PR_MTE_TAG_SHIFT: u32 = 3;
5119pub const PR_MTE_TAG_MASK: u32 = 524280;
5120pub const PR_MTE_TCF_SHIFT: u32 = 1;
5121pub const PR_SET_IO_FLUSHER: u32 = 57;
5122pub const PR_GET_IO_FLUSHER: u32 = 58;
5123pub const PR_SET_SYSCALL_USER_DISPATCH: u32 = 59;
5124pub const PR_SYS_DISPATCH_OFF: u32 = 0;
5125pub const PR_SYS_DISPATCH_ON: u32 = 1;
5126pub const SYSCALL_DISPATCH_FILTER_ALLOW: u32 = 0;
5127pub const SYSCALL_DISPATCH_FILTER_BLOCK: u32 = 1;
5128pub const PR_PAC_SET_ENABLED_KEYS: u32 = 60;
5129pub const PR_PAC_GET_ENABLED_KEYS: u32 = 61;
5130pub const PR_SCHED_CORE: u32 = 62;
5131pub const PR_SCHED_CORE_GET: u32 = 0;
5132pub const PR_SCHED_CORE_CREATE: u32 = 1;
5133pub const PR_SCHED_CORE_SHARE_TO: u32 = 2;
5134pub const PR_SCHED_CORE_SHARE_FROM: u32 = 3;
5135pub const PR_SCHED_CORE_MAX: u32 = 4;
5136pub const PR_SCHED_CORE_SCOPE_THREAD: u32 = 0;
5137pub const PR_SCHED_CORE_SCOPE_THREAD_GROUP: u32 = 1;
5138pub const PR_SCHED_CORE_SCOPE_PROCESS_GROUP: u32 = 2;
5139pub const PR_SME_SET_VL: u32 = 63;
5140pub const PR_SME_SET_VL_ONEXEC: u32 = 262144;
5141pub const PR_SME_GET_VL: u32 = 64;
5142pub const PR_SME_VL_LEN_MASK: u32 = 65535;
5143pub const PR_SME_VL_INHERIT: u32 = 131072;
5144pub const PR_SET_MDWE: u32 = 65;
5145pub const PR_MDWE_REFUSE_EXEC_GAIN: u32 = 1;
5146pub const PR_MDWE_NO_INHERIT: u32 = 2;
5147pub const PR_GET_MDWE: u32 = 66;
5148pub const PR_SET_VMA: u32 = 1398164801;
5149pub const PR_SET_VMA_ANON_NAME: u32 = 0;
5150pub const PR_GET_AUXV: u32 = 1096112214;
5151pub const PR_SET_MEMORY_MERGE: u32 = 67;
5152pub const PR_GET_MEMORY_MERGE: u32 = 68;
5153pub const PR_RISCV_V_SET_CONTROL: u32 = 69;
5154pub const PR_RISCV_V_GET_CONTROL: u32 = 70;
5155pub const PR_RISCV_V_VSTATE_CTRL_DEFAULT: u32 = 0;
5156pub const PR_RISCV_V_VSTATE_CTRL_OFF: u32 = 1;
5157pub const PR_RISCV_V_VSTATE_CTRL_ON: u32 = 2;
5158pub const PR_RISCV_V_VSTATE_CTRL_INHERIT: u32 = 16;
5159pub const PR_RISCV_V_VSTATE_CTRL_CUR_MASK: u32 = 3;
5160pub const PR_RISCV_V_VSTATE_CTRL_NEXT_MASK: u32 = 12;
5161pub const PR_RISCV_V_VSTATE_CTRL_MASK: u32 = 31;
5162pub const PR_RISCV_SET_ICACHE_FLUSH_CTX: u32 = 71;
5163pub const PR_RISCV_CTX_SW_FENCEI_ON: u32 = 0;
5164pub const PR_RISCV_CTX_SW_FENCEI_OFF: u32 = 1;
5165pub const PR_RISCV_SCOPE_PER_PROCESS: u32 = 0;
5166pub const PR_RISCV_SCOPE_PER_THREAD: u32 = 1;
5167pub const PR_PPC_GET_DEXCR: u32 = 72;
5168pub const PR_PPC_SET_DEXCR: u32 = 73;
5169pub const PR_PPC_DEXCR_SBHE: u32 = 0;
5170pub const PR_PPC_DEXCR_IBRTPD: u32 = 1;
5171pub const PR_PPC_DEXCR_SRAPD: u32 = 2;
5172pub const PR_PPC_DEXCR_NPHIE: u32 = 3;
5173pub const PR_PPC_DEXCR_CTRL_EDITABLE: u32 = 1;
5174pub const PR_PPC_DEXCR_CTRL_SET: u32 = 2;
5175pub const PR_PPC_DEXCR_CTRL_CLEAR: u32 = 4;
5176pub const PR_PPC_DEXCR_CTRL_SET_ONEXEC: u32 = 8;
5177pub const PR_PPC_DEXCR_CTRL_CLEAR_ONEXEC: u32 = 16;
5178pub const PR_PPC_DEXCR_CTRL_MASK: u32 = 31;
5179pub const PTRACE_TRACEME: u32 = 0;
5180pub const PTRACE_PEEKTEXT: u32 = 1;
5181pub const PTRACE_PEEKDATA: u32 = 2;
5182pub const PTRACE_PEEKUSR: u32 = 3;
5183pub const PTRACE_POKETEXT: u32 = 4;
5184pub const PTRACE_POKEDATA: u32 = 5;
5185pub const PTRACE_POKEUSR: u32 = 6;
5186pub const PTRACE_CONT: u32 = 7;
5187pub const PTRACE_KILL: u32 = 8;
5188pub const PTRACE_SINGLESTEP: u32 = 9;
5189pub const PTRACE_ATTACH: u32 = 16;
5190pub const PTRACE_DETACH: u32 = 17;
5191pub const PTRACE_SYSCALL: u32 = 24;
5192pub const PTRACE_SETOPTIONS: u32 = 16896;
5193pub const PTRACE_GETEVENTMSG: u32 = 16897;
5194pub const PTRACE_GETSIGINFO: u32 = 16898;
5195pub const PTRACE_SETSIGINFO: u32 = 16899;
5196pub const PTRACE_GETREGSET: u32 = 16900;
5197pub const PTRACE_SETREGSET: u32 = 16901;
5198pub const PTRACE_SEIZE: u32 = 16902;
5199pub const PTRACE_INTERRUPT: u32 = 16903;
5200pub const PTRACE_LISTEN: u32 = 16904;
5201pub const PTRACE_PEEKSIGINFO: u32 = 16905;
5202pub const PTRACE_GETSIGMASK: u32 = 16906;
5203pub const PTRACE_SETSIGMASK: u32 = 16907;
5204pub const PTRACE_SECCOMP_GET_FILTER: u32 = 16908;
5205pub const PTRACE_SECCOMP_GET_METADATA: u32 = 16909;
5206pub const PTRACE_GET_SYSCALL_INFO: u32 = 16910;
5207pub const PTRACE_SYSCALL_INFO_NONE: u32 = 0;
5208pub const PTRACE_SYSCALL_INFO_ENTRY: u32 = 1;
5209pub const PTRACE_SYSCALL_INFO_EXIT: u32 = 2;
5210pub const PTRACE_SYSCALL_INFO_SECCOMP: u32 = 3;
5211pub const PTRACE_GET_RSEQ_CONFIGURATION: u32 = 16911;
5212pub const PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG: u32 = 16912;
5213pub const PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG: u32 = 16913;
5214pub const PTRACE_EVENTMSG_SYSCALL_ENTRY: u32 = 1;
5215pub const PTRACE_EVENTMSG_SYSCALL_EXIT: u32 = 2;
5216pub const PTRACE_PEEKSIGINFO_SHARED: u32 = 1;
5217pub const PTRACE_EVENT_FORK: u32 = 1;
5218pub const PTRACE_EVENT_VFORK: u32 = 2;
5219pub const PTRACE_EVENT_CLONE: u32 = 3;
5220pub const PTRACE_EVENT_EXEC: u32 = 4;
5221pub const PTRACE_EVENT_VFORK_DONE: u32 = 5;
5222pub const PTRACE_EVENT_EXIT: u32 = 6;
5223pub const PTRACE_EVENT_SECCOMP: u32 = 7;
5224pub const PTRACE_EVENT_STOP: u32 = 128;
5225pub const PTRACE_O_TRACESYSGOOD: u32 = 1;
5226pub const PTRACE_O_TRACEFORK: u32 = 2;
5227pub const PTRACE_O_TRACEVFORK: u32 = 4;
5228pub const PTRACE_O_TRACECLONE: u32 = 8;
5229pub const PTRACE_O_TRACEEXEC: u32 = 16;
5230pub const PTRACE_O_TRACEVFORKDONE: u32 = 32;
5231pub const PTRACE_O_TRACEEXIT: u32 = 64;
5232pub const PTRACE_O_TRACESECCOMP: u32 = 128;
5233pub const PTRACE_O_EXITKILL: u32 = 1048576;
5234pub const PTRACE_O_SUSPEND_SECCOMP: u32 = 2097152;
5235pub const PTRACE_O_MASK: u32 = 3145983;
5236pub const FRAME_SIZE: u32 = 168;
5237pub const PTRACE_GETREGS: u32 = 12;
5238pub const PTRACE_SETREGS: u32 = 13;
5239pub const PTRACE_GETFPREGS: u32 = 14;
5240pub const PTRACE_SETFPREGS: u32 = 15;
5241pub const PTRACE_GETFPXREGS: u32 = 18;
5242pub const PTRACE_SETFPXREGS: u32 = 19;
5243pub const PTRACE_OLDSETOPTIONS: u32 = 21;
5244pub const PTRACE_GET_THREAD_AREA: u32 = 25;
5245pub const PTRACE_SET_THREAD_AREA: u32 = 26;
5246pub const PTRACE_ARCH_PRCTL: u32 = 30;
5247pub const PTRACE_SYSEMU: u32 = 31;
5248pub const PTRACE_SYSEMU_SINGLESTEP: u32 = 32;
5249pub const PTRACE_SINGLEBLOCK: u32 = 33;
5250pub const X86_EFLAGS_CF_BIT: u32 = 0;
5251pub const X86_EFLAGS_FIXED_BIT: u32 = 1;
5252pub const X86_EFLAGS_PF_BIT: u32 = 2;
5253pub const X86_EFLAGS_AF_BIT: u32 = 4;
5254pub const X86_EFLAGS_ZF_BIT: u32 = 6;
5255pub const X86_EFLAGS_SF_BIT: u32 = 7;
5256pub const X86_EFLAGS_TF_BIT: u32 = 8;
5257pub const X86_EFLAGS_IF_BIT: u32 = 9;
5258pub const X86_EFLAGS_DF_BIT: u32 = 10;
5259pub const X86_EFLAGS_OF_BIT: u32 = 11;
5260pub const X86_EFLAGS_IOPL_BIT: u32 = 12;
5261pub const X86_EFLAGS_NT_BIT: u32 = 14;
5262pub const X86_EFLAGS_RF_BIT: u32 = 16;
5263pub const X86_EFLAGS_VM_BIT: u32 = 17;
5264pub const X86_EFLAGS_AC_BIT: u32 = 18;
5265pub const X86_EFLAGS_VIF_BIT: u32 = 19;
5266pub const X86_EFLAGS_VIP_BIT: u32 = 20;
5267pub const X86_EFLAGS_ID_BIT: u32 = 21;
5268pub const X86_CR0_PE_BIT: u32 = 0;
5269pub const X86_CR0_MP_BIT: u32 = 1;
5270pub const X86_CR0_EM_BIT: u32 = 2;
5271pub const X86_CR0_TS_BIT: u32 = 3;
5272pub const X86_CR0_ET_BIT: u32 = 4;
5273pub const X86_CR0_NE_BIT: u32 = 5;
5274pub const X86_CR0_WP_BIT: u32 = 16;
5275pub const X86_CR0_AM_BIT: u32 = 18;
5276pub const X86_CR0_NW_BIT: u32 = 29;
5277pub const X86_CR0_CD_BIT: u32 = 30;
5278pub const X86_CR0_PG_BIT: u32 = 31;
5279pub const X86_CR3_PWT_BIT: u32 = 3;
5280pub const X86_CR3_PCD_BIT: u32 = 4;
5281pub const X86_CR3_PCID_BITS: u32 = 12;
5282pub const X86_CR3_LAM_U57_BIT: u32 = 61;
5283pub const X86_CR3_LAM_U48_BIT: u32 = 62;
5284pub const X86_CR3_PCID_NOFLUSH_BIT: u32 = 63;
5285pub const X86_CR4_VME_BIT: u32 = 0;
5286pub const X86_CR4_PVI_BIT: u32 = 1;
5287pub const X86_CR4_TSD_BIT: u32 = 2;
5288pub const X86_CR4_DE_BIT: u32 = 3;
5289pub const X86_CR4_PSE_BIT: u32 = 4;
5290pub const X86_CR4_PAE_BIT: u32 = 5;
5291pub const X86_CR4_MCE_BIT: u32 = 6;
5292pub const X86_CR4_PGE_BIT: u32 = 7;
5293pub const X86_CR4_PCE_BIT: u32 = 8;
5294pub const X86_CR4_OSFXSR_BIT: u32 = 9;
5295pub const X86_CR4_OSXMMEXCPT_BIT: u32 = 10;
5296pub const X86_CR4_UMIP_BIT: u32 = 11;
5297pub const X86_CR4_LA57_BIT: u32 = 12;
5298pub const X86_CR4_VMXE_BIT: u32 = 13;
5299pub const X86_CR4_SMXE_BIT: u32 = 14;
5300pub const X86_CR4_FSGSBASE_BIT: u32 = 16;
5301pub const X86_CR4_PCIDE_BIT: u32 = 17;
5302pub const X86_CR4_OSXSAVE_BIT: u32 = 18;
5303pub const X86_CR4_SMEP_BIT: u32 = 20;
5304pub const X86_CR4_SMAP_BIT: u32 = 21;
5305pub const X86_CR4_PKE_BIT: u32 = 22;
5306pub const X86_CR4_CET_BIT: u32 = 23;
5307pub const X86_CR4_LAM_SUP_BIT: u32 = 28;
5308pub const X86_CR4_FRED_BIT: u32 = 32;
5309pub const CX86_PCR0: u32 = 32;
5310pub const CX86_GCR: u32 = 184;
5311pub const CX86_CCR0: u32 = 192;
5312pub const CX86_CCR1: u32 = 193;
5313pub const CX86_CCR2: u32 = 194;
5314pub const CX86_CCR3: u32 = 195;
5315pub const CX86_CCR4: u32 = 232;
5316pub const CX86_CCR5: u32 = 233;
5317pub const CX86_CCR6: u32 = 234;
5318pub const CX86_CCR7: u32 = 235;
5319pub const CX86_PCR1: u32 = 240;
5320pub const CX86_DIR0: u32 = 254;
5321pub const CX86_DIR1: u32 = 255;
5322pub const CX86_ARR_BASE: u32 = 196;
5323pub const CX86_RCR_BASE: u32 = 220;
5324pub const GRND_NONBLOCK: u32 = 1;
5325pub const GRND_RANDOM: u32 = 2;
5326pub const GRND_INSECURE: u32 = 4;
5327pub const LINUX_REBOOT_MAGIC1: u32 = 4276215469;
5328pub const LINUX_REBOOT_MAGIC2: u32 = 672274793;
5329pub const LINUX_REBOOT_MAGIC2A: u32 = 85072278;
5330pub const LINUX_REBOOT_MAGIC2B: u32 = 369367448;
5331pub const LINUX_REBOOT_MAGIC2C: u32 = 537993216;
5332pub const LINUX_REBOOT_CMD_RESTART: u32 = 19088743;
5333pub const LINUX_REBOOT_CMD_HALT: u32 = 3454992675;
5334pub const LINUX_REBOOT_CMD_CAD_ON: u32 = 2309737967;
5335pub const LINUX_REBOOT_CMD_CAD_OFF: u32 = 0;
5336pub const LINUX_REBOOT_CMD_POWER_OFF: u32 = 1126301404;
5337pub const LINUX_REBOOT_CMD_RESTART2: u32 = 2712847316;
5338pub const LINUX_REBOOT_CMD_SW_SUSPEND: u32 = 3489725666;
5339pub const LINUX_REBOOT_CMD_KEXEC: u32 = 1163412803;
5340pub const RUSAGE_SELF: u32 = 0;
5341pub const RUSAGE_CHILDREN: i32 = -1;
5342pub const RUSAGE_BOTH: i32 = -2;
5343pub const RUSAGE_THREAD: u32 = 1;
5344pub const RLIM64_INFINITY: i32 = -1;
5345pub const PRIO_MIN: i32 = -20;
5346pub const PRIO_MAX: u32 = 20;
5347pub const PRIO_PROCESS: u32 = 0;
5348pub const PRIO_PGRP: u32 = 1;
5349pub const PRIO_USER: u32 = 2;
5350pub const _STK_LIM: u32 = 8388608;
5351pub const MLOCK_LIMIT: u32 = 8388608;
5352pub const RLIMIT_CPU: u32 = 0;
5353pub const RLIMIT_FSIZE: u32 = 1;
5354pub const RLIMIT_DATA: u32 = 2;
5355pub const RLIMIT_STACK: u32 = 3;
5356pub const RLIMIT_CORE: u32 = 4;
5357pub const RLIMIT_RSS: u32 = 5;
5358pub const RLIMIT_NPROC: u32 = 6;
5359pub const RLIMIT_NOFILE: u32 = 7;
5360pub const RLIMIT_MEMLOCK: u32 = 8;
5361pub const RLIMIT_AS: u32 = 9;
5362pub const RLIMIT_LOCKS: u32 = 10;
5363pub const RLIMIT_SIGPENDING: u32 = 11;
5364pub const RLIMIT_MSGQUEUE: u32 = 12;
5365pub const RLIMIT_NICE: u32 = 13;
5366pub const RLIMIT_RTPRIO: u32 = 14;
5367pub const RLIMIT_RTTIME: u32 = 15;
5368pub const RLIM_NLIMITS: u32 = 16;
5369pub const RLIM_INFINITY: i32 = -1;
5370pub const RTC_IRQF: u32 = 128;
5371pub const RTC_PF: u32 = 64;
5372pub const RTC_AF: u32 = 32;
5373pub const RTC_UF: u32 = 16;
5374pub const RTC_FEATURE_ALARM: u32 = 0;
5375pub const RTC_FEATURE_ALARM_RES_MINUTE: u32 = 1;
5376pub const RTC_FEATURE_NEED_WEEK_DAY: u32 = 2;
5377pub const RTC_FEATURE_ALARM_RES_2S: u32 = 3;
5378pub const RTC_FEATURE_UPDATE_INTERRUPT: u32 = 4;
5379pub const RTC_FEATURE_CORRECTION: u32 = 5;
5380pub const RTC_FEATURE_BACKUP_SWITCH_MODE: u32 = 6;
5381pub const RTC_FEATURE_ALARM_WAKEUP_ONLY: u32 = 7;
5382pub const RTC_FEATURE_CNT: u32 = 8;
5383pub const RTC_PARAM_FEATURES: u32 = 0;
5384pub const RTC_PARAM_CORRECTION: u32 = 1;
5385pub const RTC_PARAM_BACKUP_SWITCH_MODE: u32 = 2;
5386pub const RTC_BSM_DISABLED: u32 = 0;
5387pub const RTC_BSM_DIRECT: u32 = 1;
5388pub const RTC_BSM_LEVEL: u32 = 2;
5389pub const RTC_BSM_STANDBY: u32 = 3;
5390pub const RTC_MAX_FREQ: u32 = 8192;
5391pub const CSIGNAL: u32 = 255;
5392pub const CLONE_VM: u32 = 256;
5393pub const CLONE_FS: u32 = 512;
5394pub const CLONE_FILES: u32 = 1024;
5395pub const CLONE_SIGHAND: u32 = 2048;
5396pub const CLONE_PIDFD: u32 = 4096;
5397pub const CLONE_PTRACE: u32 = 8192;
5398pub const CLONE_VFORK: u32 = 16384;
5399pub const CLONE_PARENT: u32 = 32768;
5400pub const CLONE_THREAD: u32 = 65536;
5401pub const CLONE_NEWNS: u32 = 131072;
5402pub const CLONE_SYSVSEM: u32 = 262144;
5403pub const CLONE_SETTLS: u32 = 524288;
5404pub const CLONE_PARENT_SETTID: u32 = 1048576;
5405pub const CLONE_CHILD_CLEARTID: u32 = 2097152;
5406pub const CLONE_DETACHED: u32 = 4194304;
5407pub const CLONE_UNTRACED: u32 = 8388608;
5408pub const CLONE_CHILD_SETTID: u32 = 16777216;
5409pub const CLONE_NEWCGROUP: u32 = 33554432;
5410pub const CLONE_NEWUTS: u32 = 67108864;
5411pub const CLONE_NEWIPC: u32 = 134217728;
5412pub const CLONE_NEWUSER: u32 = 268435456;
5413pub const CLONE_NEWPID: u32 = 536870912;
5414pub const CLONE_NEWNET: u32 = 1073741824;
5415pub const CLONE_IO: u32 = 2147483648;
5416pub const CLONE_CLEAR_SIGHAND: u64 = 4294967296;
5417pub const CLONE_INTO_CGROUP: u64 = 8589934592;
5418pub const CLONE_NEWTIME: u32 = 128;
5419pub const CLONE_ARGS_SIZE_VER0: u32 = 64;
5420pub const CLONE_ARGS_SIZE_VER1: u32 = 80;
5421pub const CLONE_ARGS_SIZE_VER2: u32 = 88;
5422pub const SCHED_NORMAL: u32 = 0;
5423pub const SCHED_FIFO: u32 = 1;
5424pub const SCHED_RR: u32 = 2;
5425pub const SCHED_BATCH: u32 = 3;
5426pub const SCHED_IDLE: u32 = 5;
5427pub const SCHED_DEADLINE: u32 = 6;
5428pub const SCHED_EXT: u32 = 7;
5429pub const SCHED_RESET_ON_FORK: u32 = 1073741824;
5430pub const SCHED_FLAG_RESET_ON_FORK: u32 = 1;
5431pub const SCHED_FLAG_RECLAIM: u32 = 2;
5432pub const SCHED_FLAG_DL_OVERRUN: u32 = 4;
5433pub const SCHED_FLAG_KEEP_POLICY: u32 = 8;
5434pub const SCHED_FLAG_KEEP_PARAMS: u32 = 16;
5435pub const SCHED_FLAG_UTIL_CLAMP_MIN: u32 = 32;
5436pub const SCHED_FLAG_UTIL_CLAMP_MAX: u32 = 64;
5437pub const SCHED_FLAG_KEEP_ALL: u32 = 24;
5438pub const SCHED_FLAG_UTIL_CLAMP: u32 = 96;
5439pub const SCHED_FLAG_ALL: u32 = 127;
5440pub const SCHED_ATTR_SIZE_VER0: u32 = 48;
5441pub const SCHED_ATTR_SIZE_VER1: u32 = 56;
5442pub const SECCOMP_MODE_DISABLED: u32 = 0;
5443pub const SECCOMP_MODE_STRICT: u32 = 1;
5444pub const SECCOMP_MODE_FILTER: u32 = 2;
5445pub const SECCOMP_SET_MODE_STRICT: u32 = 0;
5446pub const SECCOMP_SET_MODE_FILTER: u32 = 1;
5447pub const SECCOMP_GET_ACTION_AVAIL: u32 = 2;
5448pub const SECCOMP_GET_NOTIF_SIZES: u32 = 3;
5449pub const SECCOMP_FILTER_FLAG_TSYNC: u32 = 1;
5450pub const SECCOMP_FILTER_FLAG_LOG: u32 = 2;
5451pub const SECCOMP_FILTER_FLAG_SPEC_ALLOW: u32 = 4;
5452pub const SECCOMP_FILTER_FLAG_NEW_LISTENER: u32 = 8;
5453pub const SECCOMP_FILTER_FLAG_TSYNC_ESRCH: u32 = 16;
5454pub const SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV: u32 = 32;
5455pub const SECCOMP_RET_KILL_PROCESS: u32 = 2147483648;
5456pub const SECCOMP_RET_KILL_THREAD: u32 = 0;
5457pub const SECCOMP_RET_KILL: u32 = 0;
5458pub const SECCOMP_RET_TRAP: u32 = 196608;
5459pub const SECCOMP_RET_ERRNO: u32 = 327680;
5460pub const SECCOMP_RET_USER_NOTIF: u32 = 2143289344;
5461pub const SECCOMP_RET_TRACE: u32 = 2146435072;
5462pub const SECCOMP_RET_LOG: u32 = 2147221504;
5463pub const SECCOMP_RET_ALLOW: u32 = 2147418112;
5464pub const SECCOMP_RET_ACTION_FULL: u32 = 4294901760;
5465pub const SECCOMP_RET_ACTION: u32 = 2147418112;
5466pub const SECCOMP_RET_DATA: u32 = 65535;
5467pub const SECCOMP_USER_NOTIF_FLAG_CONTINUE: u32 = 1;
5468pub const SECCOMP_USER_NOTIF_FD_SYNC_WAKE_UP: u32 = 1;
5469pub const SECCOMP_ADDFD_FLAG_SETFD: u32 = 1;
5470pub const SECCOMP_ADDFD_FLAG_SEND: u32 = 2;
5471pub const SECCOMP_IOC_MAGIC: u8 = 33u8;
5472pub const SECUREBITS_DEFAULT: u32 = 0;
5473pub const SECURE_NOROOT: u32 = 0;
5474pub const SECURE_NOROOT_LOCKED: u32 = 1;
5475pub const SECURE_NO_SETUID_FIXUP: u32 = 2;
5476pub const SECURE_NO_SETUID_FIXUP_LOCKED: u32 = 3;
5477pub const SECURE_KEEP_CAPS: u32 = 4;
5478pub const SECURE_KEEP_CAPS_LOCKED: u32 = 5;
5479pub const SECURE_NO_CAP_AMBIENT_RAISE: u32 = 6;
5480pub const SECURE_NO_CAP_AMBIENT_RAISE_LOCKED: u32 = 7;
5481pub const SI_MAX_SIZE: u32 = 128;
5482pub const SI_USER: u32 = 0;
5483pub const SI_KERNEL: u32 = 128;
5484pub const SI_QUEUE: i32 = -1;
5485pub const SI_TIMER: i32 = -2;
5486pub const SI_MESGQ: i32 = -3;
5487pub const SI_ASYNCIO: i32 = -4;
5488pub const SI_SIGIO: i32 = -5;
5489pub const SI_TKILL: i32 = -6;
5490pub const SI_DETHREAD: i32 = -7;
5491pub const SI_ASYNCNL: i32 = -60;
5492pub const ILL_ILLOPC: u32 = 1;
5493pub const ILL_ILLOPN: u32 = 2;
5494pub const ILL_ILLADR: u32 = 3;
5495pub const ILL_ILLTRP: u32 = 4;
5496pub const ILL_PRVOPC: u32 = 5;
5497pub const ILL_PRVREG: u32 = 6;
5498pub const ILL_COPROC: u32 = 7;
5499pub const ILL_BADSTK: u32 = 8;
5500pub const ILL_BADIADDR: u32 = 9;
5501pub const __ILL_BREAK: u32 = 10;
5502pub const __ILL_BNDMOD: u32 = 11;
5503pub const NSIGILL: u32 = 11;
5504pub const FPE_INTDIV: u32 = 1;
5505pub const FPE_INTOVF: u32 = 2;
5506pub const FPE_FLTDIV: u32 = 3;
5507pub const FPE_FLTOVF: u32 = 4;
5508pub const FPE_FLTUND: u32 = 5;
5509pub const FPE_FLTRES: u32 = 6;
5510pub const FPE_FLTINV: u32 = 7;
5511pub const FPE_FLTSUB: u32 = 8;
5512pub const __FPE_DECOVF: u32 = 9;
5513pub const __FPE_DECDIV: u32 = 10;
5514pub const __FPE_DECERR: u32 = 11;
5515pub const __FPE_INVASC: u32 = 12;
5516pub const __FPE_INVDEC: u32 = 13;
5517pub const FPE_FLTUNK: u32 = 14;
5518pub const FPE_CONDTRAP: u32 = 15;
5519pub const NSIGFPE: u32 = 15;
5520pub const SEGV_MAPERR: u32 = 1;
5521pub const SEGV_ACCERR: u32 = 2;
5522pub const SEGV_BNDERR: u32 = 3;
5523pub const SEGV_PKUERR: u32 = 4;
5524pub const SEGV_ACCADI: u32 = 5;
5525pub const SEGV_ADIDERR: u32 = 6;
5526pub const SEGV_ADIPERR: u32 = 7;
5527pub const SEGV_MTEAERR: u32 = 8;
5528pub const SEGV_MTESERR: u32 = 9;
5529pub const SEGV_CPERR: u32 = 10;
5530pub const NSIGSEGV: u32 = 10;
5531pub const BUS_ADRALN: u32 = 1;
5532pub const BUS_ADRERR: u32 = 2;
5533pub const BUS_OBJERR: u32 = 3;
5534pub const BUS_MCEERR_AR: u32 = 4;
5535pub const BUS_MCEERR_AO: u32 = 5;
5536pub const NSIGBUS: u32 = 5;
5537pub const TRAP_BRKPT: u32 = 1;
5538pub const TRAP_TRACE: u32 = 2;
5539pub const TRAP_BRANCH: u32 = 3;
5540pub const TRAP_HWBKPT: u32 = 4;
5541pub const TRAP_UNK: u32 = 5;
5542pub const TRAP_PERF: u32 = 6;
5543pub const NSIGTRAP: u32 = 6;
5544pub const TRAP_PERF_FLAG_ASYNC: u32 = 1;
5545pub const CLD_EXITED: u32 = 1;
5546pub const CLD_KILLED: u32 = 2;
5547pub const CLD_DUMPED: u32 = 3;
5548pub const CLD_TRAPPED: u32 = 4;
5549pub const CLD_STOPPED: u32 = 5;
5550pub const CLD_CONTINUED: u32 = 6;
5551pub const NSIGCHLD: u32 = 6;
5552pub const POLL_IN: u32 = 1;
5553pub const POLL_OUT: u32 = 2;
5554pub const POLL_MSG: u32 = 3;
5555pub const POLL_ERR: u32 = 4;
5556pub const POLL_PRI: u32 = 5;
5557pub const POLL_HUP: u32 = 6;
5558pub const NSIGPOLL: u32 = 6;
5559pub const SYS_SECCOMP: u32 = 1;
5560pub const SYS_USER_DISPATCH: u32 = 2;
5561pub const NSIGSYS: u32 = 2;
5562pub const EMT_TAGOVF: u32 = 1;
5563pub const NSIGEMT: u32 = 1;
5564pub const SIGEV_SIGNAL: u32 = 0;
5565pub const SIGEV_NONE: u32 = 1;
5566pub const SIGEV_THREAD: u32 = 2;
5567pub const SIGEV_THREAD_ID: u32 = 4;
5568pub const SIGEV_MAX_SIZE: u32 = 64;
5569pub const SS_ONSTACK: u32 = 1;
5570pub const SS_DISABLE: u32 = 2;
5571pub const SS_AUTODISARM: u32 = 2147483648;
5572pub const SS_FLAG_BITS: u32 = 2147483648;
5573pub const SFD_CLOEXEC: u32 = 524288;
5574pub const SFD_NONBLOCK: u32 = 2048;
5575pub const SOCK_DIAG_BY_FAMILY: u32 = 20;
5576pub const SOCK_DESTROY: u32 = 21;
5577pub const SIOCINQ: u32 = 21531;
5578pub const SIOCOUTQ: u32 = 21521;
5579pub const SOCK_IOC_TYPE: u32 = 137;
5580pub const SIOCGSTAMP: u32 = 35078;
5581pub const SIOCGSTAMPNS: u32 = 35079;
5582pub const SIOCADDRT: u32 = 35083;
5583pub const SIOCDELRT: u32 = 35084;
5584pub const SIOCRTMSG: u32 = 35085;
5585pub const SIOCGIFNAME: u32 = 35088;
5586pub const SIOCSIFLINK: u32 = 35089;
5587pub const SIOCGIFCONF: u32 = 35090;
5588pub const SIOCGIFFLAGS: u32 = 35091;
5589pub const SIOCSIFFLAGS: u32 = 35092;
5590pub const SIOCGIFADDR: u32 = 35093;
5591pub const SIOCSIFADDR: u32 = 35094;
5592pub const SIOCGIFDSTADDR: u32 = 35095;
5593pub const SIOCSIFDSTADDR: u32 = 35096;
5594pub const SIOCGIFBRDADDR: u32 = 35097;
5595pub const SIOCSIFBRDADDR: u32 = 35098;
5596pub const SIOCGIFNETMASK: u32 = 35099;
5597pub const SIOCSIFNETMASK: u32 = 35100;
5598pub const SIOCGIFMETRIC: u32 = 35101;
5599pub const SIOCSIFMETRIC: u32 = 35102;
5600pub const SIOCGIFMEM: u32 = 35103;
5601pub const SIOCSIFMEM: u32 = 35104;
5602pub const SIOCGIFMTU: u32 = 35105;
5603pub const SIOCSIFMTU: u32 = 35106;
5604pub const SIOCSIFNAME: u32 = 35107;
5605pub const SIOCSIFHWADDR: u32 = 35108;
5606pub const SIOCGIFENCAP: u32 = 35109;
5607pub const SIOCSIFENCAP: u32 = 35110;
5608pub const SIOCGIFHWADDR: u32 = 35111;
5609pub const SIOCGIFSLAVE: u32 = 35113;
5610pub const SIOCSIFSLAVE: u32 = 35120;
5611pub const SIOCADDMULTI: u32 = 35121;
5612pub const SIOCDELMULTI: u32 = 35122;
5613pub const SIOCGIFINDEX: u32 = 35123;
5614pub const SIOGIFINDEX: u32 = 35123;
5615pub const SIOCSIFPFLAGS: u32 = 35124;
5616pub const SIOCGIFPFLAGS: u32 = 35125;
5617pub const SIOCDIFADDR: u32 = 35126;
5618pub const SIOCSIFHWBROADCAST: u32 = 35127;
5619pub const SIOCGIFCOUNT: u32 = 35128;
5620pub const SIOCGIFBR: u32 = 35136;
5621pub const SIOCSIFBR: u32 = 35137;
5622pub const SIOCGIFTXQLEN: u32 = 35138;
5623pub const SIOCSIFTXQLEN: u32 = 35139;
5624pub const SIOCETHTOOL: u32 = 35142;
5625pub const SIOCGMIIPHY: u32 = 35143;
5626pub const SIOCGMIIREG: u32 = 35144;
5627pub const SIOCSMIIREG: u32 = 35145;
5628pub const SIOCWANDEV: u32 = 35146;
5629pub const SIOCOUTQNSD: u32 = 35147;
5630pub const SIOCGSKNS: u32 = 35148;
5631pub const SIOCDARP: u32 = 35155;
5632pub const SIOCGARP: u32 = 35156;
5633pub const SIOCSARP: u32 = 35157;
5634pub const SIOCDRARP: u32 = 35168;
5635pub const SIOCGRARP: u32 = 35169;
5636pub const SIOCSRARP: u32 = 35170;
5637pub const SIOCGIFMAP: u32 = 35184;
5638pub const SIOCSIFMAP: u32 = 35185;
5639pub const SIOCADDDLCI: u32 = 35200;
5640pub const SIOCDELDLCI: u32 = 35201;
5641pub const SIOCGIFVLAN: u32 = 35202;
5642pub const SIOCSIFVLAN: u32 = 35203;
5643pub const SIOCBONDENSLAVE: u32 = 35216;
5644pub const SIOCBONDRELEASE: u32 = 35217;
5645pub const SIOCBONDSETHWADDR: u32 = 35218;
5646pub const SIOCBONDSLAVEINFOQUERY: u32 = 35219;
5647pub const SIOCBONDINFOQUERY: u32 = 35220;
5648pub const SIOCBONDCHANGEACTIVE: u32 = 35221;
5649pub const SIOCBRADDBR: u32 = 35232;
5650pub const SIOCBRDELBR: u32 = 35233;
5651pub const SIOCBRADDIF: u32 = 35234;
5652pub const SIOCBRDELIF: u32 = 35235;
5653pub const SIOCSHWTSTAMP: u32 = 35248;
5654pub const SIOCGHWTSTAMP: u32 = 35249;
5655pub const SIOCDEVPRIVATE: u32 = 35312;
5656pub const SIOCPROTOPRIVATE: u32 = 35296;
5657pub const S_IFMT: u32 = 61440;
5658pub const S_IFSOCK: u32 = 49152;
5659pub const S_IFLNK: u32 = 40960;
5660pub const S_IFREG: u32 = 32768;
5661pub const S_IFBLK: u32 = 24576;
5662pub const S_IFDIR: u32 = 16384;
5663pub const S_IFCHR: u32 = 8192;
5664pub const S_IFIFO: u32 = 4096;
5665pub const S_ISUID: u32 = 2048;
5666pub const S_ISGID: u32 = 1024;
5667pub const S_ISVTX: u32 = 512;
5668pub const S_IRWXU: u32 = 448;
5669pub const S_IRUSR: u32 = 256;
5670pub const S_IWUSR: u32 = 128;
5671pub const S_IXUSR: u32 = 64;
5672pub const S_IRWXG: u32 = 56;
5673pub const S_IRGRP: u32 = 32;
5674pub const S_IWGRP: u32 = 16;
5675pub const S_IXGRP: u32 = 8;
5676pub const S_IRWXO: u32 = 7;
5677pub const S_IROTH: u32 = 4;
5678pub const S_IWOTH: u32 = 2;
5679pub const S_IXOTH: u32 = 1;
5680pub const STATX_TYPE: u32 = 1;
5681pub const STATX_MODE: u32 = 2;
5682pub const STATX_NLINK: u32 = 4;
5683pub const STATX_UID: u32 = 8;
5684pub const STATX_GID: u32 = 16;
5685pub const STATX_ATIME: u32 = 32;
5686pub const STATX_MTIME: u32 = 64;
5687pub const STATX_CTIME: u32 = 128;
5688pub const STATX_INO: u32 = 256;
5689pub const STATX_SIZE: u32 = 512;
5690pub const STATX_BLOCKS: u32 = 1024;
5691pub const STATX_BASIC_STATS: u32 = 2047;
5692pub const STATX_BTIME: u32 = 2048;
5693pub const STATX_MNT_ID: u32 = 4096;
5694pub const STATX_DIOALIGN: u32 = 8192;
5695pub const STATX_MNT_ID_UNIQUE: u32 = 16384;
5696pub const STATX_SUBVOL: u32 = 32768;
5697pub const STATX_WRITE_ATOMIC: u32 = 65536;
5698pub const STATX__RESERVED: u32 = 2147483648;
5699pub const STATX_ALL: u32 = 4095;
5700pub const STATX_ATTR_COMPRESSED: u32 = 4;
5701pub const STATX_ATTR_IMMUTABLE: u32 = 16;
5702pub const STATX_ATTR_APPEND: u32 = 32;
5703pub const STATX_ATTR_NODUMP: u32 = 64;
5704pub const STATX_ATTR_ENCRYPTED: u32 = 2048;
5705pub const STATX_ATTR_AUTOMOUNT: u32 = 4096;
5706pub const STATX_ATTR_MOUNT_ROOT: u32 = 8192;
5707pub const STATX_ATTR_VERITY: u32 = 1048576;
5708pub const STATX_ATTR_DAX: u32 = 2097152;
5709pub const STATX_ATTR_WRITE_ATOMIC: u32 = 4194304;
5710pub const SYNC_IOC_MAGIC: u8 = 62u8;
5711pub const SI_LOAD_SHIFT: u32 = 16;
5712pub const TASKSTATS_VERSION: u32 = 14;
5713pub const TS_COMM_LEN: u32 = 32;
5714pub const TASKSTATS_GENL_NAME: &'static std::ffi::CStr = c"TASKSTATS";
5715pub const TASKSTATS_GENL_VERSION: u32 = 1;
5716pub const IGNBRK: u32 = 1;
5717pub const BRKINT: u32 = 2;
5718pub const IGNPAR: u32 = 4;
5719pub const PARMRK: u32 = 8;
5720pub const INPCK: u32 = 16;
5721pub const ISTRIP: u32 = 32;
5722pub const INLCR: u32 = 64;
5723pub const IGNCR: u32 = 128;
5724pub const ICRNL: u32 = 256;
5725pub const IXANY: u32 = 2048;
5726pub const OPOST: u32 = 1;
5727pub const OCRNL: u32 = 8;
5728pub const ONOCR: u32 = 16;
5729pub const ONLRET: u32 = 32;
5730pub const OFILL: u32 = 64;
5731pub const OFDEL: u32 = 128;
5732pub const B0: u32 = 0;
5733pub const B50: u32 = 1;
5734pub const B75: u32 = 2;
5735pub const B110: u32 = 3;
5736pub const B134: u32 = 4;
5737pub const B150: u32 = 5;
5738pub const B200: u32 = 6;
5739pub const B300: u32 = 7;
5740pub const B600: u32 = 8;
5741pub const B1200: u32 = 9;
5742pub const B1800: u32 = 10;
5743pub const B2400: u32 = 11;
5744pub const B4800: u32 = 12;
5745pub const B9600: u32 = 13;
5746pub const B19200: u32 = 14;
5747pub const B38400: u32 = 15;
5748pub const EXTA: u32 = 14;
5749pub const EXTB: u32 = 15;
5750pub const ADDRB: u32 = 536870912;
5751pub const CMSPAR: u32 = 1073741824;
5752pub const CRTSCTS: u32 = 2147483648;
5753pub const IBSHIFT: u32 = 16;
5754pub const TCOOFF: u32 = 0;
5755pub const TCOON: u32 = 1;
5756pub const TCIOFF: u32 = 2;
5757pub const TCION: u32 = 3;
5758pub const TCIFLUSH: u32 = 0;
5759pub const TCOFLUSH: u32 = 1;
5760pub const TCIOFLUSH: u32 = 2;
5761pub const NCCS: u32 = 19;
5762pub const VINTR: u32 = 0;
5763pub const VQUIT: u32 = 1;
5764pub const VERASE: u32 = 2;
5765pub const VKILL: u32 = 3;
5766pub const VEOF: u32 = 4;
5767pub const VTIME: u32 = 5;
5768pub const VMIN: u32 = 6;
5769pub const VSWTC: u32 = 7;
5770pub const VSTART: u32 = 8;
5771pub const VSTOP: u32 = 9;
5772pub const VSUSP: u32 = 10;
5773pub const VEOL: u32 = 11;
5774pub const VREPRINT: u32 = 12;
5775pub const VDISCARD: u32 = 13;
5776pub const VWERASE: u32 = 14;
5777pub const VLNEXT: u32 = 15;
5778pub const VEOL2: u32 = 16;
5779pub const IUCLC: u32 = 512;
5780pub const IXON: u32 = 1024;
5781pub const IXOFF: u32 = 4096;
5782pub const IMAXBEL: u32 = 8192;
5783pub const IUTF8: u32 = 16384;
5784pub const OLCUC: u32 = 2;
5785pub const ONLCR: u32 = 4;
5786pub const NLDLY: u32 = 256;
5787pub const NL0: u32 = 0;
5788pub const NL1: u32 = 256;
5789pub const CRDLY: u32 = 1536;
5790pub const CR0: u32 = 0;
5791pub const CR1: u32 = 512;
5792pub const CR2: u32 = 1024;
5793pub const CR3: u32 = 1536;
5794pub const TABDLY: u32 = 6144;
5795pub const TAB0: u32 = 0;
5796pub const TAB1: u32 = 2048;
5797pub const TAB2: u32 = 4096;
5798pub const TAB3: u32 = 6144;
5799pub const XTABS: u32 = 6144;
5800pub const BSDLY: u32 = 8192;
5801pub const BS0: u32 = 0;
5802pub const BS1: u32 = 8192;
5803pub const VTDLY: u32 = 16384;
5804pub const VT0: u32 = 0;
5805pub const VT1: u32 = 16384;
5806pub const FFDLY: u32 = 32768;
5807pub const FF0: u32 = 0;
5808pub const FF1: u32 = 32768;
5809pub const CBAUD: u32 = 4111;
5810pub const CSIZE: u32 = 48;
5811pub const CS5: u32 = 0;
5812pub const CS6: u32 = 16;
5813pub const CS7: u32 = 32;
5814pub const CS8: u32 = 48;
5815pub const CSTOPB: u32 = 64;
5816pub const CREAD: u32 = 128;
5817pub const PARENB: u32 = 256;
5818pub const PARODD: u32 = 512;
5819pub const HUPCL: u32 = 1024;
5820pub const CLOCAL: u32 = 2048;
5821pub const CBAUDEX: u32 = 4096;
5822pub const BOTHER: u32 = 4096;
5823pub const B57600: u32 = 4097;
5824pub const B115200: u32 = 4098;
5825pub const B230400: u32 = 4099;
5826pub const B460800: u32 = 4100;
5827pub const B500000: u32 = 4101;
5828pub const B576000: u32 = 4102;
5829pub const B921600: u32 = 4103;
5830pub const B1000000: u32 = 4104;
5831pub const B1152000: u32 = 4105;
5832pub const B1500000: u32 = 4106;
5833pub const B2000000: u32 = 4107;
5834pub const B2500000: u32 = 4108;
5835pub const B3000000: u32 = 4109;
5836pub const B3500000: u32 = 4110;
5837pub const B4000000: u32 = 4111;
5838pub const CIBAUD: u32 = 269418496;
5839pub const ISIG: u32 = 1;
5840pub const ICANON: u32 = 2;
5841pub const XCASE: u32 = 4;
5842pub const ECHO: u32 = 8;
5843pub const ECHOE: u32 = 16;
5844pub const ECHOK: u32 = 32;
5845pub const ECHONL: u32 = 64;
5846pub const NOFLSH: u32 = 128;
5847pub const TOSTOP: u32 = 256;
5848pub const ECHOCTL: u32 = 512;
5849pub const ECHOPRT: u32 = 1024;
5850pub const ECHOKE: u32 = 2048;
5851pub const FLUSHO: u32 = 4096;
5852pub const PENDIN: u32 = 16384;
5853pub const IEXTEN: u32 = 32768;
5854pub const EXTPROC: u32 = 65536;
5855pub const TCSANOW: u32 = 0;
5856pub const TCSADRAIN: u32 = 1;
5857pub const TCSAFLUSH: u32 = 2;
5858pub const NCC: u32 = 8;
5859pub const TIOCM_LE: u32 = 1;
5860pub const TIOCM_DTR: u32 = 2;
5861pub const TIOCM_RTS: u32 = 4;
5862pub const TIOCM_ST: u32 = 8;
5863pub const TIOCM_SR: u32 = 16;
5864pub const TIOCM_CTS: u32 = 32;
5865pub const TIOCM_CAR: u32 = 64;
5866pub const TIOCM_RNG: u32 = 128;
5867pub const TIOCM_DSR: u32 = 256;
5868pub const TIOCM_CD: u32 = 64;
5869pub const TIOCM_RI: u32 = 128;
5870pub const TIOCM_OUT1: u32 = 8192;
5871pub const TIOCM_OUT2: u32 = 16384;
5872pub const TIOCM_LOOP: u32 = 32768;
5873pub const THERMAL_NAME_LENGTH: u32 = 20;
5874pub const THERMAL_GENL_FAMILY_NAME: &'static std::ffi::CStr = c"thermal";
5875pub const THERMAL_GENL_VERSION: u32 = 1;
5876pub const THERMAL_GENL_SAMPLING_GROUP_NAME: &'static std::ffi::CStr = c"sampling";
5877pub const THERMAL_GENL_EVENT_GROUP_NAME: &'static std::ffi::CStr = c"event";
5878pub const TFD_TIMER_ABSTIME: u32 = 1;
5879pub const TFD_TIMER_CANCEL_ON_SET: u32 = 2;
5880pub const TFD_CLOEXEC: u32 = 524288;
5881pub const TFD_NONBLOCK: u32 = 2048;
5882pub const UINPUT_VERSION: u32 = 5;
5883pub const UINPUT_MAX_NAME_SIZE: u32 = 80;
5884pub const UINPUT_IOCTL_BASE: u8 = 85u8;
5885pub const EV_UINPUT: u32 = 257;
5886pub const UI_FF_UPLOAD: u32 = 1;
5887pub const UI_FF_ERASE: u32 = 2;
5888pub const UIO_FASTIOV: u32 = 8;
5889pub const UIO_MAXIOV: u32 = 1024;
5890pub const UNIX_PATH_MAX: u32 = 108;
5891pub const SIOCUNIXFILE: u32 = 35296;
5892pub const __X32_SYSCALL_BIT: u32 = 1073741824;
5893pub const __NR_read: u32 = 0;
5894pub const __NR_write: u32 = 1;
5895pub const __NR_open: u32 = 2;
5896pub const __NR_close: u32 = 3;
5897pub const __NR_stat: u32 = 4;
5898pub const __NR_fstat: u32 = 5;
5899pub const __NR_lstat: u32 = 6;
5900pub const __NR_poll: u32 = 7;
5901pub const __NR_lseek: u32 = 8;
5902pub const __NR_mmap: u32 = 9;
5903pub const __NR_mprotect: u32 = 10;
5904pub const __NR_munmap: u32 = 11;
5905pub const __NR_brk: u32 = 12;
5906pub const __NR_rt_sigaction: u32 = 13;
5907pub const __NR_rt_sigprocmask: u32 = 14;
5908pub const __NR_rt_sigreturn: u32 = 15;
5909pub const __NR_ioctl: u32 = 16;
5910pub const __NR_pread64: u32 = 17;
5911pub const __NR_pwrite64: u32 = 18;
5912pub const __NR_readv: u32 = 19;
5913pub const __NR_writev: u32 = 20;
5914pub const __NR_access: u32 = 21;
5915pub const __NR_pipe: u32 = 22;
5916pub const __NR_select: u32 = 23;
5917pub const __NR_sched_yield: u32 = 24;
5918pub const __NR_mremap: u32 = 25;
5919pub const __NR_msync: u32 = 26;
5920pub const __NR_mincore: u32 = 27;
5921pub const __NR_madvise: u32 = 28;
5922pub const __NR_shmget: u32 = 29;
5923pub const __NR_shmat: u32 = 30;
5924pub const __NR_shmctl: u32 = 31;
5925pub const __NR_dup: u32 = 32;
5926pub const __NR_dup2: u32 = 33;
5927pub const __NR_pause: u32 = 34;
5928pub const __NR_nanosleep: u32 = 35;
5929pub const __NR_getitimer: u32 = 36;
5930pub const __NR_alarm: u32 = 37;
5931pub const __NR_setitimer: u32 = 38;
5932pub const __NR_getpid: u32 = 39;
5933pub const __NR_sendfile: u32 = 40;
5934pub const __NR_socket: u32 = 41;
5935pub const __NR_connect: u32 = 42;
5936pub const __NR_accept: u32 = 43;
5937pub const __NR_sendto: u32 = 44;
5938pub const __NR_recvfrom: u32 = 45;
5939pub const __NR_sendmsg: u32 = 46;
5940pub const __NR_recvmsg: u32 = 47;
5941pub const __NR_shutdown: u32 = 48;
5942pub const __NR_bind: u32 = 49;
5943pub const __NR_listen: u32 = 50;
5944pub const __NR_getsockname: u32 = 51;
5945pub const __NR_getpeername: u32 = 52;
5946pub const __NR_socketpair: u32 = 53;
5947pub const __NR_setsockopt: u32 = 54;
5948pub const __NR_getsockopt: u32 = 55;
5949pub const __NR_clone: u32 = 56;
5950pub const __NR_fork: u32 = 57;
5951pub const __NR_vfork: u32 = 58;
5952pub const __NR_execve: u32 = 59;
5953pub const __NR_exit: u32 = 60;
5954pub const __NR_wait4: u32 = 61;
5955pub const __NR_kill: u32 = 62;
5956pub const __NR_uname: u32 = 63;
5957pub const __NR_semget: u32 = 64;
5958pub const __NR_semop: u32 = 65;
5959pub const __NR_semctl: u32 = 66;
5960pub const __NR_shmdt: u32 = 67;
5961pub const __NR_msgget: u32 = 68;
5962pub const __NR_msgsnd: u32 = 69;
5963pub const __NR_msgrcv: u32 = 70;
5964pub const __NR_msgctl: u32 = 71;
5965pub const __NR_fcntl: u32 = 72;
5966pub const __NR_flock: u32 = 73;
5967pub const __NR_fsync: u32 = 74;
5968pub const __NR_fdatasync: u32 = 75;
5969pub const __NR_truncate: u32 = 76;
5970pub const __NR_ftruncate: u32 = 77;
5971pub const __NR_getdents: u32 = 78;
5972pub const __NR_getcwd: u32 = 79;
5973pub const __NR_chdir: u32 = 80;
5974pub const __NR_fchdir: u32 = 81;
5975pub const __NR_rename: u32 = 82;
5976pub const __NR_mkdir: u32 = 83;
5977pub const __NR_rmdir: u32 = 84;
5978pub const __NR_creat: u32 = 85;
5979pub const __NR_link: u32 = 86;
5980pub const __NR_unlink: u32 = 87;
5981pub const __NR_symlink: u32 = 88;
5982pub const __NR_readlink: u32 = 89;
5983pub const __NR_chmod: u32 = 90;
5984pub const __NR_fchmod: u32 = 91;
5985pub const __NR_chown: u32 = 92;
5986pub const __NR_fchown: u32 = 93;
5987pub const __NR_lchown: u32 = 94;
5988pub const __NR_umask: u32 = 95;
5989pub const __NR_gettimeofday: u32 = 96;
5990pub const __NR_getrlimit: u32 = 97;
5991pub const __NR_getrusage: u32 = 98;
5992pub const __NR_sysinfo: u32 = 99;
5993pub const __NR_times: u32 = 100;
5994pub const __NR_ptrace: u32 = 101;
5995pub const __NR_getuid: u32 = 102;
5996pub const __NR_syslog: u32 = 103;
5997pub const __NR_getgid: u32 = 104;
5998pub const __NR_setuid: u32 = 105;
5999pub const __NR_setgid: u32 = 106;
6000pub const __NR_geteuid: u32 = 107;
6001pub const __NR_getegid: u32 = 108;
6002pub const __NR_setpgid: u32 = 109;
6003pub const __NR_getppid: u32 = 110;
6004pub const __NR_getpgrp: u32 = 111;
6005pub const __NR_setsid: u32 = 112;
6006pub const __NR_setreuid: u32 = 113;
6007pub const __NR_setregid: u32 = 114;
6008pub const __NR_getgroups: u32 = 115;
6009pub const __NR_setgroups: u32 = 116;
6010pub const __NR_setresuid: u32 = 117;
6011pub const __NR_getresuid: u32 = 118;
6012pub const __NR_setresgid: u32 = 119;
6013pub const __NR_getresgid: u32 = 120;
6014pub const __NR_getpgid: u32 = 121;
6015pub const __NR_setfsuid: u32 = 122;
6016pub const __NR_setfsgid: u32 = 123;
6017pub const __NR_getsid: u32 = 124;
6018pub const __NR_capget: u32 = 125;
6019pub const __NR_capset: u32 = 126;
6020pub const __NR_rt_sigpending: u32 = 127;
6021pub const __NR_rt_sigtimedwait: u32 = 128;
6022pub const __NR_rt_sigqueueinfo: u32 = 129;
6023pub const __NR_rt_sigsuspend: u32 = 130;
6024pub const __NR_sigaltstack: u32 = 131;
6025pub const __NR_utime: u32 = 132;
6026pub const __NR_mknod: u32 = 133;
6027pub const __NR_uselib: u32 = 134;
6028pub const __NR_personality: u32 = 135;
6029pub const __NR_ustat: u32 = 136;
6030pub const __NR_statfs: u32 = 137;
6031pub const __NR_fstatfs: u32 = 138;
6032pub const __NR_sysfs: u32 = 139;
6033pub const __NR_getpriority: u32 = 140;
6034pub const __NR_setpriority: u32 = 141;
6035pub const __NR_sched_setparam: u32 = 142;
6036pub const __NR_sched_getparam: u32 = 143;
6037pub const __NR_sched_setscheduler: u32 = 144;
6038pub const __NR_sched_getscheduler: u32 = 145;
6039pub const __NR_sched_get_priority_max: u32 = 146;
6040pub const __NR_sched_get_priority_min: u32 = 147;
6041pub const __NR_sched_rr_get_interval: u32 = 148;
6042pub const __NR_mlock: u32 = 149;
6043pub const __NR_munlock: u32 = 150;
6044pub const __NR_mlockall: u32 = 151;
6045pub const __NR_munlockall: u32 = 152;
6046pub const __NR_vhangup: u32 = 153;
6047pub const __NR_modify_ldt: u32 = 154;
6048pub const __NR_pivot_root: u32 = 155;
6049pub const __NR__sysctl: u32 = 156;
6050pub const __NR_prctl: u32 = 157;
6051pub const __NR_arch_prctl: u32 = 158;
6052pub const __NR_adjtimex: u32 = 159;
6053pub const __NR_setrlimit: u32 = 160;
6054pub const __NR_chroot: u32 = 161;
6055pub const __NR_sync: u32 = 162;
6056pub const __NR_acct: u32 = 163;
6057pub const __NR_settimeofday: u32 = 164;
6058pub const __NR_mount: u32 = 165;
6059pub const __NR_umount2: u32 = 166;
6060pub const __NR_swapon: u32 = 167;
6061pub const __NR_swapoff: u32 = 168;
6062pub const __NR_reboot: u32 = 169;
6063pub const __NR_sethostname: u32 = 170;
6064pub const __NR_setdomainname: u32 = 171;
6065pub const __NR_iopl: u32 = 172;
6066pub const __NR_ioperm: u32 = 173;
6067pub const __NR_create_module: u32 = 174;
6068pub const __NR_init_module: u32 = 175;
6069pub const __NR_delete_module: u32 = 176;
6070pub const __NR_get_kernel_syms: u32 = 177;
6071pub const __NR_query_module: u32 = 178;
6072pub const __NR_quotactl: u32 = 179;
6073pub const __NR_nfsservctl: u32 = 180;
6074pub const __NR_getpmsg: u32 = 181;
6075pub const __NR_putpmsg: u32 = 182;
6076pub const __NR_afs_syscall: u32 = 183;
6077pub const __NR_tuxcall: u32 = 184;
6078pub const __NR_security: u32 = 185;
6079pub const __NR_gettid: u32 = 186;
6080pub const __NR_readahead: u32 = 187;
6081pub const __NR_setxattr: u32 = 188;
6082pub const __NR_lsetxattr: u32 = 189;
6083pub const __NR_fsetxattr: u32 = 190;
6084pub const __NR_getxattr: u32 = 191;
6085pub const __NR_lgetxattr: u32 = 192;
6086pub const __NR_fgetxattr: u32 = 193;
6087pub const __NR_listxattr: u32 = 194;
6088pub const __NR_llistxattr: u32 = 195;
6089pub const __NR_flistxattr: u32 = 196;
6090pub const __NR_removexattr: u32 = 197;
6091pub const __NR_lremovexattr: u32 = 198;
6092pub const __NR_fremovexattr: u32 = 199;
6093pub const __NR_tkill: u32 = 200;
6094pub const __NR_time: u32 = 201;
6095pub const __NR_futex: u32 = 202;
6096pub const __NR_sched_setaffinity: u32 = 203;
6097pub const __NR_sched_getaffinity: u32 = 204;
6098pub const __NR_set_thread_area: u32 = 205;
6099pub const __NR_io_setup: u32 = 206;
6100pub const __NR_io_destroy: u32 = 207;
6101pub const __NR_io_getevents: u32 = 208;
6102pub const __NR_io_submit: u32 = 209;
6103pub const __NR_io_cancel: u32 = 210;
6104pub const __NR_get_thread_area: u32 = 211;
6105pub const __NR_lookup_dcookie: u32 = 212;
6106pub const __NR_epoll_create: u32 = 213;
6107pub const __NR_epoll_ctl_old: u32 = 214;
6108pub const __NR_epoll_wait_old: u32 = 215;
6109pub const __NR_remap_file_pages: u32 = 216;
6110pub const __NR_getdents64: u32 = 217;
6111pub const __NR_set_tid_address: u32 = 218;
6112pub const __NR_restart_syscall: u32 = 219;
6113pub const __NR_semtimedop: u32 = 220;
6114pub const __NR_fadvise64: u32 = 221;
6115pub const __NR_timer_create: u32 = 222;
6116pub const __NR_timer_settime: u32 = 223;
6117pub const __NR_timer_gettime: u32 = 224;
6118pub const __NR_timer_getoverrun: u32 = 225;
6119pub const __NR_timer_delete: u32 = 226;
6120pub const __NR_clock_settime: u32 = 227;
6121pub const __NR_clock_gettime: u32 = 228;
6122pub const __NR_clock_getres: u32 = 229;
6123pub const __NR_clock_nanosleep: u32 = 230;
6124pub const __NR_exit_group: u32 = 231;
6125pub const __NR_epoll_wait: u32 = 232;
6126pub const __NR_epoll_ctl: u32 = 233;
6127pub const __NR_tgkill: u32 = 234;
6128pub const __NR_utimes: u32 = 235;
6129pub const __NR_vserver: u32 = 236;
6130pub const __NR_mbind: u32 = 237;
6131pub const __NR_set_mempolicy: u32 = 238;
6132pub const __NR_get_mempolicy: u32 = 239;
6133pub const __NR_mq_open: u32 = 240;
6134pub const __NR_mq_unlink: u32 = 241;
6135pub const __NR_mq_timedsend: u32 = 242;
6136pub const __NR_mq_timedreceive: u32 = 243;
6137pub const __NR_mq_notify: u32 = 244;
6138pub const __NR_mq_getsetattr: u32 = 245;
6139pub const __NR_kexec_load: u32 = 246;
6140pub const __NR_waitid: u32 = 247;
6141pub const __NR_add_key: u32 = 248;
6142pub const __NR_request_key: u32 = 249;
6143pub const __NR_keyctl: u32 = 250;
6144pub const __NR_ioprio_set: u32 = 251;
6145pub const __NR_ioprio_get: u32 = 252;
6146pub const __NR_inotify_init: u32 = 253;
6147pub const __NR_inotify_add_watch: u32 = 254;
6148pub const __NR_inotify_rm_watch: u32 = 255;
6149pub const __NR_migrate_pages: u32 = 256;
6150pub const __NR_openat: u32 = 257;
6151pub const __NR_mkdirat: u32 = 258;
6152pub const __NR_mknodat: u32 = 259;
6153pub const __NR_fchownat: u32 = 260;
6154pub const __NR_futimesat: u32 = 261;
6155pub const __NR_newfstatat: u32 = 262;
6156pub const __NR_unlinkat: u32 = 263;
6157pub const __NR_renameat: u32 = 264;
6158pub const __NR_linkat: u32 = 265;
6159pub const __NR_symlinkat: u32 = 266;
6160pub const __NR_readlinkat: u32 = 267;
6161pub const __NR_fchmodat: u32 = 268;
6162pub const __NR_faccessat: u32 = 269;
6163pub const __NR_pselect6: u32 = 270;
6164pub const __NR_ppoll: u32 = 271;
6165pub const __NR_unshare: u32 = 272;
6166pub const __NR_set_robust_list: u32 = 273;
6167pub const __NR_get_robust_list: u32 = 274;
6168pub const __NR_splice: u32 = 275;
6169pub const __NR_tee: u32 = 276;
6170pub const __NR_sync_file_range: u32 = 277;
6171pub const __NR_vmsplice: u32 = 278;
6172pub const __NR_move_pages: u32 = 279;
6173pub const __NR_utimensat: u32 = 280;
6174pub const __NR_epoll_pwait: u32 = 281;
6175pub const __NR_signalfd: u32 = 282;
6176pub const __NR_timerfd_create: u32 = 283;
6177pub const __NR_eventfd: u32 = 284;
6178pub const __NR_fallocate: u32 = 285;
6179pub const __NR_timerfd_settime: u32 = 286;
6180pub const __NR_timerfd_gettime: u32 = 287;
6181pub const __NR_accept4: u32 = 288;
6182pub const __NR_signalfd4: u32 = 289;
6183pub const __NR_eventfd2: u32 = 290;
6184pub const __NR_epoll_create1: u32 = 291;
6185pub const __NR_dup3: u32 = 292;
6186pub const __NR_pipe2: u32 = 293;
6187pub const __NR_inotify_init1: u32 = 294;
6188pub const __NR_preadv: u32 = 295;
6189pub const __NR_pwritev: u32 = 296;
6190pub const __NR_rt_tgsigqueueinfo: u32 = 297;
6191pub const __NR_perf_event_open: u32 = 298;
6192pub const __NR_recvmmsg: u32 = 299;
6193pub const __NR_fanotify_init: u32 = 300;
6194pub const __NR_fanotify_mark: u32 = 301;
6195pub const __NR_prlimit64: u32 = 302;
6196pub const __NR_name_to_handle_at: u32 = 303;
6197pub const __NR_open_by_handle_at: u32 = 304;
6198pub const __NR_clock_adjtime: u32 = 305;
6199pub const __NR_syncfs: u32 = 306;
6200pub const __NR_sendmmsg: u32 = 307;
6201pub const __NR_setns: u32 = 308;
6202pub const __NR_getcpu: u32 = 309;
6203pub const __NR_process_vm_readv: u32 = 310;
6204pub const __NR_process_vm_writev: u32 = 311;
6205pub const __NR_kcmp: u32 = 312;
6206pub const __NR_finit_module: u32 = 313;
6207pub const __NR_sched_setattr: u32 = 314;
6208pub const __NR_sched_getattr: u32 = 315;
6209pub const __NR_renameat2: u32 = 316;
6210pub const __NR_seccomp: u32 = 317;
6211pub const __NR_getrandom: u32 = 318;
6212pub const __NR_memfd_create: u32 = 319;
6213pub const __NR_kexec_file_load: u32 = 320;
6214pub const __NR_bpf: u32 = 321;
6215pub const __NR_execveat: u32 = 322;
6216pub const __NR_userfaultfd: u32 = 323;
6217pub const __NR_membarrier: u32 = 324;
6218pub const __NR_mlock2: u32 = 325;
6219pub const __NR_copy_file_range: u32 = 326;
6220pub const __NR_preadv2: u32 = 327;
6221pub const __NR_pwritev2: u32 = 328;
6222pub const __NR_pkey_mprotect: u32 = 329;
6223pub const __NR_pkey_alloc: u32 = 330;
6224pub const __NR_pkey_free: u32 = 331;
6225pub const __NR_statx: u32 = 332;
6226pub const __NR_io_pgetevents: u32 = 333;
6227pub const __NR_rseq: u32 = 334;
6228pub const __NR_uretprobe: u32 = 335;
6229pub const __NR_pidfd_send_signal: u32 = 424;
6230pub const __NR_io_uring_setup: u32 = 425;
6231pub const __NR_io_uring_enter: u32 = 426;
6232pub const __NR_io_uring_register: u32 = 427;
6233pub const __NR_open_tree: u32 = 428;
6234pub const __NR_move_mount: u32 = 429;
6235pub const __NR_fsopen: u32 = 430;
6236pub const __NR_fsconfig: u32 = 431;
6237pub const __NR_fsmount: u32 = 432;
6238pub const __NR_fspick: u32 = 433;
6239pub const __NR_pidfd_open: u32 = 434;
6240pub const __NR_clone3: u32 = 435;
6241pub const __NR_close_range: u32 = 436;
6242pub const __NR_openat2: u32 = 437;
6243pub const __NR_pidfd_getfd: u32 = 438;
6244pub const __NR_faccessat2: u32 = 439;
6245pub const __NR_process_madvise: u32 = 440;
6246pub const __NR_epoll_pwait2: u32 = 441;
6247pub const __NR_mount_setattr: u32 = 442;
6248pub const __NR_quotactl_fd: u32 = 443;
6249pub const __NR_landlock_create_ruleset: u32 = 444;
6250pub const __NR_landlock_add_rule: u32 = 445;
6251pub const __NR_landlock_restrict_self: u32 = 446;
6252pub const __NR_memfd_secret: u32 = 447;
6253pub const __NR_process_mrelease: u32 = 448;
6254pub const __NR_futex_waitv: u32 = 449;
6255pub const __NR_set_mempolicy_home_node: u32 = 450;
6256pub const __NR_cachestat: u32 = 451;
6257pub const __NR_fchmodat2: u32 = 452;
6258pub const __NR_map_shadow_stack: u32 = 453;
6259pub const __NR_futex_wake: u32 = 454;
6260pub const __NR_futex_wait: u32 = 455;
6261pub const __NR_futex_requeue: u32 = 456;
6262pub const __NR_statmount: u32 = 457;
6263pub const __NR_listmount: u32 = 458;
6264pub const __NR_lsm_get_self_attr: u32 = 459;
6265pub const __NR_lsm_set_self_attr: u32 = 460;
6266pub const __NR_lsm_list_modules: u32 = 461;
6267pub const __NR_mseal: u32 = 462;
6268pub const USB_DIR_OUT: u32 = 0;
6269pub const USB_DIR_IN: u32 = 128;
6270pub const USB_TYPE_MASK: u32 = 96;
6271pub const USB_TYPE_STANDARD: u32 = 0;
6272pub const USB_TYPE_CLASS: u32 = 32;
6273pub const USB_TYPE_VENDOR: u32 = 64;
6274pub const USB_TYPE_RESERVED: u32 = 96;
6275pub const USB_RECIP_MASK: u32 = 31;
6276pub const USB_RECIP_DEVICE: u32 = 0;
6277pub const USB_RECIP_INTERFACE: u32 = 1;
6278pub const USB_RECIP_ENDPOINT: u32 = 2;
6279pub const USB_RECIP_OTHER: u32 = 3;
6280pub const USB_RECIP_PORT: u32 = 4;
6281pub const USB_RECIP_RPIPE: u32 = 5;
6282pub const USB_REQ_GET_STATUS: u32 = 0;
6283pub const USB_REQ_CLEAR_FEATURE: u32 = 1;
6284pub const USB_REQ_SET_FEATURE: u32 = 3;
6285pub const USB_REQ_SET_ADDRESS: u32 = 5;
6286pub const USB_REQ_GET_DESCRIPTOR: u32 = 6;
6287pub const USB_REQ_SET_DESCRIPTOR: u32 = 7;
6288pub const USB_REQ_GET_CONFIGURATION: u32 = 8;
6289pub const USB_REQ_SET_CONFIGURATION: u32 = 9;
6290pub const USB_REQ_GET_INTERFACE: u32 = 10;
6291pub const USB_REQ_SET_INTERFACE: u32 = 11;
6292pub const USB_REQ_SYNCH_FRAME: u32 = 12;
6293pub const USB_REQ_SET_SEL: u32 = 48;
6294pub const USB_REQ_SET_ISOCH_DELAY: u32 = 49;
6295pub const USB_REQ_SET_ENCRYPTION: u32 = 13;
6296pub const USB_REQ_GET_ENCRYPTION: u32 = 14;
6297pub const USB_REQ_RPIPE_ABORT: u32 = 14;
6298pub const USB_REQ_SET_HANDSHAKE: u32 = 15;
6299pub const USB_REQ_RPIPE_RESET: u32 = 15;
6300pub const USB_REQ_GET_HANDSHAKE: u32 = 16;
6301pub const USB_REQ_SET_CONNECTION: u32 = 17;
6302pub const USB_REQ_SET_SECURITY_DATA: u32 = 18;
6303pub const USB_REQ_GET_SECURITY_DATA: u32 = 19;
6304pub const USB_REQ_SET_WUSB_DATA: u32 = 20;
6305pub const USB_REQ_LOOPBACK_DATA_WRITE: u32 = 21;
6306pub const USB_REQ_LOOPBACK_DATA_READ: u32 = 22;
6307pub const USB_REQ_SET_INTERFACE_DS: u32 = 23;
6308pub const USB_REQ_GET_PARTNER_PDO: u32 = 20;
6309pub const USB_REQ_GET_BATTERY_STATUS: u32 = 21;
6310pub const USB_REQ_SET_PDO: u32 = 22;
6311pub const USB_REQ_GET_VDM: u32 = 23;
6312pub const USB_REQ_SEND_VDM: u32 = 24;
6313pub const USB_DEVICE_SELF_POWERED: u32 = 0;
6314pub const USB_DEVICE_REMOTE_WAKEUP: u32 = 1;
6315pub const USB_DEVICE_TEST_MODE: u32 = 2;
6316pub const USB_DEVICE_BATTERY: u32 = 2;
6317pub const USB_DEVICE_B_HNP_ENABLE: u32 = 3;
6318pub const USB_DEVICE_WUSB_DEVICE: u32 = 3;
6319pub const USB_DEVICE_A_HNP_SUPPORT: u32 = 4;
6320pub const USB_DEVICE_A_ALT_HNP_SUPPORT: u32 = 5;
6321pub const USB_DEVICE_DEBUG_MODE: u32 = 6;
6322pub const USB_TEST_J: u32 = 1;
6323pub const USB_TEST_K: u32 = 2;
6324pub const USB_TEST_SE0_NAK: u32 = 3;
6325pub const USB_TEST_PACKET: u32 = 4;
6326pub const USB_TEST_FORCE_ENABLE: u32 = 5;
6327pub const USB_STATUS_TYPE_STANDARD: u32 = 0;
6328pub const USB_STATUS_TYPE_PTM: u32 = 1;
6329pub const USB_DEVICE_U1_ENABLE: u32 = 48;
6330pub const USB_DEVICE_U2_ENABLE: u32 = 49;
6331pub const USB_DEVICE_LTM_ENABLE: u32 = 50;
6332pub const USB_INTRF_FUNC_SUSPEND: u32 = 0;
6333pub const USB_INTR_FUNC_SUSPEND_OPT_MASK: u32 = 65280;
6334pub const USB_INTRF_FUNC_SUSPEND_LP: u32 = 256;
6335pub const USB_INTRF_FUNC_SUSPEND_RW: u32 = 512;
6336pub const USB_INTRF_STAT_FUNC_RW_CAP: u32 = 1;
6337pub const USB_INTRF_STAT_FUNC_RW: u32 = 2;
6338pub const USB_ENDPOINT_HALT: u32 = 0;
6339pub const USB_DEV_STAT_U1_ENABLED: u32 = 2;
6340pub const USB_DEV_STAT_U2_ENABLED: u32 = 3;
6341pub const USB_DEV_STAT_LTM_ENABLED: u32 = 4;
6342pub const USB_DEVICE_BATTERY_WAKE_MASK: u32 = 40;
6343pub const USB_DEVICE_OS_IS_PD_AWARE: u32 = 41;
6344pub const USB_DEVICE_POLICY_MODE: u32 = 42;
6345pub const USB_PORT_PR_SWAP: u32 = 43;
6346pub const USB_PORT_GOTO_MIN: u32 = 44;
6347pub const USB_PORT_RETURN_POWER: u32 = 45;
6348pub const USB_PORT_ACCEPT_PD_REQUEST: u32 = 46;
6349pub const USB_PORT_REJECT_PD_REQUEST: u32 = 47;
6350pub const USB_PORT_PORT_PD_RESET: u32 = 48;
6351pub const USB_PORT_C_PORT_PD_CHANGE: u32 = 49;
6352pub const USB_PORT_CABLE_PD_RESET: u32 = 50;
6353pub const USB_DEVICE_CHARGING_POLICY: u32 = 54;
6354pub const USB_DT_DEVICE: u32 = 1;
6355pub const USB_DT_CONFIG: u32 = 2;
6356pub const USB_DT_STRING: u32 = 3;
6357pub const USB_DT_INTERFACE: u32 = 4;
6358pub const USB_DT_ENDPOINT: u32 = 5;
6359pub const USB_DT_DEVICE_QUALIFIER: u32 = 6;
6360pub const USB_DT_OTHER_SPEED_CONFIG: u32 = 7;
6361pub const USB_DT_INTERFACE_POWER: u32 = 8;
6362pub const USB_DT_OTG: u32 = 9;
6363pub const USB_DT_DEBUG: u32 = 10;
6364pub const USB_DT_INTERFACE_ASSOCIATION: u32 = 11;
6365pub const USB_DT_SECURITY: u32 = 12;
6366pub const USB_DT_KEY: u32 = 13;
6367pub const USB_DT_ENCRYPTION_TYPE: u32 = 14;
6368pub const USB_DT_BOS: u32 = 15;
6369pub const USB_DT_DEVICE_CAPABILITY: u32 = 16;
6370pub const USB_DT_WIRELESS_ENDPOINT_COMP: u32 = 17;
6371pub const USB_DT_WIRE_ADAPTER: u32 = 33;
6372pub const USB_DT_DFU_FUNCTIONAL: u32 = 33;
6373pub const USB_DT_RPIPE: u32 = 34;
6374pub const USB_DT_CS_RADIO_CONTROL: u32 = 35;
6375pub const USB_DT_PIPE_USAGE: u32 = 36;
6376pub const USB_DT_SS_ENDPOINT_COMP: u32 = 48;
6377pub const USB_DT_SSP_ISOC_ENDPOINT_COMP: u32 = 49;
6378pub const USB_DT_CS_DEVICE: u32 = 33;
6379pub const USB_DT_CS_CONFIG: u32 = 34;
6380pub const USB_DT_CS_STRING: u32 = 35;
6381pub const USB_DT_CS_INTERFACE: u32 = 36;
6382pub const USB_DT_CS_ENDPOINT: u32 = 37;
6383pub const USB_DT_DEVICE_SIZE: u32 = 18;
6384pub const USB_CLASS_PER_INTERFACE: u32 = 0;
6385pub const USB_CLASS_AUDIO: u32 = 1;
6386pub const USB_CLASS_COMM: u32 = 2;
6387pub const USB_CLASS_HID: u32 = 3;
6388pub const USB_CLASS_PHYSICAL: u32 = 5;
6389pub const USB_CLASS_STILL_IMAGE: u32 = 6;
6390pub const USB_CLASS_PRINTER: u32 = 7;
6391pub const USB_CLASS_MASS_STORAGE: u32 = 8;
6392pub const USB_CLASS_HUB: u32 = 9;
6393pub const USB_CLASS_CDC_DATA: u32 = 10;
6394pub const USB_CLASS_CSCID: u32 = 11;
6395pub const USB_CLASS_CONTENT_SEC: u32 = 13;
6396pub const USB_CLASS_VIDEO: u32 = 14;
6397pub const USB_CLASS_WIRELESS_CONTROLLER: u32 = 224;
6398pub const USB_CLASS_PERSONAL_HEALTHCARE: u32 = 15;
6399pub const USB_CLASS_AUDIO_VIDEO: u32 = 16;
6400pub const USB_CLASS_BILLBOARD: u32 = 17;
6401pub const USB_CLASS_USB_TYPE_C_BRIDGE: u32 = 18;
6402pub const USB_CLASS_MISC: u32 = 239;
6403pub const USB_CLASS_APP_SPEC: u32 = 254;
6404pub const USB_SUBCLASS_DFU: u32 = 1;
6405pub const USB_CLASS_VENDOR_SPEC: u32 = 255;
6406pub const USB_SUBCLASS_VENDOR_SPEC: u32 = 255;
6407pub const USB_DT_CONFIG_SIZE: u32 = 9;
6408pub const USB_CONFIG_ATT_ONE: u32 = 128;
6409pub const USB_CONFIG_ATT_SELFPOWER: u32 = 64;
6410pub const USB_CONFIG_ATT_WAKEUP: u32 = 32;
6411pub const USB_CONFIG_ATT_BATTERY: u32 = 16;
6412pub const USB_MAX_STRING_LEN: u32 = 126;
6413pub const USB_DT_INTERFACE_SIZE: u32 = 9;
6414pub const USB_DT_ENDPOINT_SIZE: u32 = 7;
6415pub const USB_DT_ENDPOINT_AUDIO_SIZE: u32 = 9;
6416pub const USB_ENDPOINT_NUMBER_MASK: u32 = 15;
6417pub const USB_ENDPOINT_DIR_MASK: u32 = 128;
6418pub const USB_ENDPOINT_XFERTYPE_MASK: u32 = 3;
6419pub const USB_ENDPOINT_XFER_CONTROL: u32 = 0;
6420pub const USB_ENDPOINT_XFER_ISOC: u32 = 1;
6421pub const USB_ENDPOINT_XFER_BULK: u32 = 2;
6422pub const USB_ENDPOINT_XFER_INT: u32 = 3;
6423pub const USB_ENDPOINT_MAX_ADJUSTABLE: u32 = 128;
6424pub const USB_ENDPOINT_MAXP_MASK: u32 = 2047;
6425pub const USB_EP_MAXP_MULT_SHIFT: u32 = 11;
6426pub const USB_EP_MAXP_MULT_MASK: u32 = 6144;
6427pub const USB_ENDPOINT_INTRTYPE: u32 = 48;
6428pub const USB_ENDPOINT_INTR_PERIODIC: u32 = 0;
6429pub const USB_ENDPOINT_INTR_NOTIFICATION: u32 = 16;
6430pub const USB_ENDPOINT_SYNCTYPE: u32 = 12;
6431pub const USB_ENDPOINT_SYNC_NONE: u32 = 0;
6432pub const USB_ENDPOINT_SYNC_ASYNC: u32 = 4;
6433pub const USB_ENDPOINT_SYNC_ADAPTIVE: u32 = 8;
6434pub const USB_ENDPOINT_SYNC_SYNC: u32 = 12;
6435pub const USB_ENDPOINT_USAGE_MASK: u32 = 48;
6436pub const USB_ENDPOINT_USAGE_DATA: u32 = 0;
6437pub const USB_ENDPOINT_USAGE_FEEDBACK: u32 = 16;
6438pub const USB_ENDPOINT_USAGE_IMPLICIT_FB: u32 = 32;
6439pub const USB_DT_SSP_ISOC_EP_COMP_SIZE: u32 = 8;
6440pub const USB_DT_SS_EP_COMP_SIZE: u32 = 6;
6441pub const USB_OTG_SRP: u32 = 1;
6442pub const USB_OTG_HNP: u32 = 2;
6443pub const USB_OTG_ADP: u32 = 4;
6444pub const USB_OTG_RSP: u32 = 8;
6445pub const OTG_STS_SELECTOR: u32 = 61440;
6446pub const USB_DT_INTERFACE_ASSOCIATION_SIZE: u32 = 8;
6447pub const USB_ENC_TYPE_UNSECURE: u32 = 0;
6448pub const USB_ENC_TYPE_WIRED: u32 = 1;
6449pub const USB_ENC_TYPE_CCM_1: u32 = 2;
6450pub const USB_ENC_TYPE_RSA_1: u32 = 3;
6451pub const USB_DT_BOS_SIZE: u32 = 5;
6452pub const USB_CAP_TYPE_WIRELESS_USB: u32 = 1;
6453pub const USB_WIRELESS_P2P_DRD: u32 = 2;
6454pub const USB_WIRELESS_BEACON_MASK: u32 = 12;
6455pub const USB_WIRELESS_BEACON_SELF: u32 = 4;
6456pub const USB_WIRELESS_BEACON_DIRECTED: u32 = 8;
6457pub const USB_WIRELESS_BEACON_NONE: u32 = 12;
6458pub const USB_WIRELESS_PHY_53: u32 = 1;
6459pub const USB_WIRELESS_PHY_80: u32 = 2;
6460pub const USB_WIRELESS_PHY_107: u32 = 4;
6461pub const USB_WIRELESS_PHY_160: u32 = 8;
6462pub const USB_WIRELESS_PHY_200: u32 = 16;
6463pub const USB_WIRELESS_PHY_320: u32 = 32;
6464pub const USB_WIRELESS_PHY_400: u32 = 64;
6465pub const USB_WIRELESS_PHY_480: u32 = 128;
6466pub const USB_DT_USB_WIRELESS_CAP_SIZE: u32 = 11;
6467pub const USB_CAP_TYPE_EXT: u32 = 2;
6468pub const USB_LPM_SUPPORT: u32 = 2;
6469pub const USB_BESL_SUPPORT: u32 = 4;
6470pub const USB_BESL_BASELINE_VALID: u32 = 8;
6471pub const USB_BESL_DEEP_VALID: u32 = 16;
6472pub const USB_DT_USB_EXT_CAP_SIZE: u32 = 7;
6473pub const USB_SS_CAP_TYPE: u32 = 3;
6474pub const USB_LTM_SUPPORT: u32 = 2;
6475pub const USB_LOW_SPEED_OPERATION: u32 = 1;
6476pub const USB_FULL_SPEED_OPERATION: u32 = 2;
6477pub const USB_HIGH_SPEED_OPERATION: u32 = 4;
6478pub const USB_5GBPS_OPERATION: u32 = 8;
6479pub const USB_DT_USB_SS_CAP_SIZE: u32 = 10;
6480pub const CONTAINER_ID_TYPE: u32 = 4;
6481pub const USB_DT_USB_SS_CONTN_ID_SIZE: u32 = 20;
6482pub const USB_PLAT_DEV_CAP_TYPE: u32 = 5;
6483pub const USB_SSP_CAP_TYPE: u32 = 10;
6484pub const USB_SSP_SUBLINK_SPEED_ATTRIBS: u32 = 31;
6485pub const USB_SSP_SUBLINK_SPEED_IDS: u32 = 480;
6486pub const USB_SSP_MIN_SUBLINK_SPEED_ATTRIBUTE_ID: u32 = 15;
6487pub const USB_SSP_MIN_RX_LANE_COUNT: u32 = 3840;
6488pub const USB_SSP_MIN_TX_LANE_COUNT: u32 = 61440;
6489pub const USB_SSP_SUBLINK_SPEED_SSID: u32 = 15;
6490pub const USB_SSP_SUBLINK_SPEED_LSE: u32 = 48;
6491pub const USB_SSP_SUBLINK_SPEED_LSE_BPS: u32 = 0;
6492pub const USB_SSP_SUBLINK_SPEED_LSE_KBPS: u32 = 1;
6493pub const USB_SSP_SUBLINK_SPEED_LSE_MBPS: u32 = 2;
6494pub const USB_SSP_SUBLINK_SPEED_LSE_GBPS: u32 = 3;
6495pub const USB_SSP_SUBLINK_SPEED_ST: u32 = 192;
6496pub const USB_SSP_SUBLINK_SPEED_ST_SYM_RX: u32 = 0;
6497pub const USB_SSP_SUBLINK_SPEED_ST_ASYM_RX: u32 = 1;
6498pub const USB_SSP_SUBLINK_SPEED_ST_SYM_TX: u32 = 2;
6499pub const USB_SSP_SUBLINK_SPEED_ST_ASYM_TX: u32 = 3;
6500pub const USB_SSP_SUBLINK_SPEED_RSVD: u32 = 16128;
6501pub const USB_SSP_SUBLINK_SPEED_LP: u32 = 49152;
6502pub const USB_SSP_SUBLINK_SPEED_LP_SS: u32 = 0;
6503pub const USB_SSP_SUBLINK_SPEED_LP_SSP: u32 = 1;
6504pub const USB_SSP_SUBLINK_SPEED_LSM: u32 = 16711680;
6505pub const USB_PD_POWER_DELIVERY_CAPABILITY: u32 = 6;
6506pub const USB_PD_BATTERY_INFO_CAPABILITY: u32 = 7;
6507pub const USB_PD_PD_CONSUMER_PORT_CAPABILITY: u32 = 8;
6508pub const USB_PD_PD_PROVIDER_PORT_CAPABILITY: u32 = 9;
6509pub const USB_PD_CAP_BATTERY_CHARGING: u32 = 2;
6510pub const USB_PD_CAP_USB_PD: u32 = 4;
6511pub const USB_PD_CAP_PROVIDER: u32 = 8;
6512pub const USB_PD_CAP_CONSUMER: u32 = 16;
6513pub const USB_PD_CAP_CHARGING_POLICY: u32 = 32;
6514pub const USB_PD_CAP_TYPE_C_CURRENT: u32 = 64;
6515pub const USB_PD_CAP_PWR_AC: u32 = 256;
6516pub const USB_PD_CAP_PWR_BAT: u32 = 512;
6517pub const USB_PD_CAP_PWR_USE_V_BUS: u32 = 16384;
6518pub const USB_PD_CAP_CONSUMER_BC: u32 = 1;
6519pub const USB_PD_CAP_CONSUMER_PD: u32 = 2;
6520pub const USB_PD_CAP_CONSUMER_TYPE_C: u32 = 4;
6521pub const USB_PD_CAP_CONSUMER_UNKNOWN_PEAK_POWER_TIME: u32 = 65535;
6522pub const USB_PD_CAP_PROVIDER_BC: u32 = 1;
6523pub const USB_PD_CAP_PROVIDER_PD: u32 = 2;
6524pub const USB_PD_CAP_PROVIDER_TYPE_C: u32 = 4;
6525pub const USB_PTM_CAP_TYPE: u32 = 11;
6526pub const USB_DT_USB_PTM_ID_SIZE: u32 = 3;
6527pub const USB_ENDPOINT_SWITCH_MASK: u32 = 3;
6528pub const USB_ENDPOINT_SWITCH_NO: u32 = 0;
6529pub const USB_ENDPOINT_SWITCH_SWITCH: u32 = 1;
6530pub const USB_ENDPOINT_SWITCH_SCALE: u32 = 2;
6531pub const USB3_LPM_DISABLED: u32 = 0;
6532pub const USB3_LPM_U1_MAX_TIMEOUT: u32 = 127;
6533pub const USB3_LPM_U2_MAX_TIMEOUT: u32 = 254;
6534pub const USB3_LPM_DEVICE_INITIATED: u32 = 255;
6535pub const USB3_LPM_MAX_U1_SEL_PEL: u32 = 255;
6536pub const USB3_LPM_MAX_U2_SEL_PEL: u32 = 65535;
6537pub const USB_SELF_POWER_VBUS_MAX_DRAW: u32 = 100;
6538pub const USB_FFS_DMABUF_TRANSFER_MASK: u32 = 0;
6539pub const USERFAULTFD_IOC: u32 = 170;
6540pub const _UFFDIO_REGISTER: u32 = 0;
6541pub const _UFFDIO_UNREGISTER: u32 = 1;
6542pub const _UFFDIO_WAKE: u32 = 2;
6543pub const _UFFDIO_COPY: u32 = 3;
6544pub const _UFFDIO_ZEROPAGE: u32 = 4;
6545pub const _UFFDIO_MOVE: u32 = 5;
6546pub const _UFFDIO_WRITEPROTECT: u32 = 6;
6547pub const _UFFDIO_CONTINUE: u32 = 7;
6548pub const _UFFDIO_POISON: u32 = 8;
6549pub const _UFFDIO_API: u32 = 63;
6550pub const UFFDIO: u32 = 170;
6551pub const UFFD_EVENT_PAGEFAULT: u32 = 18;
6552pub const UFFD_EVENT_FORK: u32 = 19;
6553pub const UFFD_EVENT_REMAP: u32 = 20;
6554pub const UFFD_EVENT_REMOVE: u32 = 21;
6555pub const UFFD_EVENT_UNMAP: u32 = 22;
6556pub const UFFD_PAGEFAULT_FLAG_WRITE: u32 = 1;
6557pub const UFFD_PAGEFAULT_FLAG_WP: u32 = 2;
6558pub const UFFD_PAGEFAULT_FLAG_MINOR: u32 = 4;
6559pub const UFFD_FEATURE_PAGEFAULT_FLAG_WP: u32 = 1;
6560pub const UFFD_FEATURE_EVENT_FORK: u32 = 2;
6561pub const UFFD_FEATURE_EVENT_REMAP: u32 = 4;
6562pub const UFFD_FEATURE_EVENT_REMOVE: u32 = 8;
6563pub const UFFD_FEATURE_MISSING_HUGETLBFS: u32 = 16;
6564pub const UFFD_FEATURE_MISSING_SHMEM: u32 = 32;
6565pub const UFFD_FEATURE_EVENT_UNMAP: u32 = 64;
6566pub const UFFD_FEATURE_SIGBUS: u32 = 128;
6567pub const UFFD_FEATURE_THREAD_ID: u32 = 256;
6568pub const UFFD_FEATURE_MINOR_HUGETLBFS: u32 = 512;
6569pub const UFFD_FEATURE_MINOR_SHMEM: u32 = 1024;
6570pub const UFFD_FEATURE_EXACT_ADDRESS: u32 = 2048;
6571pub const UFFD_FEATURE_WP_HUGETLBFS_SHMEM: u32 = 4096;
6572pub const UFFD_FEATURE_WP_UNPOPULATED: u32 = 8192;
6573pub const UFFD_FEATURE_POISON: u32 = 16384;
6574pub const UFFD_FEATURE_WP_ASYNC: u32 = 32768;
6575pub const UFFD_FEATURE_MOVE: u32 = 65536;
6576pub const UFFD_USER_MODE_ONLY: u32 = 1;
6577pub const __OLD_UTS_LEN: u32 = 8;
6578pub const __NEW_UTS_LEN: u32 = 64;
6579pub const SO_VM_SOCKETS_BUFFER_SIZE: u32 = 0;
6580pub const SO_VM_SOCKETS_BUFFER_MIN_SIZE: u32 = 1;
6581pub const SO_VM_SOCKETS_BUFFER_MAX_SIZE: u32 = 2;
6582pub const SO_VM_SOCKETS_PEER_HOST_VM_ID: u32 = 3;
6583pub const SO_VM_SOCKETS_TRUSTED: u32 = 5;
6584pub const SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD: u32 = 6;
6585pub const SO_VM_SOCKETS_NONBLOCK_TXRX: u32 = 7;
6586pub const SO_VM_SOCKETS_CONNECT_TIMEOUT_NEW: u32 = 8;
6587pub const SO_VM_SOCKETS_CONNECT_TIMEOUT: u32 = 6;
6588pub const VMADDR_CID_ANY: i32 = -1;
6589pub const VMADDR_PORT_ANY: i32 = -1;
6590pub const VMADDR_CID_HYPERVISOR: u32 = 0;
6591pub const VMADDR_CID_LOCAL: u32 = 1;
6592pub const VMADDR_CID_HOST: u32 = 2;
6593pub const VMADDR_FLAG_TO_HOST: u32 = 1;
6594pub const VM_SOCKETS_INVALID_VERSION: i32 = -1;
6595pub const SOL_VSOCK: u32 = 287;
6596pub const VSOCK_RECVERR: u32 = 1;
6597pub const WNOHANG: u32 = 1;
6598pub const WUNTRACED: u32 = 2;
6599pub const WSTOPPED: u32 = 2;
6600pub const WEXITED: u32 = 4;
6601pub const WCONTINUED: u32 = 8;
6602pub const WNOWAIT: u32 = 16777216;
6603pub const __WNOTHREAD: u32 = 536870912;
6604pub const __WALL: u32 = 1073741824;
6605pub const __WCLONE: u32 = 2147483648;
6606pub const P_ALL: u32 = 0;
6607pub const P_PID: u32 = 1;
6608pub const P_PGID: u32 = 2;
6609pub const P_PIDFD: u32 = 3;
6610pub const XATTR_CREATE: u32 = 1;
6611pub const XATTR_REPLACE: u32 = 2;
6612pub const XATTR_OS2_PREFIX: &'static std::ffi::CStr = c"os2.";
6613pub const XATTR_MAC_OSX_PREFIX: &'static std::ffi::CStr = c"osx.";
6614pub const XATTR_BTRFS_PREFIX: &'static std::ffi::CStr = c"btrfs.";
6615pub const XATTR_HURD_PREFIX: &'static std::ffi::CStr = c"gnu.";
6616pub const XATTR_SECURITY_PREFIX: &'static std::ffi::CStr = c"security.";
6617pub const XATTR_SYSTEM_PREFIX: &'static std::ffi::CStr = c"system.";
6618pub const XATTR_TRUSTED_PREFIX: &'static std::ffi::CStr = c"trusted.";
6619pub const XATTR_USER_PREFIX: &'static std::ffi::CStr = c"user.";
6620pub const XATTR_EVM_SUFFIX: &'static std::ffi::CStr = c"evm";
6621pub const XATTR_NAME_EVM: &'static std::ffi::CStr = c"security.evm";
6622pub const XATTR_IMA_SUFFIX: &'static std::ffi::CStr = c"ima";
6623pub const XATTR_NAME_IMA: &'static std::ffi::CStr = c"security.ima";
6624pub const XATTR_SELINUX_SUFFIX: &'static std::ffi::CStr = c"selinux";
6625pub const XATTR_NAME_SELINUX: &'static std::ffi::CStr = c"security.selinux";
6626pub const XATTR_SMACK_SUFFIX: &'static std::ffi::CStr = c"SMACK64";
6627pub const XATTR_SMACK_IPIN: &'static std::ffi::CStr = c"SMACK64IPIN";
6628pub const XATTR_SMACK_IPOUT: &'static std::ffi::CStr = c"SMACK64IPOUT";
6629pub const XATTR_SMACK_EXEC: &'static std::ffi::CStr = c"SMACK64EXEC";
6630pub const XATTR_SMACK_TRANSMUTE: &'static std::ffi::CStr = c"SMACK64TRANSMUTE";
6631pub const XATTR_SMACK_MMAP: &'static std::ffi::CStr = c"SMACK64MMAP";
6632pub const XATTR_NAME_SMACK: &'static std::ffi::CStr = c"security.SMACK64";
6633pub const XATTR_NAME_SMACKIPIN: &'static std::ffi::CStr = c"security.SMACK64IPIN";
6634pub const XATTR_NAME_SMACKIPOUT: &'static std::ffi::CStr = c"security.SMACK64IPOUT";
6635pub const XATTR_NAME_SMACKEXEC: &'static std::ffi::CStr = c"security.SMACK64EXEC";
6636pub const XATTR_NAME_SMACKTRANSMUTE: &'static std::ffi::CStr = c"security.SMACK64TRANSMUTE";
6637pub const XATTR_NAME_SMACKMMAP: &'static std::ffi::CStr = c"security.SMACK64MMAP";
6638pub const XATTR_APPARMOR_SUFFIX: &'static std::ffi::CStr = c"apparmor";
6639pub const XATTR_NAME_APPARMOR: &'static std::ffi::CStr = c"security.apparmor";
6640pub const XATTR_CAPS_SUFFIX: &'static std::ffi::CStr = c"capability";
6641pub const XATTR_NAME_CAPS: &'static std::ffi::CStr = c"security.capability";
6642pub const XATTR_POSIX_ACL_ACCESS: &'static std::ffi::CStr = c"posix_acl_access";
6643pub const XATTR_NAME_POSIX_ACL_ACCESS: &'static std::ffi::CStr = c"system.posix_acl_access";
6644pub const XATTR_POSIX_ACL_DEFAULT: &'static std::ffi::CStr = c"posix_acl_default";
6645pub const XATTR_NAME_POSIX_ACL_DEFAULT: &'static std::ffi::CStr = c"system.posix_acl_default";
6646pub const XFRM_SC_DOI_RESERVED: u32 = 0;
6647pub const XFRM_SC_DOI_LSM: u32 = 1;
6648pub const XFRM_SC_ALG_RESERVED: u32 = 0;
6649pub const XFRM_SC_ALG_SELINUX: u32 = 1;
6650pub const XFRMA_REPLAY_ESN_MAX: u32 = 4096;
6651pub const XFRM_MODE_TRANSPORT: u32 = 0;
6652pub const XFRM_MODE_TUNNEL: u32 = 1;
6653pub const XFRM_MODE_ROUTEOPTIMIZATION: u32 = 2;
6654pub const XFRM_MODE_IN_TRIGGER: u32 = 3;
6655pub const XFRM_MODE_BEET: u32 = 4;
6656pub const XFRM_MODE_MAX: u32 = 5;
6657pub const XFRM_STATE_NOECN: u32 = 1;
6658pub const XFRM_STATE_DECAP_DSCP: u32 = 2;
6659pub const XFRM_STATE_NOPMTUDISC: u32 = 4;
6660pub const XFRM_STATE_WILDRECV: u32 = 8;
6661pub const XFRM_STATE_ICMP: u32 = 16;
6662pub const XFRM_STATE_AF_UNSPEC: u32 = 32;
6663pub const XFRM_STATE_ALIGN4: u32 = 64;
6664pub const XFRM_STATE_ESN: u32 = 128;
6665pub const XFRM_SA_XFLAG_DONT_ENCAP_DSCP: u32 = 1;
6666pub const XFRM_SA_XFLAG_OSEQ_MAY_WRAP: u32 = 2;
6667pub const XFRM_POLICY_ALLOW: u32 = 0;
6668pub const XFRM_POLICY_BLOCK: u32 = 1;
6669pub const XFRM_POLICY_LOCALOK: u32 = 1;
6670pub const XFRM_POLICY_ICMP: u32 = 2;
6671pub const XFRM_OFFLOAD_IPV6: u32 = 1;
6672pub const XFRM_OFFLOAD_INBOUND: u32 = 2;
6673pub const XFRM_OFFLOAD_PACKET: u32 = 4;
6674pub const XFRM_USERPOLICY_UNSPEC: u32 = 0;
6675pub const XFRM_USERPOLICY_BLOCK: u32 = 1;
6676pub const XFRM_USERPOLICY_ACCEPT: u32 = 2;
6677pub const XFRMGRP_ACQUIRE: u32 = 1;
6678pub const XFRMGRP_EXPIRE: u32 = 2;
6679pub const XFRMGRP_SA: u32 = 4;
6680pub const XFRMGRP_POLICY: u32 = 8;
6681pub const XFRMGRP_REPORT: u32 = 32;
6682pub const UC_FP_XSTATE: u32 = 1;
6683pub const UC_SIGCONTEXT_SS: u32 = 2;
6684pub const UC_STRICT_RESTORE_SS: u32 = 4;
6685pub const BPF_JMP32: u32 = 6;
6686pub const BPF_ALU64: u32 = 7;
6687pub const BPF_DW: u32 = 24;
6688pub const BPF_MEMSX: u32 = 128;
6689pub const BPF_ATOMIC: u32 = 192;
6690pub const BPF_XADD: u32 = 192;
6691pub const BPF_MOV: u32 = 176;
6692pub const BPF_ARSH: u32 = 192;
6693pub const BPF_END: u32 = 208;
6694pub const BPF_TO_LE: u32 = 0;
6695pub const BPF_TO_BE: u32 = 8;
6696pub const BPF_FROM_LE: u32 = 0;
6697pub const BPF_FROM_BE: u32 = 8;
6698pub const BPF_JNE: u32 = 80;
6699pub const BPF_JLT: u32 = 160;
6700pub const BPF_JLE: u32 = 176;
6701pub const BPF_JSGT: u32 = 96;
6702pub const BPF_JSGE: u32 = 112;
6703pub const BPF_JSLT: u32 = 192;
6704pub const BPF_JSLE: u32 = 208;
6705pub const BPF_JCOND: u32 = 224;
6706pub const BPF_CALL: u32 = 128;
6707pub const BPF_EXIT: u32 = 144;
6708pub const BPF_FETCH: u32 = 1;
6709pub const BPF_XCHG: u32 = 225;
6710pub const BPF_CMPXCHG: u32 = 241;
6711pub const BPF_F_ALLOW_OVERRIDE: u32 = 1;
6712pub const BPF_F_ALLOW_MULTI: u32 = 2;
6713pub const BPF_F_REPLACE: u32 = 4;
6714pub const BPF_F_BEFORE: u32 = 8;
6715pub const BPF_F_AFTER: u32 = 16;
6716pub const BPF_F_ID: u32 = 32;
6717pub const BPF_F_STRICT_ALIGNMENT: u32 = 1;
6718pub const BPF_F_ANY_ALIGNMENT: u32 = 2;
6719pub const BPF_F_TEST_RND_HI32: u32 = 4;
6720pub const BPF_F_TEST_STATE_FREQ: u32 = 8;
6721pub const BPF_F_SLEEPABLE: u32 = 16;
6722pub const BPF_F_XDP_HAS_FRAGS: u32 = 32;
6723pub const BPF_F_XDP_DEV_BOUND_ONLY: u32 = 64;
6724pub const BPF_F_TEST_REG_INVARIANTS: u32 = 128;
6725pub const BPF_F_NETFILTER_IP_DEFRAG: u32 = 1;
6726pub const BPF_PSEUDO_MAP_FD: u32 = 1;
6727pub const BPF_PSEUDO_MAP_IDX: u32 = 5;
6728pub const BPF_PSEUDO_MAP_VALUE: u32 = 2;
6729pub const BPF_PSEUDO_MAP_IDX_VALUE: u32 = 6;
6730pub const BPF_PSEUDO_BTF_ID: u32 = 3;
6731pub const BPF_PSEUDO_FUNC: u32 = 4;
6732pub const BPF_PSEUDO_CALL: u32 = 1;
6733pub const BPF_PSEUDO_KFUNC_CALL: u32 = 2;
6734pub const BPF_F_QUERY_EFFECTIVE: u32 = 1;
6735pub const BPF_F_TEST_RUN_ON_CPU: u32 = 1;
6736pub const BPF_F_TEST_XDP_LIVE_FRAMES: u32 = 2;
6737pub const BPF_F_TEST_SKB_CHECKSUM_COMPLETE: u32 = 4;
6738pub const BPF_BUILD_ID_SIZE: u32 = 20;
6739pub const BPF_OBJ_NAME_LEN: u32 = 16;
6740pub const XDP_PACKET_HEADROOM: u32 = 256;
6741pub const BPF_TAG_SIZE: u32 = 8;
6742pub const __KERNEL__: u32 = 1;
6743pub const __HAS_KERNEL__: u32 = 0;
6744pub const FUSE_KERNEL_VERSION: u32 = 7;
6745pub const FUSE_KERNEL_MINOR_VERSION: u32 = 40;
6746pub const FUSE_ROOT_ID: u32 = 1;
6747pub const FATTR_MODE: u32 = 1;
6748pub const FATTR_UID: u32 = 2;
6749pub const FATTR_GID: u32 = 4;
6750pub const FATTR_SIZE: u32 = 8;
6751pub const FATTR_ATIME: u32 = 16;
6752pub const FATTR_MTIME: u32 = 32;
6753pub const FATTR_FH: u32 = 64;
6754pub const FATTR_ATIME_NOW: u32 = 128;
6755pub const FATTR_MTIME_NOW: u32 = 256;
6756pub const FATTR_LOCKOWNER: u32 = 512;
6757pub const FATTR_CTIME: u32 = 1024;
6758pub const FATTR_KILL_SUIDGID: u32 = 2048;
6759pub const FOPEN_DIRECT_IO: u32 = 1;
6760pub const FOPEN_KEEP_CACHE: u32 = 2;
6761pub const FOPEN_NONSEEKABLE: u32 = 4;
6762pub const FOPEN_CACHE_DIR: u32 = 8;
6763pub const FOPEN_STREAM: u32 = 16;
6764pub const FOPEN_NOFLUSH: u32 = 32;
6765pub const FOPEN_PARALLEL_DIRECT_WRITES: u32 = 64;
6766pub const FOPEN_PASSTHROUGH: u32 = 128;
6767pub const FUSE_ASYNC_READ: u32 = 1;
6768pub const FUSE_POSIX_LOCKS: u32 = 2;
6769pub const FUSE_FILE_OPS: u32 = 4;
6770pub const FUSE_ATOMIC_O_TRUNC: u32 = 8;
6771pub const FUSE_EXPORT_SUPPORT: u32 = 16;
6772pub const FUSE_BIG_WRITES: u32 = 32;
6773pub const FUSE_DONT_MASK: u32 = 64;
6774pub const FUSE_SPLICE_WRITE: u32 = 128;
6775pub const FUSE_SPLICE_MOVE: u32 = 256;
6776pub const FUSE_SPLICE_READ: u32 = 512;
6777pub const FUSE_FLOCK_LOCKS: u32 = 1024;
6778pub const FUSE_HAS_IOCTL_DIR: u32 = 2048;
6779pub const FUSE_AUTO_INVAL_DATA: u32 = 4096;
6780pub const FUSE_DO_READDIRPLUS: u32 = 8192;
6781pub const FUSE_READDIRPLUS_AUTO: u32 = 16384;
6782pub const FUSE_ASYNC_DIO: u32 = 32768;
6783pub const FUSE_WRITEBACK_CACHE: u32 = 65536;
6784pub const FUSE_NO_OPEN_SUPPORT: u32 = 131072;
6785pub const FUSE_PARALLEL_DIROPS: u32 = 262144;
6786pub const FUSE_HANDLE_KILLPRIV: u32 = 524288;
6787pub const FUSE_POSIX_ACL: u32 = 1048576;
6788pub const FUSE_ABORT_ERROR: u32 = 2097152;
6789pub const FUSE_MAX_PAGES: u32 = 4194304;
6790pub const FUSE_CACHE_SYMLINKS: u32 = 8388608;
6791pub const FUSE_NO_OPENDIR_SUPPORT: u32 = 16777216;
6792pub const FUSE_EXPLICIT_INVAL_DATA: u32 = 33554432;
6793pub const FUSE_MAP_ALIGNMENT: u32 = 67108864;
6794pub const FUSE_SUBMOUNTS: u32 = 134217728;
6795pub const FUSE_HANDLE_KILLPRIV_V2: u32 = 268435456;
6796pub const FUSE_SETXATTR_EXT: u32 = 536870912;
6797pub const FUSE_INIT_EXT: u32 = 1073741824;
6798pub const FUSE_INIT_RESERVED: u32 = 2147483648;
6799pub const FUSE_SECURITY_CTX: u64 = 4294967296;
6800pub const FUSE_HAS_INODE_DAX: u64 = 8589934592;
6801pub const FUSE_CREATE_SUPP_GROUP: u64 = 17179869184;
6802pub const FUSE_HAS_EXPIRE_ONLY: u64 = 34359738368;
6803pub const FUSE_DIRECT_IO_ALLOW_MMAP: u64 = 68719476736;
6804pub const FUSE_PASSTHROUGH_UPSTREAM: u64 = 137438953472;
6805pub const FUSE_DIRECT_IO_RELAX: u64 = 68719476736;
6806pub const FUSE_PASSTHROUGH: i64 = -9223372036854775808;
6807pub const CUSE_UNRESTRICTED_IOCTL: u32 = 1;
6808pub const FUSE_RELEASE_FLUSH: u32 = 1;
6809pub const FUSE_RELEASE_FLOCK_UNLOCK: u32 = 2;
6810pub const FUSE_GETATTR_FH: u32 = 1;
6811pub const FUSE_LK_FLOCK: u32 = 1;
6812pub const FUSE_WRITE_CACHE: u32 = 1;
6813pub const FUSE_WRITE_LOCKOWNER: u32 = 2;
6814pub const FUSE_WRITE_KILL_SUIDGID: u32 = 4;
6815pub const FUSE_WRITE_KILL_PRIV: u32 = 4;
6816pub const FUSE_READ_LOCKOWNER: u32 = 2;
6817pub const FUSE_IOCTL_COMPAT: u32 = 1;
6818pub const FUSE_IOCTL_UNRESTRICTED: u32 = 2;
6819pub const FUSE_IOCTL_RETRY: u32 = 4;
6820pub const FUSE_IOCTL_32BIT: u32 = 8;
6821pub const FUSE_IOCTL_DIR: u32 = 16;
6822pub const FUSE_IOCTL_COMPAT_X32: u32 = 32;
6823pub const FUSE_IOCTL_MAX_IOV: u32 = 256;
6824pub const FUSE_POLL_SCHEDULE_NOTIFY: u32 = 1;
6825pub const FUSE_FSYNC_FDATASYNC: u32 = 1;
6826pub const FUSE_ATTR_SUBMOUNT: u32 = 1;
6827pub const FUSE_ATTR_DAX: u32 = 2;
6828pub const FUSE_OPEN_KILL_SUIDGID: u32 = 1;
6829pub const FUSE_SETXATTR_ACL_KILL_SGID: u32 = 1;
6830pub const FUSE_EXPIRE_ONLY: u32 = 1;
6831pub const FUSE_MIN_READ_BUFFER: u32 = 8192;
6832pub const FUSE_COMPAT_ENTRY_OUT_SIZE: u32 = 120;
6833pub const FUSE_ACTION_KEEP: u32 = 0;
6834pub const FUSE_ACTION_REMOVE: u32 = 1;
6835pub const FUSE_ACTION_REPLACE: u32 = 2;
6836pub const FUSE_COMPAT_ATTR_OUT_SIZE: u32 = 96;
6837pub const FUSE_COMPAT_MKNOD_IN_SIZE: u32 = 8;
6838pub const FUSE_COMPAT_WRITE_IN_SIZE: u32 = 24;
6839pub const FUSE_COMPAT_STATFS_SIZE: u32 = 48;
6840pub const FUSE_COMPAT_SETXATTR_IN_SIZE: u32 = 8;
6841pub const FUSE_COMPAT_INIT_OUT_SIZE: u32 = 8;
6842pub const FUSE_COMPAT_22_INIT_OUT_SIZE: u32 = 24;
6843pub const CUSE_INIT_INFO_MAX: u32 = 4096;
6844pub const FUSE_DEV_IOC_MAGIC: u32 = 229;
6845pub const FUSE_SETUPMAPPING_FLAG_WRITE: u32 = 1;
6846pub const FUSE_SETUPMAPPING_FLAG_READ: u32 = 2;
6847pub const FUSE_MAX_IN_ARGS: u32 = 5;
6848pub const FUSE_MAX_OUT_ARGS: u32 = 3;
6849pub const FUSE_BPF_FORCE: u32 = 1;
6850pub const FUSE_BPF_OUT_ARGVAR: u32 = 64;
6851pub const FUSE_BPF_USER_FILTER: u32 = 1;
6852pub const FUSE_BPF_BACKING: u32 = 2;
6853pub const FUSE_BPF_POST_FILTER: u32 = 4;
6854pub const FUSE_OPCODE_FILTER: u32 = 65535;
6855pub const FUSE_PREFILTER: u32 = 65536;
6856pub const FUSE_POSTFILTER: u32 = 131072;
6857pub const KGSL_VERSION_MAJOR: u32 = 3;
6858pub const KGSL_VERSION_MINOR: u32 = 14;
6859pub const KGSL_CONTEXT_SAVE_GMEM: u32 = 1;
6860pub const KGSL_CONTEXT_NO_GMEM_ALLOC: u32 = 2;
6861pub const KGSL_CONTEXT_SUBMIT_IB_LIST: u32 = 4;
6862pub const KGSL_CONTEXT_CTX_SWITCH: u32 = 8;
6863pub const KGSL_CONTEXT_PREAMBLE: u32 = 16;
6864pub const KGSL_CONTEXT_TRASH_STATE: u32 = 32;
6865pub const KGSL_CONTEXT_PER_CONTEXT_TS: u32 = 64;
6866pub const KGSL_CONTEXT_USER_GENERATED_TS: u32 = 128;
6867pub const KGSL_CONTEXT_END_OF_FRAME: u32 = 256;
6868pub const KGSL_CONTEXT_NO_FAULT_TOLERANCE: u32 = 512;
6869pub const KGSL_CONTEXT_SYNC: u32 = 1024;
6870pub const KGSL_CONTEXT_PWR_CONSTRAINT: u32 = 2048;
6871pub const KGSL_CONTEXT_PRIORITY_MASK: u32 = 61440;
6872pub const KGSL_CONTEXT_PRIORITY_SHIFT: u32 = 12;
6873pub const KGSL_CONTEXT_PRIORITY_UNDEF: u32 = 0;
6874pub const KGSL_CONTEXT_IFH_NOP: u32 = 65536;
6875pub const KGSL_CONTEXT_SECURE: u32 = 131072;
6876pub const KGSL_CONTEXT_NO_SNAPSHOT: u32 = 262144;
6877pub const KGSL_CONTEXT_SPARSE: u32 = 524288;
6878pub const KGSL_CONTEXT_PREEMPT_STYLE_MASK: u32 = 234881024;
6879pub const KGSL_CONTEXT_PREEMPT_STYLE_SHIFT: u32 = 25;
6880pub const KGSL_CONTEXT_PREEMPT_STYLE_DEFAULT: u32 = 0;
6881pub const KGSL_CONTEXT_PREEMPT_STYLE_RINGBUFFER: u32 = 1;
6882pub const KGSL_CONTEXT_PREEMPT_STYLE_FINEGRAIN: u32 = 2;
6883pub const KGSL_CONTEXT_TYPE_MASK: u32 = 32505856;
6884pub const KGSL_CONTEXT_TYPE_SHIFT: u32 = 20;
6885pub const KGSL_CONTEXT_TYPE_ANY: u32 = 0;
6886pub const KGSL_CONTEXT_TYPE_GL: u32 = 1;
6887pub const KGSL_CONTEXT_TYPE_CL: u32 = 2;
6888pub const KGSL_CONTEXT_TYPE_C2D: u32 = 3;
6889pub const KGSL_CONTEXT_TYPE_RS: u32 = 4;
6890pub const KGSL_CONTEXT_TYPE_VK: u32 = 5;
6891pub const KGSL_CONTEXT_TYPE_UNKNOWN: u32 = 30;
6892pub const KGSL_CONTEXT_INVALIDATE_ON_FAULT: u32 = 268435456;
6893pub const KGSL_CONTEXT_LPAC: u32 = 536870912;
6894pub const KGSL_CONTEXT_FAULT_INFO: u32 = 1073741824;
6895pub const KGSL_CONTEXT_INVALID: u32 = 4294967295;
6896pub const KGSL_CMDBATCH_MEMLIST: u32 = 1;
6897pub const KGSL_CMDBATCH_MARKER: u32 = 2;
6898pub const KGSL_CMDBATCH_SUBMIT_IB_LIST: u32 = 4;
6899pub const KGSL_CMDBATCH_CTX_SWITCH: u32 = 8;
6900pub const KGSL_CMDBATCH_PROFILING: u32 = 16;
6901pub const KGSL_CMDBATCH_PROFILING_KTIME: u32 = 32;
6902pub const KGSL_CMDBATCH_END_OF_FRAME: u32 = 256;
6903pub const KGSL_CMDBATCH_SYNC: u32 = 1024;
6904pub const KGSL_CMDBATCH_PWR_CONSTRAINT: u32 = 2048;
6905pub const KGSL_CMDBATCH_SPARSE: u32 = 4096;
6906pub const KGSL_CMDBATCH_START_RECURRING: u32 = 1048576;
6907pub const KGSL_CMDBATCH_STOP_RECURRING: u32 = 2097152;
6908pub const KGSL_CMDLIST_IB: u32 = 1;
6909pub const KGSL_CMDLIST_CTXTSWITCH_PREAMBLE: u32 = 2;
6910pub const KGSL_CMDLIST_IB_PREAMBLE: u32 = 4;
6911pub const KGSL_OBJLIST_MEMOBJ: u32 = 8;
6912pub const KGSL_OBJLIST_PROFILE: u32 = 16;
6913pub const KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP: u32 = 0;
6914pub const KGSL_CMD_SYNCPOINT_TYPE_FENCE: u32 = 1;
6915pub const KGSL_CMD_SYNCPOINT_TYPE_TIMELINE: u32 = 2;
6916pub const KGSL_MEMFLAGS_SECURE: u32 = 8;
6917pub const KGSL_MEMFLAGS_GPUREADONLY: u32 = 16777216;
6918pub const KGSL_MEMFLAGS_GPUWRITEONLY: u32 = 33554432;
6919pub const KGSL_MEMFLAGS_FORCE_32BIT: u64 = 4294967296;
6920pub const KGSL_SPARSE_BIND_MULTIPLE_TO_PHYS: u64 = 17179869184;
6921pub const KGSL_SPARSE_BIND: u32 = 1;
6922pub const KGSL_SPARSE_UNBIND: u32 = 2;
6923pub const KGSL_CACHEMODE_MASK: u32 = 201326592;
6924pub const KGSL_CACHEMODE_SHIFT: u32 = 26;
6925pub const KGSL_CACHEMODE_WRITECOMBINE: u32 = 0;
6926pub const KGSL_CACHEMODE_UNCACHED: u32 = 1;
6927pub const KGSL_CACHEMODE_WRITETHROUGH: u32 = 2;
6928pub const KGSL_CACHEMODE_WRITEBACK: u32 = 3;
6929pub const KGSL_MEMFLAGS_USE_CPU_MAP: u32 = 268435456;
6930pub const KGSL_MEMFLAGS_SPARSE_PHYS: u32 = 536870912;
6931pub const KGSL_MEMFLAGS_SPARSE_VIRT: u32 = 1073741824;
6932pub const KGSL_MEMFLAGS_IOCOHERENT: u32 = 2147483648;
6933pub const KGSL_MEMFLAGS_GUARD_PAGE: u64 = 8589934592;
6934pub const KGSL_MEMFLAGS_VBO: u64 = 17179869184;
6935pub const KGSL_MEMFLAGS_VBO_NO_MAP_ZERO: u64 = 34359738368;
6936pub const KGSL_MEMTYPE_MASK: u32 = 65280;
6937pub const KGSL_MEMTYPE_SHIFT: u32 = 8;
6938pub const KGSL_MEMTYPE_OBJECTANY: u32 = 0;
6939pub const KGSL_MEMTYPE_FRAMEBUFFER: u32 = 1;
6940pub const KGSL_MEMTYPE_RENDERBUFFER: u32 = 2;
6941pub const KGSL_MEMTYPE_ARRAYBUFFER: u32 = 3;
6942pub const KGSL_MEMTYPE_ELEMENTARRAYBUFFER: u32 = 4;
6943pub const KGSL_MEMTYPE_VERTEXARRAYBUFFER: u32 = 5;
6944pub const KGSL_MEMTYPE_TEXTURE: u32 = 6;
6945pub const KGSL_MEMTYPE_SURFACE: u32 = 7;
6946pub const KGSL_MEMTYPE_EGL_SURFACE: u32 = 8;
6947pub const KGSL_MEMTYPE_GL: u32 = 9;
6948pub const KGSL_MEMTYPE_CL: u32 = 10;
6949pub const KGSL_MEMTYPE_CL_BUFFER_MAP: u32 = 11;
6950pub const KGSL_MEMTYPE_CL_BUFFER_NOMAP: u32 = 12;
6951pub const KGSL_MEMTYPE_CL_IMAGE_MAP: u32 = 13;
6952pub const KGSL_MEMTYPE_CL_IMAGE_NOMAP: u32 = 14;
6953pub const KGSL_MEMTYPE_CL_KERNEL_STACK: u32 = 15;
6954pub const KGSL_MEMTYPE_COMMAND: u32 = 16;
6955pub const KGSL_MEMTYPE_2D: u32 = 17;
6956pub const KGSL_MEMTYPE_EGL_IMAGE: u32 = 18;
6957pub const KGSL_MEMTYPE_EGL_SHADOW: u32 = 19;
6958pub const KGSL_MEMTYPE_MULTISAMPLE: u32 = 20;
6959pub const KGSL_MEMTYPE_KERNEL: u32 = 255;
6960pub const KGSL_MEMALIGN_MASK: u32 = 16711680;
6961pub const KGSL_MEMALIGN_SHIFT: u32 = 16;
6962pub const KGSL_MEMFLAGS_USERMEM_MASK: u32 = 224;
6963pub const KGSL_MEMFLAGS_USERMEM_SHIFT: u32 = 5;
6964pub const KGSL_MEMFLAGS_NOT_USERMEM: u32 = 0;
6965pub const KGSL_FLAGS_NORMALMODE: u32 = 0;
6966pub const KGSL_FLAGS_SAFEMODE: u32 = 1;
6967pub const KGSL_FLAGS_INITIALIZED0: u32 = 2;
6968pub const KGSL_FLAGS_INITIALIZED: u32 = 4;
6969pub const KGSL_FLAGS_STARTED: u32 = 8;
6970pub const KGSL_FLAGS_ACTIVE: u32 = 16;
6971pub const KGSL_FLAGS_RESERVED0: u32 = 32;
6972pub const KGSL_FLAGS_RESERVED1: u32 = 64;
6973pub const KGSL_FLAGS_RESERVED2: u32 = 128;
6974pub const KGSL_FLAGS_SOFT_RESET: u32 = 256;
6975pub const KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS: u32 = 512;
6976pub const KGSL_SYNCOBJ_SERVER_TIMEOUT: u32 = 2000;
6977pub const KGSL_UBWC_NONE: u32 = 0;
6978pub const KGSL_UBWC_1_0: u32 = 1;
6979pub const KGSL_UBWC_2_0: u32 = 2;
6980pub const KGSL_UBWC_3_0: u32 = 3;
6981pub const KGSL_UBWC_4_0: u32 = 4;
6982pub const KGSL_UBWC_5_0: u32 = 5;
6983pub const KGSL_PROP_DEVICE_INFO: u32 = 1;
6984pub const KGSL_PROP_DEVICE_SHADOW: u32 = 2;
6985pub const KGSL_PROP_DEVICE_POWER: u32 = 3;
6986pub const KGSL_PROP_SHMEM: u32 = 4;
6987pub const KGSL_PROP_SHMEM_APERTURES: u32 = 5;
6988pub const KGSL_PROP_MMU_ENABLE: u32 = 6;
6989pub const KGSL_PROP_INTERRUPT_WAITS: u32 = 7;
6990pub const KGSL_PROP_VERSION: u32 = 8;
6991pub const KGSL_PROP_GPU_RESET_STAT: u32 = 9;
6992pub const KGSL_PROP_PWRCTRL: u32 = 14;
6993pub const KGSL_PROP_PWR_CONSTRAINT: u32 = 18;
6994pub const KGSL_PROP_UCHE_GMEM_VADDR: u32 = 19;
6995pub const KGSL_PROP_SP_GENERIC_MEM: u32 = 20;
6996pub const KGSL_PROP_UCODE_VERSION: u32 = 21;
6997pub const KGSL_PROP_GPMU_VERSION: u32 = 22;
6998pub const KGSL_PROP_HIGHEST_BANK_BIT: u32 = 23;
6999pub const KGSL_PROP_DEVICE_BITNESS: u32 = 24;
7000pub const KGSL_PROP_DEVICE_QDSS_STM: u32 = 25;
7001pub const KGSL_PROP_MIN_ACCESS_LENGTH: u32 = 26;
7002pub const KGSL_PROP_UBWC_MODE: u32 = 27;
7003pub const KGSL_PROP_DEVICE_QTIMER: u32 = 32;
7004pub const KGSL_PROP_L3_PWR_CONSTRAINT: u32 = 34;
7005pub const KGSL_PROP_SECURE_BUFFER_ALIGNMENT: u32 = 35;
7006pub const KGSL_PROP_SECURE_CTXT_SUPPORT: u32 = 36;
7007pub const KGSL_PROP_SPEED_BIN: u32 = 37;
7008pub const KGSL_PROP_GAMING_BIN: u32 = 38;
7009pub const KGSL_PROP_QUERY_CAPABILITIES: u32 = 39;
7010pub const KGSL_PROP_CONTEXT_PROPERTY: u32 = 40;
7011pub const KGSL_PROP_GPU_MODEL: u32 = 41;
7012pub const KGSL_PROP_VK_DEVICE_ID: u32 = 42;
7013pub const KGSL_PROP_IS_LPAC_ENABLED: u32 = 43;
7014pub const KGSL_PROP_GPU_VA64_SIZE: u32 = 44;
7015pub const KGSL_PROP_IS_RAYTRACING_ENABLED: u32 = 45;
7016pub const KGSL_PROP_IS_FASTBLEND_ENABLED: u32 = 46;
7017pub const KGSL_PROP_UCHE_TRAP_BASE: u32 = 47;
7018pub const KGSL_PROP_IS_AQE_ENABLED: u32 = 48;
7019pub const KGSL_PROP_GPU_SECURE_VA_SIZE: u32 = 49;
7020pub const KGSL_PROP_GPU_SECURE_VA_INUSE: u32 = 50;
7021pub const KGSL_QUERY_CAPS_PROPERTIES: u32 = 1;
7022pub const KGSL_CONTEXT_PROP_FAULTS: u32 = 1;
7023pub const KGSL_PERFCOUNTER_GROUP_CP: u32 = 0;
7024pub const KGSL_PERFCOUNTER_GROUP_RBBM: u32 = 1;
7025pub const KGSL_PERFCOUNTER_GROUP_PC: u32 = 2;
7026pub const KGSL_PERFCOUNTER_GROUP_VFD: u32 = 3;
7027pub const KGSL_PERFCOUNTER_GROUP_HLSQ: u32 = 4;
7028pub const KGSL_PERFCOUNTER_GROUP_VPC: u32 = 5;
7029pub const KGSL_PERFCOUNTER_GROUP_TSE: u32 = 6;
7030pub const KGSL_PERFCOUNTER_GROUP_RAS: u32 = 7;
7031pub const KGSL_PERFCOUNTER_GROUP_UCHE: u32 = 8;
7032pub const KGSL_PERFCOUNTER_GROUP_TP: u32 = 9;
7033pub const KGSL_PERFCOUNTER_GROUP_SP: u32 = 10;
7034pub const KGSL_PERFCOUNTER_GROUP_RB: u32 = 11;
7035pub const KGSL_PERFCOUNTER_GROUP_PWR: u32 = 12;
7036pub const KGSL_PERFCOUNTER_GROUP_VBIF: u32 = 13;
7037pub const KGSL_PERFCOUNTER_GROUP_VBIF_PWR: u32 = 14;
7038pub const KGSL_PERFCOUNTER_GROUP_MH: u32 = 15;
7039pub const KGSL_PERFCOUNTER_GROUP_PA_SU: u32 = 16;
7040pub const KGSL_PERFCOUNTER_GROUP_SQ: u32 = 17;
7041pub const KGSL_PERFCOUNTER_GROUP_SX: u32 = 18;
7042pub const KGSL_PERFCOUNTER_GROUP_TCF: u32 = 19;
7043pub const KGSL_PERFCOUNTER_GROUP_TCM: u32 = 20;
7044pub const KGSL_PERFCOUNTER_GROUP_TCR: u32 = 21;
7045pub const KGSL_PERFCOUNTER_GROUP_L2: u32 = 22;
7046pub const KGSL_PERFCOUNTER_GROUP_VSC: u32 = 23;
7047pub const KGSL_PERFCOUNTER_GROUP_CCU: u32 = 24;
7048pub const KGSL_PERFCOUNTER_GROUP_LRZ: u32 = 25;
7049pub const KGSL_PERFCOUNTER_GROUP_CMP: u32 = 26;
7050pub const KGSL_PERFCOUNTER_GROUP_ALWAYSON: u32 = 27;
7051pub const KGSL_PERFCOUNTER_GROUP_SP_PWR: u32 = 28;
7052pub const KGSL_PERFCOUNTER_GROUP_TP_PWR: u32 = 29;
7053pub const KGSL_PERFCOUNTER_GROUP_RB_PWR: u32 = 30;
7054pub const KGSL_PERFCOUNTER_GROUP_CCU_PWR: u32 = 31;
7055pub const KGSL_PERFCOUNTER_GROUP_UCHE_PWR: u32 = 32;
7056pub const KGSL_PERFCOUNTER_GROUP_CP_PWR: u32 = 33;
7057pub const KGSL_PERFCOUNTER_GROUP_GPMU_PWR: u32 = 34;
7058pub const KGSL_PERFCOUNTER_GROUP_ALWAYSON_PWR: u32 = 35;
7059pub const KGSL_PERFCOUNTER_GROUP_GLC: u32 = 36;
7060pub const KGSL_PERFCOUNTER_GROUP_FCHE: u32 = 37;
7061pub const KGSL_PERFCOUNTER_GROUP_MHUB: u32 = 38;
7062pub const KGSL_PERFCOUNTER_GROUP_GMU_XOCLK: u32 = 39;
7063pub const KGSL_PERFCOUNTER_GROUP_GMU_GMUCLK: u32 = 40;
7064pub const KGSL_PERFCOUNTER_GROUP_GMU_PERF: u32 = 41;
7065pub const KGSL_PERFCOUNTER_GROUP_SW: u32 = 42;
7066pub const KGSL_PERFCOUNTER_GROUP_UFC: u32 = 43;
7067pub const KGSL_PERFCOUNTER_GROUP_BV_CP: u32 = 44;
7068pub const KGSL_PERFCOUNTER_GROUP_BV_PC: u32 = 45;
7069pub const KGSL_PERFCOUNTER_GROUP_BV_VFD: u32 = 46;
7070pub const KGSL_PERFCOUNTER_GROUP_BV_VPC: u32 = 47;
7071pub const KGSL_PERFCOUNTER_GROUP_BV_TP: u32 = 48;
7072pub const KGSL_PERFCOUNTER_GROUP_BV_SP: u32 = 49;
7073pub const KGSL_PERFCOUNTER_GROUP_BV_UFC: u32 = 50;
7074pub const KGSL_PERFCOUNTER_GROUP_BV_TSE: u32 = 51;
7075pub const KGSL_PERFCOUNTER_GROUP_BV_RAS: u32 = 52;
7076pub const KGSL_PERFCOUNTER_GROUP_BV_LRZ: u32 = 53;
7077pub const KGSL_PERFCOUNTER_GROUP_BV_HLSQ: u32 = 54;
7078pub const KGSL_PERFCOUNTER_GROUP_MAX: u32 = 55;
7079pub const KGSL_PERFCOUNTER_NOT_USED: u32 = 4294967295;
7080pub const KGSL_PERFCOUNTER_BROKEN: u32 = 4294967294;
7081pub const KGSL_IOC_TYPE: u32 = 9;
7082pub const KGSL_TIMESTAMP_EVENT_GENLOCK: u32 = 1;
7083pub const KGSL_TIMESTAMP_EVENT_FENCE: u32 = 2;
7084pub const KGSL_GPUMEM_CACHE_CLEAN: u32 = 1;
7085pub const KGSL_GPUMEM_CACHE_TO_GPU: u32 = 1;
7086pub const KGSL_GPUMEM_CACHE_INV: u32 = 2;
7087pub const KGSL_GPUMEM_CACHE_FROM_GPU: u32 = 2;
7088pub const KGSL_GPUMEM_CACHE_FLUSH: u32 = 3;
7089pub const KGSL_GPUMEM_CACHE_RANGE: u32 = 2147483648;
7090pub const KGSL_IBDESC_MEMLIST: u32 = 1;
7091pub const KGSL_IBDESC_PROFILING_BUFFER: u32 = 2;
7092pub const KGSL_CONSTRAINT_NONE: u32 = 0;
7093pub const KGSL_CONSTRAINT_PWRLEVEL: u32 = 1;
7094pub const KGSL_CONSTRAINT_L3_NONE: u32 = 2;
7095pub const KGSL_CONSTRAINT_L3_PWRLEVEL: u32 = 3;
7096pub const KGSL_CONSTRAINT_PWR_MIN: u32 = 0;
7097pub const KGSL_CONSTRAINT_PWR_MAX: u32 = 1;
7098pub const KGSL_GPUOBJ_ALLOC_METADATA_MAX: u32 = 64;
7099pub const KGSL_GPUOBJ_FREE_ON_EVENT: u32 = 1;
7100pub const KGSL_GPU_EVENT_TIMESTAMP: u32 = 1;
7101pub const KGSL_GPU_EVENT_FENCE: u32 = 2;
7102pub const KGSL_GPUOBJ_SET_INFO_METADATA: u32 = 1;
7103pub const KGSL_GPUOBJ_SET_INFO_TYPE: u32 = 2;
7104pub const KGSL_GPUMEM_RANGE_OP_BIND: u32 = 1;
7105pub const KGSL_GPUMEM_RANGE_OP_UNBIND: u32 = 2;
7106pub const KGSL_GPUMEM_BIND_ASYNC: u32 = 1;
7107pub const KGSL_GPUMEM_BIND_FENCE_OUT: u32 = 2;
7108pub const KGSL_GPU_AUX_COMMAND_BIND: u32 = 1;
7109pub const KGSL_GPU_AUX_COMMAND_TIMELINE: u32 = 2;
7110pub const KGSL_GPU_AUX_COMMAND_SYNC: u32 = 1024;
7111pub const KGSL_TIMELINE_WAIT_ALL: u32 = 1;
7112pub const KGSL_TIMELINE_WAIT_ANY: u32 = 2;
7113pub const KGSL_FAULT_TYPE_NO_FAULT: u32 = 0;
7114pub const KGSL_FAULT_TYPE_PAGEFAULT: u32 = 1;
7115pub const KGSL_FAULT_TYPE_MAX: u32 = 2;
7116pub const KGSL_PAGEFAULT_TYPE_NONE: u32 = 0;
7117pub const KGSL_PAGEFAULT_TYPE_READ: u32 = 1;
7118pub const KGSL_PAGEFAULT_TYPE_WRITE: u32 = 2;
7119pub const KGSL_PAGEFAULT_TYPE_TRANSLATION: u32 = 4;
7120pub const KGSL_PAGEFAULT_TYPE_PERMISSION: u32 = 8;
7121pub const KGSL_PAGEFAULT_TYPE_EXTERNAL: u32 = 16;
7122pub const KGSL_PAGEFAULT_TYPE_TRANSACTION_STALLED: u32 = 32;
7123pub const ARCH_SET_GS: u32 = 4097;
7124pub const ARCH_SET_FS: u32 = 4098;
7125pub const ARCH_GET_FS: u32 = 4099;
7126pub const ARCH_GET_GS: u32 = 4100;
7127pub const ARCH_GET_CPUID: u32 = 4113;
7128pub const ARCH_SET_CPUID: u32 = 4114;
7129pub const ARCH_GET_XCOMP_SUPP: u32 = 4129;
7130pub const ARCH_GET_XCOMP_PERM: u32 = 4130;
7131pub const ARCH_REQ_XCOMP_PERM: u32 = 4131;
7132pub const ARCH_GET_XCOMP_GUEST_PERM: u32 = 4132;
7133pub const ARCH_REQ_XCOMP_GUEST_PERM: u32 = 4133;
7134pub const ARCH_XCOMP_TILECFG: u32 = 17;
7135pub const ARCH_XCOMP_TILEDATA: u32 = 18;
7136pub const ARCH_MAP_VDSO_X32: u32 = 8193;
7137pub const ARCH_MAP_VDSO_32: u32 = 8194;
7138pub const ARCH_MAP_VDSO_64: u32 = 8195;
7139pub const ARCH_GET_UNTAG_MASK: u32 = 16385;
7140pub const ARCH_ENABLE_TAGGED_ADDR: u32 = 16386;
7141pub const ARCH_GET_MAX_TAG_BITS: u32 = 16387;
7142pub const ARCH_FORCE_TAGGED_SVA: u32 = 16388;
7143pub const ARCH_SHSTK_ENABLE: u32 = 20481;
7144pub const ARCH_SHSTK_DISABLE: u32 = 20482;
7145pub const ARCH_SHSTK_LOCK: u32 = 20483;
7146pub const ARCH_SHSTK_UNLOCK: u32 = 20484;
7147pub const ARCH_SHSTK_STATUS: u32 = 20485;
7148pub const ARCH_SHSTK_SHSTK: u32 = 1;
7149pub const ARCH_SHSTK_WRSS: u32 = 2;
7150pub const SPLICE_F_MOVE: u32 = 1;
7151pub const SPLICE_F_NONBLOCK: u32 = 2;
7152pub const SPLICE_F_MORE: u32 = 4;
7153pub const SPLICE_F_GIFT: u32 = 8;
7154pub type size_t = crate::types::c_ulong;
7155pub type wchar_t = crate::types::c_int;
7156#[repr(C)]
7157#[repr(align(16))]
7158#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7159pub struct max_align_t {
7160    pub __clang_max_align_nonce1: crate::types::c_longlong,
7161    pub __bindgen_padding_0: [u8; 8usize],
7162    pub __clang_max_align_nonce2: u128,
7163}
7164pub type int_least64_t = i64;
7165pub type uint_least64_t = u64;
7166pub type int_fast64_t = i64;
7167pub type uint_fast64_t = u64;
7168pub type int_least32_t = i32;
7169pub type uint_least32_t = u32;
7170pub type int_fast32_t = i32;
7171pub type uint_fast32_t = u32;
7172pub type int_least16_t = i16;
7173pub type uint_least16_t = u16;
7174pub type int_fast16_t = i16;
7175pub type uint_fast16_t = u16;
7176pub type int_least8_t = i8;
7177pub type uint_least8_t = u8;
7178pub type int_fast8_t = i8;
7179pub type uint_fast8_t = u8;
7180pub type intmax_t = crate::types::c_long;
7181pub type uintmax_t = crate::types::c_ulong;
7182pub type __kernel_old_uid_t = crate::types::c_ushort;
7183pub type __kernel_old_gid_t = crate::types::c_ushort;
7184pub type __kernel_old_dev_t = crate::types::c_ulong;
7185pub type __kernel_long_t = crate::types::c_long;
7186pub type __kernel_ulong_t = crate::types::c_ulong;
7187pub type __kernel_ino_t = __kernel_ulong_t;
7188pub type __kernel_mode_t = crate::types::c_uint;
7189pub type __kernel_pid_t = crate::types::c_int;
7190pub type __kernel_ipc_pid_t = crate::types::c_int;
7191pub type __kernel_uid_t = crate::types::c_uint;
7192pub type __kernel_gid_t = crate::types::c_uint;
7193pub type __kernel_suseconds_t = __kernel_long_t;
7194pub type __kernel_daddr_t = crate::types::c_int;
7195pub type __kernel_uid32_t = crate::types::c_uint;
7196pub type __kernel_gid32_t = crate::types::c_uint;
7197pub type __kernel_size_t = __kernel_ulong_t;
7198pub type __kernel_ssize_t = __kernel_long_t;
7199pub type __kernel_ptrdiff_t = __kernel_long_t;
7200#[repr(C)]
7201#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7202pub struct __kernel_fsid_t {
7203    pub val: [crate::types::c_int; 2usize],
7204}
7205pub type __kernel_off_t = __kernel_long_t;
7206pub type __kernel_loff_t = crate::types::c_longlong;
7207pub type __kernel_old_time_t = __kernel_long_t;
7208pub type __kernel_time_t = __kernel_long_t;
7209pub type __kernel_time64_t = crate::types::c_longlong;
7210pub type __kernel_clock_t = __kernel_long_t;
7211pub type __kernel_timer_t = crate::types::c_int;
7212pub type __kernel_clockid_t = crate::types::c_int;
7213pub type __kernel_caddr_t = uref<crate::types::c_char>;
7214pub type __kernel_uid16_t = crate::types::c_ushort;
7215pub type __kernel_gid16_t = crate::types::c_ushort;
7216pub type __kernel_sa_family_t = crate::types::c_ushort;
7217#[repr(C)]
7218#[derive(Copy, Clone)]
7219pub struct sockaddr_storage {
7220    pub __bindgen_anon_1: sockaddr_storage__bindgen_ty_1,
7221}
7222#[repr(C)]
7223#[derive(Copy, Clone)]
7224pub union sockaddr_storage__bindgen_ty_1 {
7225    pub __bindgen_anon_1: sockaddr_storage__bindgen_ty_1__bindgen_ty_1,
7226    pub __align: uaddr,
7227}
7228#[repr(C)]
7229#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7230pub struct sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
7231    pub ss_family: __kernel_sa_family_t,
7232    pub __data: [crate::types::c_char; 126usize],
7233}
7234impl Default for sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
7235    fn default() -> Self {
7236        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7237        unsafe {
7238            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7239            s.assume_init()
7240        }
7241    }
7242}
7243impl Default for sockaddr_storage__bindgen_ty_1 {
7244    fn default() -> Self {
7245        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7246        unsafe {
7247            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7248            s.assume_init()
7249        }
7250    }
7251}
7252impl Default for sockaddr_storage {
7253    fn default() -> Self {
7254        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7255        unsafe {
7256            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7257            s.assume_init()
7258        }
7259    }
7260}
7261pub type socklen_t = u32;
7262#[repr(C)]
7263#[derive(
7264    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
7265)]
7266pub struct ucred {
7267    pub pid: __kernel_pid_t,
7268    pub uid: __kernel_uid32_t,
7269    pub gid: __kernel_gid32_t,
7270}
7271#[repr(C)]
7272#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7273pub struct msghdr {
7274    pub msg_name: uaddr,
7275    pub msg_namelen: socklen_t,
7276    pub __bindgen_padding_0: [u8; 4usize],
7277    pub msg_iov: uref<iovec>,
7278    pub msg_iovlen: size_t,
7279    pub msg_control: uaddr,
7280    pub msg_controllen: size_t,
7281    pub msg_flags: crate::types::c_uint,
7282    pub __bindgen_padding_1: [u8; 4usize],
7283}
7284impl Default for msghdr {
7285    fn default() -> Self {
7286        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7287        unsafe {
7288            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7289            s.assume_init()
7290        }
7291    }
7292}
7293#[repr(C)]
7294#[derive(
7295    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
7296)]
7297pub struct cmsghdr {
7298    pub cmsg_len: size_t,
7299    pub cmsg_level: crate::types::c_uint,
7300    pub cmsg_type: crate::types::c_uint,
7301}
7302#[repr(C)]
7303#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7304pub struct mmsghdr {
7305    pub msg_hdr: msghdr,
7306    pub msg_len: crate::types::c_uint,
7307    pub __bindgen_padding_0: [u8; 4usize],
7308}
7309impl Default for mmsghdr {
7310    fn default() -> Self {
7311        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7312        unsafe {
7313            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7314            s.assume_init()
7315        }
7316    }
7317}
7318#[repr(C)]
7319#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7320pub struct linger {
7321    pub l_onoff: crate::types::c_int,
7322    pub l_linger: crate::types::c_int,
7323}
7324#[repr(C)]
7325#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7326pub struct sockaddr_qrtr {
7327    pub sq_family: __kernel_sa_family_t,
7328    pub __bindgen_padding_0: [u8; 2usize],
7329    pub sq_node: crate::types::c_uint,
7330    pub sq_port: crate::types::c_uint,
7331}
7332pub type __s8 = crate::types::c_schar;
7333pub type __u8 = crate::types::c_uchar;
7334pub type __s16 = crate::types::c_short;
7335pub type __u16 = crate::types::c_ushort;
7336pub type __s32 = crate::types::c_int;
7337pub type __u32 = crate::types::c_uint;
7338pub type __s64 = crate::types::c_longlong;
7339pub type __u64 = crate::types::c_ulonglong;
7340#[repr(C)]
7341#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7342pub struct __kernel_fd_set {
7343    pub fds_bits: [crate::types::c_ulong; 16usize],
7344}
7345pub type __kernel_sighandler_t = uaddr;
7346pub type __kernel_key_t = crate::types::c_int;
7347pub type __kernel_mqd_t = crate::types::c_int;
7348pub type __s128 = i128;
7349pub type __u128 = u128;
7350pub type __le16 = __u16;
7351pub type __be16 = __u16;
7352pub type __le32 = __u32;
7353pub type __be32 = __u32;
7354pub type __le64 = __u64;
7355pub type __be64 = __u64;
7356pub type __sum16 = __u16;
7357pub type __wsum = __u32;
7358pub type __poll_t = crate::types::c_uint;
7359pub type sigset_t = crate::types::c_ulong;
7360pub type __signalfn_t = uaddr;
7361pub type __sighandler_t = __signalfn_t;
7362pub type __restorefn_t = uaddr;
7363pub type __sigrestore_t = __restorefn_t;
7364#[repr(C)]
7365#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
7366pub struct __kernel_sigaction {
7367    pub sa_handler: __sighandler_t,
7368    pub sa_flags: crate::types::c_ulong,
7369    pub sa_restorer: __sigrestore_t,
7370    pub sa_mask: sigset_t,
7371}
7372#[repr(C)]
7373#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7374pub struct sigaltstack {
7375    pub ss_sp: uaddr,
7376    pub ss_flags: crate::types::c_int,
7377    pub __bindgen_padding_0: [u8; 4usize],
7378    pub ss_size: __kernel_size_t,
7379}
7380impl Default for sigaltstack {
7381    fn default() -> Self {
7382        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7383        unsafe {
7384            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7385            s.assume_init()
7386        }
7387    }
7388}
7389pub type stack_t = sigaltstack;
7390pub type pid_t = __kernel_pid_t;
7391pub type uid_t = __kernel_uid_t;
7392#[repr(C)]
7393#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7394pub struct sockaddr {
7395    pub sa_family: __kernel_sa_family_t,
7396    pub sa_data: [crate::types::c_char; 14usize],
7397}
7398pub type sa_family_t = __kernel_sa_family_t;
7399pub type sigaction_t = __kernel_sigaction;
7400#[repr(C)]
7401#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7402pub struct pollfd {
7403    pub fd: crate::types::c_int,
7404    pub events: crate::types::c_short,
7405    pub revents: crate::types::c_short,
7406}
7407#[repr(C)]
7408#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7409pub struct _fpx_sw_bytes {
7410    pub magic1: __u32,
7411    pub extended_size: __u32,
7412    pub xfeatures: __u64,
7413    pub xstate_size: __u32,
7414    pub padding: [__u32; 7usize],
7415}
7416#[repr(C)]
7417#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7418pub struct _fpreg {
7419    pub significand: [__u16; 4usize],
7420    pub exponent: __u16,
7421}
7422#[repr(C)]
7423#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7424pub struct _fpxreg {
7425    pub significand: [__u16; 4usize],
7426    pub exponent: __u16,
7427    pub padding: [__u16; 3usize],
7428}
7429#[repr(C)]
7430#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7431pub struct _xmmreg {
7432    pub element: [__u32; 4usize],
7433}
7434#[repr(C)]
7435#[derive(Copy, Clone)]
7436pub struct _fpstate_32 {
7437    pub cw: __u32,
7438    pub sw: __u32,
7439    pub tag: __u32,
7440    pub ipoff: __u32,
7441    pub cssel: __u32,
7442    pub dataoff: __u32,
7443    pub datasel: __u32,
7444    pub _st: [_fpreg; 8usize],
7445    pub status: __u16,
7446    pub magic: __u16,
7447    pub _fxsr_env: [__u32; 6usize],
7448    pub mxcsr: __u32,
7449    pub reserved: __u32,
7450    pub _fxsr_st: [_fpxreg; 8usize],
7451    pub _xmm: [_xmmreg; 8usize],
7452    pub __bindgen_anon_1: _fpstate_32__bindgen_ty_1,
7453    pub __bindgen_anon_2: _fpstate_32__bindgen_ty_2,
7454}
7455#[repr(C)]
7456#[derive(Copy, Clone)]
7457pub union _fpstate_32__bindgen_ty_1 {
7458    pub padding1: [__u32; 44usize],
7459    pub padding: [__u32; 44usize],
7460}
7461impl Default for _fpstate_32__bindgen_ty_1 {
7462    fn default() -> Self {
7463        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7464        unsafe {
7465            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7466            s.assume_init()
7467        }
7468    }
7469}
7470#[repr(C)]
7471#[derive(Copy, Clone)]
7472pub union _fpstate_32__bindgen_ty_2 {
7473    pub padding2: [__u32; 12usize],
7474    pub sw_reserved: _fpx_sw_bytes,
7475}
7476impl Default for _fpstate_32__bindgen_ty_2 {
7477    fn default() -> Self {
7478        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7479        unsafe {
7480            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7481            s.assume_init()
7482        }
7483    }
7484}
7485impl Default for _fpstate_32 {
7486    fn default() -> Self {
7487        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7488        unsafe {
7489            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7490            s.assume_init()
7491        }
7492    }
7493}
7494#[repr(C)]
7495#[derive(Copy, Clone)]
7496pub struct _fpstate_64 {
7497    pub cwd: __u16,
7498    pub swd: __u16,
7499    pub twd: __u16,
7500    pub fop: __u16,
7501    pub rip: __u64,
7502    pub rdp: __u64,
7503    pub mxcsr: __u32,
7504    pub mxcsr_mask: __u32,
7505    pub st_space: [__u32; 32usize],
7506    pub xmm_space: [__u32; 64usize],
7507    pub reserved2: [__u32; 12usize],
7508    pub __bindgen_anon_1: _fpstate_64__bindgen_ty_1,
7509}
7510#[repr(C)]
7511#[derive(Copy, Clone)]
7512pub union _fpstate_64__bindgen_ty_1 {
7513    pub reserved3: [__u32; 12usize],
7514    pub sw_reserved: _fpx_sw_bytes,
7515}
7516impl Default for _fpstate_64__bindgen_ty_1 {
7517    fn default() -> Self {
7518        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7519        unsafe {
7520            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7521            s.assume_init()
7522        }
7523    }
7524}
7525impl Default for _fpstate_64 {
7526    fn default() -> Self {
7527        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7528        unsafe {
7529            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7530            s.assume_init()
7531        }
7532    }
7533}
7534#[repr(C)]
7535#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7536pub struct _header {
7537    pub xfeatures: __u64,
7538    pub reserved1: [__u64; 2usize],
7539    pub reserved2: [__u64; 5usize],
7540}
7541#[repr(C)]
7542#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7543pub struct _ymmh_state {
7544    pub ymmh_space: [__u32; 64usize],
7545}
7546impl Default for _ymmh_state {
7547    fn default() -> Self {
7548        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7549        unsafe {
7550            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7551            s.assume_init()
7552        }
7553    }
7554}
7555#[repr(C)]
7556#[derive(Copy, Clone)]
7557pub struct _xstate {
7558    pub fpstate: _fpstate_64,
7559    pub xstate_hdr: _header,
7560    pub ymmh: _ymmh_state,
7561}
7562impl Default for _xstate {
7563    fn default() -> Self {
7564        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7565        unsafe {
7566            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7567            s.assume_init()
7568        }
7569    }
7570}
7571#[repr(C)]
7572#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7573pub struct sigcontext_32 {
7574    pub gs: __u16,
7575    pub __gsh: __u16,
7576    pub fs: __u16,
7577    pub __fsh: __u16,
7578    pub es: __u16,
7579    pub __esh: __u16,
7580    pub ds: __u16,
7581    pub __dsh: __u16,
7582    pub di: __u32,
7583    pub si: __u32,
7584    pub bp: __u32,
7585    pub sp: __u32,
7586    pub bx: __u32,
7587    pub dx: __u32,
7588    pub cx: __u32,
7589    pub ax: __u32,
7590    pub trapno: __u32,
7591    pub err: __u32,
7592    pub ip: __u32,
7593    pub cs: __u16,
7594    pub __csh: __u16,
7595    pub flags: __u32,
7596    pub sp_at_signal: __u32,
7597    pub ss: __u16,
7598    pub __ssh: __u16,
7599    pub fpstate: __u32,
7600    pub oldmask: __u32,
7601    pub cr2: __u32,
7602}
7603#[repr(C)]
7604#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7605pub struct sigcontext_64 {
7606    pub r8: __u64,
7607    pub r9: __u64,
7608    pub r10: __u64,
7609    pub r11: __u64,
7610    pub r12: __u64,
7611    pub r13: __u64,
7612    pub r14: __u64,
7613    pub r15: __u64,
7614    pub di: __u64,
7615    pub si: __u64,
7616    pub bp: __u64,
7617    pub bx: __u64,
7618    pub dx: __u64,
7619    pub ax: __u64,
7620    pub cx: __u64,
7621    pub sp: __u64,
7622    pub ip: __u64,
7623    pub flags: __u64,
7624    pub cs: __u16,
7625    pub gs: __u16,
7626    pub fs: __u16,
7627    pub ss: __u16,
7628    pub err: __u64,
7629    pub trapno: __u64,
7630    pub oldmask: __u64,
7631    pub cr2: __u64,
7632    pub fpstate: __u64,
7633    pub reserved1: [__u64; 8usize],
7634}
7635#[repr(C)]
7636#[derive(Copy, Clone)]
7637pub struct sigcontext {
7638    pub r8: __u64,
7639    pub r9: __u64,
7640    pub r10: __u64,
7641    pub r11: __u64,
7642    pub r12: __u64,
7643    pub r13: __u64,
7644    pub r14: __u64,
7645    pub r15: __u64,
7646    pub rdi: __u64,
7647    pub rsi: __u64,
7648    pub rbp: __u64,
7649    pub rbx: __u64,
7650    pub rdx: __u64,
7651    pub rax: __u64,
7652    pub rcx: __u64,
7653    pub rsp: __u64,
7654    pub rip: __u64,
7655    pub eflags: __u64,
7656    pub cs: __u16,
7657    pub gs: __u16,
7658    pub fs: __u16,
7659    pub __bindgen_anon_1: sigcontext__bindgen_ty_1,
7660    pub err: __u64,
7661    pub trapno: __u64,
7662    pub oldmask: __u64,
7663    pub cr2: __u64,
7664    pub fpstate: uref<_fpstate_64>,
7665    pub reserved1: [__u64; 8usize],
7666}
7667#[repr(C)]
7668#[derive(Copy, Clone)]
7669pub union sigcontext__bindgen_ty_1 {
7670    pub ss: __u16,
7671    pub __pad0: __u16,
7672}
7673impl Default for sigcontext__bindgen_ty_1 {
7674    fn default() -> Self {
7675        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7676        unsafe {
7677            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7678            s.assume_init()
7679        }
7680    }
7681}
7682impl Default for sigcontext {
7683    fn default() -> Self {
7684        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7685        unsafe {
7686            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7687            s.assume_init()
7688        }
7689    }
7690}
7691#[repr(C)]
7692#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7693pub struct stat {
7694    pub st_dev: __kernel_ulong_t,
7695    pub st_ino: __kernel_ulong_t,
7696    pub st_nlink: __kernel_ulong_t,
7697    pub st_mode: crate::types::c_uint,
7698    pub st_uid: crate::types::c_uint,
7699    pub st_gid: crate::types::c_uint,
7700    pub __pad0: crate::types::c_uint,
7701    pub st_rdev: __kernel_ulong_t,
7702    pub st_size: __kernel_long_t,
7703    pub st_blksize: __kernel_long_t,
7704    pub st_blocks: __kernel_long_t,
7705    pub st_atime: __kernel_ulong_t,
7706    pub st_atime_nsec: __kernel_ulong_t,
7707    pub st_mtime: __kernel_ulong_t,
7708    pub st_mtime_nsec: __kernel_ulong_t,
7709    pub st_ctime: __kernel_ulong_t,
7710    pub st_ctime_nsec: __kernel_ulong_t,
7711    pub __linux_unused: [__kernel_long_t; 3usize],
7712}
7713#[repr(C)]
7714#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7715pub struct __old_kernel_stat {
7716    pub st_dev: crate::types::c_ushort,
7717    pub st_ino: crate::types::c_ushort,
7718    pub st_mode: crate::types::c_ushort,
7719    pub st_nlink: crate::types::c_ushort,
7720    pub st_uid: crate::types::c_ushort,
7721    pub st_gid: crate::types::c_ushort,
7722    pub st_rdev: crate::types::c_ushort,
7723    pub __bindgen_padding_0: [u8; 2usize],
7724    pub st_size: crate::types::c_uint,
7725    pub st_atime: crate::types::c_uint,
7726    pub st_mtime: crate::types::c_uint,
7727    pub st_ctime: crate::types::c_uint,
7728}
7729#[repr(C)]
7730#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7731pub struct statfs {
7732    pub f_type: __kernel_long_t,
7733    pub f_bsize: __kernel_long_t,
7734    pub f_blocks: __kernel_long_t,
7735    pub f_bfree: __kernel_long_t,
7736    pub f_bavail: __kernel_long_t,
7737    pub f_files: __kernel_long_t,
7738    pub f_ffree: __kernel_long_t,
7739    pub f_fsid: __kernel_fsid_t,
7740    pub f_namelen: __kernel_long_t,
7741    pub f_frsize: __kernel_long_t,
7742    pub f_flags: __kernel_long_t,
7743    pub f_spare: [__kernel_long_t; 4usize],
7744}
7745#[repr(C)]
7746#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7747pub struct statfs64 {
7748    pub f_type: __kernel_long_t,
7749    pub f_bsize: __kernel_long_t,
7750    pub f_blocks: __u64,
7751    pub f_bfree: __u64,
7752    pub f_bavail: __u64,
7753    pub f_files: __u64,
7754    pub f_ffree: __u64,
7755    pub f_fsid: __kernel_fsid_t,
7756    pub f_namelen: __kernel_long_t,
7757    pub f_frsize: __kernel_long_t,
7758    pub f_flags: __kernel_long_t,
7759    pub f_spare: [__kernel_long_t; 4usize],
7760}
7761#[repr(C, packed(4))]
7762#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7763pub struct compat_statfs64 {
7764    pub f_type: __u32,
7765    pub f_bsize: __u32,
7766    pub f_blocks: __u64,
7767    pub f_bfree: __u64,
7768    pub f_bavail: __u64,
7769    pub f_files: __u64,
7770    pub f_ffree: __u64,
7771    pub f_fsid: __kernel_fsid_t,
7772    pub f_namelen: __u32,
7773    pub f_frsize: __u32,
7774    pub f_flags: __u32,
7775    pub f_spare: [__u32; 4usize],
7776}
7777#[repr(C)]
7778#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7779pub struct fscrypt_policy_v1 {
7780    pub version: __u8,
7781    pub contents_encryption_mode: __u8,
7782    pub filenames_encryption_mode: __u8,
7783    pub flags: __u8,
7784    pub master_key_descriptor: [__u8; 8usize],
7785}
7786#[repr(C)]
7787#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7788pub struct fscrypt_key {
7789    pub mode: __u32,
7790    pub raw: [__u8; 64usize],
7791    pub size: __u32,
7792}
7793impl Default for fscrypt_key {
7794    fn default() -> Self {
7795        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7796        unsafe {
7797            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7798            s.assume_init()
7799        }
7800    }
7801}
7802#[repr(C)]
7803#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7804pub struct fscrypt_policy_v2 {
7805    pub version: __u8,
7806    pub contents_encryption_mode: __u8,
7807    pub filenames_encryption_mode: __u8,
7808    pub flags: __u8,
7809    pub log2_data_unit_size: __u8,
7810    pub __reserved: [__u8; 3usize],
7811    pub master_key_identifier: [__u8; 16usize],
7812}
7813#[repr(C)]
7814#[derive(Copy, Clone)]
7815pub struct fscrypt_get_policy_ex_arg {
7816    pub policy_size: __u64,
7817    pub policy: fscrypt_get_policy_ex_arg__bindgen_ty_1,
7818}
7819#[repr(C)]
7820#[derive(Copy, Clone)]
7821pub union fscrypt_get_policy_ex_arg__bindgen_ty_1 {
7822    pub version: __u8,
7823    pub v1: fscrypt_policy_v1,
7824    pub v2: fscrypt_policy_v2,
7825}
7826impl Default for fscrypt_get_policy_ex_arg__bindgen_ty_1 {
7827    fn default() -> Self {
7828        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7829        unsafe {
7830            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7831            s.assume_init()
7832        }
7833    }
7834}
7835impl Default for fscrypt_get_policy_ex_arg {
7836    fn default() -> Self {
7837        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7838        unsafe {
7839            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7840            s.assume_init()
7841        }
7842    }
7843}
7844#[repr(C)]
7845#[derive(Debug, Default)]
7846pub struct fscrypt_provisioning_key_payload {
7847    pub type_: __u32,
7848    pub __reserved: __u32,
7849    pub raw: __IncompleteArrayField<__u8>,
7850}
7851#[repr(C)]
7852#[derive(FromBytes, Immutable, KnownLayout)]
7853pub struct fscrypt_remove_key_arg {
7854    pub key_spec: fscrypt_key_specifier,
7855    pub removal_status_flags: __u32,
7856    pub __reserved: [__u32; 5usize],
7857}
7858impl Default for fscrypt_remove_key_arg {
7859    fn default() -> Self {
7860        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7861        unsafe {
7862            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7863            s.assume_init()
7864        }
7865    }
7866}
7867#[repr(C)]
7868pub struct fscrypt_get_key_status_arg {
7869    pub key_spec: fscrypt_key_specifier,
7870    pub __reserved: [__u32; 6usize],
7871    pub status: __u32,
7872    pub status_flags: __u32,
7873    pub user_count: __u32,
7874    pub __out_reserved: [__u32; 13usize],
7875}
7876impl Default for fscrypt_get_key_status_arg {
7877    fn default() -> Self {
7878        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7879        unsafe {
7880            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7881            s.assume_init()
7882        }
7883    }
7884}
7885pub const fsconfig_command_FSCONFIG_SET_FLAG: fsconfig_command = 0;
7886pub const fsconfig_command_FSCONFIG_SET_STRING: fsconfig_command = 1;
7887pub const fsconfig_command_FSCONFIG_SET_BINARY: fsconfig_command = 2;
7888pub const fsconfig_command_FSCONFIG_SET_PATH: fsconfig_command = 3;
7889pub const fsconfig_command_FSCONFIG_SET_PATH_EMPTY: fsconfig_command = 4;
7890pub const fsconfig_command_FSCONFIG_SET_FD: fsconfig_command = 5;
7891pub const fsconfig_command_FSCONFIG_CMD_CREATE: fsconfig_command = 6;
7892pub const fsconfig_command_FSCONFIG_CMD_RECONFIGURE: fsconfig_command = 7;
7893pub const fsconfig_command_FSCONFIG_CMD_CREATE_EXCL: fsconfig_command = 8;
7894pub type fsconfig_command = crate::types::c_uint;
7895#[repr(C)]
7896#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7897pub struct mount_attr {
7898    pub attr_set: __u64,
7899    pub attr_clr: __u64,
7900    pub propagation: __u64,
7901    pub userns_fd: __u64,
7902}
7903#[repr(C)]
7904#[derive(Debug)]
7905pub struct statmount {
7906    pub size: __u32,
7907    pub mnt_opts: __u32,
7908    pub mask: __u64,
7909    pub sb_dev_major: __u32,
7910    pub sb_dev_minor: __u32,
7911    pub sb_magic: __u64,
7912    pub sb_flags: __u32,
7913    pub fs_type: __u32,
7914    pub mnt_id: __u64,
7915    pub mnt_parent_id: __u64,
7916    pub mnt_id_old: __u32,
7917    pub mnt_parent_id_old: __u32,
7918    pub mnt_attr: __u64,
7919    pub mnt_propagation: __u64,
7920    pub mnt_peer_group: __u64,
7921    pub mnt_master: __u64,
7922    pub propagate_from: __u64,
7923    pub mnt_root: __u32,
7924    pub mnt_point: __u32,
7925    pub mnt_ns_id: __u64,
7926    pub __spare2: [__u64; 49usize],
7927    pub str_: __IncompleteArrayField<crate::types::c_char>,
7928}
7929impl Default for statmount {
7930    fn default() -> Self {
7931        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7932        unsafe {
7933            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7934            s.assume_init()
7935        }
7936    }
7937}
7938#[repr(C)]
7939#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7940pub struct mnt_id_req {
7941    pub size: __u32,
7942    pub spare: __u32,
7943    pub mnt_id: __u64,
7944    pub param: __u64,
7945    pub mnt_ns_id: __u64,
7946}
7947#[repr(C)]
7948#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7949pub struct file_clone_range {
7950    pub src_fd: __s64,
7951    pub src_offset: __u64,
7952    pub src_length: __u64,
7953    pub dest_offset: __u64,
7954}
7955#[repr(C)]
7956#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7957pub struct fstrim_range {
7958    pub start: __u64,
7959    pub len: __u64,
7960    pub minlen: __u64,
7961}
7962#[repr(C)]
7963#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7964pub struct fsuuid2 {
7965    pub len: __u8,
7966    pub uuid: [__u8; 16usize],
7967}
7968#[repr(C)]
7969#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7970pub struct fs_sysfs_path {
7971    pub len: __u8,
7972    pub name: [__u8; 128usize],
7973}
7974impl Default for fs_sysfs_path {
7975    fn default() -> Self {
7976        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7977        unsafe {
7978            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7979            s.assume_init()
7980        }
7981    }
7982}
7983#[repr(C)]
7984#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7985pub struct file_dedupe_range_info {
7986    pub dest_fd: __s64,
7987    pub dest_offset: __u64,
7988    pub bytes_deduped: __u64,
7989    pub status: __s32,
7990    pub reserved: __u32,
7991}
7992#[repr(C)]
7993#[derive(Debug, Default)]
7994pub struct file_dedupe_range {
7995    pub src_offset: __u64,
7996    pub src_length: __u64,
7997    pub dest_count: __u16,
7998    pub reserved1: __u16,
7999    pub reserved2: __u32,
8000    pub info: __IncompleteArrayField<file_dedupe_range_info>,
8001}
8002#[repr(C)]
8003#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8004pub struct files_stat_struct {
8005    pub nr_files: crate::types::c_ulong,
8006    pub nr_free_files: crate::types::c_ulong,
8007    pub max_files: crate::types::c_ulong,
8008}
8009#[repr(C)]
8010#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8011pub struct inodes_stat_t {
8012    pub nr_inodes: crate::types::c_long,
8013    pub nr_unused: crate::types::c_long,
8014    pub dummy: [crate::types::c_long; 5usize],
8015}
8016#[repr(C)]
8017#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8018pub struct fsxattr {
8019    pub fsx_xflags: __u32,
8020    pub fsx_extsize: __u32,
8021    pub fsx_nextents: __u32,
8022    pub fsx_projid: __u32,
8023    pub fsx_cowextsize: __u32,
8024    pub fsx_pad: [crate::types::c_uchar; 8usize],
8025}
8026pub type __kernel_rwf_t = crate::types::c_int;
8027#[repr(C)]
8028#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8029pub struct page_region {
8030    pub start: __u64,
8031    pub end: __u64,
8032    pub categories: __u64,
8033}
8034#[repr(C)]
8035#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8036pub struct pm_scan_arg {
8037    pub size: __u64,
8038    pub flags: __u64,
8039    pub start: __u64,
8040    pub end: __u64,
8041    pub walk_end: __u64,
8042    pub vec: __u64,
8043    pub vec_len: __u64,
8044    pub max_pages: __u64,
8045    pub category_inverted: __u64,
8046    pub category_mask: __u64,
8047    pub category_anyof_mask: __u64,
8048    pub return_mask: __u64,
8049}
8050pub const procmap_query_flags_PROCMAP_QUERY_VMA_READABLE: procmap_query_flags = 1;
8051pub const procmap_query_flags_PROCMAP_QUERY_VMA_WRITABLE: procmap_query_flags = 2;
8052pub const procmap_query_flags_PROCMAP_QUERY_VMA_EXECUTABLE: procmap_query_flags = 4;
8053pub const procmap_query_flags_PROCMAP_QUERY_VMA_SHARED: procmap_query_flags = 8;
8054pub const procmap_query_flags_PROCMAP_QUERY_COVERING_OR_NEXT_VMA: procmap_query_flags = 16;
8055pub const procmap_query_flags_PROCMAP_QUERY_FILE_BACKED_VMA: procmap_query_flags = 32;
8056pub type procmap_query_flags = crate::types::c_uint;
8057#[repr(C)]
8058#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8059pub struct procmap_query {
8060    pub size: __u64,
8061    pub query_flags: __u64,
8062    pub query_addr: __u64,
8063    pub vma_start: __u64,
8064    pub vma_end: __u64,
8065    pub vma_flags: __u64,
8066    pub vma_page_size: __u64,
8067    pub vma_offset: __u64,
8068    pub inode: __u64,
8069    pub dev_major: __u32,
8070    pub dev_minor: __u32,
8071    pub vma_name_size: __u32,
8072    pub build_id_size: __u32,
8073    pub vma_name_addr: __u64,
8074    pub build_id_addr: __u64,
8075}
8076pub type aio_context_t = __kernel_ulong_t;
8077pub const IOCB_CMD_PREAD: _bindgen_ty_1 = 0;
8078pub const IOCB_CMD_PWRITE: _bindgen_ty_1 = 1;
8079pub const IOCB_CMD_FSYNC: _bindgen_ty_1 = 2;
8080pub const IOCB_CMD_FDSYNC: _bindgen_ty_1 = 3;
8081pub const IOCB_CMD_POLL: _bindgen_ty_1 = 5;
8082pub const IOCB_CMD_NOOP: _bindgen_ty_1 = 6;
8083pub const IOCB_CMD_PREADV: _bindgen_ty_1 = 7;
8084pub const IOCB_CMD_PWRITEV: _bindgen_ty_1 = 8;
8085pub type _bindgen_ty_1 = crate::types::c_uint;
8086#[repr(C)]
8087#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8088pub struct io_event {
8089    pub data: __u64,
8090    pub obj: __u64,
8091    pub res: __s64,
8092    pub res2: __s64,
8093}
8094#[repr(C)]
8095#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8096pub struct iocb {
8097    pub aio_data: __u64,
8098    pub aio_key: __u32,
8099    pub aio_rw_flags: __kernel_rwf_t,
8100    pub aio_lio_opcode: __u16,
8101    pub aio_reqprio: __s16,
8102    pub aio_fildes: __u32,
8103    pub aio_buf: __u64,
8104    pub aio_nbytes: __u64,
8105    pub aio_offset: __s64,
8106    pub aio_reserved2: __u64,
8107    pub aio_flags: __u32,
8108    pub aio_resfd: __u32,
8109}
8110pub const BINDER_TYPE_BINDER: _bindgen_ty_2 = 1935813253;
8111pub const BINDER_TYPE_WEAK_BINDER: _bindgen_ty_2 = 2002922117;
8112pub const BINDER_TYPE_HANDLE: _bindgen_ty_2 = 1936206469;
8113pub const BINDER_TYPE_WEAK_HANDLE: _bindgen_ty_2 = 2003315333;
8114pub const BINDER_TYPE_FD: _bindgen_ty_2 = 1717840517;
8115pub const BINDER_TYPE_FDA: _bindgen_ty_2 = 1717854597;
8116pub const BINDER_TYPE_PTR: _bindgen_ty_2 = 1886661253;
8117pub type _bindgen_ty_2 = crate::types::c_uint;
8118pub const flat_binder_object_shifts_FLAT_BINDER_FLAG_SCHED_POLICY_SHIFT: flat_binder_object_shifts =
8119    9;
8120pub type flat_binder_object_shifts = crate::types::c_uint;
8121pub const flat_binder_object_flags_FLAT_BINDER_FLAG_PRIORITY_MASK: flat_binder_object_flags = 255;
8122pub const flat_binder_object_flags_FLAT_BINDER_FLAG_ACCEPTS_FDS: flat_binder_object_flags = 256;
8123pub const flat_binder_object_flags_FLAT_BINDER_FLAG_SCHED_POLICY_MASK: flat_binder_object_flags =
8124    1536;
8125pub const flat_binder_object_flags_FLAT_BINDER_FLAG_INHERIT_RT: flat_binder_object_flags = 2048;
8126pub const flat_binder_object_flags_FLAT_BINDER_FLAG_TXN_SECURITY_CTX: flat_binder_object_flags =
8127    4096;
8128pub type flat_binder_object_flags = crate::types::c_uint;
8129pub type binder_size_t = __u64;
8130pub type binder_uintptr_t = __u64;
8131#[repr(C)]
8132#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8133pub struct binder_object_header {
8134    pub type_: __u32,
8135}
8136#[repr(C)]
8137#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8138pub struct flat_binder_object {
8139    pub hdr: binder_object_header,
8140    pub flags: __u32,
8141    pub __bindgen_anon_1: flat_binder_object__bindgen_ty_1,
8142    pub cookie: binder_uintptr_t,
8143}
8144#[repr(C)]
8145#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8146pub union flat_binder_object__bindgen_ty_1 {
8147    pub binder: binder_uintptr_t,
8148    pub handle: __u32,
8149}
8150impl Default for flat_binder_object__bindgen_ty_1 {
8151    fn default() -> Self {
8152        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8153        unsafe {
8154            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8155            s.assume_init()
8156        }
8157    }
8158}
8159impl Default for flat_binder_object {
8160    fn default() -> Self {
8161        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8162        unsafe {
8163            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8164            s.assume_init()
8165        }
8166    }
8167}
8168#[repr(C)]
8169#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8170pub struct binder_fd_object {
8171    pub hdr: binder_object_header,
8172    pub pad_flags: __u32,
8173    pub __bindgen_anon_1: binder_fd_object__bindgen_ty_1,
8174    pub cookie: binder_uintptr_t,
8175}
8176#[repr(C)]
8177#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8178pub union binder_fd_object__bindgen_ty_1 {
8179    pub pad_binder: binder_uintptr_t,
8180    pub fd: __u32,
8181}
8182impl Default for binder_fd_object__bindgen_ty_1 {
8183    fn default() -> Self {
8184        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8185        unsafe {
8186            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8187            s.assume_init()
8188        }
8189    }
8190}
8191impl Default for binder_fd_object {
8192    fn default() -> Self {
8193        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8194        unsafe {
8195            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8196            s.assume_init()
8197        }
8198    }
8199}
8200#[repr(C)]
8201#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8202pub struct binder_buffer_object {
8203    pub hdr: binder_object_header,
8204    pub flags: __u32,
8205    pub buffer: binder_uintptr_t,
8206    pub length: binder_size_t,
8207    pub parent: binder_size_t,
8208    pub parent_offset: binder_size_t,
8209}
8210pub const BINDER_BUFFER_FLAG_HAS_PARENT: _bindgen_ty_3 = 1;
8211pub type _bindgen_ty_3 = crate::types::c_uint;
8212#[repr(C)]
8213#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8214pub struct binder_fd_array_object {
8215    pub hdr: binder_object_header,
8216    pub pad: __u32,
8217    pub num_fds: binder_size_t,
8218    pub parent: binder_size_t,
8219    pub parent_offset: binder_size_t,
8220}
8221#[repr(C)]
8222#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8223pub struct binder_write_read {
8224    pub write_size: binder_size_t,
8225    pub write_consumed: binder_size_t,
8226    pub write_buffer: binder_uintptr_t,
8227    pub read_size: binder_size_t,
8228    pub read_consumed: binder_size_t,
8229    pub read_buffer: binder_uintptr_t,
8230}
8231#[repr(C)]
8232#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8233pub struct binder_version {
8234    pub protocol_version: __s32,
8235}
8236#[repr(C)]
8237#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8238pub struct binder_node_debug_info {
8239    pub ptr: binder_uintptr_t,
8240    pub cookie: binder_uintptr_t,
8241    pub has_strong_ref: __u32,
8242    pub has_weak_ref: __u32,
8243}
8244#[repr(C)]
8245#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8246pub struct binder_node_info_for_ref {
8247    pub handle: __u32,
8248    pub strong_count: __u32,
8249    pub weak_count: __u32,
8250    pub reserved1: __u32,
8251    pub reserved2: __u32,
8252    pub reserved3: __u32,
8253}
8254#[repr(C)]
8255#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8256pub struct binder_freeze_info {
8257    pub pid: __u32,
8258    pub enable: __u32,
8259    pub timeout_ms: __u32,
8260}
8261#[repr(C)]
8262#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8263pub struct binder_frozen_status_info {
8264    pub pid: __u32,
8265    pub sync_recv: __u32,
8266    pub async_recv: __u32,
8267}
8268#[repr(C)]
8269#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8270pub struct binder_frozen_state_info {
8271    pub cookie: binder_uintptr_t,
8272    pub is_frozen: __u32,
8273    pub reserved: __u32,
8274}
8275#[repr(C)]
8276#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8277pub struct binder_extended_error {
8278    pub id: __u32,
8279    pub command: __u32,
8280    pub param: __s32,
8281}
8282pub const BINDER_WRITE_READ: _bindgen_ty_4 = 3224396289;
8283pub const BINDER_SET_IDLE_TIMEOUT: _bindgen_ty_4 = 1074291203;
8284pub const BINDER_SET_MAX_THREADS: _bindgen_ty_4 = 1074029061;
8285pub const BINDER_SET_IDLE_PRIORITY: _bindgen_ty_4 = 1074029062;
8286pub const BINDER_SET_CONTEXT_MGR: _bindgen_ty_4 = 1074029063;
8287pub const BINDER_THREAD_EXIT: _bindgen_ty_4 = 1074029064;
8288pub const BINDER_VERSION: _bindgen_ty_4 = 3221512713;
8289pub const BINDER_GET_NODE_DEBUG_INFO: _bindgen_ty_4 = 3222823435;
8290pub const BINDER_GET_NODE_INFO_FOR_REF: _bindgen_ty_4 = 3222823436;
8291pub const BINDER_SET_CONTEXT_MGR_EXT: _bindgen_ty_4 = 1075339789;
8292pub const BINDER_FREEZE: _bindgen_ty_4 = 1074553358;
8293pub const BINDER_GET_FROZEN_INFO: _bindgen_ty_4 = 3222037007;
8294pub const BINDER_ENABLE_ONEWAY_SPAM_DETECTION: _bindgen_ty_4 = 1074029072;
8295pub const BINDER_GET_EXTENDED_ERROR: _bindgen_ty_4 = 3222037009;
8296pub type _bindgen_ty_4 = crate::types::c_uint;
8297pub const transaction_flags_TF_ONE_WAY: transaction_flags = 1;
8298pub const transaction_flags_TF_ROOT_OBJECT: transaction_flags = 4;
8299pub const transaction_flags_TF_STATUS_CODE: transaction_flags = 8;
8300pub const transaction_flags_TF_ACCEPT_FDS: transaction_flags = 16;
8301pub const transaction_flags_TF_CLEAR_BUF: transaction_flags = 32;
8302pub const transaction_flags_TF_UPDATE_TXN: transaction_flags = 64;
8303pub type transaction_flags = crate::types::c_uint;
8304#[repr(C)]
8305#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8306pub struct binder_transaction_data {
8307    pub target: binder_transaction_data__bindgen_ty_1,
8308    pub cookie: binder_uintptr_t,
8309    pub code: __u32,
8310    pub flags: __u32,
8311    pub sender_pid: __kernel_pid_t,
8312    pub sender_euid: __kernel_uid32_t,
8313    pub data_size: binder_size_t,
8314    pub offsets_size: binder_size_t,
8315    pub data: binder_transaction_data__bindgen_ty_2,
8316}
8317#[repr(C)]
8318#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8319pub union binder_transaction_data__bindgen_ty_1 {
8320    pub handle: __u32,
8321    pub ptr: binder_uintptr_t,
8322}
8323impl Default for binder_transaction_data__bindgen_ty_1 {
8324    fn default() -> Self {
8325        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8326        unsafe {
8327            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8328            s.assume_init()
8329        }
8330    }
8331}
8332#[repr(C)]
8333#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8334pub union binder_transaction_data__bindgen_ty_2 {
8335    pub ptr: binder_transaction_data__bindgen_ty_2__bindgen_ty_1,
8336    pub buf: [__u8; 8usize],
8337}
8338#[repr(C)]
8339#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8340pub struct binder_transaction_data__bindgen_ty_2__bindgen_ty_1 {
8341    pub buffer: binder_uintptr_t,
8342    pub offsets: binder_uintptr_t,
8343}
8344impl Default for binder_transaction_data__bindgen_ty_2 {
8345    fn default() -> Self {
8346        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8347        unsafe {
8348            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8349            s.assume_init()
8350        }
8351    }
8352}
8353impl Default for binder_transaction_data {
8354    fn default() -> Self {
8355        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8356        unsafe {
8357            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8358            s.assume_init()
8359        }
8360    }
8361}
8362#[repr(C)]
8363#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8364pub struct binder_transaction_data_secctx {
8365    pub transaction_data: binder_transaction_data,
8366    pub secctx: binder_uintptr_t,
8367}
8368impl Default for binder_transaction_data_secctx {
8369    fn default() -> Self {
8370        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8371        unsafe {
8372            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8373            s.assume_init()
8374        }
8375    }
8376}
8377#[repr(C)]
8378#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8379pub struct binder_transaction_data_sg {
8380    pub transaction_data: binder_transaction_data,
8381    pub buffers_size: binder_size_t,
8382}
8383impl Default for binder_transaction_data_sg {
8384    fn default() -> Self {
8385        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8386        unsafe {
8387            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8388            s.assume_init()
8389        }
8390    }
8391}
8392#[repr(C)]
8393#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8394pub struct binder_ptr_cookie {
8395    pub ptr: binder_uintptr_t,
8396    pub cookie: binder_uintptr_t,
8397}
8398#[repr(C, packed)]
8399#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8400pub struct binder_handle_cookie {
8401    pub handle: __u32,
8402    pub cookie: binder_uintptr_t,
8403}
8404#[repr(C)]
8405#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8406pub struct binder_pri_desc {
8407    pub priority: __s32,
8408    pub desc: __u32,
8409}
8410#[repr(C)]
8411#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8412pub struct binder_pri_ptr_cookie {
8413    pub priority: __s32,
8414    pub __bindgen_padding_0: [u8; 4usize],
8415    pub ptr: binder_uintptr_t,
8416    pub cookie: binder_uintptr_t,
8417}
8418pub const binder_driver_return_protocol_BR_ERROR: binder_driver_return_protocol = 2147774976;
8419pub const binder_driver_return_protocol_BR_OK: binder_driver_return_protocol = 29185;
8420pub const binder_driver_return_protocol_BR_TRANSACTION_SEC_CTX: binder_driver_return_protocol =
8421    2152231426;
8422pub const binder_driver_return_protocol_BR_TRANSACTION: binder_driver_return_protocol = 2151707138;
8423pub const binder_driver_return_protocol_BR_REPLY: binder_driver_return_protocol = 2151707139;
8424pub const binder_driver_return_protocol_BR_ACQUIRE_RESULT: binder_driver_return_protocol =
8425    2147774980;
8426pub const binder_driver_return_protocol_BR_DEAD_REPLY: binder_driver_return_protocol = 29189;
8427pub const binder_driver_return_protocol_BR_TRANSACTION_COMPLETE: binder_driver_return_protocol =
8428    29190;
8429pub const binder_driver_return_protocol_BR_INCREFS: binder_driver_return_protocol = 2148561415;
8430pub const binder_driver_return_protocol_BR_ACQUIRE: binder_driver_return_protocol = 2148561416;
8431pub const binder_driver_return_protocol_BR_RELEASE: binder_driver_return_protocol = 2148561417;
8432pub const binder_driver_return_protocol_BR_DECREFS: binder_driver_return_protocol = 2148561418;
8433pub const binder_driver_return_protocol_BR_ATTEMPT_ACQUIRE: binder_driver_return_protocol =
8434    2149085707;
8435pub const binder_driver_return_protocol_BR_NOOP: binder_driver_return_protocol = 29196;
8436pub const binder_driver_return_protocol_BR_SPAWN_LOOPER: binder_driver_return_protocol = 29197;
8437pub const binder_driver_return_protocol_BR_FINISHED: binder_driver_return_protocol = 29198;
8438pub const binder_driver_return_protocol_BR_DEAD_BINDER: binder_driver_return_protocol = 2148037135;
8439pub const binder_driver_return_protocol_BR_CLEAR_DEATH_NOTIFICATION_DONE:
8440    binder_driver_return_protocol = 2148037136;
8441pub const binder_driver_return_protocol_BR_FAILED_REPLY: binder_driver_return_protocol = 29201;
8442pub const binder_driver_return_protocol_BR_FROZEN_REPLY: binder_driver_return_protocol = 29202;
8443pub const binder_driver_return_protocol_BR_ONEWAY_SPAM_SUSPECT: binder_driver_return_protocol =
8444    29203;
8445pub const binder_driver_return_protocol_BR_TRANSACTION_PENDING_FROZEN:
8446    binder_driver_return_protocol = 29204;
8447pub const binder_driver_return_protocol_BR_FROZEN_BINDER: binder_driver_return_protocol =
8448    2148561429;
8449pub const binder_driver_return_protocol_BR_CLEAR_FREEZE_NOTIFICATION_DONE:
8450    binder_driver_return_protocol = 2148037142;
8451pub type binder_driver_return_protocol = crate::types::c_uint;
8452pub const binder_driver_command_protocol_BC_TRANSACTION: binder_driver_command_protocol =
8453    1077961472;
8454pub const binder_driver_command_protocol_BC_REPLY: binder_driver_command_protocol = 1077961473;
8455pub const binder_driver_command_protocol_BC_ACQUIRE_RESULT: binder_driver_command_protocol =
8456    1074029314;
8457pub const binder_driver_command_protocol_BC_FREE_BUFFER: binder_driver_command_protocol =
8458    1074291459;
8459pub const binder_driver_command_protocol_BC_INCREFS: binder_driver_command_protocol = 1074029316;
8460pub const binder_driver_command_protocol_BC_ACQUIRE: binder_driver_command_protocol = 1074029317;
8461pub const binder_driver_command_protocol_BC_RELEASE: binder_driver_command_protocol = 1074029318;
8462pub const binder_driver_command_protocol_BC_DECREFS: binder_driver_command_protocol = 1074029319;
8463pub const binder_driver_command_protocol_BC_INCREFS_DONE: binder_driver_command_protocol =
8464    1074815752;
8465pub const binder_driver_command_protocol_BC_ACQUIRE_DONE: binder_driver_command_protocol =
8466    1074815753;
8467pub const binder_driver_command_protocol_BC_ATTEMPT_ACQUIRE: binder_driver_command_protocol =
8468    1074291466;
8469pub const binder_driver_command_protocol_BC_REGISTER_LOOPER: binder_driver_command_protocol = 25355;
8470pub const binder_driver_command_protocol_BC_ENTER_LOOPER: binder_driver_command_protocol = 25356;
8471pub const binder_driver_command_protocol_BC_EXIT_LOOPER: binder_driver_command_protocol = 25357;
8472pub const binder_driver_command_protocol_BC_REQUEST_DEATH_NOTIFICATION:
8473    binder_driver_command_protocol = 1074553614;
8474pub const binder_driver_command_protocol_BC_CLEAR_DEATH_NOTIFICATION:
8475    binder_driver_command_protocol = 1074553615;
8476pub const binder_driver_command_protocol_BC_DEAD_BINDER_DONE: binder_driver_command_protocol =
8477    1074291472;
8478pub const binder_driver_command_protocol_BC_TRANSACTION_SG: binder_driver_command_protocol =
8479    1078485777;
8480pub const binder_driver_command_protocol_BC_REPLY_SG: binder_driver_command_protocol = 1078485778;
8481pub const binder_driver_command_protocol_BC_REQUEST_FREEZE_NOTIFICATION:
8482    binder_driver_command_protocol = 1074553619;
8483pub const binder_driver_command_protocol_BC_CLEAR_FREEZE_NOTIFICATION:
8484    binder_driver_command_protocol = 1074553620;
8485pub const binder_driver_command_protocol_BC_FREEZE_NOTIFICATION_DONE:
8486    binder_driver_command_protocol = 1074291477;
8487pub type binder_driver_command_protocol = crate::types::c_uint;
8488#[repr(C)]
8489#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8490pub struct binderfs_device {
8491    pub name: [crate::types::c_char; 256usize],
8492    pub major: __u32,
8493    pub minor: __u32,
8494}
8495impl Default for binderfs_device {
8496    fn default() -> Self {
8497        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8498        unsafe {
8499            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8500            s.assume_init()
8501        }
8502    }
8503}
8504#[repr(C)]
8505#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8506pub struct ashmem_pin {
8507    pub offset: __u32,
8508    pub len: __u32,
8509}
8510pub const Audit_equal: _bindgen_ty_5 = 0;
8511pub const Audit_not_equal: _bindgen_ty_5 = 1;
8512pub const Audit_bitmask: _bindgen_ty_5 = 2;
8513pub const Audit_bittest: _bindgen_ty_5 = 3;
8514pub const Audit_lt: _bindgen_ty_5 = 4;
8515pub const Audit_gt: _bindgen_ty_5 = 5;
8516pub const Audit_le: _bindgen_ty_5 = 6;
8517pub const Audit_ge: _bindgen_ty_5 = 7;
8518pub const Audit_bad: _bindgen_ty_5 = 8;
8519pub type _bindgen_ty_5 = crate::types::c_uint;
8520pub const audit_nlgrps_AUDIT_NLGRP_NONE: audit_nlgrps = 0;
8521pub const audit_nlgrps_AUDIT_NLGRP_READLOG: audit_nlgrps = 1;
8522pub const audit_nlgrps___AUDIT_NLGRP_MAX: audit_nlgrps = 2;
8523pub type audit_nlgrps = crate::types::c_uint;
8524#[repr(C)]
8525#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
8526pub struct audit_status {
8527    pub mask: __u32,
8528    pub enabled: __u32,
8529    pub failure: __u32,
8530    pub pid: __u32,
8531    pub rate_limit: __u32,
8532    pub backlog_limit: __u32,
8533    pub lost: __u32,
8534    pub backlog: __u32,
8535    pub __bindgen_anon_1: audit_status__bindgen_ty_1,
8536    pub backlog_wait_time: __u32,
8537    pub backlog_wait_time_actual: __u32,
8538}
8539#[repr(C)]
8540#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
8541pub union audit_status__bindgen_ty_1 {
8542    pub version: __u32,
8543    pub feature_bitmap: __u32,
8544}
8545impl Default for audit_status__bindgen_ty_1 {
8546    fn default() -> Self {
8547        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8548        unsafe {
8549            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8550            s.assume_init()
8551        }
8552    }
8553}
8554impl Default for audit_status {
8555    fn default() -> Self {
8556        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8557        unsafe {
8558            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8559            s.assume_init()
8560        }
8561    }
8562}
8563#[repr(C)]
8564#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8565pub struct audit_features {
8566    pub vers: __u32,
8567    pub mask: __u32,
8568    pub features: __u32,
8569    pub lock: __u32,
8570}
8571#[repr(C)]
8572#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8573pub struct audit_tty_status {
8574    pub enabled: __u32,
8575    pub log_passwd: __u32,
8576}
8577#[repr(C)]
8578#[derive(Debug)]
8579pub struct audit_rule_data {
8580    pub flags: __u32,
8581    pub action: __u32,
8582    pub field_count: __u32,
8583    pub mask: [__u32; 64usize],
8584    pub fields: [__u32; 64usize],
8585    pub values: [__u32; 64usize],
8586    pub fieldflags: [__u32; 64usize],
8587    pub buflen: __u32,
8588    pub buf: __IncompleteArrayField<crate::types::c_char>,
8589}
8590impl Default for audit_rule_data {
8591    fn default() -> Self {
8592        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8593        unsafe {
8594            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8595            s.assume_init()
8596        }
8597    }
8598}
8599#[repr(C)]
8600#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8601pub struct __user_cap_header_struct {
8602    pub version: __u32,
8603    pub pid: crate::types::c_int,
8604}
8605pub type cap_user_header_t = uref<__user_cap_header_struct>;
8606#[repr(C)]
8607#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8608pub struct __user_cap_data_struct {
8609    pub effective: __u32,
8610    pub permitted: __u32,
8611    pub inheritable: __u32,
8612}
8613pub type cap_user_data_t = uref<__user_cap_data_struct>;
8614#[repr(C)]
8615#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8616pub struct vfs_cap_data {
8617    pub magic_etc: __le32,
8618    pub data: [vfs_cap_data__bindgen_ty_1; 2usize],
8619}
8620#[repr(C)]
8621#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8622pub struct vfs_cap_data__bindgen_ty_1 {
8623    pub permitted: __le32,
8624    pub inheritable: __le32,
8625}
8626#[repr(C)]
8627#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8628pub struct vfs_ns_cap_data {
8629    pub magic_etc: __le32,
8630    pub data: [vfs_ns_cap_data__bindgen_ty_1; 2usize],
8631    pub rootid: __le32,
8632}
8633#[repr(C)]
8634#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8635pub struct vfs_ns_cap_data__bindgen_ty_1 {
8636    pub permitted: __le32,
8637    pub inheritable: __le32,
8638}
8639#[repr(C)]
8640#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8641pub struct dm_ioctl {
8642    pub version: [__u32; 3usize],
8643    pub data_size: __u32,
8644    pub data_start: __u32,
8645    pub target_count: __u32,
8646    pub open_count: __s32,
8647    pub flags: __u32,
8648    pub event_nr: __u32,
8649    pub padding: __u32,
8650    pub dev: __u64,
8651    pub name: [crate::types::c_char; 128usize],
8652    pub uuid: [crate::types::c_char; 129usize],
8653    pub data: [crate::types::c_char; 7usize],
8654}
8655impl Default for dm_ioctl {
8656    fn default() -> Self {
8657        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8658        unsafe {
8659            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8660            s.assume_init()
8661        }
8662    }
8663}
8664#[repr(C)]
8665#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8666pub struct dm_target_spec {
8667    pub sector_start: __u64,
8668    pub length: __u64,
8669    pub status: __s32,
8670    pub next: __u32,
8671    pub target_type: [crate::types::c_char; 16usize],
8672}
8673#[repr(C)]
8674#[derive(Debug, Default)]
8675pub struct dm_target_deps {
8676    pub count: __u32,
8677    pub padding: __u32,
8678    pub dev: __IncompleteArrayField<__u64>,
8679}
8680#[repr(C)]
8681#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8682pub struct dm_name_list {
8683    pub dev: __u64,
8684    pub next: __u32,
8685    pub name: __IncompleteArrayField<crate::types::c_char>,
8686    pub __bindgen_padding_0: [u8; 4usize],
8687}
8688#[repr(C)]
8689#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8690pub struct dm_target_versions {
8691    pub next: __u32,
8692    pub version: [__u32; 3usize],
8693    pub name: __IncompleteArrayField<crate::types::c_char>,
8694}
8695#[repr(C)]
8696#[derive(Debug, Default)]
8697pub struct dm_target_msg {
8698    pub sector: __u64,
8699    pub message: __IncompleteArrayField<crate::types::c_char>,
8700}
8701pub const DM_VERSION_CMD: _bindgen_ty_6 = 0;
8702pub const DM_REMOVE_ALL_CMD: _bindgen_ty_6 = 1;
8703pub const DM_LIST_DEVICES_CMD: _bindgen_ty_6 = 2;
8704pub const DM_DEV_CREATE_CMD: _bindgen_ty_6 = 3;
8705pub const DM_DEV_REMOVE_CMD: _bindgen_ty_6 = 4;
8706pub const DM_DEV_RENAME_CMD: _bindgen_ty_6 = 5;
8707pub const DM_DEV_SUSPEND_CMD: _bindgen_ty_6 = 6;
8708pub const DM_DEV_STATUS_CMD: _bindgen_ty_6 = 7;
8709pub const DM_DEV_WAIT_CMD: _bindgen_ty_6 = 8;
8710pub const DM_TABLE_LOAD_CMD: _bindgen_ty_6 = 9;
8711pub const DM_TABLE_CLEAR_CMD: _bindgen_ty_6 = 10;
8712pub const DM_TABLE_DEPS_CMD: _bindgen_ty_6 = 11;
8713pub const DM_TABLE_STATUS_CMD: _bindgen_ty_6 = 12;
8714pub const DM_LIST_VERSIONS_CMD: _bindgen_ty_6 = 13;
8715pub const DM_TARGET_MSG_CMD: _bindgen_ty_6 = 14;
8716pub const DM_DEV_SET_GEOMETRY_CMD: _bindgen_ty_6 = 15;
8717pub const DM_DEV_ARM_POLL_CMD: _bindgen_ty_6 = 16;
8718pub const DM_GET_TARGET_VERSION_CMD: _bindgen_ty_6 = 17;
8719pub type _bindgen_ty_6 = crate::types::c_uint;
8720#[repr(C)]
8721#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8722pub struct dma_buf_sync {
8723    pub flags: __u64,
8724}
8725#[repr(C)]
8726#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8727pub struct dma_buf_export_sync_file {
8728    pub flags: __u32,
8729    pub fd: __s32,
8730}
8731#[repr(C)]
8732#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8733pub struct dma_buf_import_sync_file {
8734    pub flags: __u32,
8735    pub fd: __s32,
8736}
8737#[repr(C)]
8738#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8739pub struct dma_heap_allocation_data {
8740    pub len: __u64,
8741    pub fd: __u32,
8742    pub fd_flags: __u32,
8743    pub heap_flags: __u64,
8744}
8745pub type Elf32_Addr = __u32;
8746pub type Elf32_Half = __u16;
8747pub type Elf32_Off = __u32;
8748pub type Elf32_Sword = __s32;
8749pub type Elf32_Word = __u32;
8750pub type Elf64_Addr = __u64;
8751pub type Elf64_Half = __u16;
8752pub type Elf64_SHalf = __s16;
8753pub type Elf64_Off = __u64;
8754pub type Elf64_Sword = __s32;
8755pub type Elf64_Word = __u32;
8756pub type Elf64_Xword = __u64;
8757pub type Elf64_Sxword = __s64;
8758#[repr(C)]
8759#[derive(Copy, Clone)]
8760pub struct Elf32_Dyn {
8761    pub d_tag: Elf32_Sword,
8762    pub d_un: Elf32_Dyn__bindgen_ty_1,
8763}
8764#[repr(C)]
8765#[derive(Copy, Clone)]
8766pub union Elf32_Dyn__bindgen_ty_1 {
8767    pub d_val: Elf32_Sword,
8768    pub d_ptr: Elf32_Addr,
8769}
8770impl Default for Elf32_Dyn__bindgen_ty_1 {
8771    fn default() -> Self {
8772        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8773        unsafe {
8774            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8775            s.assume_init()
8776        }
8777    }
8778}
8779impl Default for Elf32_Dyn {
8780    fn default() -> Self {
8781        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8782        unsafe {
8783            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8784            s.assume_init()
8785        }
8786    }
8787}
8788#[repr(C)]
8789#[derive(Copy, Clone)]
8790pub struct Elf64_Dyn {
8791    pub d_tag: Elf64_Sxword,
8792    pub d_un: Elf64_Dyn__bindgen_ty_1,
8793}
8794#[repr(C)]
8795#[derive(Copy, Clone)]
8796pub union Elf64_Dyn__bindgen_ty_1 {
8797    pub d_val: Elf64_Xword,
8798    pub d_ptr: Elf64_Addr,
8799}
8800impl Default for Elf64_Dyn__bindgen_ty_1 {
8801    fn default() -> Self {
8802        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8803        unsafe {
8804            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8805            s.assume_init()
8806        }
8807    }
8808}
8809impl Default for Elf64_Dyn {
8810    fn default() -> Self {
8811        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8812        unsafe {
8813            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8814            s.assume_init()
8815        }
8816    }
8817}
8818#[repr(C)]
8819#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8820pub struct elf32_rel {
8821    pub r_offset: Elf32_Addr,
8822    pub r_info: Elf32_Word,
8823}
8824pub type Elf32_Rel = elf32_rel;
8825#[repr(C)]
8826#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8827pub struct elf64_rel {
8828    pub r_offset: Elf64_Addr,
8829    pub r_info: Elf64_Xword,
8830}
8831pub type Elf64_Rel = elf64_rel;
8832#[repr(C)]
8833#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8834pub struct elf32_rela {
8835    pub r_offset: Elf32_Addr,
8836    pub r_info: Elf32_Word,
8837    pub r_addend: Elf32_Sword,
8838}
8839pub type Elf32_Rela = elf32_rela;
8840#[repr(C)]
8841#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8842pub struct elf64_rela {
8843    pub r_offset: Elf64_Addr,
8844    pub r_info: Elf64_Xword,
8845    pub r_addend: Elf64_Sxword,
8846}
8847pub type Elf64_Rela = elf64_rela;
8848#[repr(C)]
8849#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8850pub struct elf32_sym {
8851    pub st_name: Elf32_Word,
8852    pub st_value: Elf32_Addr,
8853    pub st_size: Elf32_Word,
8854    pub st_info: crate::types::c_uchar,
8855    pub st_other: crate::types::c_uchar,
8856    pub st_shndx: Elf32_Half,
8857}
8858pub type Elf32_Sym = elf32_sym;
8859#[repr(C)]
8860#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8861pub struct elf64_sym {
8862    pub st_name: Elf64_Word,
8863    pub st_info: crate::types::c_uchar,
8864    pub st_other: crate::types::c_uchar,
8865    pub st_shndx: Elf64_Half,
8866    pub st_value: Elf64_Addr,
8867    pub st_size: Elf64_Xword,
8868}
8869pub type Elf64_Sym = elf64_sym;
8870#[repr(C)]
8871#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8872pub struct elf32_hdr {
8873    pub e_ident: [crate::types::c_uchar; 16usize],
8874    pub e_type: Elf32_Half,
8875    pub e_machine: Elf32_Half,
8876    pub e_version: Elf32_Word,
8877    pub e_entry: Elf32_Addr,
8878    pub e_phoff: Elf32_Off,
8879    pub e_shoff: Elf32_Off,
8880    pub e_flags: Elf32_Word,
8881    pub e_ehsize: Elf32_Half,
8882    pub e_phentsize: Elf32_Half,
8883    pub e_phnum: Elf32_Half,
8884    pub e_shentsize: Elf32_Half,
8885    pub e_shnum: Elf32_Half,
8886    pub e_shstrndx: Elf32_Half,
8887}
8888pub type Elf32_Ehdr = elf32_hdr;
8889#[repr(C)]
8890#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8891pub struct elf64_hdr {
8892    pub e_ident: [crate::types::c_uchar; 16usize],
8893    pub e_type: Elf64_Half,
8894    pub e_machine: Elf64_Half,
8895    pub e_version: Elf64_Word,
8896    pub e_entry: Elf64_Addr,
8897    pub e_phoff: Elf64_Off,
8898    pub e_shoff: Elf64_Off,
8899    pub e_flags: Elf64_Word,
8900    pub e_ehsize: Elf64_Half,
8901    pub e_phentsize: Elf64_Half,
8902    pub e_phnum: Elf64_Half,
8903    pub e_shentsize: Elf64_Half,
8904    pub e_shnum: Elf64_Half,
8905    pub e_shstrndx: Elf64_Half,
8906}
8907pub type Elf64_Ehdr = elf64_hdr;
8908#[repr(C)]
8909#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8910pub struct elf32_phdr {
8911    pub p_type: Elf32_Word,
8912    pub p_offset: Elf32_Off,
8913    pub p_vaddr: Elf32_Addr,
8914    pub p_paddr: Elf32_Addr,
8915    pub p_filesz: Elf32_Word,
8916    pub p_memsz: Elf32_Word,
8917    pub p_flags: Elf32_Word,
8918    pub p_align: Elf32_Word,
8919}
8920pub type Elf32_Phdr = elf32_phdr;
8921#[repr(C)]
8922#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8923pub struct elf64_phdr {
8924    pub p_type: Elf64_Word,
8925    pub p_flags: Elf64_Word,
8926    pub p_offset: Elf64_Off,
8927    pub p_vaddr: Elf64_Addr,
8928    pub p_paddr: Elf64_Addr,
8929    pub p_filesz: Elf64_Xword,
8930    pub p_memsz: Elf64_Xword,
8931    pub p_align: Elf64_Xword,
8932}
8933pub type Elf64_Phdr = elf64_phdr;
8934#[repr(C)]
8935#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8936pub struct elf32_shdr {
8937    pub sh_name: Elf32_Word,
8938    pub sh_type: Elf32_Word,
8939    pub sh_flags: Elf32_Word,
8940    pub sh_addr: Elf32_Addr,
8941    pub sh_offset: Elf32_Off,
8942    pub sh_size: Elf32_Word,
8943    pub sh_link: Elf32_Word,
8944    pub sh_info: Elf32_Word,
8945    pub sh_addralign: Elf32_Word,
8946    pub sh_entsize: Elf32_Word,
8947}
8948pub type Elf32_Shdr = elf32_shdr;
8949#[repr(C)]
8950#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8951pub struct elf64_shdr {
8952    pub sh_name: Elf64_Word,
8953    pub sh_type: Elf64_Word,
8954    pub sh_flags: Elf64_Xword,
8955    pub sh_addr: Elf64_Addr,
8956    pub sh_offset: Elf64_Off,
8957    pub sh_size: Elf64_Xword,
8958    pub sh_link: Elf64_Word,
8959    pub sh_info: Elf64_Word,
8960    pub sh_addralign: Elf64_Xword,
8961    pub sh_entsize: Elf64_Xword,
8962}
8963pub type Elf64_Shdr = elf64_shdr;
8964#[repr(C)]
8965#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8966pub struct elf32_note {
8967    pub n_namesz: Elf32_Word,
8968    pub n_descsz: Elf32_Word,
8969    pub n_type: Elf32_Word,
8970}
8971pub type Elf32_Nhdr = elf32_note;
8972#[repr(C)]
8973#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8974pub struct elf64_note {
8975    pub n_namesz: Elf64_Word,
8976    pub n_descsz: Elf64_Word,
8977    pub n_type: Elf64_Word,
8978}
8979pub type Elf64_Nhdr = elf64_note;
8980#[repr(C, packed)]
8981#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8982pub struct epoll_event {
8983    pub events: u32,
8984    pub data: u64,
8985}
8986#[repr(C)]
8987#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8988pub struct flock {
8989    pub l_type: crate::types::c_short,
8990    pub l_whence: crate::types::c_short,
8991    pub __bindgen_padding_0: [u8; 4usize],
8992    pub l_start: __kernel_off_t,
8993    pub l_len: __kernel_off_t,
8994    pub l_pid: pid_t,
8995    pub __bindgen_padding_1: [u8; 4usize],
8996}
8997pub type flock64 = flock;
8998#[repr(C)]
8999#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9000pub struct f_owner_ex {
9001    pub type_: crate::types::c_int,
9002    pub pid: __kernel_pid_t,
9003}
9004#[repr(C)]
9005#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9006pub struct open_how {
9007    pub flags: __u64,
9008    pub mode: __u64,
9009    pub resolve: __u64,
9010}
9011#[repr(C)]
9012#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9013pub struct epoll_params {
9014    pub busy_poll_usecs: __u32,
9015    pub busy_poll_budget: __u16,
9016    pub prefer_busy_poll: __u8,
9017    pub __pad: __u8,
9018}
9019#[repr(C)]
9020#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9021pub struct i2c_msg {
9022    pub addr: __u16,
9023    pub flags: __u16,
9024    pub len: __u16,
9025    pub __bindgen_padding_0: [u8; 2usize],
9026    pub buf: uref<__u8>,
9027}
9028impl Default for i2c_msg {
9029    fn default() -> Self {
9030        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9031        unsafe {
9032            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9033            s.assume_init()
9034        }
9035    }
9036}
9037#[repr(C)]
9038#[derive(Copy, Clone)]
9039pub union i2c_smbus_data {
9040    pub byte: __u8,
9041    pub word: __u16,
9042    pub block: [__u8; 34usize],
9043}
9044impl Default for i2c_smbus_data {
9045    fn default() -> Self {
9046        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9047        unsafe {
9048            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9049            s.assume_init()
9050        }
9051    }
9052}
9053pub const vesa_blank_mode_VESA_NO_BLANKING: vesa_blank_mode = 0;
9054pub const vesa_blank_mode_VESA_VSYNC_SUSPEND: vesa_blank_mode = 1;
9055pub const vesa_blank_mode_VESA_HSYNC_SUSPEND: vesa_blank_mode = 2;
9056pub const vesa_blank_mode_VESA_POWERDOWN: vesa_blank_mode = 3;
9057pub const vesa_blank_mode_VESA_BLANK_MAX: vesa_blank_mode = 3;
9058pub type vesa_blank_mode = crate::types::c_uint;
9059#[repr(C)]
9060#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9061pub struct fb_fix_screeninfo {
9062    pub id: [crate::types::c_char; 16usize],
9063    pub smem_start: crate::types::c_ulong,
9064    pub smem_len: __u32,
9065    pub type_: __u32,
9066    pub type_aux: __u32,
9067    pub visual: __u32,
9068    pub xpanstep: __u16,
9069    pub ypanstep: __u16,
9070    pub ywrapstep: __u16,
9071    pub __bindgen_padding_0: [u8; 2usize],
9072    pub line_length: __u32,
9073    pub __bindgen_padding_1: [u8; 4usize],
9074    pub mmio_start: crate::types::c_ulong,
9075    pub mmio_len: __u32,
9076    pub accel: __u32,
9077    pub capabilities: __u16,
9078    pub reserved: [__u16; 2usize],
9079    pub __bindgen_padding_2: [u8; 2usize],
9080}
9081#[repr(C)]
9082#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9083pub struct fb_bitfield {
9084    pub offset: __u32,
9085    pub length: __u32,
9086    pub msb_right: __u32,
9087}
9088#[repr(C)]
9089#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9090pub struct fb_var_screeninfo {
9091    pub xres: __u32,
9092    pub yres: __u32,
9093    pub xres_virtual: __u32,
9094    pub yres_virtual: __u32,
9095    pub xoffset: __u32,
9096    pub yoffset: __u32,
9097    pub bits_per_pixel: __u32,
9098    pub grayscale: __u32,
9099    pub red: fb_bitfield,
9100    pub green: fb_bitfield,
9101    pub blue: fb_bitfield,
9102    pub transp: fb_bitfield,
9103    pub nonstd: __u32,
9104    pub activate: __u32,
9105    pub height: __u32,
9106    pub width: __u32,
9107    pub accel_flags: __u32,
9108    pub pixclock: __u32,
9109    pub left_margin: __u32,
9110    pub right_margin: __u32,
9111    pub upper_margin: __u32,
9112    pub lower_margin: __u32,
9113    pub hsync_len: __u32,
9114    pub vsync_len: __u32,
9115    pub sync: __u32,
9116    pub vmode: __u32,
9117    pub rotate: __u32,
9118    pub colorspace: __u32,
9119    pub reserved: [__u32; 4usize],
9120}
9121#[repr(C)]
9122#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9123pub struct fb_cmap {
9124    pub start: __u32,
9125    pub len: __u32,
9126    pub red: uref<__u16>,
9127    pub green: uref<__u16>,
9128    pub blue: uref<__u16>,
9129    pub transp: uref<__u16>,
9130}
9131impl Default for fb_cmap {
9132    fn default() -> Self {
9133        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9134        unsafe {
9135            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9136            s.assume_init()
9137        }
9138    }
9139}
9140#[repr(C)]
9141#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9142pub struct fb_con2fbmap {
9143    pub console: __u32,
9144    pub framebuffer: __u32,
9145}
9146pub const FB_BLANK_UNBLANK: _bindgen_ty_7 = 0;
9147pub const FB_BLANK_NORMAL: _bindgen_ty_7 = 1;
9148pub const FB_BLANK_VSYNC_SUSPEND: _bindgen_ty_7 = 2;
9149pub const FB_BLANK_HSYNC_SUSPEND: _bindgen_ty_7 = 3;
9150pub const FB_BLANK_POWERDOWN: _bindgen_ty_7 = 4;
9151pub type _bindgen_ty_7 = crate::types::c_uint;
9152#[repr(C)]
9153#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9154pub struct fb_vblank {
9155    pub flags: __u32,
9156    pub count: __u32,
9157    pub vcount: __u32,
9158    pub hcount: __u32,
9159    pub reserved: [__u32; 4usize],
9160}
9161#[repr(C)]
9162#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9163pub struct fb_copyarea {
9164    pub dx: __u32,
9165    pub dy: __u32,
9166    pub width: __u32,
9167    pub height: __u32,
9168    pub sx: __u32,
9169    pub sy: __u32,
9170}
9171#[repr(C)]
9172#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9173pub struct fb_fillrect {
9174    pub dx: __u32,
9175    pub dy: __u32,
9176    pub width: __u32,
9177    pub height: __u32,
9178    pub color: __u32,
9179    pub rop: __u32,
9180}
9181#[repr(C)]
9182#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9183pub struct fb_image {
9184    pub dx: __u32,
9185    pub dy: __u32,
9186    pub width: __u32,
9187    pub height: __u32,
9188    pub fg_color: __u32,
9189    pub bg_color: __u32,
9190    pub depth: __u8,
9191    pub __bindgen_padding_0: [u8; 7usize],
9192    pub data: uref<crate::types::c_char>,
9193    pub cmap: fb_cmap,
9194}
9195impl Default for fb_image {
9196    fn default() -> Self {
9197        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9198        unsafe {
9199            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9200            s.assume_init()
9201        }
9202    }
9203}
9204#[repr(C)]
9205#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9206pub struct fbcurpos {
9207    pub x: __u16,
9208    pub y: __u16,
9209}
9210#[repr(C)]
9211#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9212pub struct fb_cursor {
9213    pub set: __u16,
9214    pub enable: __u16,
9215    pub rop: __u16,
9216    pub __bindgen_padding_0: [u8; 2usize],
9217    pub mask: uref<crate::types::c_char>,
9218    pub hot: fbcurpos,
9219    pub __bindgen_padding_1: [u8; 4usize],
9220    pub image: fb_image,
9221}
9222impl Default for fb_cursor {
9223    fn default() -> Self {
9224        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9225        unsafe {
9226            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9227            s.assume_init()
9228        }
9229    }
9230}
9231#[repr(C)]
9232#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9233pub struct sockaddr_nl {
9234    pub nl_family: __kernel_sa_family_t,
9235    pub nl_pad: crate::types::c_ushort,
9236    pub nl_pid: __u32,
9237    pub nl_groups: __u32,
9238}
9239#[repr(C)]
9240#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9241pub struct nlmsghdr {
9242    pub nlmsg_len: __u32,
9243    pub nlmsg_type: __u16,
9244    pub nlmsg_flags: __u16,
9245    pub nlmsg_seq: __u32,
9246    pub nlmsg_pid: __u32,
9247}
9248#[repr(C)]
9249#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9250pub struct nlmsgerr {
9251    pub error: crate::types::c_int,
9252    pub msg: nlmsghdr,
9253}
9254pub const nlmsgerr_attrs_NLMSGERR_ATTR_UNUSED: nlmsgerr_attrs = 0;
9255pub const nlmsgerr_attrs_NLMSGERR_ATTR_MSG: nlmsgerr_attrs = 1;
9256pub const nlmsgerr_attrs_NLMSGERR_ATTR_OFFS: nlmsgerr_attrs = 2;
9257pub const nlmsgerr_attrs_NLMSGERR_ATTR_COOKIE: nlmsgerr_attrs = 3;
9258pub const nlmsgerr_attrs_NLMSGERR_ATTR_POLICY: nlmsgerr_attrs = 4;
9259pub const nlmsgerr_attrs_NLMSGERR_ATTR_MISS_TYPE: nlmsgerr_attrs = 5;
9260pub const nlmsgerr_attrs_NLMSGERR_ATTR_MISS_NEST: nlmsgerr_attrs = 6;
9261pub const nlmsgerr_attrs___NLMSGERR_ATTR_MAX: nlmsgerr_attrs = 7;
9262pub const nlmsgerr_attrs_NLMSGERR_ATTR_MAX: nlmsgerr_attrs = 6;
9263pub type nlmsgerr_attrs = crate::types::c_uint;
9264#[repr(C)]
9265#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9266pub struct nl_pktinfo {
9267    pub group: __u32,
9268}
9269#[repr(C)]
9270#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9271pub struct nl_mmap_req {
9272    pub nm_block_size: crate::types::c_uint,
9273    pub nm_block_nr: crate::types::c_uint,
9274    pub nm_frame_size: crate::types::c_uint,
9275    pub nm_frame_nr: crate::types::c_uint,
9276}
9277#[repr(C)]
9278#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9279pub struct nl_mmap_hdr {
9280    pub nm_status: crate::types::c_uint,
9281    pub nm_len: crate::types::c_uint,
9282    pub nm_group: __u32,
9283    pub nm_pid: __u32,
9284    pub nm_uid: __u32,
9285    pub nm_gid: __u32,
9286}
9287pub const nl_mmap_status_NL_MMAP_STATUS_UNUSED: nl_mmap_status = 0;
9288pub const nl_mmap_status_NL_MMAP_STATUS_RESERVED: nl_mmap_status = 1;
9289pub const nl_mmap_status_NL_MMAP_STATUS_VALID: nl_mmap_status = 2;
9290pub const nl_mmap_status_NL_MMAP_STATUS_COPY: nl_mmap_status = 3;
9291pub const nl_mmap_status_NL_MMAP_STATUS_SKIP: nl_mmap_status = 4;
9292pub type nl_mmap_status = crate::types::c_uint;
9293pub const NETLINK_UNCONNECTED: _bindgen_ty_8 = 0;
9294pub const NETLINK_CONNECTED: _bindgen_ty_8 = 1;
9295pub type _bindgen_ty_8 = crate::types::c_uint;
9296#[repr(C)]
9297#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9298pub struct nlattr {
9299    pub nla_len: __u16,
9300    pub nla_type: __u16,
9301}
9302#[repr(C)]
9303#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9304pub struct nla_bitfield32 {
9305    pub value: __u32,
9306    pub selector: __u32,
9307}
9308pub const netlink_attribute_type_NL_ATTR_TYPE_INVALID: netlink_attribute_type = 0;
9309pub const netlink_attribute_type_NL_ATTR_TYPE_FLAG: netlink_attribute_type = 1;
9310pub const netlink_attribute_type_NL_ATTR_TYPE_U8: netlink_attribute_type = 2;
9311pub const netlink_attribute_type_NL_ATTR_TYPE_U16: netlink_attribute_type = 3;
9312pub const netlink_attribute_type_NL_ATTR_TYPE_U32: netlink_attribute_type = 4;
9313pub const netlink_attribute_type_NL_ATTR_TYPE_U64: netlink_attribute_type = 5;
9314pub const netlink_attribute_type_NL_ATTR_TYPE_S8: netlink_attribute_type = 6;
9315pub const netlink_attribute_type_NL_ATTR_TYPE_S16: netlink_attribute_type = 7;
9316pub const netlink_attribute_type_NL_ATTR_TYPE_S32: netlink_attribute_type = 8;
9317pub const netlink_attribute_type_NL_ATTR_TYPE_S64: netlink_attribute_type = 9;
9318pub const netlink_attribute_type_NL_ATTR_TYPE_BINARY: netlink_attribute_type = 10;
9319pub const netlink_attribute_type_NL_ATTR_TYPE_STRING: netlink_attribute_type = 11;
9320pub const netlink_attribute_type_NL_ATTR_TYPE_NUL_STRING: netlink_attribute_type = 12;
9321pub const netlink_attribute_type_NL_ATTR_TYPE_NESTED: netlink_attribute_type = 13;
9322pub const netlink_attribute_type_NL_ATTR_TYPE_NESTED_ARRAY: netlink_attribute_type = 14;
9323pub const netlink_attribute_type_NL_ATTR_TYPE_BITFIELD32: netlink_attribute_type = 15;
9324pub const netlink_attribute_type_NL_ATTR_TYPE_SINT: netlink_attribute_type = 16;
9325pub const netlink_attribute_type_NL_ATTR_TYPE_UINT: netlink_attribute_type = 17;
9326pub type netlink_attribute_type = crate::types::c_uint;
9327pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_UNSPEC: netlink_policy_type_attr = 0;
9328pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_TYPE: netlink_policy_type_attr = 1;
9329pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_VALUE_S: netlink_policy_type_attr = 2;
9330pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_VALUE_S: netlink_policy_type_attr = 3;
9331pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_VALUE_U: netlink_policy_type_attr = 4;
9332pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_VALUE_U: netlink_policy_type_attr = 5;
9333pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_LENGTH: netlink_policy_type_attr = 6;
9334pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_LENGTH: netlink_policy_type_attr = 7;
9335pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_POLICY_IDX: netlink_policy_type_attr = 8;
9336pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE: netlink_policy_type_attr = 9;
9337pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_BITFIELD32_MASK: netlink_policy_type_attr =
9338    10;
9339pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_PAD: netlink_policy_type_attr = 11;
9340pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MASK: netlink_policy_type_attr = 12;
9341pub const netlink_policy_type_attr___NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = 13;
9342pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = 12;
9343pub type netlink_policy_type_attr = crate::types::c_uint;
9344#[repr(C)]
9345#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9346pub struct rtnl_link_stats {
9347    pub rx_packets: __u32,
9348    pub tx_packets: __u32,
9349    pub rx_bytes: __u32,
9350    pub tx_bytes: __u32,
9351    pub rx_errors: __u32,
9352    pub tx_errors: __u32,
9353    pub rx_dropped: __u32,
9354    pub tx_dropped: __u32,
9355    pub multicast: __u32,
9356    pub collisions: __u32,
9357    pub rx_length_errors: __u32,
9358    pub rx_over_errors: __u32,
9359    pub rx_crc_errors: __u32,
9360    pub rx_frame_errors: __u32,
9361    pub rx_fifo_errors: __u32,
9362    pub rx_missed_errors: __u32,
9363    pub tx_aborted_errors: __u32,
9364    pub tx_carrier_errors: __u32,
9365    pub tx_fifo_errors: __u32,
9366    pub tx_heartbeat_errors: __u32,
9367    pub tx_window_errors: __u32,
9368    pub rx_compressed: __u32,
9369    pub tx_compressed: __u32,
9370    pub rx_nohandler: __u32,
9371}
9372#[repr(C)]
9373#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9374pub struct rtnl_link_stats64 {
9375    pub rx_packets: __u64,
9376    pub tx_packets: __u64,
9377    pub rx_bytes: __u64,
9378    pub tx_bytes: __u64,
9379    pub rx_errors: __u64,
9380    pub tx_errors: __u64,
9381    pub rx_dropped: __u64,
9382    pub tx_dropped: __u64,
9383    pub multicast: __u64,
9384    pub collisions: __u64,
9385    pub rx_length_errors: __u64,
9386    pub rx_over_errors: __u64,
9387    pub rx_crc_errors: __u64,
9388    pub rx_frame_errors: __u64,
9389    pub rx_fifo_errors: __u64,
9390    pub rx_missed_errors: __u64,
9391    pub tx_aborted_errors: __u64,
9392    pub tx_carrier_errors: __u64,
9393    pub tx_fifo_errors: __u64,
9394    pub tx_heartbeat_errors: __u64,
9395    pub tx_window_errors: __u64,
9396    pub rx_compressed: __u64,
9397    pub tx_compressed: __u64,
9398    pub rx_nohandler: __u64,
9399    pub rx_otherhost_dropped: __u64,
9400}
9401#[repr(C)]
9402#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9403pub struct rtnl_hw_stats64 {
9404    pub rx_packets: __u64,
9405    pub tx_packets: __u64,
9406    pub rx_bytes: __u64,
9407    pub tx_bytes: __u64,
9408    pub rx_errors: __u64,
9409    pub tx_errors: __u64,
9410    pub rx_dropped: __u64,
9411    pub tx_dropped: __u64,
9412    pub multicast: __u64,
9413}
9414#[repr(C)]
9415#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9416pub struct rtnl_link_ifmap {
9417    pub mem_start: __u64,
9418    pub mem_end: __u64,
9419    pub base_addr: __u64,
9420    pub irq: __u16,
9421    pub dma: __u8,
9422    pub port: __u8,
9423    pub __bindgen_padding_0: [u8; 4usize],
9424}
9425pub const IFLA_UNSPEC: _bindgen_ty_9 = 0;
9426pub const IFLA_ADDRESS: _bindgen_ty_9 = 1;
9427pub const IFLA_BROADCAST: _bindgen_ty_9 = 2;
9428pub const IFLA_IFNAME: _bindgen_ty_9 = 3;
9429pub const IFLA_MTU: _bindgen_ty_9 = 4;
9430pub const IFLA_LINK: _bindgen_ty_9 = 5;
9431pub const IFLA_QDISC: _bindgen_ty_9 = 6;
9432pub const IFLA_STATS: _bindgen_ty_9 = 7;
9433pub const IFLA_COST: _bindgen_ty_9 = 8;
9434pub const IFLA_PRIORITY: _bindgen_ty_9 = 9;
9435pub const IFLA_MASTER: _bindgen_ty_9 = 10;
9436pub const IFLA_WIRELESS: _bindgen_ty_9 = 11;
9437pub const IFLA_PROTINFO: _bindgen_ty_9 = 12;
9438pub const IFLA_TXQLEN: _bindgen_ty_9 = 13;
9439pub const IFLA_MAP: _bindgen_ty_9 = 14;
9440pub const IFLA_WEIGHT: _bindgen_ty_9 = 15;
9441pub const IFLA_OPERSTATE: _bindgen_ty_9 = 16;
9442pub const IFLA_LINKMODE: _bindgen_ty_9 = 17;
9443pub const IFLA_LINKINFO: _bindgen_ty_9 = 18;
9444pub const IFLA_NET_NS_PID: _bindgen_ty_9 = 19;
9445pub const IFLA_IFALIAS: _bindgen_ty_9 = 20;
9446pub const IFLA_NUM_VF: _bindgen_ty_9 = 21;
9447pub const IFLA_VFINFO_LIST: _bindgen_ty_9 = 22;
9448pub const IFLA_STATS64: _bindgen_ty_9 = 23;
9449pub const IFLA_VF_PORTS: _bindgen_ty_9 = 24;
9450pub const IFLA_PORT_SELF: _bindgen_ty_9 = 25;
9451pub const IFLA_AF_SPEC: _bindgen_ty_9 = 26;
9452pub const IFLA_GROUP: _bindgen_ty_9 = 27;
9453pub const IFLA_NET_NS_FD: _bindgen_ty_9 = 28;
9454pub const IFLA_EXT_MASK: _bindgen_ty_9 = 29;
9455pub const IFLA_PROMISCUITY: _bindgen_ty_9 = 30;
9456pub const IFLA_NUM_TX_QUEUES: _bindgen_ty_9 = 31;
9457pub const IFLA_NUM_RX_QUEUES: _bindgen_ty_9 = 32;
9458pub const IFLA_CARRIER: _bindgen_ty_9 = 33;
9459pub const IFLA_PHYS_PORT_ID: _bindgen_ty_9 = 34;
9460pub const IFLA_CARRIER_CHANGES: _bindgen_ty_9 = 35;
9461pub const IFLA_PHYS_SWITCH_ID: _bindgen_ty_9 = 36;
9462pub const IFLA_LINK_NETNSID: _bindgen_ty_9 = 37;
9463pub const IFLA_PHYS_PORT_NAME: _bindgen_ty_9 = 38;
9464pub const IFLA_PROTO_DOWN: _bindgen_ty_9 = 39;
9465pub const IFLA_GSO_MAX_SEGS: _bindgen_ty_9 = 40;
9466pub const IFLA_GSO_MAX_SIZE: _bindgen_ty_9 = 41;
9467pub const IFLA_PAD: _bindgen_ty_9 = 42;
9468pub const IFLA_XDP: _bindgen_ty_9 = 43;
9469pub const IFLA_EVENT: _bindgen_ty_9 = 44;
9470pub const IFLA_NEW_NETNSID: _bindgen_ty_9 = 45;
9471pub const IFLA_IF_NETNSID: _bindgen_ty_9 = 46;
9472pub const IFLA_TARGET_NETNSID: _bindgen_ty_9 = 46;
9473pub const IFLA_CARRIER_UP_COUNT: _bindgen_ty_9 = 47;
9474pub const IFLA_CARRIER_DOWN_COUNT: _bindgen_ty_9 = 48;
9475pub const IFLA_NEW_IFINDEX: _bindgen_ty_9 = 49;
9476pub const IFLA_MIN_MTU: _bindgen_ty_9 = 50;
9477pub const IFLA_MAX_MTU: _bindgen_ty_9 = 51;
9478pub const IFLA_PROP_LIST: _bindgen_ty_9 = 52;
9479pub const IFLA_ALT_IFNAME: _bindgen_ty_9 = 53;
9480pub const IFLA_PERM_ADDRESS: _bindgen_ty_9 = 54;
9481pub const IFLA_PROTO_DOWN_REASON: _bindgen_ty_9 = 55;
9482pub const IFLA_PARENT_DEV_NAME: _bindgen_ty_9 = 56;
9483pub const IFLA_PARENT_DEV_BUS_NAME: _bindgen_ty_9 = 57;
9484pub const IFLA_GRO_MAX_SIZE: _bindgen_ty_9 = 58;
9485pub const IFLA_TSO_MAX_SIZE: _bindgen_ty_9 = 59;
9486pub const IFLA_TSO_MAX_SEGS: _bindgen_ty_9 = 60;
9487pub const IFLA_ALLMULTI: _bindgen_ty_9 = 61;
9488pub const IFLA_DEVLINK_PORT: _bindgen_ty_9 = 62;
9489pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_9 = 63;
9490pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_9 = 64;
9491pub const IFLA_DPLL_PIN: _bindgen_ty_9 = 65;
9492pub const __IFLA_MAX: _bindgen_ty_9 = 66;
9493pub type _bindgen_ty_9 = crate::types::c_uint;
9494pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_10 = 0;
9495pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_10 = 1;
9496pub const IFLA_PROTO_DOWN_REASON_VALUE: _bindgen_ty_10 = 2;
9497pub const __IFLA_PROTO_DOWN_REASON_CNT: _bindgen_ty_10 = 3;
9498pub const IFLA_PROTO_DOWN_REASON_MAX: _bindgen_ty_10 = 2;
9499pub type _bindgen_ty_10 = crate::types::c_uint;
9500pub const IFLA_INET_UNSPEC: _bindgen_ty_11 = 0;
9501pub const IFLA_INET_CONF: _bindgen_ty_11 = 1;
9502pub const __IFLA_INET_MAX: _bindgen_ty_11 = 2;
9503pub type _bindgen_ty_11 = crate::types::c_uint;
9504pub const IFLA_INET6_UNSPEC: _bindgen_ty_12 = 0;
9505pub const IFLA_INET6_FLAGS: _bindgen_ty_12 = 1;
9506pub const IFLA_INET6_CONF: _bindgen_ty_12 = 2;
9507pub const IFLA_INET6_STATS: _bindgen_ty_12 = 3;
9508pub const IFLA_INET6_MCAST: _bindgen_ty_12 = 4;
9509pub const IFLA_INET6_CACHEINFO: _bindgen_ty_12 = 5;
9510pub const IFLA_INET6_ICMP6STATS: _bindgen_ty_12 = 6;
9511pub const IFLA_INET6_TOKEN: _bindgen_ty_12 = 7;
9512pub const IFLA_INET6_ADDR_GEN_MODE: _bindgen_ty_12 = 8;
9513pub const IFLA_INET6_RA_MTU: _bindgen_ty_12 = 9;
9514pub const __IFLA_INET6_MAX: _bindgen_ty_12 = 10;
9515pub type _bindgen_ty_12 = crate::types::c_uint;
9516pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_EUI64: in6_addr_gen_mode = 0;
9517pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_NONE: in6_addr_gen_mode = 1;
9518pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_STABLE_PRIVACY: in6_addr_gen_mode = 2;
9519pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_RANDOM: in6_addr_gen_mode = 3;
9520pub type in6_addr_gen_mode = crate::types::c_uint;
9521pub const IFLA_BR_UNSPEC: _bindgen_ty_13 = 0;
9522pub const IFLA_BR_FORWARD_DELAY: _bindgen_ty_13 = 1;
9523pub const IFLA_BR_HELLO_TIME: _bindgen_ty_13 = 2;
9524pub const IFLA_BR_MAX_AGE: _bindgen_ty_13 = 3;
9525pub const IFLA_BR_AGEING_TIME: _bindgen_ty_13 = 4;
9526pub const IFLA_BR_STP_STATE: _bindgen_ty_13 = 5;
9527pub const IFLA_BR_PRIORITY: _bindgen_ty_13 = 6;
9528pub const IFLA_BR_VLAN_FILTERING: _bindgen_ty_13 = 7;
9529pub const IFLA_BR_VLAN_PROTOCOL: _bindgen_ty_13 = 8;
9530pub const IFLA_BR_GROUP_FWD_MASK: _bindgen_ty_13 = 9;
9531pub const IFLA_BR_ROOT_ID: _bindgen_ty_13 = 10;
9532pub const IFLA_BR_BRIDGE_ID: _bindgen_ty_13 = 11;
9533pub const IFLA_BR_ROOT_PORT: _bindgen_ty_13 = 12;
9534pub const IFLA_BR_ROOT_PATH_COST: _bindgen_ty_13 = 13;
9535pub const IFLA_BR_TOPOLOGY_CHANGE: _bindgen_ty_13 = 14;
9536pub const IFLA_BR_TOPOLOGY_CHANGE_DETECTED: _bindgen_ty_13 = 15;
9537pub const IFLA_BR_HELLO_TIMER: _bindgen_ty_13 = 16;
9538pub const IFLA_BR_TCN_TIMER: _bindgen_ty_13 = 17;
9539pub const IFLA_BR_TOPOLOGY_CHANGE_TIMER: _bindgen_ty_13 = 18;
9540pub const IFLA_BR_GC_TIMER: _bindgen_ty_13 = 19;
9541pub const IFLA_BR_GROUP_ADDR: _bindgen_ty_13 = 20;
9542pub const IFLA_BR_FDB_FLUSH: _bindgen_ty_13 = 21;
9543pub const IFLA_BR_MCAST_ROUTER: _bindgen_ty_13 = 22;
9544pub const IFLA_BR_MCAST_SNOOPING: _bindgen_ty_13 = 23;
9545pub const IFLA_BR_MCAST_QUERY_USE_IFADDR: _bindgen_ty_13 = 24;
9546pub const IFLA_BR_MCAST_QUERIER: _bindgen_ty_13 = 25;
9547pub const IFLA_BR_MCAST_HASH_ELASTICITY: _bindgen_ty_13 = 26;
9548pub const IFLA_BR_MCAST_HASH_MAX: _bindgen_ty_13 = 27;
9549pub const IFLA_BR_MCAST_LAST_MEMBER_CNT: _bindgen_ty_13 = 28;
9550pub const IFLA_BR_MCAST_STARTUP_QUERY_CNT: _bindgen_ty_13 = 29;
9551pub const IFLA_BR_MCAST_LAST_MEMBER_INTVL: _bindgen_ty_13 = 30;
9552pub const IFLA_BR_MCAST_MEMBERSHIP_INTVL: _bindgen_ty_13 = 31;
9553pub const IFLA_BR_MCAST_QUERIER_INTVL: _bindgen_ty_13 = 32;
9554pub const IFLA_BR_MCAST_QUERY_INTVL: _bindgen_ty_13 = 33;
9555pub const IFLA_BR_MCAST_QUERY_RESPONSE_INTVL: _bindgen_ty_13 = 34;
9556pub const IFLA_BR_MCAST_STARTUP_QUERY_INTVL: _bindgen_ty_13 = 35;
9557pub const IFLA_BR_NF_CALL_IPTABLES: _bindgen_ty_13 = 36;
9558pub const IFLA_BR_NF_CALL_IP6TABLES: _bindgen_ty_13 = 37;
9559pub const IFLA_BR_NF_CALL_ARPTABLES: _bindgen_ty_13 = 38;
9560pub const IFLA_BR_VLAN_DEFAULT_PVID: _bindgen_ty_13 = 39;
9561pub const IFLA_BR_PAD: _bindgen_ty_13 = 40;
9562pub const IFLA_BR_VLAN_STATS_ENABLED: _bindgen_ty_13 = 41;
9563pub const IFLA_BR_MCAST_STATS_ENABLED: _bindgen_ty_13 = 42;
9564pub const IFLA_BR_MCAST_IGMP_VERSION: _bindgen_ty_13 = 43;
9565pub const IFLA_BR_MCAST_MLD_VERSION: _bindgen_ty_13 = 44;
9566pub const IFLA_BR_VLAN_STATS_PER_PORT: _bindgen_ty_13 = 45;
9567pub const IFLA_BR_MULTI_BOOLOPT: _bindgen_ty_13 = 46;
9568pub const IFLA_BR_MCAST_QUERIER_STATE: _bindgen_ty_13 = 47;
9569pub const IFLA_BR_FDB_N_LEARNED: _bindgen_ty_13 = 48;
9570pub const IFLA_BR_FDB_MAX_LEARNED: _bindgen_ty_13 = 49;
9571pub const __IFLA_BR_MAX: _bindgen_ty_13 = 50;
9572pub type _bindgen_ty_13 = crate::types::c_uint;
9573#[repr(C)]
9574#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9575pub struct ifla_bridge_id {
9576    pub prio: [__u8; 2usize],
9577    pub addr: [__u8; 6usize],
9578}
9579pub const BRIDGE_MODE_UNSPEC: _bindgen_ty_14 = 0;
9580pub const BRIDGE_MODE_HAIRPIN: _bindgen_ty_14 = 1;
9581pub type _bindgen_ty_14 = crate::types::c_uint;
9582pub const IFLA_BRPORT_UNSPEC: _bindgen_ty_15 = 0;
9583pub const IFLA_BRPORT_STATE: _bindgen_ty_15 = 1;
9584pub const IFLA_BRPORT_PRIORITY: _bindgen_ty_15 = 2;
9585pub const IFLA_BRPORT_COST: _bindgen_ty_15 = 3;
9586pub const IFLA_BRPORT_MODE: _bindgen_ty_15 = 4;
9587pub const IFLA_BRPORT_GUARD: _bindgen_ty_15 = 5;
9588pub const IFLA_BRPORT_PROTECT: _bindgen_ty_15 = 6;
9589pub const IFLA_BRPORT_FAST_LEAVE: _bindgen_ty_15 = 7;
9590pub const IFLA_BRPORT_LEARNING: _bindgen_ty_15 = 8;
9591pub const IFLA_BRPORT_UNICAST_FLOOD: _bindgen_ty_15 = 9;
9592pub const IFLA_BRPORT_PROXYARP: _bindgen_ty_15 = 10;
9593pub const IFLA_BRPORT_LEARNING_SYNC: _bindgen_ty_15 = 11;
9594pub const IFLA_BRPORT_PROXYARP_WIFI: _bindgen_ty_15 = 12;
9595pub const IFLA_BRPORT_ROOT_ID: _bindgen_ty_15 = 13;
9596pub const IFLA_BRPORT_BRIDGE_ID: _bindgen_ty_15 = 14;
9597pub const IFLA_BRPORT_DESIGNATED_PORT: _bindgen_ty_15 = 15;
9598pub const IFLA_BRPORT_DESIGNATED_COST: _bindgen_ty_15 = 16;
9599pub const IFLA_BRPORT_ID: _bindgen_ty_15 = 17;
9600pub const IFLA_BRPORT_NO: _bindgen_ty_15 = 18;
9601pub const IFLA_BRPORT_TOPOLOGY_CHANGE_ACK: _bindgen_ty_15 = 19;
9602pub const IFLA_BRPORT_CONFIG_PENDING: _bindgen_ty_15 = 20;
9603pub const IFLA_BRPORT_MESSAGE_AGE_TIMER: _bindgen_ty_15 = 21;
9604pub const IFLA_BRPORT_FORWARD_DELAY_TIMER: _bindgen_ty_15 = 22;
9605pub const IFLA_BRPORT_HOLD_TIMER: _bindgen_ty_15 = 23;
9606pub const IFLA_BRPORT_FLUSH: _bindgen_ty_15 = 24;
9607pub const IFLA_BRPORT_MULTICAST_ROUTER: _bindgen_ty_15 = 25;
9608pub const IFLA_BRPORT_PAD: _bindgen_ty_15 = 26;
9609pub const IFLA_BRPORT_MCAST_FLOOD: _bindgen_ty_15 = 27;
9610pub const IFLA_BRPORT_MCAST_TO_UCAST: _bindgen_ty_15 = 28;
9611pub const IFLA_BRPORT_VLAN_TUNNEL: _bindgen_ty_15 = 29;
9612pub const IFLA_BRPORT_BCAST_FLOOD: _bindgen_ty_15 = 30;
9613pub const IFLA_BRPORT_GROUP_FWD_MASK: _bindgen_ty_15 = 31;
9614pub const IFLA_BRPORT_NEIGH_SUPPRESS: _bindgen_ty_15 = 32;
9615pub const IFLA_BRPORT_ISOLATED: _bindgen_ty_15 = 33;
9616pub const IFLA_BRPORT_BACKUP_PORT: _bindgen_ty_15 = 34;
9617pub const IFLA_BRPORT_MRP_RING_OPEN: _bindgen_ty_15 = 35;
9618pub const IFLA_BRPORT_MRP_IN_OPEN: _bindgen_ty_15 = 36;
9619pub const IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT: _bindgen_ty_15 = 37;
9620pub const IFLA_BRPORT_MCAST_EHT_HOSTS_CNT: _bindgen_ty_15 = 38;
9621pub const IFLA_BRPORT_LOCKED: _bindgen_ty_15 = 39;
9622pub const IFLA_BRPORT_MAB: _bindgen_ty_15 = 40;
9623pub const IFLA_BRPORT_MCAST_N_GROUPS: _bindgen_ty_15 = 41;
9624pub const IFLA_BRPORT_MCAST_MAX_GROUPS: _bindgen_ty_15 = 42;
9625pub const IFLA_BRPORT_NEIGH_VLAN_SUPPRESS: _bindgen_ty_15 = 43;
9626pub const IFLA_BRPORT_BACKUP_NHID: _bindgen_ty_15 = 44;
9627pub const __IFLA_BRPORT_MAX: _bindgen_ty_15 = 45;
9628pub type _bindgen_ty_15 = crate::types::c_uint;
9629#[repr(C)]
9630#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9631pub struct ifla_cacheinfo {
9632    pub max_reasm_len: __u32,
9633    pub tstamp: __u32,
9634    pub reachable_time: __u32,
9635    pub retrans_time: __u32,
9636}
9637pub const IFLA_INFO_UNSPEC: _bindgen_ty_16 = 0;
9638pub const IFLA_INFO_KIND: _bindgen_ty_16 = 1;
9639pub const IFLA_INFO_DATA: _bindgen_ty_16 = 2;
9640pub const IFLA_INFO_XSTATS: _bindgen_ty_16 = 3;
9641pub const IFLA_INFO_SLAVE_KIND: _bindgen_ty_16 = 4;
9642pub const IFLA_INFO_SLAVE_DATA: _bindgen_ty_16 = 5;
9643pub const __IFLA_INFO_MAX: _bindgen_ty_16 = 6;
9644pub type _bindgen_ty_16 = crate::types::c_uint;
9645pub const IFLA_VLAN_UNSPEC: _bindgen_ty_17 = 0;
9646pub const IFLA_VLAN_ID: _bindgen_ty_17 = 1;
9647pub const IFLA_VLAN_FLAGS: _bindgen_ty_17 = 2;
9648pub const IFLA_VLAN_EGRESS_QOS: _bindgen_ty_17 = 3;
9649pub const IFLA_VLAN_INGRESS_QOS: _bindgen_ty_17 = 4;
9650pub const IFLA_VLAN_PROTOCOL: _bindgen_ty_17 = 5;
9651pub const __IFLA_VLAN_MAX: _bindgen_ty_17 = 6;
9652pub type _bindgen_ty_17 = crate::types::c_uint;
9653#[repr(C)]
9654#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9655pub struct ifla_vlan_flags {
9656    pub flags: __u32,
9657    pub mask: __u32,
9658}
9659pub const IFLA_VLAN_QOS_UNSPEC: _bindgen_ty_18 = 0;
9660pub const IFLA_VLAN_QOS_MAPPING: _bindgen_ty_18 = 1;
9661pub const __IFLA_VLAN_QOS_MAX: _bindgen_ty_18 = 2;
9662pub type _bindgen_ty_18 = crate::types::c_uint;
9663#[repr(C)]
9664#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9665pub struct ifla_vlan_qos_mapping {
9666    pub from: __u32,
9667    pub to: __u32,
9668}
9669pub const IFLA_MACVLAN_UNSPEC: _bindgen_ty_19 = 0;
9670pub const IFLA_MACVLAN_MODE: _bindgen_ty_19 = 1;
9671pub const IFLA_MACVLAN_FLAGS: _bindgen_ty_19 = 2;
9672pub const IFLA_MACVLAN_MACADDR_MODE: _bindgen_ty_19 = 3;
9673pub const IFLA_MACVLAN_MACADDR: _bindgen_ty_19 = 4;
9674pub const IFLA_MACVLAN_MACADDR_DATA: _bindgen_ty_19 = 5;
9675pub const IFLA_MACVLAN_MACADDR_COUNT: _bindgen_ty_19 = 6;
9676pub const IFLA_MACVLAN_BC_QUEUE_LEN: _bindgen_ty_19 = 7;
9677pub const IFLA_MACVLAN_BC_QUEUE_LEN_USED: _bindgen_ty_19 = 8;
9678pub const IFLA_MACVLAN_BC_CUTOFF: _bindgen_ty_19 = 9;
9679pub const __IFLA_MACVLAN_MAX: _bindgen_ty_19 = 10;
9680pub type _bindgen_ty_19 = crate::types::c_uint;
9681pub const macvlan_mode_MACVLAN_MODE_PRIVATE: macvlan_mode = 1;
9682pub const macvlan_mode_MACVLAN_MODE_VEPA: macvlan_mode = 2;
9683pub const macvlan_mode_MACVLAN_MODE_BRIDGE: macvlan_mode = 4;
9684pub const macvlan_mode_MACVLAN_MODE_PASSTHRU: macvlan_mode = 8;
9685pub const macvlan_mode_MACVLAN_MODE_SOURCE: macvlan_mode = 16;
9686pub type macvlan_mode = crate::types::c_uint;
9687pub const macvlan_macaddr_mode_MACVLAN_MACADDR_ADD: macvlan_macaddr_mode = 0;
9688pub const macvlan_macaddr_mode_MACVLAN_MACADDR_DEL: macvlan_macaddr_mode = 1;
9689pub const macvlan_macaddr_mode_MACVLAN_MACADDR_FLUSH: macvlan_macaddr_mode = 2;
9690pub const macvlan_macaddr_mode_MACVLAN_MACADDR_SET: macvlan_macaddr_mode = 3;
9691pub type macvlan_macaddr_mode = crate::types::c_uint;
9692pub const IFLA_VRF_UNSPEC: _bindgen_ty_20 = 0;
9693pub const IFLA_VRF_TABLE: _bindgen_ty_20 = 1;
9694pub const __IFLA_VRF_MAX: _bindgen_ty_20 = 2;
9695pub type _bindgen_ty_20 = crate::types::c_uint;
9696pub const IFLA_VRF_PORT_UNSPEC: _bindgen_ty_21 = 0;
9697pub const IFLA_VRF_PORT_TABLE: _bindgen_ty_21 = 1;
9698pub const __IFLA_VRF_PORT_MAX: _bindgen_ty_21 = 2;
9699pub type _bindgen_ty_21 = crate::types::c_uint;
9700pub const IFLA_MACSEC_UNSPEC: _bindgen_ty_22 = 0;
9701pub const IFLA_MACSEC_SCI: _bindgen_ty_22 = 1;
9702pub const IFLA_MACSEC_PORT: _bindgen_ty_22 = 2;
9703pub const IFLA_MACSEC_ICV_LEN: _bindgen_ty_22 = 3;
9704pub const IFLA_MACSEC_CIPHER_SUITE: _bindgen_ty_22 = 4;
9705pub const IFLA_MACSEC_WINDOW: _bindgen_ty_22 = 5;
9706pub const IFLA_MACSEC_ENCODING_SA: _bindgen_ty_22 = 6;
9707pub const IFLA_MACSEC_ENCRYPT: _bindgen_ty_22 = 7;
9708pub const IFLA_MACSEC_PROTECT: _bindgen_ty_22 = 8;
9709pub const IFLA_MACSEC_INC_SCI: _bindgen_ty_22 = 9;
9710pub const IFLA_MACSEC_ES: _bindgen_ty_22 = 10;
9711pub const IFLA_MACSEC_SCB: _bindgen_ty_22 = 11;
9712pub const IFLA_MACSEC_REPLAY_PROTECT: _bindgen_ty_22 = 12;
9713pub const IFLA_MACSEC_VALIDATION: _bindgen_ty_22 = 13;
9714pub const IFLA_MACSEC_PAD: _bindgen_ty_22 = 14;
9715pub const IFLA_MACSEC_OFFLOAD: _bindgen_ty_22 = 15;
9716pub const __IFLA_MACSEC_MAX: _bindgen_ty_22 = 16;
9717pub type _bindgen_ty_22 = crate::types::c_uint;
9718pub const IFLA_XFRM_UNSPEC: _bindgen_ty_23 = 0;
9719pub const IFLA_XFRM_LINK: _bindgen_ty_23 = 1;
9720pub const IFLA_XFRM_IF_ID: _bindgen_ty_23 = 2;
9721pub const IFLA_XFRM_COLLECT_METADATA: _bindgen_ty_23 = 3;
9722pub const __IFLA_XFRM_MAX: _bindgen_ty_23 = 4;
9723pub type _bindgen_ty_23 = crate::types::c_uint;
9724pub const macsec_validation_type_MACSEC_VALIDATE_DISABLED: macsec_validation_type = 0;
9725pub const macsec_validation_type_MACSEC_VALIDATE_CHECK: macsec_validation_type = 1;
9726pub const macsec_validation_type_MACSEC_VALIDATE_STRICT: macsec_validation_type = 2;
9727pub const macsec_validation_type___MACSEC_VALIDATE_END: macsec_validation_type = 3;
9728pub const macsec_validation_type_MACSEC_VALIDATE_MAX: macsec_validation_type = 2;
9729pub type macsec_validation_type = crate::types::c_uint;
9730pub const macsec_offload_MACSEC_OFFLOAD_OFF: macsec_offload = 0;
9731pub const macsec_offload_MACSEC_OFFLOAD_PHY: macsec_offload = 1;
9732pub const macsec_offload_MACSEC_OFFLOAD_MAC: macsec_offload = 2;
9733pub const macsec_offload___MACSEC_OFFLOAD_END: macsec_offload = 3;
9734pub const macsec_offload_MACSEC_OFFLOAD_MAX: macsec_offload = 2;
9735pub type macsec_offload = crate::types::c_uint;
9736pub const IFLA_IPVLAN_UNSPEC: _bindgen_ty_24 = 0;
9737pub const IFLA_IPVLAN_MODE: _bindgen_ty_24 = 1;
9738pub const IFLA_IPVLAN_FLAGS: _bindgen_ty_24 = 2;
9739pub const __IFLA_IPVLAN_MAX: _bindgen_ty_24 = 3;
9740pub type _bindgen_ty_24 = crate::types::c_uint;
9741pub const ipvlan_mode_IPVLAN_MODE_L2: ipvlan_mode = 0;
9742pub const ipvlan_mode_IPVLAN_MODE_L3: ipvlan_mode = 1;
9743pub const ipvlan_mode_IPVLAN_MODE_L3S: ipvlan_mode = 2;
9744pub const ipvlan_mode_IPVLAN_MODE_MAX: ipvlan_mode = 3;
9745pub type ipvlan_mode = crate::types::c_uint;
9746#[repr(C)]
9747#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9748pub struct tunnel_msg {
9749    pub family: __u8,
9750    pub flags: __u8,
9751    pub reserved2: __u16,
9752    pub ifindex: __u32,
9753}
9754pub const netkit_action_NETKIT_NEXT: netkit_action = -1;
9755pub const netkit_action_NETKIT_PASS: netkit_action = 0;
9756pub const netkit_action_NETKIT_DROP: netkit_action = 2;
9757pub const netkit_action_NETKIT_REDIRECT: netkit_action = 7;
9758pub type netkit_action = crate::types::c_int;
9759pub const netkit_mode_NETKIT_L2: netkit_mode = 0;
9760pub const netkit_mode_NETKIT_L3: netkit_mode = 1;
9761pub type netkit_mode = crate::types::c_uint;
9762pub const IFLA_NETKIT_UNSPEC: _bindgen_ty_25 = 0;
9763pub const IFLA_NETKIT_PEER_INFO: _bindgen_ty_25 = 1;
9764pub const IFLA_NETKIT_PRIMARY: _bindgen_ty_25 = 2;
9765pub const IFLA_NETKIT_POLICY: _bindgen_ty_25 = 3;
9766pub const IFLA_NETKIT_PEER_POLICY: _bindgen_ty_25 = 4;
9767pub const IFLA_NETKIT_MODE: _bindgen_ty_25 = 5;
9768pub const __IFLA_NETKIT_MAX: _bindgen_ty_25 = 6;
9769pub type _bindgen_ty_25 = crate::types::c_uint;
9770pub const VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_26 = 0;
9771pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_26 = 1;
9772pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_26 = 2;
9773pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_26 = 3;
9774pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_26 = 4;
9775pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_26 = 5;
9776pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_26 = 6;
9777pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_26 = 7;
9778pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_26 = 8;
9779pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_26 = 9;
9780pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_26 = 10;
9781pub type _bindgen_ty_26 = crate::types::c_uint;
9782pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_27 = 0;
9783pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_27 = 1;
9784pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_27 = 2;
9785pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_27 = 3;
9786pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_27 = 4;
9787pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_27 = 5;
9788pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_27 = 6;
9789pub type _bindgen_ty_27 = crate::types::c_uint;
9790pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_28 = 0;
9791pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_28 = 1;
9792pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_28 = 2;
9793pub type _bindgen_ty_28 = crate::types::c_uint;
9794pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_29 = 0;
9795pub const IFLA_VXLAN_ID: _bindgen_ty_29 = 1;
9796pub const IFLA_VXLAN_GROUP: _bindgen_ty_29 = 2;
9797pub const IFLA_VXLAN_LINK: _bindgen_ty_29 = 3;
9798pub const IFLA_VXLAN_LOCAL: _bindgen_ty_29 = 4;
9799pub const IFLA_VXLAN_TTL: _bindgen_ty_29 = 5;
9800pub const IFLA_VXLAN_TOS: _bindgen_ty_29 = 6;
9801pub const IFLA_VXLAN_LEARNING: _bindgen_ty_29 = 7;
9802pub const IFLA_VXLAN_AGEING: _bindgen_ty_29 = 8;
9803pub const IFLA_VXLAN_LIMIT: _bindgen_ty_29 = 9;
9804pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_29 = 10;
9805pub const IFLA_VXLAN_PROXY: _bindgen_ty_29 = 11;
9806pub const IFLA_VXLAN_RSC: _bindgen_ty_29 = 12;
9807pub const IFLA_VXLAN_L2MISS: _bindgen_ty_29 = 13;
9808pub const IFLA_VXLAN_L3MISS: _bindgen_ty_29 = 14;
9809pub const IFLA_VXLAN_PORT: _bindgen_ty_29 = 15;
9810pub const IFLA_VXLAN_GROUP6: _bindgen_ty_29 = 16;
9811pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_29 = 17;
9812pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_29 = 18;
9813pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_29 = 19;
9814pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_29 = 20;
9815pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_29 = 21;
9816pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_29 = 22;
9817pub const IFLA_VXLAN_GBP: _bindgen_ty_29 = 23;
9818pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_29 = 24;
9819pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_29 = 25;
9820pub const IFLA_VXLAN_LABEL: _bindgen_ty_29 = 26;
9821pub const IFLA_VXLAN_GPE: _bindgen_ty_29 = 27;
9822pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_29 = 28;
9823pub const IFLA_VXLAN_DF: _bindgen_ty_29 = 29;
9824pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_29 = 30;
9825pub const IFLA_VXLAN_LOCALBYPASS: _bindgen_ty_29 = 31;
9826pub const IFLA_VXLAN_LABEL_POLICY: _bindgen_ty_29 = 32;
9827pub const __IFLA_VXLAN_MAX: _bindgen_ty_29 = 33;
9828pub type _bindgen_ty_29 = crate::types::c_uint;
9829#[repr(C)]
9830#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9831pub struct ifla_vxlan_port_range {
9832    pub low: __be16,
9833    pub high: __be16,
9834}
9835pub const ifla_vxlan_df_VXLAN_DF_UNSET: ifla_vxlan_df = 0;
9836pub const ifla_vxlan_df_VXLAN_DF_SET: ifla_vxlan_df = 1;
9837pub const ifla_vxlan_df_VXLAN_DF_INHERIT: ifla_vxlan_df = 2;
9838pub const ifla_vxlan_df___VXLAN_DF_END: ifla_vxlan_df = 3;
9839pub const ifla_vxlan_df_VXLAN_DF_MAX: ifla_vxlan_df = 2;
9840pub type ifla_vxlan_df = crate::types::c_uint;
9841pub const ifla_vxlan_label_policy_VXLAN_LABEL_FIXED: ifla_vxlan_label_policy = 0;
9842pub const ifla_vxlan_label_policy_VXLAN_LABEL_INHERIT: ifla_vxlan_label_policy = 1;
9843pub const ifla_vxlan_label_policy___VXLAN_LABEL_END: ifla_vxlan_label_policy = 2;
9844pub const ifla_vxlan_label_policy_VXLAN_LABEL_MAX: ifla_vxlan_label_policy = 1;
9845pub type ifla_vxlan_label_policy = crate::types::c_uint;
9846pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_30 = 0;
9847pub const IFLA_GENEVE_ID: _bindgen_ty_30 = 1;
9848pub const IFLA_GENEVE_REMOTE: _bindgen_ty_30 = 2;
9849pub const IFLA_GENEVE_TTL: _bindgen_ty_30 = 3;
9850pub const IFLA_GENEVE_TOS: _bindgen_ty_30 = 4;
9851pub const IFLA_GENEVE_PORT: _bindgen_ty_30 = 5;
9852pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_30 = 6;
9853pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_30 = 7;
9854pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_30 = 8;
9855pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_30 = 9;
9856pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_30 = 10;
9857pub const IFLA_GENEVE_LABEL: _bindgen_ty_30 = 11;
9858pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_30 = 12;
9859pub const IFLA_GENEVE_DF: _bindgen_ty_30 = 13;
9860pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_30 = 14;
9861pub const __IFLA_GENEVE_MAX: _bindgen_ty_30 = 15;
9862pub type _bindgen_ty_30 = crate::types::c_uint;
9863pub const ifla_geneve_df_GENEVE_DF_UNSET: ifla_geneve_df = 0;
9864pub const ifla_geneve_df_GENEVE_DF_SET: ifla_geneve_df = 1;
9865pub const ifla_geneve_df_GENEVE_DF_INHERIT: ifla_geneve_df = 2;
9866pub const ifla_geneve_df___GENEVE_DF_END: ifla_geneve_df = 3;
9867pub const ifla_geneve_df_GENEVE_DF_MAX: ifla_geneve_df = 2;
9868pub type ifla_geneve_df = crate::types::c_uint;
9869pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_31 = 0;
9870pub const IFLA_BAREUDP_PORT: _bindgen_ty_31 = 1;
9871pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_31 = 2;
9872pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_31 = 3;
9873pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_31 = 4;
9874pub const __IFLA_BAREUDP_MAX: _bindgen_ty_31 = 5;
9875pub type _bindgen_ty_31 = crate::types::c_uint;
9876pub const IFLA_PPP_UNSPEC: _bindgen_ty_32 = 0;
9877pub const IFLA_PPP_DEV_FD: _bindgen_ty_32 = 1;
9878pub const __IFLA_PPP_MAX: _bindgen_ty_32 = 2;
9879pub type _bindgen_ty_32 = crate::types::c_uint;
9880pub const ifla_gtp_role_GTP_ROLE_GGSN: ifla_gtp_role = 0;
9881pub const ifla_gtp_role_GTP_ROLE_SGSN: ifla_gtp_role = 1;
9882pub type ifla_gtp_role = crate::types::c_uint;
9883pub const IFLA_GTP_UNSPEC: _bindgen_ty_33 = 0;
9884pub const IFLA_GTP_FD0: _bindgen_ty_33 = 1;
9885pub const IFLA_GTP_FD1: _bindgen_ty_33 = 2;
9886pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_33 = 3;
9887pub const IFLA_GTP_ROLE: _bindgen_ty_33 = 4;
9888pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_33 = 5;
9889pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_33 = 6;
9890pub const IFLA_GTP_LOCAL: _bindgen_ty_33 = 7;
9891pub const IFLA_GTP_LOCAL6: _bindgen_ty_33 = 8;
9892pub const __IFLA_GTP_MAX: _bindgen_ty_33 = 9;
9893pub type _bindgen_ty_33 = crate::types::c_uint;
9894pub const IFLA_BOND_UNSPEC: _bindgen_ty_34 = 0;
9895pub const IFLA_BOND_MODE: _bindgen_ty_34 = 1;
9896pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_34 = 2;
9897pub const IFLA_BOND_MIIMON: _bindgen_ty_34 = 3;
9898pub const IFLA_BOND_UPDELAY: _bindgen_ty_34 = 4;
9899pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_34 = 5;
9900pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_34 = 6;
9901pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_34 = 7;
9902pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_34 = 8;
9903pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_34 = 9;
9904pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_34 = 10;
9905pub const IFLA_BOND_PRIMARY: _bindgen_ty_34 = 11;
9906pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_34 = 12;
9907pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_34 = 13;
9908pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_34 = 14;
9909pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_34 = 15;
9910pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_34 = 16;
9911pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_34 = 17;
9912pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_34 = 18;
9913pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_34 = 19;
9914pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_34 = 20;
9915pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_34 = 21;
9916pub const IFLA_BOND_AD_SELECT: _bindgen_ty_34 = 22;
9917pub const IFLA_BOND_AD_INFO: _bindgen_ty_34 = 23;
9918pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_34 = 24;
9919pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_34 = 25;
9920pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_34 = 26;
9921pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_34 = 27;
9922pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_34 = 28;
9923pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_34 = 29;
9924pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_34 = 30;
9925pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_34 = 31;
9926pub const IFLA_BOND_COUPLED_CONTROL: _bindgen_ty_34 = 32;
9927pub const __IFLA_BOND_MAX: _bindgen_ty_34 = 33;
9928pub type _bindgen_ty_34 = crate::types::c_uint;
9929pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_35 = 0;
9930pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_35 = 1;
9931pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_35 = 2;
9932pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_35 = 3;
9933pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_35 = 4;
9934pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_35 = 5;
9935pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_35 = 6;
9936pub type _bindgen_ty_35 = crate::types::c_uint;
9937pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_36 = 0;
9938pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_36 = 1;
9939pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_36 = 2;
9940pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_36 = 3;
9941pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_36 = 4;
9942pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_36 = 5;
9943pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_36 = 6;
9944pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_36 = 7;
9945pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_36 = 8;
9946pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_36 = 9;
9947pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_36 = 10;
9948pub type _bindgen_ty_36 = crate::types::c_uint;
9949pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_37 = 0;
9950pub const IFLA_VF_INFO: _bindgen_ty_37 = 1;
9951pub const __IFLA_VF_INFO_MAX: _bindgen_ty_37 = 2;
9952pub type _bindgen_ty_37 = crate::types::c_uint;
9953pub const IFLA_VF_UNSPEC: _bindgen_ty_38 = 0;
9954pub const IFLA_VF_MAC: _bindgen_ty_38 = 1;
9955pub const IFLA_VF_VLAN: _bindgen_ty_38 = 2;
9956pub const IFLA_VF_TX_RATE: _bindgen_ty_38 = 3;
9957pub const IFLA_VF_SPOOFCHK: _bindgen_ty_38 = 4;
9958pub const IFLA_VF_LINK_STATE: _bindgen_ty_38 = 5;
9959pub const IFLA_VF_RATE: _bindgen_ty_38 = 6;
9960pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_38 = 7;
9961pub const IFLA_VF_STATS: _bindgen_ty_38 = 8;
9962pub const IFLA_VF_TRUST: _bindgen_ty_38 = 9;
9963pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_38 = 10;
9964pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_38 = 11;
9965pub const IFLA_VF_VLAN_LIST: _bindgen_ty_38 = 12;
9966pub const IFLA_VF_BROADCAST: _bindgen_ty_38 = 13;
9967pub const __IFLA_VF_MAX: _bindgen_ty_38 = 14;
9968pub type _bindgen_ty_38 = crate::types::c_uint;
9969#[repr(C)]
9970#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9971pub struct ifla_vf_mac {
9972    pub vf: __u32,
9973    pub mac: [__u8; 32usize],
9974}
9975#[repr(C)]
9976#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9977pub struct ifla_vf_broadcast {
9978    pub broadcast: [__u8; 32usize],
9979}
9980#[repr(C)]
9981#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9982pub struct ifla_vf_vlan {
9983    pub vf: __u32,
9984    pub vlan: __u32,
9985    pub qos: __u32,
9986}
9987pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_39 = 0;
9988pub const IFLA_VF_VLAN_INFO: _bindgen_ty_39 = 1;
9989pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_39 = 2;
9990pub type _bindgen_ty_39 = crate::types::c_uint;
9991#[repr(C)]
9992#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9993pub struct ifla_vf_vlan_info {
9994    pub vf: __u32,
9995    pub vlan: __u32,
9996    pub qos: __u32,
9997    pub vlan_proto: __be16,
9998    pub __bindgen_padding_0: [u8; 2usize],
9999}
10000#[repr(C)]
10001#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10002pub struct ifla_vf_tx_rate {
10003    pub vf: __u32,
10004    pub rate: __u32,
10005}
10006#[repr(C)]
10007#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10008pub struct ifla_vf_rate {
10009    pub vf: __u32,
10010    pub min_tx_rate: __u32,
10011    pub max_tx_rate: __u32,
10012}
10013#[repr(C)]
10014#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10015pub struct ifla_vf_spoofchk {
10016    pub vf: __u32,
10017    pub setting: __u32,
10018}
10019#[repr(C)]
10020#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10021pub struct ifla_vf_guid {
10022    pub vf: __u32,
10023    pub __bindgen_padding_0: [u8; 4usize],
10024    pub guid: __u64,
10025}
10026pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_40 = 0;
10027pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_40 = 1;
10028pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_40 = 2;
10029pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_40 = 3;
10030pub type _bindgen_ty_40 = crate::types::c_uint;
10031#[repr(C)]
10032#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10033pub struct ifla_vf_link_state {
10034    pub vf: __u32,
10035    pub link_state: __u32,
10036}
10037#[repr(C)]
10038#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10039pub struct ifla_vf_rss_query_en {
10040    pub vf: __u32,
10041    pub setting: __u32,
10042}
10043pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_41 = 0;
10044pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_41 = 1;
10045pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_41 = 2;
10046pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_41 = 3;
10047pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_41 = 4;
10048pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_41 = 5;
10049pub const IFLA_VF_STATS_PAD: _bindgen_ty_41 = 6;
10050pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_41 = 7;
10051pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_41 = 8;
10052pub const __IFLA_VF_STATS_MAX: _bindgen_ty_41 = 9;
10053pub type _bindgen_ty_41 = crate::types::c_uint;
10054#[repr(C)]
10055#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10056pub struct ifla_vf_trust {
10057    pub vf: __u32,
10058    pub setting: __u32,
10059}
10060pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_42 = 0;
10061pub const IFLA_VF_PORT: _bindgen_ty_42 = 1;
10062pub const __IFLA_VF_PORT_MAX: _bindgen_ty_42 = 2;
10063pub type _bindgen_ty_42 = crate::types::c_uint;
10064pub const IFLA_PORT_UNSPEC: _bindgen_ty_43 = 0;
10065pub const IFLA_PORT_VF: _bindgen_ty_43 = 1;
10066pub const IFLA_PORT_PROFILE: _bindgen_ty_43 = 2;
10067pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_43 = 3;
10068pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_43 = 4;
10069pub const IFLA_PORT_HOST_UUID: _bindgen_ty_43 = 5;
10070pub const IFLA_PORT_REQUEST: _bindgen_ty_43 = 6;
10071pub const IFLA_PORT_RESPONSE: _bindgen_ty_43 = 7;
10072pub const __IFLA_PORT_MAX: _bindgen_ty_43 = 8;
10073pub type _bindgen_ty_43 = crate::types::c_uint;
10074pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_44 = 0;
10075pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_44 = 1;
10076pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_44 = 2;
10077pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_44 = 3;
10078pub type _bindgen_ty_44 = crate::types::c_uint;
10079pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_45 = 0;
10080pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_45 = 1;
10081pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_45 = 2;
10082pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_45 = 3;
10083pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_45 = 4;
10084pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_45 = 5;
10085pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_45 = 6;
10086pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_45 = 256;
10087pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_45 = 257;
10088pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_45 = 258;
10089pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_45 = 259;
10090pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_45 = 260;
10091pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_45 = 261;
10092pub type _bindgen_ty_45 = crate::types::c_uint;
10093#[repr(C)]
10094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10095pub struct ifla_port_vsi {
10096    pub vsi_mgr_id: __u8,
10097    pub vsi_type_id: [__u8; 3usize],
10098    pub vsi_type_version: __u8,
10099    pub pad: [__u8; 3usize],
10100}
10101pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_46 = 0;
10102pub const IFLA_IPOIB_PKEY: _bindgen_ty_46 = 1;
10103pub const IFLA_IPOIB_MODE: _bindgen_ty_46 = 2;
10104pub const IFLA_IPOIB_UMCAST: _bindgen_ty_46 = 3;
10105pub const __IFLA_IPOIB_MAX: _bindgen_ty_46 = 4;
10106pub type _bindgen_ty_46 = crate::types::c_uint;
10107pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_47 = 0;
10108pub const IPOIB_MODE_CONNECTED: _bindgen_ty_47 = 1;
10109pub type _bindgen_ty_47 = crate::types::c_uint;
10110pub const HSR_PROTOCOL_HSR: _bindgen_ty_48 = 0;
10111pub const HSR_PROTOCOL_PRP: _bindgen_ty_48 = 1;
10112pub const HSR_PROTOCOL_MAX: _bindgen_ty_48 = 2;
10113pub type _bindgen_ty_48 = crate::types::c_uint;
10114pub const IFLA_HSR_UNSPEC: _bindgen_ty_49 = 0;
10115pub const IFLA_HSR_SLAVE1: _bindgen_ty_49 = 1;
10116pub const IFLA_HSR_SLAVE2: _bindgen_ty_49 = 2;
10117pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_49 = 3;
10118pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_49 = 4;
10119pub const IFLA_HSR_SEQ_NR: _bindgen_ty_49 = 5;
10120pub const IFLA_HSR_VERSION: _bindgen_ty_49 = 6;
10121pub const IFLA_HSR_PROTOCOL: _bindgen_ty_49 = 7;
10122pub const IFLA_HSR_INTERLINK: _bindgen_ty_49 = 8;
10123pub const __IFLA_HSR_MAX: _bindgen_ty_49 = 9;
10124pub type _bindgen_ty_49 = crate::types::c_uint;
10125#[repr(C)]
10126#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10127pub struct if_stats_msg {
10128    pub family: __u8,
10129    pub pad1: __u8,
10130    pub pad2: __u16,
10131    pub ifindex: __u32,
10132    pub filter_mask: __u32,
10133}
10134pub const IFLA_STATS_UNSPEC: _bindgen_ty_50 = 0;
10135pub const IFLA_STATS_LINK_64: _bindgen_ty_50 = 1;
10136pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_50 = 2;
10137pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_50 = 3;
10138pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_50 = 4;
10139pub const IFLA_STATS_AF_SPEC: _bindgen_ty_50 = 5;
10140pub const __IFLA_STATS_MAX: _bindgen_ty_50 = 6;
10141pub type _bindgen_ty_50 = crate::types::c_uint;
10142pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_51 = 0;
10143pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_51 = 1;
10144pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_51 = 2;
10145pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_51 = 3;
10146pub type _bindgen_ty_51 = crate::types::c_uint;
10147pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_52 = 0;
10148pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_52 = 1;
10149pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_52 = 2;
10150pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_52 = 3;
10151pub type _bindgen_ty_52 = crate::types::c_uint;
10152pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_53 = 0;
10153pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_53 = 1;
10154pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_53 = 2;
10155pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_53 = 3;
10156pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_53 = 4;
10157pub type _bindgen_ty_53 = crate::types::c_uint;
10158pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_54 = 0;
10159pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_54 = 1;
10160pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_54 = 2;
10161pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_54 = 3;
10162pub type _bindgen_ty_54 = crate::types::c_uint;
10163pub const XDP_ATTACHED_NONE: _bindgen_ty_55 = 0;
10164pub const XDP_ATTACHED_DRV: _bindgen_ty_55 = 1;
10165pub const XDP_ATTACHED_SKB: _bindgen_ty_55 = 2;
10166pub const XDP_ATTACHED_HW: _bindgen_ty_55 = 3;
10167pub const XDP_ATTACHED_MULTI: _bindgen_ty_55 = 4;
10168pub type _bindgen_ty_55 = crate::types::c_uint;
10169pub const IFLA_XDP_UNSPEC: _bindgen_ty_56 = 0;
10170pub const IFLA_XDP_FD: _bindgen_ty_56 = 1;
10171pub const IFLA_XDP_ATTACHED: _bindgen_ty_56 = 2;
10172pub const IFLA_XDP_FLAGS: _bindgen_ty_56 = 3;
10173pub const IFLA_XDP_PROG_ID: _bindgen_ty_56 = 4;
10174pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_56 = 5;
10175pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_56 = 6;
10176pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_56 = 7;
10177pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_56 = 8;
10178pub const __IFLA_XDP_MAX: _bindgen_ty_56 = 9;
10179pub type _bindgen_ty_56 = crate::types::c_uint;
10180pub const IFLA_EVENT_NONE: _bindgen_ty_57 = 0;
10181pub const IFLA_EVENT_REBOOT: _bindgen_ty_57 = 1;
10182pub const IFLA_EVENT_FEATURES: _bindgen_ty_57 = 2;
10183pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_57 = 3;
10184pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_57 = 4;
10185pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_57 = 5;
10186pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_57 = 6;
10187pub type _bindgen_ty_57 = crate::types::c_uint;
10188pub const IFLA_TUN_UNSPEC: _bindgen_ty_58 = 0;
10189pub const IFLA_TUN_OWNER: _bindgen_ty_58 = 1;
10190pub const IFLA_TUN_GROUP: _bindgen_ty_58 = 2;
10191pub const IFLA_TUN_TYPE: _bindgen_ty_58 = 3;
10192pub const IFLA_TUN_PI: _bindgen_ty_58 = 4;
10193pub const IFLA_TUN_VNET_HDR: _bindgen_ty_58 = 5;
10194pub const IFLA_TUN_PERSIST: _bindgen_ty_58 = 6;
10195pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_58 = 7;
10196pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_58 = 8;
10197pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_58 = 9;
10198pub const __IFLA_TUN_MAX: _bindgen_ty_58 = 10;
10199pub type _bindgen_ty_58 = crate::types::c_uint;
10200pub const IFLA_RMNET_UNSPEC: _bindgen_ty_59 = 0;
10201pub const IFLA_RMNET_MUX_ID: _bindgen_ty_59 = 1;
10202pub const IFLA_RMNET_FLAGS: _bindgen_ty_59 = 2;
10203pub const __IFLA_RMNET_MAX: _bindgen_ty_59 = 3;
10204pub type _bindgen_ty_59 = crate::types::c_uint;
10205#[repr(C)]
10206#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10207pub struct ifla_rmnet_flags {
10208    pub flags: __u32,
10209    pub mask: __u32,
10210}
10211pub const IFLA_MCTP_UNSPEC: _bindgen_ty_60 = 0;
10212pub const IFLA_MCTP_NET: _bindgen_ty_60 = 1;
10213pub const __IFLA_MCTP_MAX: _bindgen_ty_60 = 2;
10214pub type _bindgen_ty_60 = crate::types::c_uint;
10215pub const IFLA_DSA_UNSPEC: _bindgen_ty_61 = 0;
10216pub const IFLA_DSA_CONDUIT: _bindgen_ty_61 = 1;
10217pub const IFLA_DSA_MASTER: _bindgen_ty_61 = 1;
10218pub const __IFLA_DSA_MAX: _bindgen_ty_61 = 2;
10219pub type _bindgen_ty_61 = crate::types::c_uint;
10220#[repr(C)]
10221#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10222pub struct ifaddrmsg {
10223    pub ifa_family: __u8,
10224    pub ifa_prefixlen: __u8,
10225    pub ifa_flags: __u8,
10226    pub ifa_scope: __u8,
10227    pub ifa_index: __u32,
10228}
10229pub const IFA_UNSPEC: _bindgen_ty_62 = 0;
10230pub const IFA_ADDRESS: _bindgen_ty_62 = 1;
10231pub const IFA_LOCAL: _bindgen_ty_62 = 2;
10232pub const IFA_LABEL: _bindgen_ty_62 = 3;
10233pub const IFA_BROADCAST: _bindgen_ty_62 = 4;
10234pub const IFA_ANYCAST: _bindgen_ty_62 = 5;
10235pub const IFA_CACHEINFO: _bindgen_ty_62 = 6;
10236pub const IFA_MULTICAST: _bindgen_ty_62 = 7;
10237pub const IFA_FLAGS: _bindgen_ty_62 = 8;
10238pub const IFA_RT_PRIORITY: _bindgen_ty_62 = 9;
10239pub const IFA_TARGET_NETNSID: _bindgen_ty_62 = 10;
10240pub const IFA_PROTO: _bindgen_ty_62 = 11;
10241pub const __IFA_MAX: _bindgen_ty_62 = 12;
10242pub type _bindgen_ty_62 = crate::types::c_uint;
10243#[repr(C)]
10244#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10245pub struct ifa_cacheinfo {
10246    pub ifa_prefered: __u32,
10247    pub ifa_valid: __u32,
10248    pub cstamp: __u32,
10249    pub tstamp: __u32,
10250}
10251#[repr(C)]
10252#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10253pub struct ndmsg {
10254    pub ndm_family: __u8,
10255    pub ndm_pad1: __u8,
10256    pub ndm_pad2: __u16,
10257    pub ndm_ifindex: __s32,
10258    pub ndm_state: __u16,
10259    pub ndm_flags: __u8,
10260    pub ndm_type: __u8,
10261}
10262pub const NDA_UNSPEC: _bindgen_ty_63 = 0;
10263pub const NDA_DST: _bindgen_ty_63 = 1;
10264pub const NDA_LLADDR: _bindgen_ty_63 = 2;
10265pub const NDA_CACHEINFO: _bindgen_ty_63 = 3;
10266pub const NDA_PROBES: _bindgen_ty_63 = 4;
10267pub const NDA_VLAN: _bindgen_ty_63 = 5;
10268pub const NDA_PORT: _bindgen_ty_63 = 6;
10269pub const NDA_VNI: _bindgen_ty_63 = 7;
10270pub const NDA_IFINDEX: _bindgen_ty_63 = 8;
10271pub const NDA_MASTER: _bindgen_ty_63 = 9;
10272pub const NDA_LINK_NETNSID: _bindgen_ty_63 = 10;
10273pub const NDA_SRC_VNI: _bindgen_ty_63 = 11;
10274pub const NDA_PROTOCOL: _bindgen_ty_63 = 12;
10275pub const NDA_NH_ID: _bindgen_ty_63 = 13;
10276pub const NDA_FDB_EXT_ATTRS: _bindgen_ty_63 = 14;
10277pub const NDA_FLAGS_EXT: _bindgen_ty_63 = 15;
10278pub const NDA_NDM_STATE_MASK: _bindgen_ty_63 = 16;
10279pub const NDA_NDM_FLAGS_MASK: _bindgen_ty_63 = 17;
10280pub const __NDA_MAX: _bindgen_ty_63 = 18;
10281pub type _bindgen_ty_63 = crate::types::c_uint;
10282#[repr(C)]
10283#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10284pub struct nda_cacheinfo {
10285    pub ndm_confirmed: __u32,
10286    pub ndm_used: __u32,
10287    pub ndm_updated: __u32,
10288    pub ndm_refcnt: __u32,
10289}
10290#[repr(C)]
10291#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10292pub struct ndt_stats {
10293    pub ndts_allocs: __u64,
10294    pub ndts_destroys: __u64,
10295    pub ndts_hash_grows: __u64,
10296    pub ndts_res_failed: __u64,
10297    pub ndts_lookups: __u64,
10298    pub ndts_hits: __u64,
10299    pub ndts_rcv_probes_mcast: __u64,
10300    pub ndts_rcv_probes_ucast: __u64,
10301    pub ndts_periodic_gc_runs: __u64,
10302    pub ndts_forced_gc_runs: __u64,
10303    pub ndts_table_fulls: __u64,
10304}
10305pub const NDTPA_UNSPEC: _bindgen_ty_64 = 0;
10306pub const NDTPA_IFINDEX: _bindgen_ty_64 = 1;
10307pub const NDTPA_REFCNT: _bindgen_ty_64 = 2;
10308pub const NDTPA_REACHABLE_TIME: _bindgen_ty_64 = 3;
10309pub const NDTPA_BASE_REACHABLE_TIME: _bindgen_ty_64 = 4;
10310pub const NDTPA_RETRANS_TIME: _bindgen_ty_64 = 5;
10311pub const NDTPA_GC_STALETIME: _bindgen_ty_64 = 6;
10312pub const NDTPA_DELAY_PROBE_TIME: _bindgen_ty_64 = 7;
10313pub const NDTPA_QUEUE_LEN: _bindgen_ty_64 = 8;
10314pub const NDTPA_APP_PROBES: _bindgen_ty_64 = 9;
10315pub const NDTPA_UCAST_PROBES: _bindgen_ty_64 = 10;
10316pub const NDTPA_MCAST_PROBES: _bindgen_ty_64 = 11;
10317pub const NDTPA_ANYCAST_DELAY: _bindgen_ty_64 = 12;
10318pub const NDTPA_PROXY_DELAY: _bindgen_ty_64 = 13;
10319pub const NDTPA_PROXY_QLEN: _bindgen_ty_64 = 14;
10320pub const NDTPA_LOCKTIME: _bindgen_ty_64 = 15;
10321pub const NDTPA_QUEUE_LENBYTES: _bindgen_ty_64 = 16;
10322pub const NDTPA_MCAST_REPROBES: _bindgen_ty_64 = 17;
10323pub const NDTPA_PAD: _bindgen_ty_64 = 18;
10324pub const NDTPA_INTERVAL_PROBE_TIME_MS: _bindgen_ty_64 = 19;
10325pub const __NDTPA_MAX: _bindgen_ty_64 = 20;
10326pub type _bindgen_ty_64 = crate::types::c_uint;
10327#[repr(C)]
10328#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10329pub struct ndtmsg {
10330    pub ndtm_family: __u8,
10331    pub ndtm_pad1: __u8,
10332    pub ndtm_pad2: __u16,
10333}
10334#[repr(C)]
10335#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10336pub struct ndt_config {
10337    pub ndtc_key_len: __u16,
10338    pub ndtc_entry_size: __u16,
10339    pub ndtc_entries: __u32,
10340    pub ndtc_last_flush: __u32,
10341    pub ndtc_last_rand: __u32,
10342    pub ndtc_hash_rnd: __u32,
10343    pub ndtc_hash_mask: __u32,
10344    pub ndtc_hash_chain_gc: __u32,
10345    pub ndtc_proxy_qlen: __u32,
10346}
10347pub const NDTA_UNSPEC: _bindgen_ty_65 = 0;
10348pub const NDTA_NAME: _bindgen_ty_65 = 1;
10349pub const NDTA_THRESH1: _bindgen_ty_65 = 2;
10350pub const NDTA_THRESH2: _bindgen_ty_65 = 3;
10351pub const NDTA_THRESH3: _bindgen_ty_65 = 4;
10352pub const NDTA_CONFIG: _bindgen_ty_65 = 5;
10353pub const NDTA_PARMS: _bindgen_ty_65 = 6;
10354pub const NDTA_STATS: _bindgen_ty_65 = 7;
10355pub const NDTA_GC_INTERVAL: _bindgen_ty_65 = 8;
10356pub const NDTA_PAD: _bindgen_ty_65 = 9;
10357pub const __NDTA_MAX: _bindgen_ty_65 = 10;
10358pub type _bindgen_ty_65 = crate::types::c_uint;
10359pub const FDB_NOTIFY_BIT: _bindgen_ty_66 = 1;
10360pub const FDB_NOTIFY_INACTIVE_BIT: _bindgen_ty_66 = 2;
10361pub type _bindgen_ty_66 = crate::types::c_uint;
10362pub const NFEA_UNSPEC: _bindgen_ty_67 = 0;
10363pub const NFEA_ACTIVITY_NOTIFY: _bindgen_ty_67 = 1;
10364pub const NFEA_DONT_REFRESH: _bindgen_ty_67 = 2;
10365pub const __NFEA_MAX: _bindgen_ty_67 = 3;
10366pub type _bindgen_ty_67 = crate::types::c_uint;
10367pub const RTM_BASE: _bindgen_ty_68 = 16;
10368pub const RTM_NEWLINK: _bindgen_ty_68 = 16;
10369pub const RTM_DELLINK: _bindgen_ty_68 = 17;
10370pub const RTM_GETLINK: _bindgen_ty_68 = 18;
10371pub const RTM_SETLINK: _bindgen_ty_68 = 19;
10372pub const RTM_NEWADDR: _bindgen_ty_68 = 20;
10373pub const RTM_DELADDR: _bindgen_ty_68 = 21;
10374pub const RTM_GETADDR: _bindgen_ty_68 = 22;
10375pub const RTM_NEWROUTE: _bindgen_ty_68 = 24;
10376pub const RTM_DELROUTE: _bindgen_ty_68 = 25;
10377pub const RTM_GETROUTE: _bindgen_ty_68 = 26;
10378pub const RTM_NEWNEIGH: _bindgen_ty_68 = 28;
10379pub const RTM_DELNEIGH: _bindgen_ty_68 = 29;
10380pub const RTM_GETNEIGH: _bindgen_ty_68 = 30;
10381pub const RTM_NEWRULE: _bindgen_ty_68 = 32;
10382pub const RTM_DELRULE: _bindgen_ty_68 = 33;
10383pub const RTM_GETRULE: _bindgen_ty_68 = 34;
10384pub const RTM_NEWQDISC: _bindgen_ty_68 = 36;
10385pub const RTM_DELQDISC: _bindgen_ty_68 = 37;
10386pub const RTM_GETQDISC: _bindgen_ty_68 = 38;
10387pub const RTM_NEWTCLASS: _bindgen_ty_68 = 40;
10388pub const RTM_DELTCLASS: _bindgen_ty_68 = 41;
10389pub const RTM_GETTCLASS: _bindgen_ty_68 = 42;
10390pub const RTM_NEWTFILTER: _bindgen_ty_68 = 44;
10391pub const RTM_DELTFILTER: _bindgen_ty_68 = 45;
10392pub const RTM_GETTFILTER: _bindgen_ty_68 = 46;
10393pub const RTM_NEWACTION: _bindgen_ty_68 = 48;
10394pub const RTM_DELACTION: _bindgen_ty_68 = 49;
10395pub const RTM_GETACTION: _bindgen_ty_68 = 50;
10396pub const RTM_NEWPREFIX: _bindgen_ty_68 = 52;
10397pub const RTM_GETMULTICAST: _bindgen_ty_68 = 58;
10398pub const RTM_GETANYCAST: _bindgen_ty_68 = 62;
10399pub const RTM_NEWNEIGHTBL: _bindgen_ty_68 = 64;
10400pub const RTM_GETNEIGHTBL: _bindgen_ty_68 = 66;
10401pub const RTM_SETNEIGHTBL: _bindgen_ty_68 = 67;
10402pub const RTM_NEWNDUSEROPT: _bindgen_ty_68 = 68;
10403pub const RTM_NEWADDRLABEL: _bindgen_ty_68 = 72;
10404pub const RTM_DELADDRLABEL: _bindgen_ty_68 = 73;
10405pub const RTM_GETADDRLABEL: _bindgen_ty_68 = 74;
10406pub const RTM_GETDCB: _bindgen_ty_68 = 78;
10407pub const RTM_SETDCB: _bindgen_ty_68 = 79;
10408pub const RTM_NEWNETCONF: _bindgen_ty_68 = 80;
10409pub const RTM_DELNETCONF: _bindgen_ty_68 = 81;
10410pub const RTM_GETNETCONF: _bindgen_ty_68 = 82;
10411pub const RTM_NEWMDB: _bindgen_ty_68 = 84;
10412pub const RTM_DELMDB: _bindgen_ty_68 = 85;
10413pub const RTM_GETMDB: _bindgen_ty_68 = 86;
10414pub const RTM_NEWNSID: _bindgen_ty_68 = 88;
10415pub const RTM_DELNSID: _bindgen_ty_68 = 89;
10416pub const RTM_GETNSID: _bindgen_ty_68 = 90;
10417pub const RTM_NEWSTATS: _bindgen_ty_68 = 92;
10418pub const RTM_GETSTATS: _bindgen_ty_68 = 94;
10419pub const RTM_SETSTATS: _bindgen_ty_68 = 95;
10420pub const RTM_NEWCACHEREPORT: _bindgen_ty_68 = 96;
10421pub const RTM_NEWCHAIN: _bindgen_ty_68 = 100;
10422pub const RTM_DELCHAIN: _bindgen_ty_68 = 101;
10423pub const RTM_GETCHAIN: _bindgen_ty_68 = 102;
10424pub const RTM_NEWNEXTHOP: _bindgen_ty_68 = 104;
10425pub const RTM_DELNEXTHOP: _bindgen_ty_68 = 105;
10426pub const RTM_GETNEXTHOP: _bindgen_ty_68 = 106;
10427pub const RTM_NEWLINKPROP: _bindgen_ty_68 = 108;
10428pub const RTM_DELLINKPROP: _bindgen_ty_68 = 109;
10429pub const RTM_GETLINKPROP: _bindgen_ty_68 = 110;
10430pub const RTM_NEWVLAN: _bindgen_ty_68 = 112;
10431pub const RTM_DELVLAN: _bindgen_ty_68 = 113;
10432pub const RTM_GETVLAN: _bindgen_ty_68 = 114;
10433pub const RTM_NEWNEXTHOPBUCKET: _bindgen_ty_68 = 116;
10434pub const RTM_DELNEXTHOPBUCKET: _bindgen_ty_68 = 117;
10435pub const RTM_GETNEXTHOPBUCKET: _bindgen_ty_68 = 118;
10436pub const RTM_NEWTUNNEL: _bindgen_ty_68 = 120;
10437pub const RTM_DELTUNNEL: _bindgen_ty_68 = 121;
10438pub const RTM_GETTUNNEL: _bindgen_ty_68 = 122;
10439pub const __RTM_MAX: _bindgen_ty_68 = 123;
10440pub type _bindgen_ty_68 = crate::types::c_uint;
10441#[repr(C)]
10442#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10443pub struct rtattr {
10444    pub rta_len: crate::types::c_ushort,
10445    pub rta_type: crate::types::c_ushort,
10446}
10447#[repr(C)]
10448#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10449pub struct rtmsg {
10450    pub rtm_family: crate::types::c_uchar,
10451    pub rtm_dst_len: crate::types::c_uchar,
10452    pub rtm_src_len: crate::types::c_uchar,
10453    pub rtm_tos: crate::types::c_uchar,
10454    pub rtm_table: crate::types::c_uchar,
10455    pub rtm_protocol: crate::types::c_uchar,
10456    pub rtm_scope: crate::types::c_uchar,
10457    pub rtm_type: crate::types::c_uchar,
10458    pub rtm_flags: crate::types::c_uint,
10459}
10460pub const RTN_UNSPEC: _bindgen_ty_69 = 0;
10461pub const RTN_UNICAST: _bindgen_ty_69 = 1;
10462pub const RTN_LOCAL: _bindgen_ty_69 = 2;
10463pub const RTN_BROADCAST: _bindgen_ty_69 = 3;
10464pub const RTN_ANYCAST: _bindgen_ty_69 = 4;
10465pub const RTN_MULTICAST: _bindgen_ty_69 = 5;
10466pub const RTN_BLACKHOLE: _bindgen_ty_69 = 6;
10467pub const RTN_UNREACHABLE: _bindgen_ty_69 = 7;
10468pub const RTN_PROHIBIT: _bindgen_ty_69 = 8;
10469pub const RTN_THROW: _bindgen_ty_69 = 9;
10470pub const RTN_NAT: _bindgen_ty_69 = 10;
10471pub const RTN_XRESOLVE: _bindgen_ty_69 = 11;
10472pub const __RTN_MAX: _bindgen_ty_69 = 12;
10473pub type _bindgen_ty_69 = crate::types::c_uint;
10474pub const rt_scope_t_RT_SCOPE_UNIVERSE: rt_scope_t = 0;
10475pub const rt_scope_t_RT_SCOPE_SITE: rt_scope_t = 200;
10476pub const rt_scope_t_RT_SCOPE_LINK: rt_scope_t = 253;
10477pub const rt_scope_t_RT_SCOPE_HOST: rt_scope_t = 254;
10478pub const rt_scope_t_RT_SCOPE_NOWHERE: rt_scope_t = 255;
10479pub type rt_scope_t = crate::types::c_uint;
10480pub const rt_class_t_RT_TABLE_UNSPEC: rt_class_t = 0;
10481pub const rt_class_t_RT_TABLE_COMPAT: rt_class_t = 252;
10482pub const rt_class_t_RT_TABLE_DEFAULT: rt_class_t = 253;
10483pub const rt_class_t_RT_TABLE_MAIN: rt_class_t = 254;
10484pub const rt_class_t_RT_TABLE_LOCAL: rt_class_t = 255;
10485pub const rt_class_t_RT_TABLE_MAX: rt_class_t = 4294967295;
10486pub type rt_class_t = crate::types::c_uint;
10487pub const rtattr_type_t_RTA_UNSPEC: rtattr_type_t = 0;
10488pub const rtattr_type_t_RTA_DST: rtattr_type_t = 1;
10489pub const rtattr_type_t_RTA_SRC: rtattr_type_t = 2;
10490pub const rtattr_type_t_RTA_IIF: rtattr_type_t = 3;
10491pub const rtattr_type_t_RTA_OIF: rtattr_type_t = 4;
10492pub const rtattr_type_t_RTA_GATEWAY: rtattr_type_t = 5;
10493pub const rtattr_type_t_RTA_PRIORITY: rtattr_type_t = 6;
10494pub const rtattr_type_t_RTA_PREFSRC: rtattr_type_t = 7;
10495pub const rtattr_type_t_RTA_METRICS: rtattr_type_t = 8;
10496pub const rtattr_type_t_RTA_MULTIPATH: rtattr_type_t = 9;
10497pub const rtattr_type_t_RTA_PROTOINFO: rtattr_type_t = 10;
10498pub const rtattr_type_t_RTA_FLOW: rtattr_type_t = 11;
10499pub const rtattr_type_t_RTA_CACHEINFO: rtattr_type_t = 12;
10500pub const rtattr_type_t_RTA_SESSION: rtattr_type_t = 13;
10501pub const rtattr_type_t_RTA_MP_ALGO: rtattr_type_t = 14;
10502pub const rtattr_type_t_RTA_TABLE: rtattr_type_t = 15;
10503pub const rtattr_type_t_RTA_MARK: rtattr_type_t = 16;
10504pub const rtattr_type_t_RTA_MFC_STATS: rtattr_type_t = 17;
10505pub const rtattr_type_t_RTA_VIA: rtattr_type_t = 18;
10506pub const rtattr_type_t_RTA_NEWDST: rtattr_type_t = 19;
10507pub const rtattr_type_t_RTA_PREF: rtattr_type_t = 20;
10508pub const rtattr_type_t_RTA_ENCAP_TYPE: rtattr_type_t = 21;
10509pub const rtattr_type_t_RTA_ENCAP: rtattr_type_t = 22;
10510pub const rtattr_type_t_RTA_EXPIRES: rtattr_type_t = 23;
10511pub const rtattr_type_t_RTA_PAD: rtattr_type_t = 24;
10512pub const rtattr_type_t_RTA_UID: rtattr_type_t = 25;
10513pub const rtattr_type_t_RTA_TTL_PROPAGATE: rtattr_type_t = 26;
10514pub const rtattr_type_t_RTA_IP_PROTO: rtattr_type_t = 27;
10515pub const rtattr_type_t_RTA_SPORT: rtattr_type_t = 28;
10516pub const rtattr_type_t_RTA_DPORT: rtattr_type_t = 29;
10517pub const rtattr_type_t_RTA_NH_ID: rtattr_type_t = 30;
10518pub const rtattr_type_t___RTA_MAX: rtattr_type_t = 31;
10519pub type rtattr_type_t = crate::types::c_uint;
10520#[repr(C)]
10521#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10522pub struct rtnexthop {
10523    pub rtnh_len: crate::types::c_ushort,
10524    pub rtnh_flags: crate::types::c_uchar,
10525    pub rtnh_hops: crate::types::c_uchar,
10526    pub rtnh_ifindex: crate::types::c_int,
10527}
10528#[repr(C)]
10529#[derive(Debug, Default)]
10530pub struct rtvia {
10531    pub rtvia_family: __kernel_sa_family_t,
10532    pub rtvia_addr: __IncompleteArrayField<__u8>,
10533}
10534#[repr(C)]
10535#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10536pub struct rta_cacheinfo {
10537    pub rta_clntref: __u32,
10538    pub rta_lastuse: __u32,
10539    pub rta_expires: __s32,
10540    pub rta_error: __u32,
10541    pub rta_used: __u32,
10542    pub rta_id: __u32,
10543    pub rta_ts: __u32,
10544    pub rta_tsage: __u32,
10545}
10546pub const RTAX_UNSPEC: _bindgen_ty_70 = 0;
10547pub const RTAX_LOCK: _bindgen_ty_70 = 1;
10548pub const RTAX_MTU: _bindgen_ty_70 = 2;
10549pub const RTAX_WINDOW: _bindgen_ty_70 = 3;
10550pub const RTAX_RTT: _bindgen_ty_70 = 4;
10551pub const RTAX_RTTVAR: _bindgen_ty_70 = 5;
10552pub const RTAX_SSTHRESH: _bindgen_ty_70 = 6;
10553pub const RTAX_CWND: _bindgen_ty_70 = 7;
10554pub const RTAX_ADVMSS: _bindgen_ty_70 = 8;
10555pub const RTAX_REORDERING: _bindgen_ty_70 = 9;
10556pub const RTAX_HOPLIMIT: _bindgen_ty_70 = 10;
10557pub const RTAX_INITCWND: _bindgen_ty_70 = 11;
10558pub const RTAX_FEATURES: _bindgen_ty_70 = 12;
10559pub const RTAX_RTO_MIN: _bindgen_ty_70 = 13;
10560pub const RTAX_INITRWND: _bindgen_ty_70 = 14;
10561pub const RTAX_QUICKACK: _bindgen_ty_70 = 15;
10562pub const RTAX_CC_ALGO: _bindgen_ty_70 = 16;
10563pub const RTAX_FASTOPEN_NO_COOKIE: _bindgen_ty_70 = 17;
10564pub const __RTAX_MAX: _bindgen_ty_70 = 18;
10565pub type _bindgen_ty_70 = crate::types::c_uint;
10566#[repr(C)]
10567#[derive(Copy, Clone)]
10568pub struct rta_session {
10569    pub proto: __u8,
10570    pub pad1: __u8,
10571    pub pad2: __u16,
10572    pub u: rta_session__bindgen_ty_1,
10573}
10574#[repr(C)]
10575#[derive(Copy, Clone)]
10576pub union rta_session__bindgen_ty_1 {
10577    pub ports: rta_session__bindgen_ty_1__bindgen_ty_1,
10578    pub icmpt: rta_session__bindgen_ty_1__bindgen_ty_2,
10579    pub spi: __u32,
10580}
10581#[repr(C)]
10582#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10583pub struct rta_session__bindgen_ty_1__bindgen_ty_1 {
10584    pub sport: __u16,
10585    pub dport: __u16,
10586}
10587#[repr(C)]
10588#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10589pub struct rta_session__bindgen_ty_1__bindgen_ty_2 {
10590    pub type_: __u8,
10591    pub code: __u8,
10592    pub ident: __u16,
10593}
10594impl Default for rta_session__bindgen_ty_1 {
10595    fn default() -> Self {
10596        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10597        unsafe {
10598            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10599            s.assume_init()
10600        }
10601    }
10602}
10603impl Default for rta_session {
10604    fn default() -> Self {
10605        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10606        unsafe {
10607            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10608            s.assume_init()
10609        }
10610    }
10611}
10612#[repr(C)]
10613#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10614pub struct rta_mfc_stats {
10615    pub mfcs_packets: __u64,
10616    pub mfcs_bytes: __u64,
10617    pub mfcs_wrong_if: __u64,
10618}
10619#[repr(C)]
10620#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10621pub struct rtgenmsg {
10622    pub rtgen_family: crate::types::c_uchar,
10623}
10624#[repr(C)]
10625#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10626pub struct ifinfomsg {
10627    pub ifi_family: crate::types::c_uchar,
10628    pub __ifi_pad: crate::types::c_uchar,
10629    pub ifi_type: crate::types::c_ushort,
10630    pub ifi_index: crate::types::c_int,
10631    pub ifi_flags: crate::types::c_uint,
10632    pub ifi_change: crate::types::c_uint,
10633}
10634#[repr(C)]
10635#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10636pub struct prefixmsg {
10637    pub prefix_family: crate::types::c_uchar,
10638    pub prefix_pad1: crate::types::c_uchar,
10639    pub prefix_pad2: crate::types::c_ushort,
10640    pub prefix_ifindex: crate::types::c_int,
10641    pub prefix_type: crate::types::c_uchar,
10642    pub prefix_len: crate::types::c_uchar,
10643    pub prefix_flags: crate::types::c_uchar,
10644    pub prefix_pad3: crate::types::c_uchar,
10645}
10646pub const PREFIX_UNSPEC: _bindgen_ty_71 = 0;
10647pub const PREFIX_ADDRESS: _bindgen_ty_71 = 1;
10648pub const PREFIX_CACHEINFO: _bindgen_ty_71 = 2;
10649pub const __PREFIX_MAX: _bindgen_ty_71 = 3;
10650pub type _bindgen_ty_71 = crate::types::c_uint;
10651#[repr(C)]
10652#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10653pub struct prefix_cacheinfo {
10654    pub preferred_time: __u32,
10655    pub valid_time: __u32,
10656}
10657#[repr(C)]
10658#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10659pub struct tcmsg {
10660    pub tcm_family: crate::types::c_uchar,
10661    pub tcm__pad1: crate::types::c_uchar,
10662    pub tcm__pad2: crate::types::c_ushort,
10663    pub tcm_ifindex: crate::types::c_int,
10664    pub tcm_handle: __u32,
10665    pub tcm_parent: __u32,
10666    pub tcm_info: __u32,
10667}
10668pub const TCA_UNSPEC: _bindgen_ty_72 = 0;
10669pub const TCA_KIND: _bindgen_ty_72 = 1;
10670pub const TCA_OPTIONS: _bindgen_ty_72 = 2;
10671pub const TCA_STATS: _bindgen_ty_72 = 3;
10672pub const TCA_XSTATS: _bindgen_ty_72 = 4;
10673pub const TCA_RATE: _bindgen_ty_72 = 5;
10674pub const TCA_FCNT: _bindgen_ty_72 = 6;
10675pub const TCA_STATS2: _bindgen_ty_72 = 7;
10676pub const TCA_STAB: _bindgen_ty_72 = 8;
10677pub const TCA_PAD: _bindgen_ty_72 = 9;
10678pub const TCA_DUMP_INVISIBLE: _bindgen_ty_72 = 10;
10679pub const TCA_CHAIN: _bindgen_ty_72 = 11;
10680pub const TCA_HW_OFFLOAD: _bindgen_ty_72 = 12;
10681pub const TCA_INGRESS_BLOCK: _bindgen_ty_72 = 13;
10682pub const TCA_EGRESS_BLOCK: _bindgen_ty_72 = 14;
10683pub const TCA_DUMP_FLAGS: _bindgen_ty_72 = 15;
10684pub const TCA_EXT_WARN_MSG: _bindgen_ty_72 = 16;
10685pub const __TCA_MAX: _bindgen_ty_72 = 17;
10686pub type _bindgen_ty_72 = crate::types::c_uint;
10687#[repr(C)]
10688#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10689pub struct nduseroptmsg {
10690    pub nduseropt_family: crate::types::c_uchar,
10691    pub nduseropt_pad1: crate::types::c_uchar,
10692    pub nduseropt_opts_len: crate::types::c_ushort,
10693    pub nduseropt_ifindex: crate::types::c_int,
10694    pub nduseropt_icmp_type: __u8,
10695    pub nduseropt_icmp_code: __u8,
10696    pub nduseropt_pad2: crate::types::c_ushort,
10697    pub nduseropt_pad3: crate::types::c_uint,
10698}
10699pub const NDUSEROPT_UNSPEC: _bindgen_ty_73 = 0;
10700pub const NDUSEROPT_SRCADDR: _bindgen_ty_73 = 1;
10701pub const __NDUSEROPT_MAX: _bindgen_ty_73 = 2;
10702pub type _bindgen_ty_73 = crate::types::c_uint;
10703pub const rtnetlink_groups_RTNLGRP_NONE: rtnetlink_groups = 0;
10704pub const rtnetlink_groups_RTNLGRP_LINK: rtnetlink_groups = 1;
10705pub const rtnetlink_groups_RTNLGRP_NOTIFY: rtnetlink_groups = 2;
10706pub const rtnetlink_groups_RTNLGRP_NEIGH: rtnetlink_groups = 3;
10707pub const rtnetlink_groups_RTNLGRP_TC: rtnetlink_groups = 4;
10708pub const rtnetlink_groups_RTNLGRP_IPV4_IFADDR: rtnetlink_groups = 5;
10709pub const rtnetlink_groups_RTNLGRP_IPV4_MROUTE: rtnetlink_groups = 6;
10710pub const rtnetlink_groups_RTNLGRP_IPV4_ROUTE: rtnetlink_groups = 7;
10711pub const rtnetlink_groups_RTNLGRP_IPV4_RULE: rtnetlink_groups = 8;
10712pub const rtnetlink_groups_RTNLGRP_IPV6_IFADDR: rtnetlink_groups = 9;
10713pub const rtnetlink_groups_RTNLGRP_IPV6_MROUTE: rtnetlink_groups = 10;
10714pub const rtnetlink_groups_RTNLGRP_IPV6_ROUTE: rtnetlink_groups = 11;
10715pub const rtnetlink_groups_RTNLGRP_IPV6_IFINFO: rtnetlink_groups = 12;
10716pub const rtnetlink_groups_RTNLGRP_DECnet_IFADDR: rtnetlink_groups = 13;
10717pub const rtnetlink_groups_RTNLGRP_NOP2: rtnetlink_groups = 14;
10718pub const rtnetlink_groups_RTNLGRP_DECnet_ROUTE: rtnetlink_groups = 15;
10719pub const rtnetlink_groups_RTNLGRP_DECnet_RULE: rtnetlink_groups = 16;
10720pub const rtnetlink_groups_RTNLGRP_NOP4: rtnetlink_groups = 17;
10721pub const rtnetlink_groups_RTNLGRP_IPV6_PREFIX: rtnetlink_groups = 18;
10722pub const rtnetlink_groups_RTNLGRP_IPV6_RULE: rtnetlink_groups = 19;
10723pub const rtnetlink_groups_RTNLGRP_ND_USEROPT: rtnetlink_groups = 20;
10724pub const rtnetlink_groups_RTNLGRP_PHONET_IFADDR: rtnetlink_groups = 21;
10725pub const rtnetlink_groups_RTNLGRP_PHONET_ROUTE: rtnetlink_groups = 22;
10726pub const rtnetlink_groups_RTNLGRP_DCB: rtnetlink_groups = 23;
10727pub const rtnetlink_groups_RTNLGRP_IPV4_NETCONF: rtnetlink_groups = 24;
10728pub const rtnetlink_groups_RTNLGRP_IPV6_NETCONF: rtnetlink_groups = 25;
10729pub const rtnetlink_groups_RTNLGRP_MDB: rtnetlink_groups = 26;
10730pub const rtnetlink_groups_RTNLGRP_MPLS_ROUTE: rtnetlink_groups = 27;
10731pub const rtnetlink_groups_RTNLGRP_NSID: rtnetlink_groups = 28;
10732pub const rtnetlink_groups_RTNLGRP_MPLS_NETCONF: rtnetlink_groups = 29;
10733pub const rtnetlink_groups_RTNLGRP_IPV4_MROUTE_R: rtnetlink_groups = 30;
10734pub const rtnetlink_groups_RTNLGRP_IPV6_MROUTE_R: rtnetlink_groups = 31;
10735pub const rtnetlink_groups_RTNLGRP_NEXTHOP: rtnetlink_groups = 32;
10736pub const rtnetlink_groups_RTNLGRP_BRVLAN: rtnetlink_groups = 33;
10737pub const rtnetlink_groups_RTNLGRP_MCTP_IFADDR: rtnetlink_groups = 34;
10738pub const rtnetlink_groups_RTNLGRP_TUNNEL: rtnetlink_groups = 35;
10739pub const rtnetlink_groups_RTNLGRP_STATS: rtnetlink_groups = 36;
10740pub const rtnetlink_groups___RTNLGRP_MAX: rtnetlink_groups = 37;
10741pub type rtnetlink_groups = crate::types::c_uint;
10742#[repr(C)]
10743#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10744pub struct tcamsg {
10745    pub tca_family: crate::types::c_uchar,
10746    pub tca__pad1: crate::types::c_uchar,
10747    pub tca__pad2: crate::types::c_ushort,
10748}
10749pub const TCA_ROOT_UNSPEC: _bindgen_ty_74 = 0;
10750pub const TCA_ROOT_TAB: _bindgen_ty_74 = 1;
10751pub const TCA_ROOT_FLAGS: _bindgen_ty_74 = 2;
10752pub const TCA_ROOT_COUNT: _bindgen_ty_74 = 3;
10753pub const TCA_ROOT_TIME_DELTA: _bindgen_ty_74 = 4;
10754pub const TCA_ROOT_EXT_WARN_MSG: _bindgen_ty_74 = 5;
10755pub const __TCA_ROOT_MAX: _bindgen_ty_74 = 6;
10756pub type _bindgen_ty_74 = crate::types::c_uint;
10757#[repr(C)]
10758#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10759pub struct fib_rule_hdr {
10760    pub family: __u8,
10761    pub dst_len: __u8,
10762    pub src_len: __u8,
10763    pub tos: __u8,
10764    pub table: __u8,
10765    pub res1: __u8,
10766    pub res2: __u8,
10767    pub action: __u8,
10768    pub flags: __u32,
10769}
10770#[repr(C)]
10771#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10772pub struct fib_rule_uid_range {
10773    pub start: __u32,
10774    pub end: __u32,
10775}
10776#[repr(C)]
10777#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10778pub struct fib_rule_port_range {
10779    pub start: __u16,
10780    pub end: __u16,
10781}
10782pub const FRA_UNSPEC: _bindgen_ty_75 = 0;
10783pub const FRA_DST: _bindgen_ty_75 = 1;
10784pub const FRA_SRC: _bindgen_ty_75 = 2;
10785pub const FRA_IIFNAME: _bindgen_ty_75 = 3;
10786pub const FRA_GOTO: _bindgen_ty_75 = 4;
10787pub const FRA_UNUSED2: _bindgen_ty_75 = 5;
10788pub const FRA_PRIORITY: _bindgen_ty_75 = 6;
10789pub const FRA_UNUSED3: _bindgen_ty_75 = 7;
10790pub const FRA_UNUSED4: _bindgen_ty_75 = 8;
10791pub const FRA_UNUSED5: _bindgen_ty_75 = 9;
10792pub const FRA_FWMARK: _bindgen_ty_75 = 10;
10793pub const FRA_FLOW: _bindgen_ty_75 = 11;
10794pub const FRA_TUN_ID: _bindgen_ty_75 = 12;
10795pub const FRA_SUPPRESS_IFGROUP: _bindgen_ty_75 = 13;
10796pub const FRA_SUPPRESS_PREFIXLEN: _bindgen_ty_75 = 14;
10797pub const FRA_TABLE: _bindgen_ty_75 = 15;
10798pub const FRA_FWMASK: _bindgen_ty_75 = 16;
10799pub const FRA_OIFNAME: _bindgen_ty_75 = 17;
10800pub const FRA_PAD: _bindgen_ty_75 = 18;
10801pub const FRA_L3MDEV: _bindgen_ty_75 = 19;
10802pub const FRA_UID_RANGE: _bindgen_ty_75 = 20;
10803pub const FRA_PROTOCOL: _bindgen_ty_75 = 21;
10804pub const FRA_IP_PROTO: _bindgen_ty_75 = 22;
10805pub const FRA_SPORT_RANGE: _bindgen_ty_75 = 23;
10806pub const FRA_DPORT_RANGE: _bindgen_ty_75 = 24;
10807pub const FRA_DSCP: _bindgen_ty_75 = 25;
10808pub const __FRA_MAX: _bindgen_ty_75 = 26;
10809pub type _bindgen_ty_75 = crate::types::c_uint;
10810pub const FR_ACT_UNSPEC: _bindgen_ty_76 = 0;
10811pub const FR_ACT_TO_TBL: _bindgen_ty_76 = 1;
10812pub const FR_ACT_GOTO: _bindgen_ty_76 = 2;
10813pub const FR_ACT_NOP: _bindgen_ty_76 = 3;
10814pub const FR_ACT_RES3: _bindgen_ty_76 = 4;
10815pub const FR_ACT_RES4: _bindgen_ty_76 = 5;
10816pub const FR_ACT_BLACKHOLE: _bindgen_ty_76 = 6;
10817pub const FR_ACT_UNREACHABLE: _bindgen_ty_76 = 7;
10818pub const FR_ACT_PROHIBIT: _bindgen_ty_76 = 8;
10819pub const __FR_ACT_MAX: _bindgen_ty_76 = 9;
10820pub type _bindgen_ty_76 = crate::types::c_uint;
10821#[repr(C)]
10822#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10823pub struct sock_filter {
10824    pub code: __u16,
10825    pub jt: __u8,
10826    pub jf: __u8,
10827    pub k: __u32,
10828}
10829#[repr(C)]
10830#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10831pub struct sock_fprog {
10832    pub len: crate::types::c_ushort,
10833    pub __bindgen_padding_0: [u8; 6usize],
10834    pub filter: uref<sock_filter>,
10835}
10836impl Default for sock_fprog {
10837    fn default() -> Self {
10838        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10839        unsafe {
10840            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10841            s.assume_init()
10842        }
10843    }
10844}
10845#[repr(C)]
10846#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10847pub struct fsverity_enable_arg {
10848    pub version: __u32,
10849    pub hash_algorithm: __u32,
10850    pub block_size: __u32,
10851    pub salt_size: __u32,
10852    pub salt_ptr: __u64,
10853    pub sig_size: __u32,
10854    pub __reserved1: __u32,
10855    pub sig_ptr: __u64,
10856    pub __reserved2: [__u64; 11usize],
10857}
10858#[repr(C)]
10859#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
10860pub struct fsverity_digest {
10861    pub digest_algorithm: __u16,
10862    pub digest_size: __u16,
10863    pub digest: __IncompleteArrayField<__u8>,
10864}
10865#[repr(C)]
10866#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10867pub struct fsverity_descriptor {
10868    pub version: __u8,
10869    pub hash_algorithm: __u8,
10870    pub log_blocksize: __u8,
10871    pub salt_size: __u8,
10872    pub __reserved_0x04: __le32,
10873    pub data_size: __le64,
10874    pub root_hash: [__u8; 64usize],
10875    pub salt: [__u8; 32usize],
10876    pub __reserved: [__u8; 144usize],
10877}
10878impl Default for fsverity_descriptor {
10879    fn default() -> Self {
10880        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10881        unsafe {
10882            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10883            s.assume_init()
10884        }
10885    }
10886}
10887#[repr(C)]
10888#[derive(Debug, Default)]
10889pub struct fsverity_formatted_digest {
10890    pub magic: [crate::types::c_char; 8usize],
10891    pub digest_algorithm: __le16,
10892    pub digest_size: __le16,
10893    pub digest: __IncompleteArrayField<__u8>,
10894}
10895#[repr(C)]
10896#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10897pub struct fsverity_read_metadata_arg {
10898    pub metadata_type: __u64,
10899    pub offset: __u64,
10900    pub length: __u64,
10901    pub buf_ptr: __u64,
10902    pub __reserved: __u64,
10903}
10904#[repr(C)]
10905#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10906pub struct futex_waitv {
10907    pub val: __u64,
10908    pub uaddr: __u64,
10909    pub flags: __u32,
10910    pub __reserved: __u32,
10911}
10912#[repr(C)]
10913#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10914pub struct robust_list {
10915    pub next: uref<robust_list>,
10916}
10917impl Default for robust_list {
10918    fn default() -> Self {
10919        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10920        unsafe {
10921            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10922            s.assume_init()
10923        }
10924    }
10925}
10926#[repr(C)]
10927#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10928pub struct robust_list_head {
10929    pub list: robust_list,
10930    pub futex_offset: crate::types::c_long,
10931    pub list_op_pending: uref<robust_list>,
10932}
10933impl Default for robust_list_head {
10934    fn default() -> Self {
10935        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10936        unsafe {
10937            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10938            s.assume_init()
10939        }
10940    }
10941}
10942#[repr(C)]
10943#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10944pub struct sync_serial_settings {
10945    pub clock_rate: crate::types::c_uint,
10946    pub clock_type: crate::types::c_uint,
10947    pub loopback: crate::types::c_ushort,
10948    pub __bindgen_padding_0: [u8; 2usize],
10949}
10950#[repr(C)]
10951#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10952pub struct te1_settings {
10953    pub clock_rate: crate::types::c_uint,
10954    pub clock_type: crate::types::c_uint,
10955    pub loopback: crate::types::c_ushort,
10956    pub __bindgen_padding_0: [u8; 2usize],
10957    pub slot_map: crate::types::c_uint,
10958}
10959#[repr(C)]
10960#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10961pub struct raw_hdlc_proto {
10962    pub encoding: crate::types::c_ushort,
10963    pub parity: crate::types::c_ushort,
10964}
10965#[repr(C)]
10966#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10967pub struct fr_proto {
10968    pub t391: crate::types::c_uint,
10969    pub t392: crate::types::c_uint,
10970    pub n391: crate::types::c_uint,
10971    pub n392: crate::types::c_uint,
10972    pub n393: crate::types::c_uint,
10973    pub lmi: crate::types::c_ushort,
10974    pub dce: crate::types::c_ushort,
10975}
10976#[repr(C)]
10977#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10978pub struct fr_proto_pvc {
10979    pub dlci: crate::types::c_uint,
10980}
10981#[repr(C)]
10982#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10983pub struct fr_proto_pvc_info {
10984    pub dlci: crate::types::c_uint,
10985    pub master: [crate::types::c_char; 16usize],
10986}
10987#[repr(C)]
10988#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10989pub struct cisco_proto {
10990    pub interval: crate::types::c_uint,
10991    pub timeout: crate::types::c_uint,
10992}
10993#[repr(C)]
10994#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10995pub struct x25_hdlc_proto {
10996    pub dce: crate::types::c_ushort,
10997    pub __bindgen_padding_0: [u8; 2usize],
10998    pub modulo: crate::types::c_uint,
10999    pub window: crate::types::c_uint,
11000    pub t1: crate::types::c_uint,
11001    pub t2: crate::types::c_uint,
11002    pub n2: crate::types::c_uint,
11003}
11004pub const net_device_flags_IFF_UP: net_device_flags = 1;
11005pub const net_device_flags_IFF_BROADCAST: net_device_flags = 2;
11006pub const net_device_flags_IFF_DEBUG: net_device_flags = 4;
11007pub const net_device_flags_IFF_LOOPBACK: net_device_flags = 8;
11008pub const net_device_flags_IFF_POINTOPOINT: net_device_flags = 16;
11009pub const net_device_flags_IFF_NOTRAILERS: net_device_flags = 32;
11010pub const net_device_flags_IFF_RUNNING: net_device_flags = 64;
11011pub const net_device_flags_IFF_NOARP: net_device_flags = 128;
11012pub const net_device_flags_IFF_PROMISC: net_device_flags = 256;
11013pub const net_device_flags_IFF_ALLMULTI: net_device_flags = 512;
11014pub const net_device_flags_IFF_MASTER: net_device_flags = 1024;
11015pub const net_device_flags_IFF_SLAVE: net_device_flags = 2048;
11016pub const net_device_flags_IFF_MULTICAST: net_device_flags = 4096;
11017pub const net_device_flags_IFF_PORTSEL: net_device_flags = 8192;
11018pub const net_device_flags_IFF_AUTOMEDIA: net_device_flags = 16384;
11019pub const net_device_flags_IFF_DYNAMIC: net_device_flags = 32768;
11020pub const net_device_flags_IFF_LOWER_UP: net_device_flags = 65536;
11021pub const net_device_flags_IFF_DORMANT: net_device_flags = 131072;
11022pub const net_device_flags_IFF_ECHO: net_device_flags = 262144;
11023pub type net_device_flags = crate::types::c_uint;
11024pub const IF_OPER_UNKNOWN: _bindgen_ty_77 = 0;
11025pub const IF_OPER_NOTPRESENT: _bindgen_ty_77 = 1;
11026pub const IF_OPER_DOWN: _bindgen_ty_77 = 2;
11027pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_77 = 3;
11028pub const IF_OPER_TESTING: _bindgen_ty_77 = 4;
11029pub const IF_OPER_DORMANT: _bindgen_ty_77 = 5;
11030pub const IF_OPER_UP: _bindgen_ty_77 = 6;
11031pub type _bindgen_ty_77 = crate::types::c_uint;
11032pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_78 = 0;
11033pub const IF_LINK_MODE_DORMANT: _bindgen_ty_78 = 1;
11034pub const IF_LINK_MODE_TESTING: _bindgen_ty_78 = 2;
11035pub type _bindgen_ty_78 = crate::types::c_uint;
11036#[repr(C)]
11037#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11038pub struct ifmap {
11039    pub mem_start: crate::types::c_ulong,
11040    pub mem_end: crate::types::c_ulong,
11041    pub base_addr: crate::types::c_ushort,
11042    pub irq: crate::types::c_uchar,
11043    pub dma: crate::types::c_uchar,
11044    pub port: crate::types::c_uchar,
11045    pub __bindgen_padding_0: [u8; 3usize],
11046}
11047#[repr(C)]
11048#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11049pub struct if_settings {
11050    pub type_: crate::types::c_uint,
11051    pub size: crate::types::c_uint,
11052    pub ifs_ifsu: if_settings__bindgen_ty_1,
11053}
11054#[repr(C)]
11055#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11056pub union if_settings__bindgen_ty_1 {
11057    pub raw_hdlc: uref<raw_hdlc_proto>,
11058    pub cisco: uref<cisco_proto>,
11059    pub fr: uref<fr_proto>,
11060    pub fr_pvc: uref<fr_proto_pvc>,
11061    pub fr_pvc_info: uref<fr_proto_pvc_info>,
11062    pub x25: uref<x25_hdlc_proto>,
11063    pub sync: uref<sync_serial_settings>,
11064    pub te1: uref<te1_settings>,
11065}
11066impl Default for if_settings__bindgen_ty_1 {
11067    fn default() -> Self {
11068        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11069        unsafe {
11070            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11071            s.assume_init()
11072        }
11073    }
11074}
11075impl Default for if_settings {
11076    fn default() -> Self {
11077        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11078        unsafe {
11079            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11080            s.assume_init()
11081        }
11082    }
11083}
11084#[repr(C)]
11085#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11086pub struct ifreq {
11087    pub ifr_ifrn: ifreq__bindgen_ty_1,
11088    pub ifr_ifru: ifreq__bindgen_ty_2,
11089}
11090#[repr(C)]
11091#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11092pub union ifreq__bindgen_ty_1 {
11093    pub ifrn_name: [crate::types::c_char; 16usize],
11094}
11095impl Default for ifreq__bindgen_ty_1 {
11096    fn default() -> Self {
11097        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11098        unsafe {
11099            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11100            s.assume_init()
11101        }
11102    }
11103}
11104#[repr(C)]
11105#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11106pub union ifreq__bindgen_ty_2 {
11107    pub ifru_addr: sockaddr,
11108    pub ifru_dstaddr: sockaddr,
11109    pub ifru_broadaddr: sockaddr,
11110    pub ifru_netmask: sockaddr,
11111    pub ifru_hwaddr: sockaddr,
11112    pub ifru_flags: crate::types::c_short,
11113    pub ifru_ivalue: crate::types::c_int,
11114    pub ifru_mtu: crate::types::c_int,
11115    pub ifru_map: ifmap,
11116    pub ifru_slave: [crate::types::c_char; 16usize],
11117    pub ifru_newname: [crate::types::c_char; 16usize],
11118    pub ifru_data: uaddr,
11119    pub ifru_settings: if_settings,
11120}
11121impl Default for ifreq__bindgen_ty_2 {
11122    fn default() -> Self {
11123        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11124        unsafe {
11125            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11126            s.assume_init()
11127        }
11128    }
11129}
11130impl Default for ifreq {
11131    fn default() -> Self {
11132        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11133        unsafe {
11134            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11135            s.assume_init()
11136        }
11137    }
11138}
11139#[repr(C)]
11140#[derive(Copy, Clone)]
11141pub struct ifconf {
11142    pub ifc_len: crate::types::c_int,
11143    pub __bindgen_padding_0: [u8; 4usize],
11144    pub ifc_ifcu: ifconf__bindgen_ty_1,
11145}
11146#[repr(C)]
11147#[derive(Copy, Clone)]
11148pub union ifconf__bindgen_ty_1 {
11149    pub ifcu_buf: uref<crate::types::c_char>,
11150    pub ifcu_req: uref<ifreq>,
11151}
11152impl Default for ifconf__bindgen_ty_1 {
11153    fn default() -> Self {
11154        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11155        unsafe {
11156            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11157            s.assume_init()
11158        }
11159    }
11160}
11161impl Default for ifconf {
11162    fn default() -> Self {
11163        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11164        unsafe {
11165            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11166            s.assume_init()
11167        }
11168    }
11169}
11170#[repr(C, packed)]
11171#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11172pub struct ethhdr {
11173    pub h_dest: [crate::types::c_uchar; 6usize],
11174    pub h_source: [crate::types::c_uchar; 6usize],
11175    pub h_proto: __be16,
11176}
11177#[repr(C)]
11178#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11179pub struct sockaddr_pkt {
11180    pub spkt_family: crate::types::c_ushort,
11181    pub spkt_device: [crate::types::c_uchar; 14usize],
11182    pub spkt_protocol: __be16,
11183}
11184#[repr(C)]
11185#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
11186pub struct sockaddr_ll {
11187    pub sll_family: crate::types::c_ushort,
11188    pub sll_protocol: __be16,
11189    pub sll_ifindex: crate::types::c_int,
11190    pub sll_hatype: crate::types::c_ushort,
11191    pub sll_pkttype: crate::types::c_uchar,
11192    pub sll_halen: crate::types::c_uchar,
11193    pub sll_addr: [crate::types::c_uchar; 8usize],
11194}
11195#[repr(C)]
11196#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11197pub struct tpacket_stats {
11198    pub tp_packets: crate::types::c_uint,
11199    pub tp_drops: crate::types::c_uint,
11200}
11201#[repr(C)]
11202#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11203pub struct tpacket_stats_v3 {
11204    pub tp_packets: crate::types::c_uint,
11205    pub tp_drops: crate::types::c_uint,
11206    pub tp_freeze_q_cnt: crate::types::c_uint,
11207}
11208#[repr(C)]
11209#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11210pub struct tpacket_rollover_stats {
11211    pub tp_all: __u64,
11212    pub tp_huge: __u64,
11213    pub tp_failed: __u64,
11214}
11215#[repr(C)]
11216#[derive(Copy, Clone)]
11217pub union tpacket_stats_u {
11218    pub stats1: tpacket_stats,
11219    pub stats3: tpacket_stats_v3,
11220}
11221impl Default for tpacket_stats_u {
11222    fn default() -> Self {
11223        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11224        unsafe {
11225            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11226            s.assume_init()
11227        }
11228    }
11229}
11230#[repr(C)]
11231#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11232pub struct tpacket_auxdata {
11233    pub tp_status: __u32,
11234    pub tp_len: __u32,
11235    pub tp_snaplen: __u32,
11236    pub tp_mac: __u16,
11237    pub tp_net: __u16,
11238    pub tp_vlan_tci: __u16,
11239    pub tp_vlan_tpid: __u16,
11240}
11241#[repr(C)]
11242#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11243pub struct tpacket_hdr {
11244    pub tp_status: crate::types::c_ulong,
11245    pub tp_len: crate::types::c_uint,
11246    pub tp_snaplen: crate::types::c_uint,
11247    pub tp_mac: crate::types::c_ushort,
11248    pub tp_net: crate::types::c_ushort,
11249    pub tp_sec: crate::types::c_uint,
11250    pub tp_usec: crate::types::c_uint,
11251    pub __bindgen_padding_0: [u8; 4usize],
11252}
11253#[repr(C)]
11254#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11255pub struct tpacket2_hdr {
11256    pub tp_status: __u32,
11257    pub tp_len: __u32,
11258    pub tp_snaplen: __u32,
11259    pub tp_mac: __u16,
11260    pub tp_net: __u16,
11261    pub tp_sec: __u32,
11262    pub tp_nsec: __u32,
11263    pub tp_vlan_tci: __u16,
11264    pub tp_vlan_tpid: __u16,
11265    pub tp_padding: [__u8; 4usize],
11266}
11267#[repr(C)]
11268#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11269pub struct tpacket_hdr_variant1 {
11270    pub tp_rxhash: __u32,
11271    pub tp_vlan_tci: __u32,
11272    pub tp_vlan_tpid: __u16,
11273    pub tp_padding: __u16,
11274}
11275#[repr(C)]
11276#[derive(Copy, Clone)]
11277pub struct tpacket3_hdr {
11278    pub tp_next_offset: __u32,
11279    pub tp_sec: __u32,
11280    pub tp_nsec: __u32,
11281    pub tp_snaplen: __u32,
11282    pub tp_len: __u32,
11283    pub tp_status: __u32,
11284    pub tp_mac: __u16,
11285    pub tp_net: __u16,
11286    pub __bindgen_anon_1: tpacket3_hdr__bindgen_ty_1,
11287    pub tp_padding: [__u8; 8usize],
11288}
11289#[repr(C)]
11290#[derive(Copy, Clone)]
11291pub union tpacket3_hdr__bindgen_ty_1 {
11292    pub hv1: tpacket_hdr_variant1,
11293}
11294impl Default for tpacket3_hdr__bindgen_ty_1 {
11295    fn default() -> Self {
11296        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11297        unsafe {
11298            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11299            s.assume_init()
11300        }
11301    }
11302}
11303impl Default for tpacket3_hdr {
11304    fn default() -> Self {
11305        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11306        unsafe {
11307            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11308            s.assume_init()
11309        }
11310    }
11311}
11312#[repr(C)]
11313#[derive(Copy, Clone)]
11314pub struct tpacket_bd_ts {
11315    pub ts_sec: crate::types::c_uint,
11316    pub __bindgen_anon_1: tpacket_bd_ts__bindgen_ty_1,
11317}
11318#[repr(C)]
11319#[derive(Copy, Clone)]
11320pub union tpacket_bd_ts__bindgen_ty_1 {
11321    pub ts_usec: crate::types::c_uint,
11322    pub ts_nsec: crate::types::c_uint,
11323}
11324impl Default for tpacket_bd_ts__bindgen_ty_1 {
11325    fn default() -> Self {
11326        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11327        unsafe {
11328            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11329            s.assume_init()
11330        }
11331    }
11332}
11333impl Default for tpacket_bd_ts {
11334    fn default() -> Self {
11335        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11336        unsafe {
11337            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11338            s.assume_init()
11339        }
11340    }
11341}
11342#[repr(C)]
11343#[derive(Copy, Clone)]
11344pub struct tpacket_hdr_v1 {
11345    pub block_status: __u32,
11346    pub num_pkts: __u32,
11347    pub offset_to_first_pkt: __u32,
11348    pub blk_len: __u32,
11349    pub seq_num: __u64,
11350    pub ts_first_pkt: tpacket_bd_ts,
11351    pub ts_last_pkt: tpacket_bd_ts,
11352}
11353impl Default for tpacket_hdr_v1 {
11354    fn default() -> Self {
11355        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11356        unsafe {
11357            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11358            s.assume_init()
11359        }
11360    }
11361}
11362#[repr(C)]
11363#[derive(Copy, Clone)]
11364pub union tpacket_bd_header_u {
11365    pub bh1: tpacket_hdr_v1,
11366}
11367impl Default for tpacket_bd_header_u {
11368    fn default() -> Self {
11369        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11370        unsafe {
11371            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11372            s.assume_init()
11373        }
11374    }
11375}
11376#[repr(C)]
11377#[derive(Copy, Clone)]
11378pub struct tpacket_block_desc {
11379    pub version: __u32,
11380    pub offset_to_priv: __u32,
11381    pub hdr: tpacket_bd_header_u,
11382}
11383impl Default for tpacket_block_desc {
11384    fn default() -> Self {
11385        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11386        unsafe {
11387            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11388            s.assume_init()
11389        }
11390    }
11391}
11392pub const tpacket_versions_TPACKET_V1: tpacket_versions = 0;
11393pub const tpacket_versions_TPACKET_V2: tpacket_versions = 1;
11394pub const tpacket_versions_TPACKET_V3: tpacket_versions = 2;
11395pub type tpacket_versions = crate::types::c_uint;
11396#[repr(C)]
11397#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11398pub struct tpacket_req {
11399    pub tp_block_size: crate::types::c_uint,
11400    pub tp_block_nr: crate::types::c_uint,
11401    pub tp_frame_size: crate::types::c_uint,
11402    pub tp_frame_nr: crate::types::c_uint,
11403}
11404#[repr(C)]
11405#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11406pub struct tpacket_req3 {
11407    pub tp_block_size: crate::types::c_uint,
11408    pub tp_block_nr: crate::types::c_uint,
11409    pub tp_frame_size: crate::types::c_uint,
11410    pub tp_frame_nr: crate::types::c_uint,
11411    pub tp_retire_blk_tov: crate::types::c_uint,
11412    pub tp_sizeof_priv: crate::types::c_uint,
11413    pub tp_feature_req_word: crate::types::c_uint,
11414}
11415#[repr(C)]
11416#[derive(Copy, Clone)]
11417pub union tpacket_req_u {
11418    pub req: tpacket_req,
11419    pub req3: tpacket_req3,
11420}
11421impl Default for tpacket_req_u {
11422    fn default() -> Self {
11423        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11424        unsafe {
11425            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11426            s.assume_init()
11427        }
11428    }
11429}
11430#[repr(C)]
11431#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11432pub struct packet_mreq {
11433    pub mr_ifindex: crate::types::c_int,
11434    pub mr_type: crate::types::c_ushort,
11435    pub mr_alen: crate::types::c_ushort,
11436    pub mr_address: [crate::types::c_uchar; 8usize],
11437}
11438#[repr(C)]
11439#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11440pub struct fanout_args {
11441    pub id: __u16,
11442    pub type_flags: __u16,
11443    pub max_num_members: __u32,
11444}
11445pub const IF_PORT_UNKNOWN: _bindgen_ty_79 = 0;
11446pub const IF_PORT_10BASE2: _bindgen_ty_79 = 1;
11447pub const IF_PORT_10BASET: _bindgen_ty_79 = 2;
11448pub const IF_PORT_AUI: _bindgen_ty_79 = 3;
11449pub const IF_PORT_100BASET: _bindgen_ty_79 = 4;
11450pub const IF_PORT_100BASETX: _bindgen_ty_79 = 5;
11451pub const IF_PORT_100BASEFX: _bindgen_ty_79 = 6;
11452pub type _bindgen_ty_79 = crate::types::c_uint;
11453#[repr(C)]
11454#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11455pub struct arpreq {
11456    pub arp_pa: sockaddr,
11457    pub arp_ha: sockaddr,
11458    pub arp_flags: crate::types::c_int,
11459    pub arp_netmask: sockaddr,
11460    pub arp_dev: [crate::types::c_char; 16usize],
11461}
11462#[repr(C)]
11463#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11464pub struct arpreq_old {
11465    pub arp_pa: sockaddr,
11466    pub arp_ha: sockaddr,
11467    pub arp_flags: crate::types::c_int,
11468    pub arp_netmask: sockaddr,
11469}
11470#[repr(C)]
11471#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11472pub struct arphdr {
11473    pub ar_hrd: __be16,
11474    pub ar_pro: __be16,
11475    pub ar_hln: crate::types::c_uchar,
11476    pub ar_pln: crate::types::c_uchar,
11477    pub ar_op: __be16,
11478}
11479#[repr(C)]
11480#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11481pub struct tun_pi {
11482    pub flags: __u16,
11483    pub proto: __be16,
11484}
11485#[repr(C)]
11486#[derive(Debug, Default)]
11487pub struct tun_filter {
11488    pub flags: __u16,
11489    pub count: __u16,
11490    pub addr: __IncompleteArrayField<[__u8; 6usize]>,
11491}
11492#[repr(C)]
11493#[derive(Debug, Default, Immutable, IntoBytes, KnownLayout)]
11494pub struct inotify_event {
11495    pub wd: __s32,
11496    pub mask: __u32,
11497    pub cookie: __u32,
11498    pub len: __u32,
11499    pub name: __IncompleteArrayField<crate::types::c_char>,
11500}
11501#[repr(C)]
11502#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11503pub struct timespec {
11504    pub tv_sec: __kernel_time_t,
11505    pub tv_nsec: crate::types::c_long,
11506}
11507#[repr(C)]
11508#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11509pub struct __kernel_timespec {
11510    pub tv_sec: __kernel_time64_t,
11511    pub tv_nsec: crate::types::c_longlong,
11512}
11513#[repr(C)]
11514#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11515pub struct __kernel_itimerspec {
11516    pub it_interval: __kernel_timespec,
11517    pub it_value: __kernel_timespec,
11518}
11519#[repr(C)]
11520#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11521pub struct __kernel_old_timespec {
11522    pub tv_sec: __kernel_old_time_t,
11523    pub tv_nsec: crate::types::c_long,
11524}
11525#[repr(C)]
11526#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11527pub struct __kernel_sock_timeval {
11528    pub tv_sec: __s64,
11529    pub tv_usec: __s64,
11530}
11531#[repr(C)]
11532#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11533pub struct timeval {
11534    pub tv_sec: __kernel_old_time_t,
11535    pub tv_usec: __kernel_suseconds_t,
11536}
11537#[repr(C)]
11538#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11539pub struct itimerspec {
11540    pub it_interval: timespec,
11541    pub it_value: timespec,
11542}
11543#[repr(C)]
11544#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11545pub struct itimerval {
11546    pub it_interval: timeval,
11547    pub it_value: timeval,
11548}
11549#[repr(C)]
11550#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11551pub struct timezone {
11552    pub tz_minuteswest: crate::types::c_int,
11553    pub tz_dsttime: crate::types::c_int,
11554}
11555#[repr(C)]
11556#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11557pub struct input_event {
11558    pub time: timeval,
11559    pub type_: __u16,
11560    pub code: __u16,
11561    pub value: __s32,
11562}
11563#[repr(C)]
11564#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11565pub struct input_id {
11566    pub bustype: __u16,
11567    pub vendor: __u16,
11568    pub product: __u16,
11569    pub version: __u16,
11570}
11571#[repr(C)]
11572#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11573pub struct input_absinfo {
11574    pub value: __s32,
11575    pub minimum: __s32,
11576    pub maximum: __s32,
11577    pub fuzz: __s32,
11578    pub flat: __s32,
11579    pub resolution: __s32,
11580}
11581#[repr(C)]
11582#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11583pub struct input_keymap_entry {
11584    pub flags: __u8,
11585    pub len: __u8,
11586    pub index: __u16,
11587    pub keycode: __u32,
11588    pub scancode: [__u8; 32usize],
11589}
11590#[repr(C)]
11591#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11592pub struct input_mask {
11593    pub type_: __u32,
11594    pub codes_size: __u32,
11595    pub codes_ptr: __u64,
11596}
11597#[repr(C)]
11598#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11599pub struct ff_replay {
11600    pub length: __u16,
11601    pub delay: __u16,
11602}
11603#[repr(C)]
11604#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11605pub struct ff_trigger {
11606    pub button: __u16,
11607    pub interval: __u16,
11608}
11609#[repr(C)]
11610#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11611pub struct ff_envelope {
11612    pub attack_length: __u16,
11613    pub attack_level: __u16,
11614    pub fade_length: __u16,
11615    pub fade_level: __u16,
11616}
11617#[repr(C)]
11618#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11619pub struct ff_constant_effect {
11620    pub level: __s16,
11621    pub envelope: ff_envelope,
11622}
11623#[repr(C)]
11624#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11625pub struct ff_ramp_effect {
11626    pub start_level: __s16,
11627    pub end_level: __s16,
11628    pub envelope: ff_envelope,
11629}
11630#[repr(C)]
11631#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11632pub struct ff_condition_effect {
11633    pub right_saturation: __u16,
11634    pub left_saturation: __u16,
11635    pub right_coeff: __s16,
11636    pub left_coeff: __s16,
11637    pub deadband: __u16,
11638    pub center: __s16,
11639}
11640#[repr(C)]
11641#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11642pub struct ff_periodic_effect {
11643    pub waveform: __u16,
11644    pub period: __u16,
11645    pub magnitude: __s16,
11646    pub offset: __s16,
11647    pub phase: __u16,
11648    pub envelope: ff_envelope,
11649    pub __bindgen_padding_0: [u8; 2usize],
11650    pub custom_len: __u32,
11651    pub custom_data: uref<__s16>,
11652}
11653impl Default for ff_periodic_effect {
11654    fn default() -> Self {
11655        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11656        unsafe {
11657            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11658            s.assume_init()
11659        }
11660    }
11661}
11662#[repr(C)]
11663#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11664pub struct ff_rumble_effect {
11665    pub strong_magnitude: __u16,
11666    pub weak_magnitude: __u16,
11667}
11668#[repr(C)]
11669#[derive(Copy, Clone)]
11670pub struct ff_effect {
11671    pub type_: __u16,
11672    pub id: __s16,
11673    pub direction: __u16,
11674    pub trigger: ff_trigger,
11675    pub replay: ff_replay,
11676    pub __bindgen_padding_0: [u8; 2usize],
11677    pub u: ff_effect__bindgen_ty_1,
11678}
11679#[repr(C)]
11680#[derive(Copy, Clone)]
11681pub union ff_effect__bindgen_ty_1 {
11682    pub constant: ff_constant_effect,
11683    pub ramp: ff_ramp_effect,
11684    pub periodic: ff_periodic_effect,
11685    pub condition: [ff_condition_effect; 2usize],
11686    pub rumble: ff_rumble_effect,
11687}
11688impl Default for ff_effect__bindgen_ty_1 {
11689    fn default() -> Self {
11690        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11691        unsafe {
11692            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11693            s.assume_init()
11694        }
11695    }
11696}
11697impl Default for ff_effect {
11698    fn default() -> Self {
11699        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11700        unsafe {
11701            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11702            s.assume_init()
11703        }
11704    }
11705}
11706#[repr(C)]
11707pub struct io_uring_sqe {
11708    pub opcode: __u8,
11709    pub flags: __u8,
11710    pub ioprio: __u16,
11711    pub fd: __s32,
11712    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1,
11713    pub __bindgen_anon_2: io_uring_sqe__bindgen_ty_2,
11714    pub len: __u32,
11715    pub __bindgen_anon_3: io_uring_sqe__bindgen_ty_3,
11716    pub user_data: __u64,
11717    pub __bindgen_anon_4: io_uring_sqe__bindgen_ty_4,
11718    pub personality: __u16,
11719    pub __bindgen_anon_5: io_uring_sqe__bindgen_ty_5,
11720    pub __bindgen_anon_6: io_uring_sqe__bindgen_ty_6,
11721}
11722#[repr(C)]
11723#[derive(Copy, Clone)]
11724pub union io_uring_sqe__bindgen_ty_1 {
11725    pub off: __u64,
11726    pub addr2: __u64,
11727    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1__bindgen_ty_1,
11728}
11729#[repr(C)]
11730#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11731pub struct io_uring_sqe__bindgen_ty_1__bindgen_ty_1 {
11732    pub cmd_op: __u32,
11733    pub __pad1: __u32,
11734}
11735impl Default for io_uring_sqe__bindgen_ty_1 {
11736    fn default() -> Self {
11737        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11738        unsafe {
11739            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11740            s.assume_init()
11741        }
11742    }
11743}
11744#[repr(C)]
11745#[derive(Copy, Clone)]
11746pub union io_uring_sqe__bindgen_ty_2 {
11747    pub addr: __u64,
11748    pub splice_off_in: __u64,
11749    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_2__bindgen_ty_1,
11750}
11751#[repr(C)]
11752#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11753pub struct io_uring_sqe__bindgen_ty_2__bindgen_ty_1 {
11754    pub level: __u32,
11755    pub optname: __u32,
11756}
11757impl Default for io_uring_sqe__bindgen_ty_2 {
11758    fn default() -> Self {
11759        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11760        unsafe {
11761            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11762            s.assume_init()
11763        }
11764    }
11765}
11766#[repr(C)]
11767#[derive(Copy, Clone)]
11768pub union io_uring_sqe__bindgen_ty_3 {
11769    pub rw_flags: __kernel_rwf_t,
11770    pub fsync_flags: __u32,
11771    pub poll_events: __u16,
11772    pub poll32_events: __u32,
11773    pub sync_range_flags: __u32,
11774    pub msg_flags: __u32,
11775    pub timeout_flags: __u32,
11776    pub accept_flags: __u32,
11777    pub cancel_flags: __u32,
11778    pub open_flags: __u32,
11779    pub statx_flags: __u32,
11780    pub fadvise_advice: __u32,
11781    pub splice_flags: __u32,
11782    pub rename_flags: __u32,
11783    pub unlink_flags: __u32,
11784    pub hardlink_flags: __u32,
11785    pub xattr_flags: __u32,
11786    pub msg_ring_flags: __u32,
11787    pub uring_cmd_flags: __u32,
11788    pub waitid_flags: __u32,
11789    pub futex_flags: __u32,
11790    pub install_fd_flags: __u32,
11791    pub nop_flags: __u32,
11792}
11793impl Default for io_uring_sqe__bindgen_ty_3 {
11794    fn default() -> Self {
11795        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11796        unsafe {
11797            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11798            s.assume_init()
11799        }
11800    }
11801}
11802#[repr(C, packed)]
11803#[derive(Copy, Clone)]
11804pub union io_uring_sqe__bindgen_ty_4 {
11805    pub buf_index: __u16,
11806    pub buf_group: __u16,
11807}
11808impl Default for io_uring_sqe__bindgen_ty_4 {
11809    fn default() -> Self {
11810        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11811        unsafe {
11812            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11813            s.assume_init()
11814        }
11815    }
11816}
11817#[repr(C)]
11818#[derive(Copy, Clone)]
11819pub union io_uring_sqe__bindgen_ty_5 {
11820    pub splice_fd_in: __s32,
11821    pub file_index: __u32,
11822    pub optlen: __u32,
11823    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1,
11824}
11825#[repr(C)]
11826#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11827pub struct io_uring_sqe__bindgen_ty_5__bindgen_ty_1 {
11828    pub addr_len: __u16,
11829    pub __pad3: [__u16; 1usize],
11830}
11831impl Default for io_uring_sqe__bindgen_ty_5 {
11832    fn default() -> Self {
11833        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11834        unsafe {
11835            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11836            s.assume_init()
11837        }
11838    }
11839}
11840#[repr(C)]
11841pub struct io_uring_sqe__bindgen_ty_6 {
11842    pub __bindgen_anon_1: __BindgenUnionField<io_uring_sqe__bindgen_ty_6__bindgen_ty_1>,
11843    pub optval: __BindgenUnionField<__u64>,
11844    pub cmd: __BindgenUnionField<[__u8; 0usize]>,
11845    pub bindgen_union_field: __BindgenOpaqueArray8<[u8; 16usize]>,
11846}
11847#[repr(C)]
11848#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11849pub struct io_uring_sqe__bindgen_ty_6__bindgen_ty_1 {
11850    pub addr3: __u64,
11851    pub __pad2: [__u64; 1usize],
11852}
11853impl Default for io_uring_sqe__bindgen_ty_6 {
11854    fn default() -> Self {
11855        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11856        unsafe {
11857            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11858            s.assume_init()
11859        }
11860    }
11861}
11862impl Default for io_uring_sqe {
11863    fn default() -> Self {
11864        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11865        unsafe {
11866            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11867            s.assume_init()
11868        }
11869    }
11870}
11871pub const io_uring_sqe_flags_bit_IOSQE_FIXED_FILE_BIT: io_uring_sqe_flags_bit = 0;
11872pub const io_uring_sqe_flags_bit_IOSQE_IO_DRAIN_BIT: io_uring_sqe_flags_bit = 1;
11873pub const io_uring_sqe_flags_bit_IOSQE_IO_LINK_BIT: io_uring_sqe_flags_bit = 2;
11874pub const io_uring_sqe_flags_bit_IOSQE_IO_HARDLINK_BIT: io_uring_sqe_flags_bit = 3;
11875pub const io_uring_sqe_flags_bit_IOSQE_ASYNC_BIT: io_uring_sqe_flags_bit = 4;
11876pub const io_uring_sqe_flags_bit_IOSQE_BUFFER_SELECT_BIT: io_uring_sqe_flags_bit = 5;
11877pub const io_uring_sqe_flags_bit_IOSQE_CQE_SKIP_SUCCESS_BIT: io_uring_sqe_flags_bit = 6;
11878pub type io_uring_sqe_flags_bit = crate::types::c_uint;
11879pub const io_uring_op_IORING_OP_NOP: io_uring_op = 0;
11880pub const io_uring_op_IORING_OP_READV: io_uring_op = 1;
11881pub const io_uring_op_IORING_OP_WRITEV: io_uring_op = 2;
11882pub const io_uring_op_IORING_OP_FSYNC: io_uring_op = 3;
11883pub const io_uring_op_IORING_OP_READ_FIXED: io_uring_op = 4;
11884pub const io_uring_op_IORING_OP_WRITE_FIXED: io_uring_op = 5;
11885pub const io_uring_op_IORING_OP_POLL_ADD: io_uring_op = 6;
11886pub const io_uring_op_IORING_OP_POLL_REMOVE: io_uring_op = 7;
11887pub const io_uring_op_IORING_OP_SYNC_FILE_RANGE: io_uring_op = 8;
11888pub const io_uring_op_IORING_OP_SENDMSG: io_uring_op = 9;
11889pub const io_uring_op_IORING_OP_RECVMSG: io_uring_op = 10;
11890pub const io_uring_op_IORING_OP_TIMEOUT: io_uring_op = 11;
11891pub const io_uring_op_IORING_OP_TIMEOUT_REMOVE: io_uring_op = 12;
11892pub const io_uring_op_IORING_OP_ACCEPT: io_uring_op = 13;
11893pub const io_uring_op_IORING_OP_ASYNC_CANCEL: io_uring_op = 14;
11894pub const io_uring_op_IORING_OP_LINK_TIMEOUT: io_uring_op = 15;
11895pub const io_uring_op_IORING_OP_CONNECT: io_uring_op = 16;
11896pub const io_uring_op_IORING_OP_FALLOCATE: io_uring_op = 17;
11897pub const io_uring_op_IORING_OP_OPENAT: io_uring_op = 18;
11898pub const io_uring_op_IORING_OP_CLOSE: io_uring_op = 19;
11899pub const io_uring_op_IORING_OP_FILES_UPDATE: io_uring_op = 20;
11900pub const io_uring_op_IORING_OP_STATX: io_uring_op = 21;
11901pub const io_uring_op_IORING_OP_READ: io_uring_op = 22;
11902pub const io_uring_op_IORING_OP_WRITE: io_uring_op = 23;
11903pub const io_uring_op_IORING_OP_FADVISE: io_uring_op = 24;
11904pub const io_uring_op_IORING_OP_MADVISE: io_uring_op = 25;
11905pub const io_uring_op_IORING_OP_SEND: io_uring_op = 26;
11906pub const io_uring_op_IORING_OP_RECV: io_uring_op = 27;
11907pub const io_uring_op_IORING_OP_OPENAT2: io_uring_op = 28;
11908pub const io_uring_op_IORING_OP_EPOLL_CTL: io_uring_op = 29;
11909pub const io_uring_op_IORING_OP_SPLICE: io_uring_op = 30;
11910pub const io_uring_op_IORING_OP_PROVIDE_BUFFERS: io_uring_op = 31;
11911pub const io_uring_op_IORING_OP_REMOVE_BUFFERS: io_uring_op = 32;
11912pub const io_uring_op_IORING_OP_TEE: io_uring_op = 33;
11913pub const io_uring_op_IORING_OP_SHUTDOWN: io_uring_op = 34;
11914pub const io_uring_op_IORING_OP_RENAMEAT: io_uring_op = 35;
11915pub const io_uring_op_IORING_OP_UNLINKAT: io_uring_op = 36;
11916pub const io_uring_op_IORING_OP_MKDIRAT: io_uring_op = 37;
11917pub const io_uring_op_IORING_OP_SYMLINKAT: io_uring_op = 38;
11918pub const io_uring_op_IORING_OP_LINKAT: io_uring_op = 39;
11919pub const io_uring_op_IORING_OP_MSG_RING: io_uring_op = 40;
11920pub const io_uring_op_IORING_OP_FSETXATTR: io_uring_op = 41;
11921pub const io_uring_op_IORING_OP_SETXATTR: io_uring_op = 42;
11922pub const io_uring_op_IORING_OP_FGETXATTR: io_uring_op = 43;
11923pub const io_uring_op_IORING_OP_GETXATTR: io_uring_op = 44;
11924pub const io_uring_op_IORING_OP_SOCKET: io_uring_op = 45;
11925pub const io_uring_op_IORING_OP_URING_CMD: io_uring_op = 46;
11926pub const io_uring_op_IORING_OP_SEND_ZC: io_uring_op = 47;
11927pub const io_uring_op_IORING_OP_SENDMSG_ZC: io_uring_op = 48;
11928pub const io_uring_op_IORING_OP_READ_MULTISHOT: io_uring_op = 49;
11929pub const io_uring_op_IORING_OP_WAITID: io_uring_op = 50;
11930pub const io_uring_op_IORING_OP_FUTEX_WAIT: io_uring_op = 51;
11931pub const io_uring_op_IORING_OP_FUTEX_WAKE: io_uring_op = 52;
11932pub const io_uring_op_IORING_OP_FUTEX_WAITV: io_uring_op = 53;
11933pub const io_uring_op_IORING_OP_FIXED_FD_INSTALL: io_uring_op = 54;
11934pub const io_uring_op_IORING_OP_FTRUNCATE: io_uring_op = 55;
11935pub const io_uring_op_IORING_OP_BIND: io_uring_op = 56;
11936pub const io_uring_op_IORING_OP_LISTEN: io_uring_op = 57;
11937pub const io_uring_op_IORING_OP_LAST: io_uring_op = 58;
11938pub type io_uring_op = crate::types::c_uint;
11939pub const io_uring_msg_ring_flags_IORING_MSG_DATA: io_uring_msg_ring_flags = 0;
11940pub const io_uring_msg_ring_flags_IORING_MSG_SEND_FD: io_uring_msg_ring_flags = 1;
11941pub type io_uring_msg_ring_flags = crate::types::c_uint;
11942#[repr(C)]
11943#[derive(Debug, Default)]
11944pub struct io_uring_cqe {
11945    pub user_data: __u64,
11946    pub res: __s32,
11947    pub flags: __u32,
11948    pub big_cqe: __IncompleteArrayField<__u64>,
11949}
11950#[repr(C)]
11951#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11952pub struct io_sqring_offsets {
11953    pub head: __u32,
11954    pub tail: __u32,
11955    pub ring_mask: __u32,
11956    pub ring_entries: __u32,
11957    pub flags: __u32,
11958    pub dropped: __u32,
11959    pub array: __u32,
11960    pub resv1: __u32,
11961    pub user_addr: __u64,
11962}
11963#[repr(C)]
11964#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11965pub struct io_cqring_offsets {
11966    pub head: __u32,
11967    pub tail: __u32,
11968    pub ring_mask: __u32,
11969    pub ring_entries: __u32,
11970    pub overflow: __u32,
11971    pub cqes: __u32,
11972    pub flags: __u32,
11973    pub resv1: __u32,
11974    pub user_addr: __u64,
11975}
11976#[repr(C)]
11977#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11978pub struct io_uring_params {
11979    pub sq_entries: __u32,
11980    pub cq_entries: __u32,
11981    pub flags: __u32,
11982    pub sq_thread_cpu: __u32,
11983    pub sq_thread_idle: __u32,
11984    pub features: __u32,
11985    pub wq_fd: __u32,
11986    pub resv: [__u32; 3usize],
11987    pub sq_off: io_sqring_offsets,
11988    pub cq_off: io_cqring_offsets,
11989}
11990pub const io_uring_register_op_IORING_REGISTER_BUFFERS: io_uring_register_op = 0;
11991pub const io_uring_register_op_IORING_UNREGISTER_BUFFERS: io_uring_register_op = 1;
11992pub const io_uring_register_op_IORING_REGISTER_FILES: io_uring_register_op = 2;
11993pub const io_uring_register_op_IORING_UNREGISTER_FILES: io_uring_register_op = 3;
11994pub const io_uring_register_op_IORING_REGISTER_EVENTFD: io_uring_register_op = 4;
11995pub const io_uring_register_op_IORING_UNREGISTER_EVENTFD: io_uring_register_op = 5;
11996pub const io_uring_register_op_IORING_REGISTER_FILES_UPDATE: io_uring_register_op = 6;
11997pub const io_uring_register_op_IORING_REGISTER_EVENTFD_ASYNC: io_uring_register_op = 7;
11998pub const io_uring_register_op_IORING_REGISTER_PROBE: io_uring_register_op = 8;
11999pub const io_uring_register_op_IORING_REGISTER_PERSONALITY: io_uring_register_op = 9;
12000pub const io_uring_register_op_IORING_UNREGISTER_PERSONALITY: io_uring_register_op = 10;
12001pub const io_uring_register_op_IORING_REGISTER_RESTRICTIONS: io_uring_register_op = 11;
12002pub const io_uring_register_op_IORING_REGISTER_ENABLE_RINGS: io_uring_register_op = 12;
12003pub const io_uring_register_op_IORING_REGISTER_FILES2: io_uring_register_op = 13;
12004pub const io_uring_register_op_IORING_REGISTER_FILES_UPDATE2: io_uring_register_op = 14;
12005pub const io_uring_register_op_IORING_REGISTER_BUFFERS2: io_uring_register_op = 15;
12006pub const io_uring_register_op_IORING_REGISTER_BUFFERS_UPDATE: io_uring_register_op = 16;
12007pub const io_uring_register_op_IORING_REGISTER_IOWQ_AFF: io_uring_register_op = 17;
12008pub const io_uring_register_op_IORING_UNREGISTER_IOWQ_AFF: io_uring_register_op = 18;
12009pub const io_uring_register_op_IORING_REGISTER_IOWQ_MAX_WORKERS: io_uring_register_op = 19;
12010pub const io_uring_register_op_IORING_REGISTER_RING_FDS: io_uring_register_op = 20;
12011pub const io_uring_register_op_IORING_UNREGISTER_RING_FDS: io_uring_register_op = 21;
12012pub const io_uring_register_op_IORING_REGISTER_PBUF_RING: io_uring_register_op = 22;
12013pub const io_uring_register_op_IORING_UNREGISTER_PBUF_RING: io_uring_register_op = 23;
12014pub const io_uring_register_op_IORING_REGISTER_SYNC_CANCEL: io_uring_register_op = 24;
12015pub const io_uring_register_op_IORING_REGISTER_FILE_ALLOC_RANGE: io_uring_register_op = 25;
12016pub const io_uring_register_op_IORING_REGISTER_PBUF_STATUS: io_uring_register_op = 26;
12017pub const io_uring_register_op_IORING_REGISTER_NAPI: io_uring_register_op = 27;
12018pub const io_uring_register_op_IORING_UNREGISTER_NAPI: io_uring_register_op = 28;
12019pub const io_uring_register_op_IORING_REGISTER_CLOCK: io_uring_register_op = 29;
12020pub const io_uring_register_op_IORING_REGISTER_CLONE_BUFFERS: io_uring_register_op = 30;
12021pub const io_uring_register_op_IORING_REGISTER_LAST: io_uring_register_op = 31;
12022pub const io_uring_register_op_IORING_REGISTER_USE_REGISTERED_RING: io_uring_register_op =
12023    2147483648;
12024pub type io_uring_register_op = crate::types::c_uint;
12025pub const io_wq_type_IO_WQ_BOUND: io_wq_type = 0;
12026pub const io_wq_type_IO_WQ_UNBOUND: io_wq_type = 1;
12027pub type io_wq_type = crate::types::c_uint;
12028#[repr(C)]
12029#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12030pub struct io_uring_files_update {
12031    pub offset: __u32,
12032    pub resv: __u32,
12033    pub fds: __u64,
12034}
12035#[repr(C)]
12036#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12037pub struct io_uring_rsrc_register {
12038    pub nr: __u32,
12039    pub flags: __u32,
12040    pub resv2: __u64,
12041    pub data: __u64,
12042    pub tags: __u64,
12043}
12044#[repr(C)]
12045#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12046pub struct io_uring_rsrc_update {
12047    pub offset: __u32,
12048    pub resv: __u32,
12049    pub data: __u64,
12050}
12051#[repr(C)]
12052#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12053pub struct io_uring_rsrc_update2 {
12054    pub offset: __u32,
12055    pub resv: __u32,
12056    pub data: __u64,
12057    pub tags: __u64,
12058    pub nr: __u32,
12059    pub resv2: __u32,
12060}
12061#[repr(C)]
12062#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12063pub struct io_uring_probe_op {
12064    pub op: __u8,
12065    pub resv: __u8,
12066    pub flags: __u16,
12067    pub resv2: __u32,
12068}
12069#[repr(C)]
12070#[derive(Debug, Default)]
12071pub struct io_uring_probe {
12072    pub last_op: __u8,
12073    pub ops_len: __u8,
12074    pub resv: __u16,
12075    pub resv2: [__u32; 3usize],
12076    pub ops: __IncompleteArrayField<io_uring_probe_op>,
12077}
12078#[repr(C)]
12079#[derive(Copy, Clone)]
12080pub struct io_uring_restriction {
12081    pub opcode: __u16,
12082    pub __bindgen_anon_1: io_uring_restriction__bindgen_ty_1,
12083    pub resv: __u8,
12084    pub resv2: [__u32; 3usize],
12085}
12086#[repr(C)]
12087#[derive(Copy, Clone)]
12088pub union io_uring_restriction__bindgen_ty_1 {
12089    pub register_op: __u8,
12090    pub sqe_op: __u8,
12091    pub sqe_flags: __u8,
12092}
12093impl Default for io_uring_restriction__bindgen_ty_1 {
12094    fn default() -> Self {
12095        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12096        unsafe {
12097            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12098            s.assume_init()
12099        }
12100    }
12101}
12102impl Default for io_uring_restriction {
12103    fn default() -> Self {
12104        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12105        unsafe {
12106            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12107            s.assume_init()
12108        }
12109    }
12110}
12111#[repr(C)]
12112#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12113pub struct io_uring_clock_register {
12114    pub clockid: __u32,
12115    pub __resv: [__u32; 3usize],
12116}
12117pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_80 = 1;
12118pub type _bindgen_ty_80 = crate::types::c_uint;
12119#[repr(C)]
12120#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12121pub struct io_uring_clone_buffers {
12122    pub src_fd: __u32,
12123    pub flags: __u32,
12124    pub pad: [__u32; 6usize],
12125}
12126#[repr(C)]
12127#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12128pub struct io_uring_buf {
12129    pub addr: __u64,
12130    pub len: __u32,
12131    pub bid: __u16,
12132    pub resv: __u16,
12133}
12134#[repr(C)]
12135pub struct io_uring_buf_ring {
12136    pub __bindgen_anon_1: io_uring_buf_ring__bindgen_ty_1,
12137}
12138#[repr(C)]
12139pub struct io_uring_buf_ring__bindgen_ty_1 {
12140    pub __bindgen_anon_1: __BindgenUnionField<io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1>,
12141    pub __bindgen_anon_2: __BindgenUnionField<io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2>,
12142    pub bindgen_union_field: __BindgenOpaqueArray8<[u8; 16usize]>,
12143}
12144#[repr(C)]
12145#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12146pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1 {
12147    pub resv1: __u64,
12148    pub resv2: __u32,
12149    pub resv3: __u16,
12150    pub tail: __u16,
12151}
12152#[repr(C)]
12153#[derive(Debug, Default)]
12154pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2 {
12155    pub __empty_bufs: io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1,
12156    pub bufs: __IncompleteArrayField<io_uring_buf>,
12157}
12158#[repr(C)]
12159#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12160pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 {}
12161impl Default for io_uring_buf_ring__bindgen_ty_1 {
12162    fn default() -> Self {
12163        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12164        unsafe {
12165            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12166            s.assume_init()
12167        }
12168    }
12169}
12170impl Default for io_uring_buf_ring {
12171    fn default() -> Self {
12172        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12173        unsafe {
12174            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12175            s.assume_init()
12176        }
12177    }
12178}
12179pub const io_uring_register_pbuf_ring_flags_IOU_PBUF_RING_MMAP: io_uring_register_pbuf_ring_flags =
12180    1;
12181pub const io_uring_register_pbuf_ring_flags_IOU_PBUF_RING_INC: io_uring_register_pbuf_ring_flags =
12182    2;
12183pub type io_uring_register_pbuf_ring_flags = crate::types::c_uint;
12184#[repr(C)]
12185#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12186pub struct io_uring_buf_reg {
12187    pub ring_addr: __u64,
12188    pub ring_entries: __u32,
12189    pub bgid: __u16,
12190    pub flags: __u16,
12191    pub resv: [__u64; 3usize],
12192}
12193#[repr(C)]
12194#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12195pub struct io_uring_buf_status {
12196    pub buf_group: __u32,
12197    pub head: __u32,
12198    pub resv: [__u32; 8usize],
12199}
12200#[repr(C)]
12201#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12202pub struct io_uring_napi {
12203    pub busy_poll_to: __u32,
12204    pub prefer_busy_poll: __u8,
12205    pub pad: [__u8; 3usize],
12206    pub resv: __u64,
12207}
12208pub const io_uring_register_restriction_op_IORING_RESTRICTION_REGISTER_OP:
12209    io_uring_register_restriction_op = 0;
12210pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_OP:
12211    io_uring_register_restriction_op = 1;
12212pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_FLAGS_ALLOWED:
12213    io_uring_register_restriction_op = 2;
12214pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_FLAGS_REQUIRED:
12215    io_uring_register_restriction_op = 3;
12216pub const io_uring_register_restriction_op_IORING_RESTRICTION_LAST:
12217    io_uring_register_restriction_op = 4;
12218pub type io_uring_register_restriction_op = crate::types::c_uint;
12219#[repr(C)]
12220#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12221pub struct io_uring_getevents_arg {
12222    pub sigmask: __u64,
12223    pub sigmask_sz: __u32,
12224    pub min_wait_usec: __u32,
12225    pub ts: __u64,
12226}
12227#[repr(C)]
12228#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12229pub struct io_uring_sync_cancel_reg {
12230    pub addr: __u64,
12231    pub fd: __s32,
12232    pub flags: __u32,
12233    pub timeout: __kernel_timespec,
12234    pub opcode: __u8,
12235    pub pad: [__u8; 7usize],
12236    pub pad2: [__u64; 3usize],
12237}
12238#[repr(C)]
12239#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12240pub struct io_uring_file_index_range {
12241    pub off: __u32,
12242    pub len: __u32,
12243    pub resv: __u64,
12244}
12245#[repr(C)]
12246#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12247pub struct io_uring_recvmsg_out {
12248    pub namelen: __u32,
12249    pub controllen: __u32,
12250    pub payloadlen: __u32,
12251    pub flags: __u32,
12252}
12253pub const io_uring_socket_op_SOCKET_URING_OP_SIOCINQ: io_uring_socket_op = 0;
12254pub const io_uring_socket_op_SOCKET_URING_OP_SIOCOUTQ: io_uring_socket_op = 1;
12255pub const io_uring_socket_op_SOCKET_URING_OP_GETSOCKOPT: io_uring_socket_op = 2;
12256pub const io_uring_socket_op_SOCKET_URING_OP_SETSOCKOPT: io_uring_socket_op = 3;
12257pub type io_uring_socket_op = crate::types::c_uint;
12258#[repr(C)]
12259#[derive(Copy, Clone)]
12260pub struct iphdr {
12261    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
12262    pub tos: __u8,
12263    pub tot_len: __be16,
12264    pub id: __be16,
12265    pub frag_off: __be16,
12266    pub ttl: __u8,
12267    pub protocol: __u8,
12268    pub check: __sum16,
12269    pub __bindgen_anon_1: iphdr__bindgen_ty_1,
12270}
12271#[repr(C)]
12272#[derive(Copy, Clone)]
12273pub union iphdr__bindgen_ty_1 {
12274    pub __bindgen_anon_1: iphdr__bindgen_ty_1__bindgen_ty_1,
12275    pub addrs: iphdr__bindgen_ty_1__bindgen_ty_2,
12276}
12277#[repr(C)]
12278#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12279pub struct iphdr__bindgen_ty_1__bindgen_ty_1 {
12280    pub saddr: __be32,
12281    pub daddr: __be32,
12282}
12283#[repr(C)]
12284#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12285pub struct iphdr__bindgen_ty_1__bindgen_ty_2 {
12286    pub saddr: __be32,
12287    pub daddr: __be32,
12288}
12289impl Default for iphdr__bindgen_ty_1 {
12290    fn default() -> Self {
12291        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12292        unsafe {
12293            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12294            s.assume_init()
12295        }
12296    }
12297}
12298impl Default for iphdr {
12299    fn default() -> Self {
12300        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12301        unsafe {
12302            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12303            s.assume_init()
12304        }
12305    }
12306}
12307impl iphdr {
12308    #[inline]
12309    pub fn ihl(&self) -> __u8 {
12310        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 4u8>() as u8) }
12311    }
12312    #[inline]
12313    pub fn set_ihl(&mut self, val: __u8) {
12314        unsafe {
12315            let val: u8 = val as _;
12316            self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
12317        }
12318    }
12319    #[inline]
12320    pub unsafe fn ihl_raw(this: *const Self) -> __u8 {
12321        unsafe {
12322            ::std::mem::transmute(
12323                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
12324                    ::std::ptr::addr_of!((*this)._bitfield_1),
12325                ) as u8,
12326            )
12327        }
12328    }
12329    #[inline]
12330    pub unsafe fn set_ihl_raw(this: *mut Self, val: __u8) {
12331        unsafe {
12332            let val: u8 = val as _;
12333            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
12334                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12335                val as u64,
12336            )
12337        }
12338    }
12339    #[inline]
12340    pub fn version(&self) -> __u8 {
12341        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 4u8>() as u8) }
12342    }
12343    #[inline]
12344    pub fn set_version(&mut self, val: __u8) {
12345        unsafe {
12346            let val: u8 = val as _;
12347            self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
12348        }
12349    }
12350    #[inline]
12351    pub unsafe fn version_raw(this: *const Self) -> __u8 {
12352        unsafe {
12353            ::std::mem::transmute(
12354                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
12355                    ::std::ptr::addr_of!((*this)._bitfield_1),
12356                ) as u8,
12357            )
12358        }
12359    }
12360    #[inline]
12361    pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
12362        unsafe {
12363            let val: u8 = val as _;
12364            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
12365                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12366                val as u64,
12367            )
12368        }
12369    }
12370    #[inline]
12371    pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12372        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12373        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
12374            let ihl: u8 = ihl as _;
12375            ihl as u64
12376        });
12377        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
12378            let version: u8 = version as _;
12379            version as u64
12380        });
12381        __bindgen_bitfield_unit
12382    }
12383}
12384#[repr(C)]
12385#[derive(Debug, Default)]
12386pub struct ip_auth_hdr {
12387    pub nexthdr: __u8,
12388    pub hdrlen: __u8,
12389    pub reserved: __be16,
12390    pub spi: __be32,
12391    pub seq_no: __be32,
12392    pub auth_data: __IncompleteArrayField<__u8>,
12393}
12394#[repr(C)]
12395#[derive(Debug, Default)]
12396pub struct ip_esp_hdr {
12397    pub spi: __be32,
12398    pub seq_no: __be32,
12399    pub enc_data: __IncompleteArrayField<__u8>,
12400}
12401#[repr(C)]
12402#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12403pub struct ip_comp_hdr {
12404    pub nexthdr: __u8,
12405    pub flags: __u8,
12406    pub cpi: __be16,
12407}
12408#[repr(C)]
12409#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12410pub struct ip_beet_phdr {
12411    pub nexthdr: __u8,
12412    pub hdrlen: __u8,
12413    pub padlen: __u8,
12414    pub reserved: __u8,
12415}
12416pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_81 = 1;
12417pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_81 = 2;
12418pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_81 = 3;
12419pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_81 = 4;
12420pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_81 = 5;
12421pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_81 = 6;
12422pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_81 = 7;
12423pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_81 = 8;
12424pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_81 = 9;
12425pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_81 = 10;
12426pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_81 = 11;
12427pub const IPV4_DEVCONF_TAG: _bindgen_ty_81 = 12;
12428pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_81 = 13;
12429pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_81 = 14;
12430pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_81 = 15;
12431pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_81 = 16;
12432pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_81 = 17;
12433pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_81 = 18;
12434pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_81 = 19;
12435pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_81 = 20;
12436pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_81 = 21;
12437pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_81 = 22;
12438pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_81 = 23;
12439pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_81 = 24;
12440pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_81 = 25;
12441pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_81 = 26;
12442pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_81 = 27;
12443pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_81 = 28;
12444pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_81 = 29;
12445pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_81 = 30;
12446pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_81 = 31;
12447pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_81 = 32;
12448pub const IPV4_DEVCONF_ARP_EVICT_NOCARRIER: _bindgen_ty_81 = 33;
12449pub const __IPV4_DEVCONF_MAX: _bindgen_ty_81 = 34;
12450pub type _bindgen_ty_81 = crate::types::c_uint;
12451#[repr(C)]
12452#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12453pub struct in6_addr {
12454    pub in6_u: in6_addr__bindgen_ty_1,
12455}
12456#[repr(C)]
12457#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12458pub union in6_addr__bindgen_ty_1 {
12459    pub u6_addr8: [__u8; 16usize],
12460    pub u6_addr16: [__be16; 8usize],
12461    pub u6_addr32: [__be32; 4usize],
12462}
12463impl Default for in6_addr__bindgen_ty_1 {
12464    fn default() -> Self {
12465        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12466        unsafe {
12467            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12468            s.assume_init()
12469        }
12470    }
12471}
12472impl Default for in6_addr {
12473    fn default() -> Self {
12474        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12475        unsafe {
12476            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12477            s.assume_init()
12478        }
12479    }
12480}
12481#[repr(C)]
12482#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12483pub struct sockaddr_in6 {
12484    pub sin6_family: crate::types::c_ushort,
12485    pub sin6_port: __be16,
12486    pub sin6_flowinfo: __be32,
12487    pub sin6_addr: in6_addr,
12488    pub sin6_scope_id: __u32,
12489}
12490impl Default for sockaddr_in6 {
12491    fn default() -> Self {
12492        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12493        unsafe {
12494            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12495            s.assume_init()
12496        }
12497    }
12498}
12499#[repr(C)]
12500#[derive(Copy, Clone)]
12501pub struct ipv6_mreq {
12502    pub ipv6mr_multiaddr: in6_addr,
12503    pub ipv6mr_ifindex: crate::types::c_int,
12504}
12505impl Default for ipv6_mreq {
12506    fn default() -> Self {
12507        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12508        unsafe {
12509            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12510            s.assume_init()
12511        }
12512    }
12513}
12514#[repr(C)]
12515#[derive(Copy, Clone)]
12516pub struct in6_flowlabel_req {
12517    pub flr_dst: in6_addr,
12518    pub flr_label: __be32,
12519    pub flr_action: __u8,
12520    pub flr_share: __u8,
12521    pub flr_flags: __u16,
12522    pub flr_expires: __u16,
12523    pub flr_linger: __u16,
12524    pub __flr_pad: __u32,
12525}
12526impl Default for in6_flowlabel_req {
12527    fn default() -> Self {
12528        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12529        unsafe {
12530            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12531            s.assume_init()
12532        }
12533    }
12534}
12535#[repr(C)]
12536#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12537pub struct in6_pktinfo {
12538    pub ipi6_addr: in6_addr,
12539    pub ipi6_ifindex: crate::types::c_int,
12540}
12541impl Default for in6_pktinfo {
12542    fn default() -> Self {
12543        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12544        unsafe {
12545            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12546            s.assume_init()
12547        }
12548    }
12549}
12550#[repr(C)]
12551#[derive(Copy, Clone)]
12552pub struct ip6_mtuinfo {
12553    pub ip6m_addr: sockaddr_in6,
12554    pub ip6m_mtu: __u32,
12555}
12556impl Default for ip6_mtuinfo {
12557    fn default() -> Self {
12558        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12559        unsafe {
12560            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12561            s.assume_init()
12562        }
12563    }
12564}
12565#[repr(C)]
12566#[derive(Copy, Clone)]
12567pub struct in6_ifreq {
12568    pub ifr6_addr: in6_addr,
12569    pub ifr6_prefixlen: __u32,
12570    pub ifr6_ifindex: crate::types::c_int,
12571}
12572impl Default for in6_ifreq {
12573    fn default() -> Self {
12574        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12575        unsafe {
12576            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12577            s.assume_init()
12578        }
12579    }
12580}
12581#[repr(C)]
12582#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12583pub struct ipv6_rt_hdr {
12584    pub nexthdr: __u8,
12585    pub hdrlen: __u8,
12586    pub type_: __u8,
12587    pub segments_left: __u8,
12588}
12589#[repr(C, packed)]
12590#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12591pub struct ipv6_opt_hdr {
12592    pub nexthdr: __u8,
12593    pub hdrlen: __u8,
12594}
12595#[repr(C)]
12596pub struct rt0_hdr {
12597    pub rt_hdr: ipv6_rt_hdr,
12598    pub reserved: __u32,
12599    pub addr: __IncompleteArrayField<in6_addr>,
12600}
12601impl Default for rt0_hdr {
12602    fn default() -> Self {
12603        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12604        unsafe {
12605            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12606            s.assume_init()
12607        }
12608    }
12609}
12610#[repr(C)]
12611#[derive(Copy, Clone)]
12612pub struct rt2_hdr {
12613    pub rt_hdr: ipv6_rt_hdr,
12614    pub reserved: __u32,
12615    pub addr: in6_addr,
12616}
12617impl Default for rt2_hdr {
12618    fn default() -> Self {
12619        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12620        unsafe {
12621            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12622            s.assume_init()
12623        }
12624    }
12625}
12626#[repr(C, packed)]
12627#[derive(Copy, Clone)]
12628pub struct ipv6_destopt_hao {
12629    pub type_: __u8,
12630    pub length: __u8,
12631    pub addr: in6_addr,
12632}
12633impl Default for ipv6_destopt_hao {
12634    fn default() -> Self {
12635        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12636        unsafe {
12637            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12638            s.assume_init()
12639        }
12640    }
12641}
12642#[repr(C)]
12643#[derive(Copy, Clone)]
12644pub struct ipv6hdr {
12645    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
12646    pub flow_lbl: [__u8; 3usize],
12647    pub payload_len: __be16,
12648    pub nexthdr: __u8,
12649    pub hop_limit: __u8,
12650    pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1,
12651}
12652#[repr(C)]
12653#[derive(Copy, Clone)]
12654pub union ipv6hdr__bindgen_ty_1 {
12655    pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1__bindgen_ty_1,
12656    pub addrs: ipv6hdr__bindgen_ty_1__bindgen_ty_2,
12657}
12658#[repr(C)]
12659#[derive(Copy, Clone)]
12660pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
12661    pub saddr: in6_addr,
12662    pub daddr: in6_addr,
12663}
12664impl Default for ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
12665    fn default() -> Self {
12666        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12667        unsafe {
12668            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12669            s.assume_init()
12670        }
12671    }
12672}
12673#[repr(C)]
12674#[derive(Copy, Clone)]
12675pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
12676    pub saddr: in6_addr,
12677    pub daddr: in6_addr,
12678}
12679impl Default for ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
12680    fn default() -> Self {
12681        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12682        unsafe {
12683            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12684            s.assume_init()
12685        }
12686    }
12687}
12688impl Default for ipv6hdr__bindgen_ty_1 {
12689    fn default() -> Self {
12690        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12691        unsafe {
12692            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12693            s.assume_init()
12694        }
12695    }
12696}
12697impl Default for ipv6hdr {
12698    fn default() -> Self {
12699        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12700        unsafe {
12701            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12702            s.assume_init()
12703        }
12704    }
12705}
12706impl ipv6hdr {
12707    #[inline]
12708    pub fn priority(&self) -> __u8 {
12709        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 4u8>() as u8) }
12710    }
12711    #[inline]
12712    pub fn set_priority(&mut self, val: __u8) {
12713        unsafe {
12714            let val: u8 = val as _;
12715            self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
12716        }
12717    }
12718    #[inline]
12719    pub unsafe fn priority_raw(this: *const Self) -> __u8 {
12720        unsafe {
12721            ::std::mem::transmute(
12722                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
12723                    ::std::ptr::addr_of!((*this)._bitfield_1),
12724                ) as u8,
12725            )
12726        }
12727    }
12728    #[inline]
12729    pub unsafe fn set_priority_raw(this: *mut Self, val: __u8) {
12730        unsafe {
12731            let val: u8 = val as _;
12732            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
12733                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12734                val as u64,
12735            )
12736        }
12737    }
12738    #[inline]
12739    pub fn version(&self) -> __u8 {
12740        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 4u8>() as u8) }
12741    }
12742    #[inline]
12743    pub fn set_version(&mut self, val: __u8) {
12744        unsafe {
12745            let val: u8 = val as _;
12746            self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
12747        }
12748    }
12749    #[inline]
12750    pub unsafe fn version_raw(this: *const Self) -> __u8 {
12751        unsafe {
12752            ::std::mem::transmute(
12753                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
12754                    ::std::ptr::addr_of!((*this)._bitfield_1),
12755                ) as u8,
12756            )
12757        }
12758    }
12759    #[inline]
12760    pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
12761        unsafe {
12762            let val: u8 = val as _;
12763            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
12764                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12765                val as u64,
12766            )
12767        }
12768    }
12769    #[inline]
12770    pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12771        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12772        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
12773            let priority: u8 = priority as _;
12774            priority as u64
12775        });
12776        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
12777            let version: u8 = version as _;
12778            version as u64
12779        });
12780        __bindgen_bitfield_unit
12781    }
12782}
12783pub const DEVCONF_FORWARDING: _bindgen_ty_82 = 0;
12784pub const DEVCONF_HOPLIMIT: _bindgen_ty_82 = 1;
12785pub const DEVCONF_MTU6: _bindgen_ty_82 = 2;
12786pub const DEVCONF_ACCEPT_RA: _bindgen_ty_82 = 3;
12787pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_82 = 4;
12788pub const DEVCONF_AUTOCONF: _bindgen_ty_82 = 5;
12789pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_82 = 6;
12790pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_82 = 7;
12791pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_82 = 8;
12792pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_82 = 9;
12793pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_82 = 10;
12794pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_82 = 11;
12795pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_82 = 12;
12796pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_82 = 13;
12797pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_82 = 14;
12798pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_82 = 15;
12799pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_82 = 16;
12800pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_82 = 17;
12801pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_82 = 18;
12802pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_82 = 19;
12803pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_82 = 20;
12804pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_82 = 21;
12805pub const DEVCONF_PROXY_NDP: _bindgen_ty_82 = 22;
12806pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_82 = 23;
12807pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_82 = 24;
12808pub const DEVCONF_MC_FORWARDING: _bindgen_ty_82 = 25;
12809pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_82 = 26;
12810pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_82 = 27;
12811pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_82 = 28;
12812pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_82 = 29;
12813pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_82 = 30;
12814pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_82 = 31;
12815pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_82 = 32;
12816pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_82 = 33;
12817pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_82 = 34;
12818pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_82 = 35;
12819pub const DEVCONF_STABLE_SECRET: _bindgen_ty_82 = 36;
12820pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_82 = 37;
12821pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_82 = 38;
12822pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_82 = 39;
12823pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_82 = 40;
12824pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_82 = 41;
12825pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_82 = 42;
12826pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_82 = 43;
12827pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_82 = 44;
12828pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_82 = 45;
12829pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_82 = 46;
12830pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_82 = 47;
12831pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_82 = 48;
12832pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_82 = 49;
12833pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_82 = 50;
12834pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_82 = 51;
12835pub const DEVCONF_RA_DEFRTR_METRIC: _bindgen_ty_82 = 52;
12836pub const DEVCONF_IOAM6_ENABLED: _bindgen_ty_82 = 53;
12837pub const DEVCONF_IOAM6_ID: _bindgen_ty_82 = 54;
12838pub const DEVCONF_IOAM6_ID_WIDE: _bindgen_ty_82 = 55;
12839pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_82 = 56;
12840pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_82 = 57;
12841pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_82 = 58;
12842pub const DEVCONF_MAX: _bindgen_ty_82 = 59;
12843pub type _bindgen_ty_82 = crate::types::c_uint;
12844pub const kcmp_type_KCMP_FILE: kcmp_type = 0;
12845pub const kcmp_type_KCMP_VM: kcmp_type = 1;
12846pub const kcmp_type_KCMP_FILES: kcmp_type = 2;
12847pub const kcmp_type_KCMP_FS: kcmp_type = 3;
12848pub const kcmp_type_KCMP_SIGHAND: kcmp_type = 4;
12849pub const kcmp_type_KCMP_IO: kcmp_type = 5;
12850pub const kcmp_type_KCMP_SYSVSEM: kcmp_type = 6;
12851pub const kcmp_type_KCMP_EPOLL_TFD: kcmp_type = 7;
12852pub const kcmp_type_KCMP_TYPES: kcmp_type = 8;
12853pub type kcmp_type = crate::types::c_uint;
12854#[repr(C)]
12855#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12856pub struct kcmp_epoll_slot {
12857    pub efd: __u32,
12858    pub tfd: __u32,
12859    pub toff: __u32,
12860}
12861pub const LO_FLAGS_READ_ONLY: _bindgen_ty_83 = 1;
12862pub const LO_FLAGS_AUTOCLEAR: _bindgen_ty_83 = 4;
12863pub const LO_FLAGS_PARTSCAN: _bindgen_ty_83 = 8;
12864pub const LO_FLAGS_DIRECT_IO: _bindgen_ty_83 = 16;
12865pub type _bindgen_ty_83 = crate::types::c_uint;
12866#[repr(C)]
12867#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12868pub struct loop_info {
12869    pub lo_number: crate::types::c_int,
12870    pub __bindgen_padding_0: [u8; 4usize],
12871    pub lo_device: __kernel_old_dev_t,
12872    pub lo_inode: crate::types::c_ulong,
12873    pub lo_rdevice: __kernel_old_dev_t,
12874    pub lo_offset: crate::types::c_int,
12875    pub lo_encrypt_type: crate::types::c_int,
12876    pub lo_encrypt_key_size: crate::types::c_int,
12877    pub lo_flags: crate::types::c_int,
12878    pub lo_name: [crate::types::c_char; 64usize],
12879    pub lo_encrypt_key: [crate::types::c_uchar; 32usize],
12880    pub lo_init: [crate::types::c_ulong; 2usize],
12881    pub reserved: [crate::types::c_char; 4usize],
12882    pub __bindgen_padding_1: [u8; 4usize],
12883}
12884impl Default for loop_info {
12885    fn default() -> Self {
12886        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12887        unsafe {
12888            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12889            s.assume_init()
12890        }
12891    }
12892}
12893#[repr(C)]
12894#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12895pub struct loop_info64 {
12896    pub lo_device: __u64,
12897    pub lo_inode: __u64,
12898    pub lo_rdevice: __u64,
12899    pub lo_offset: __u64,
12900    pub lo_sizelimit: __u64,
12901    pub lo_number: __u32,
12902    pub lo_encrypt_type: __u32,
12903    pub lo_encrypt_key_size: __u32,
12904    pub lo_flags: __u32,
12905    pub lo_file_name: [__u8; 64usize],
12906    pub lo_crypt_name: [__u8; 64usize],
12907    pub lo_encrypt_key: [__u8; 32usize],
12908    pub lo_init: [__u64; 2usize],
12909}
12910impl Default for loop_info64 {
12911    fn default() -> Self {
12912        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12913        unsafe {
12914            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12915            s.assume_init()
12916        }
12917    }
12918}
12919#[repr(C)]
12920#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12921pub struct loop_config {
12922    pub fd: __u32,
12923    pub block_size: __u32,
12924    pub info: loop_info64,
12925    pub __reserved: [__u64; 8usize],
12926}
12927impl Default for loop_config {
12928    fn default() -> Self {
12929        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12930        unsafe {
12931            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12932            s.assume_init()
12933        }
12934    }
12935}
12936pub const membarrier_cmd_MEMBARRIER_CMD_QUERY: membarrier_cmd = 0;
12937pub const membarrier_cmd_MEMBARRIER_CMD_GLOBAL: membarrier_cmd = 1;
12938pub const membarrier_cmd_MEMBARRIER_CMD_GLOBAL_EXPEDITED: membarrier_cmd = 2;
12939pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED: membarrier_cmd = 4;
12940pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED: membarrier_cmd = 8;
12941pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED: membarrier_cmd = 16;
12942pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE: membarrier_cmd = 32;
12943pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE: membarrier_cmd = 64;
12944pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ: membarrier_cmd = 128;
12945pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ: membarrier_cmd = 256;
12946pub const membarrier_cmd_MEMBARRIER_CMD_GET_REGISTRATIONS: membarrier_cmd = 512;
12947pub const membarrier_cmd_MEMBARRIER_CMD_SHARED: membarrier_cmd = 1;
12948pub type membarrier_cmd = crate::types::c_uint;
12949pub const membarrier_cmd_flag_MEMBARRIER_CMD_FLAG_CPU: membarrier_cmd_flag = 1;
12950pub type membarrier_cmd_flag = crate::types::c_uint;
12951#[repr(C)]
12952#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12953pub struct cachestat_range {
12954    pub off: __u64,
12955    pub len: __u64,
12956}
12957#[repr(C)]
12958#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12959pub struct cachestat {
12960    pub nr_cache: __u64,
12961    pub nr_dirty: __u64,
12962    pub nr_writeback: __u64,
12963    pub nr_evicted: __u64,
12964    pub nr_recently_evicted: __u64,
12965}
12966#[repr(C)]
12967#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12968pub struct mq_attr {
12969    pub mq_flags: __kernel_long_t,
12970    pub mq_maxmsg: __kernel_long_t,
12971    pub mq_msgsize: __kernel_long_t,
12972    pub mq_curmsgs: __kernel_long_t,
12973    pub __reserved: [__kernel_long_t; 4usize],
12974}
12975#[doc = " An integral type representing an IPv4 address."]
12976pub type in_addr_t = u32;
12977#[doc = " A structure representing an IPv4 address."]
12978#[repr(C)]
12979#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12980pub struct in_addr {
12981    pub s_addr: in_addr_t,
12982}
12983pub const IPPROTO_IP: _bindgen_ty_84 = 0;
12984pub const IPPROTO_ICMP: _bindgen_ty_84 = 1;
12985pub const IPPROTO_IGMP: _bindgen_ty_84 = 2;
12986pub const IPPROTO_IPIP: _bindgen_ty_84 = 4;
12987pub const IPPROTO_TCP: _bindgen_ty_84 = 6;
12988pub const IPPROTO_EGP: _bindgen_ty_84 = 8;
12989pub const IPPROTO_PUP: _bindgen_ty_84 = 12;
12990pub const IPPROTO_UDP: _bindgen_ty_84 = 17;
12991pub const IPPROTO_IDP: _bindgen_ty_84 = 22;
12992pub const IPPROTO_TP: _bindgen_ty_84 = 29;
12993pub const IPPROTO_DCCP: _bindgen_ty_84 = 33;
12994pub const IPPROTO_IPV6: _bindgen_ty_84 = 41;
12995pub const IPPROTO_RSVP: _bindgen_ty_84 = 46;
12996pub const IPPROTO_GRE: _bindgen_ty_84 = 47;
12997pub const IPPROTO_ESP: _bindgen_ty_84 = 50;
12998pub const IPPROTO_AH: _bindgen_ty_84 = 51;
12999pub const IPPROTO_MTP: _bindgen_ty_84 = 92;
13000pub const IPPROTO_BEETPH: _bindgen_ty_84 = 94;
13001pub const IPPROTO_ENCAP: _bindgen_ty_84 = 98;
13002pub const IPPROTO_PIM: _bindgen_ty_84 = 103;
13003pub const IPPROTO_COMP: _bindgen_ty_84 = 108;
13004pub const IPPROTO_L2TP: _bindgen_ty_84 = 115;
13005pub const IPPROTO_SCTP: _bindgen_ty_84 = 132;
13006pub const IPPROTO_UDPLITE: _bindgen_ty_84 = 136;
13007pub const IPPROTO_MPLS: _bindgen_ty_84 = 137;
13008pub const IPPROTO_ETHERNET: _bindgen_ty_84 = 143;
13009pub const IPPROTO_RAW: _bindgen_ty_84 = 255;
13010pub const IPPROTO_SMC: _bindgen_ty_84 = 256;
13011pub const IPPROTO_MPTCP: _bindgen_ty_84 = 262;
13012pub const IPPROTO_MAX: _bindgen_ty_84 = 263;
13013pub type _bindgen_ty_84 = crate::types::c_uint;
13014#[repr(C)]
13015#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13016pub struct ip_mreq {
13017    pub imr_multiaddr: in_addr,
13018    pub imr_interface: in_addr,
13019}
13020#[repr(C)]
13021#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13022pub struct ip_mreqn {
13023    pub imr_multiaddr: in_addr,
13024    pub imr_address: in_addr,
13025    pub imr_ifindex: crate::types::c_int,
13026}
13027#[repr(C)]
13028#[derive(Copy, Clone)]
13029pub struct group_req {
13030    pub gr_interface: __u32,
13031    pub __bindgen_padding_0: [u8; 4usize],
13032    pub gr_group: sockaddr_storage,
13033}
13034impl Default for group_req {
13035    fn default() -> Self {
13036        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13037        unsafe {
13038            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13039            s.assume_init()
13040        }
13041    }
13042}
13043#[repr(C)]
13044#[derive(Copy, Clone)]
13045pub struct group_source_req {
13046    pub gsr_interface: __u32,
13047    pub __bindgen_padding_0: [u8; 4usize],
13048    pub gsr_group: sockaddr_storage,
13049    pub gsr_source: sockaddr_storage,
13050}
13051impl Default for group_source_req {
13052    fn default() -> Self {
13053        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13054        unsafe {
13055            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13056            s.assume_init()
13057        }
13058    }
13059}
13060#[repr(C)]
13061#[repr(align(8))]
13062#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13063pub struct group_filter {
13064    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13065}
13066#[repr(C)]
13067#[repr(align(8))]
13068#[derive(Copy, Clone)]
13069pub union group_filter__bindgen_ty_1 {
13070    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13071}
13072#[repr(C)]
13073#[repr(align(8))]
13074#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13075pub struct group_filter__bindgen_ty_1__bindgen_ty_1 {
13076    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13077}
13078#[repr(C)]
13079#[repr(align(8))]
13080#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13081pub struct group_filter__bindgen_ty_1__bindgen_ty_2 {
13082    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 144usize]>,
13083}
13084impl Default for group_filter__bindgen_ty_1 {
13085    fn default() -> Self {
13086        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13087        unsafe {
13088            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13089            s.assume_init()
13090        }
13091    }
13092}
13093#[repr(C)]
13094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13095pub struct in_pktinfo {
13096    pub ipi_ifindex: crate::types::c_int,
13097    pub ipi_spec_dst: in_addr,
13098    pub ipi_addr: in_addr,
13099}
13100#[repr(C)]
13101#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13102pub struct sockaddr_in {
13103    pub sin_family: __kernel_sa_family_t,
13104    pub sin_port: __be16,
13105    pub sin_addr: in_addr,
13106    pub __pad: [crate::types::c_uchar; 8usize],
13107}
13108pub const nf_inet_hooks_NF_INET_PRE_ROUTING: nf_inet_hooks = 0;
13109pub const nf_inet_hooks_NF_INET_LOCAL_IN: nf_inet_hooks = 1;
13110pub const nf_inet_hooks_NF_INET_FORWARD: nf_inet_hooks = 2;
13111pub const nf_inet_hooks_NF_INET_LOCAL_OUT: nf_inet_hooks = 3;
13112pub const nf_inet_hooks_NF_INET_POST_ROUTING: nf_inet_hooks = 4;
13113pub const nf_inet_hooks_NF_INET_NUMHOOKS: nf_inet_hooks = 5;
13114pub const nf_inet_hooks_NF_INET_INGRESS: nf_inet_hooks = 5;
13115pub type nf_inet_hooks = crate::types::c_uint;
13116pub const nf_dev_hooks_NF_NETDEV_INGRESS: nf_dev_hooks = 0;
13117pub const nf_dev_hooks_NF_NETDEV_EGRESS: nf_dev_hooks = 1;
13118pub const nf_dev_hooks_NF_NETDEV_NUMHOOKS: nf_dev_hooks = 2;
13119pub type nf_dev_hooks = crate::types::c_uint;
13120pub const NFPROTO_UNSPEC: _bindgen_ty_85 = 0;
13121pub const NFPROTO_INET: _bindgen_ty_85 = 1;
13122pub const NFPROTO_IPV4: _bindgen_ty_85 = 2;
13123pub const NFPROTO_ARP: _bindgen_ty_85 = 3;
13124pub const NFPROTO_NETDEV: _bindgen_ty_85 = 5;
13125pub const NFPROTO_BRIDGE: _bindgen_ty_85 = 7;
13126pub const NFPROTO_IPV6: _bindgen_ty_85 = 10;
13127pub const NFPROTO_DECNET: _bindgen_ty_85 = 12;
13128pub const NFPROTO_NUMPROTO: _bindgen_ty_85 = 13;
13129pub type _bindgen_ty_85 = crate::types::c_uint;
13130#[repr(C)]
13131#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13132pub union nf_inet_addr {
13133    pub all: [__u32; 4usize],
13134    pub ip: __be32,
13135    pub ip6: [__be32; 4usize],
13136    pub in_: in_addr,
13137    pub in6: in6_addr,
13138}
13139impl Default for nf_inet_addr {
13140    fn default() -> Self {
13141        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13142        unsafe {
13143            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13144            s.assume_init()
13145        }
13146    }
13147}
13148pub const ip_conntrack_info_IP_CT_ESTABLISHED: ip_conntrack_info = 0;
13149pub const ip_conntrack_info_IP_CT_RELATED: ip_conntrack_info = 1;
13150pub const ip_conntrack_info_IP_CT_NEW: ip_conntrack_info = 2;
13151pub const ip_conntrack_info_IP_CT_IS_REPLY: ip_conntrack_info = 3;
13152pub const ip_conntrack_info_IP_CT_ESTABLISHED_REPLY: ip_conntrack_info = 3;
13153pub const ip_conntrack_info_IP_CT_RELATED_REPLY: ip_conntrack_info = 4;
13154pub const ip_conntrack_info_IP_CT_NUMBER: ip_conntrack_info = 5;
13155pub const ip_conntrack_info_IP_CT_NEW_REPLY: ip_conntrack_info = 5;
13156pub type ip_conntrack_info = crate::types::c_uint;
13157pub const ip_conntrack_status_IPS_EXPECTED_BIT: ip_conntrack_status = 0;
13158pub const ip_conntrack_status_IPS_EXPECTED: ip_conntrack_status = 1;
13159pub const ip_conntrack_status_IPS_SEEN_REPLY_BIT: ip_conntrack_status = 1;
13160pub const ip_conntrack_status_IPS_SEEN_REPLY: ip_conntrack_status = 2;
13161pub const ip_conntrack_status_IPS_ASSURED_BIT: ip_conntrack_status = 2;
13162pub const ip_conntrack_status_IPS_ASSURED: ip_conntrack_status = 4;
13163pub const ip_conntrack_status_IPS_CONFIRMED_BIT: ip_conntrack_status = 3;
13164pub const ip_conntrack_status_IPS_CONFIRMED: ip_conntrack_status = 8;
13165pub const ip_conntrack_status_IPS_SRC_NAT_BIT: ip_conntrack_status = 4;
13166pub const ip_conntrack_status_IPS_SRC_NAT: ip_conntrack_status = 16;
13167pub const ip_conntrack_status_IPS_DST_NAT_BIT: ip_conntrack_status = 5;
13168pub const ip_conntrack_status_IPS_DST_NAT: ip_conntrack_status = 32;
13169pub const ip_conntrack_status_IPS_NAT_MASK: ip_conntrack_status = 48;
13170pub const ip_conntrack_status_IPS_SEQ_ADJUST_BIT: ip_conntrack_status = 6;
13171pub const ip_conntrack_status_IPS_SEQ_ADJUST: ip_conntrack_status = 64;
13172pub const ip_conntrack_status_IPS_SRC_NAT_DONE_BIT: ip_conntrack_status = 7;
13173pub const ip_conntrack_status_IPS_SRC_NAT_DONE: ip_conntrack_status = 128;
13174pub const ip_conntrack_status_IPS_DST_NAT_DONE_BIT: ip_conntrack_status = 8;
13175pub const ip_conntrack_status_IPS_DST_NAT_DONE: ip_conntrack_status = 256;
13176pub const ip_conntrack_status_IPS_NAT_DONE_MASK: ip_conntrack_status = 384;
13177pub const ip_conntrack_status_IPS_DYING_BIT: ip_conntrack_status = 9;
13178pub const ip_conntrack_status_IPS_DYING: ip_conntrack_status = 512;
13179pub const ip_conntrack_status_IPS_FIXED_TIMEOUT_BIT: ip_conntrack_status = 10;
13180pub const ip_conntrack_status_IPS_FIXED_TIMEOUT: ip_conntrack_status = 1024;
13181pub const ip_conntrack_status_IPS_TEMPLATE_BIT: ip_conntrack_status = 11;
13182pub const ip_conntrack_status_IPS_TEMPLATE: ip_conntrack_status = 2048;
13183pub const ip_conntrack_status_IPS_UNTRACKED_BIT: ip_conntrack_status = 12;
13184pub const ip_conntrack_status_IPS_UNTRACKED: ip_conntrack_status = 4096;
13185pub const ip_conntrack_status_IPS_HELPER_BIT: ip_conntrack_status = 13;
13186pub const ip_conntrack_status_IPS_HELPER: ip_conntrack_status = 8192;
13187pub const ip_conntrack_status_IPS_OFFLOAD_BIT: ip_conntrack_status = 14;
13188pub const ip_conntrack_status_IPS_OFFLOAD: ip_conntrack_status = 16384;
13189pub const ip_conntrack_status_IPS_HW_OFFLOAD_BIT: ip_conntrack_status = 15;
13190pub const ip_conntrack_status_IPS_HW_OFFLOAD: ip_conntrack_status = 32768;
13191pub const ip_conntrack_status_IPS_UNCHANGEABLE_MASK: ip_conntrack_status = 56313;
13192pub const ip_conntrack_status___IPS_MAX_BIT: ip_conntrack_status = 16;
13193pub type ip_conntrack_status = crate::types::c_uint;
13194pub const ip_conntrack_events_IPCT_NEW: ip_conntrack_events = 0;
13195pub const ip_conntrack_events_IPCT_RELATED: ip_conntrack_events = 1;
13196pub const ip_conntrack_events_IPCT_DESTROY: ip_conntrack_events = 2;
13197pub const ip_conntrack_events_IPCT_REPLY: ip_conntrack_events = 3;
13198pub const ip_conntrack_events_IPCT_ASSURED: ip_conntrack_events = 4;
13199pub const ip_conntrack_events_IPCT_PROTOINFO: ip_conntrack_events = 5;
13200pub const ip_conntrack_events_IPCT_HELPER: ip_conntrack_events = 6;
13201pub const ip_conntrack_events_IPCT_MARK: ip_conntrack_events = 7;
13202pub const ip_conntrack_events_IPCT_SEQADJ: ip_conntrack_events = 8;
13203pub const ip_conntrack_events_IPCT_NATSEQADJ: ip_conntrack_events = 8;
13204pub const ip_conntrack_events_IPCT_SECMARK: ip_conntrack_events = 9;
13205pub const ip_conntrack_events_IPCT_LABEL: ip_conntrack_events = 10;
13206pub const ip_conntrack_events_IPCT_SYNPROXY: ip_conntrack_events = 11;
13207pub type ip_conntrack_events = crate::types::c_uint;
13208pub const ip_conntrack_expect_events_IPEXP_NEW: ip_conntrack_expect_events = 0;
13209pub const ip_conntrack_expect_events_IPEXP_DESTROY: ip_conntrack_expect_events = 1;
13210pub type ip_conntrack_expect_events = crate::types::c_uint;
13211pub const ip_conntrack_dir_IP_CT_DIR_ORIGINAL: ip_conntrack_dir = 0;
13212pub const ip_conntrack_dir_IP_CT_DIR_REPLY: ip_conntrack_dir = 1;
13213pub const ip_conntrack_dir_IP_CT_DIR_MAX: ip_conntrack_dir = 2;
13214pub type ip_conntrack_dir = crate::types::c_uint;
13215#[repr(C)]
13216#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13217pub union nf_conntrack_man_proto {
13218    pub all: __be16,
13219    pub tcp: nf_conntrack_man_proto__bindgen_ty_1,
13220    pub udp: nf_conntrack_man_proto__bindgen_ty_2,
13221    pub icmp: nf_conntrack_man_proto__bindgen_ty_3,
13222    pub dccp: nf_conntrack_man_proto__bindgen_ty_4,
13223    pub sctp: nf_conntrack_man_proto__bindgen_ty_5,
13224    pub gre: nf_conntrack_man_proto__bindgen_ty_6,
13225}
13226#[repr(C)]
13227#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13228pub struct nf_conntrack_man_proto__bindgen_ty_1 {
13229    pub port: __be16,
13230}
13231#[repr(C)]
13232#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13233pub struct nf_conntrack_man_proto__bindgen_ty_2 {
13234    pub port: __be16,
13235}
13236#[repr(C)]
13237#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13238pub struct nf_conntrack_man_proto__bindgen_ty_3 {
13239    pub id: __be16,
13240}
13241#[repr(C)]
13242#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13243pub struct nf_conntrack_man_proto__bindgen_ty_4 {
13244    pub port: __be16,
13245}
13246#[repr(C)]
13247#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13248pub struct nf_conntrack_man_proto__bindgen_ty_5 {
13249    pub port: __be16,
13250}
13251#[repr(C)]
13252#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13253pub struct nf_conntrack_man_proto__bindgen_ty_6 {
13254    pub key: __be16,
13255}
13256impl Default for nf_conntrack_man_proto {
13257    fn default() -> Self {
13258        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13259        unsafe {
13260            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13261            s.assume_init()
13262        }
13263    }
13264}
13265#[repr(C)]
13266#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13267pub struct nf_nat_ipv4_range {
13268    pub flags: crate::types::c_uint,
13269    pub min_ip: __be32,
13270    pub max_ip: __be32,
13271    pub min: nf_conntrack_man_proto,
13272    pub max: nf_conntrack_man_proto,
13273}
13274impl Default for nf_nat_ipv4_range {
13275    fn default() -> Self {
13276        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13277        unsafe {
13278            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13279            s.assume_init()
13280        }
13281    }
13282}
13283#[repr(C)]
13284#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13285pub struct nf_nat_ipv4_multi_range_compat {
13286    pub rangesize: crate::types::c_uint,
13287    pub range: [nf_nat_ipv4_range; 1usize],
13288}
13289impl Default for nf_nat_ipv4_multi_range_compat {
13290    fn default() -> Self {
13291        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13292        unsafe {
13293            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13294            s.assume_init()
13295        }
13296    }
13297}
13298#[repr(C)]
13299#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13300pub struct nf_nat_range {
13301    pub flags: crate::types::c_uint,
13302    pub min_addr: nf_inet_addr,
13303    pub max_addr: nf_inet_addr,
13304    pub min_proto: nf_conntrack_man_proto,
13305    pub max_proto: nf_conntrack_man_proto,
13306}
13307impl Default for nf_nat_range {
13308    fn default() -> Self {
13309        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13310        unsafe {
13311            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13312            s.assume_init()
13313        }
13314    }
13315}
13316#[repr(C)]
13317#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13318pub struct nf_nat_range2 {
13319    pub flags: crate::types::c_uint,
13320    pub min_addr: nf_inet_addr,
13321    pub max_addr: nf_inet_addr,
13322    pub min_proto: nf_conntrack_man_proto,
13323    pub max_proto: nf_conntrack_man_proto,
13324    pub base_proto: nf_conntrack_man_proto,
13325    pub __bindgen_padding_0: [u8; 2usize],
13326}
13327impl Default for nf_nat_range2 {
13328    fn default() -> Self {
13329        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13330        unsafe {
13331            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13332            s.assume_init()
13333        }
13334    }
13335}
13336#[repr(C)]
13337#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13338pub struct xt_tproxy_target_info {
13339    pub mark_mask: __u32,
13340    pub mark_value: __u32,
13341    pub laddr: __be32,
13342    pub lport: __be16,
13343    pub __bindgen_padding_0: [u8; 2usize],
13344}
13345#[repr(C)]
13346#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13347pub struct xt_tproxy_target_info_v1 {
13348    pub mark_mask: __u32,
13349    pub mark_value: __u32,
13350    pub laddr: nf_inet_addr,
13351    pub lport: __be16,
13352    pub __bindgen_padding_0: [u8; 2usize],
13353}
13354impl Default for xt_tproxy_target_info_v1 {
13355    fn default() -> Self {
13356        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13357        unsafe {
13358            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13359            s.assume_init()
13360        }
13361    }
13362}
13363#[repr(C)]
13364#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13365pub struct bpf_prog {
13366    _unused: [u8; 0],
13367}
13368#[repr(C)]
13369#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13370pub struct xt_bpf_info {
13371    pub bpf_program_num_elem: __u16,
13372    pub __bindgen_padding_0: [u8; 2usize],
13373    pub bpf_program: [sock_filter; 64usize],
13374    pub __bindgen_padding_1: [u8; 4usize],
13375    pub filter: uref<bpf_prog>,
13376}
13377impl Default for xt_bpf_info {
13378    fn default() -> Self {
13379        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13380        unsafe {
13381            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13382            s.assume_init()
13383        }
13384    }
13385}
13386pub const xt_bpf_modes_XT_BPF_MODE_BYTECODE: xt_bpf_modes = 0;
13387pub const xt_bpf_modes_XT_BPF_MODE_FD_PINNED: xt_bpf_modes = 1;
13388pub const xt_bpf_modes_XT_BPF_MODE_FD_ELF: xt_bpf_modes = 2;
13389pub type xt_bpf_modes = crate::types::c_uint;
13390#[repr(C)]
13391#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13392pub struct xt_bpf_info_v1 {
13393    pub mode: __u16,
13394    pub bpf_program_num_elem: __u16,
13395    pub fd: __s32,
13396    pub __bindgen_anon_1: xt_bpf_info_v1__bindgen_ty_1,
13397    pub filter: uref<bpf_prog>,
13398}
13399#[repr(C)]
13400#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13401pub union xt_bpf_info_v1__bindgen_ty_1 {
13402    pub bpf_program: [sock_filter; 64usize],
13403    pub path: [crate::types::c_char; 512usize],
13404}
13405impl Default for xt_bpf_info_v1__bindgen_ty_1 {
13406    fn default() -> Self {
13407        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13408        unsafe {
13409            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13410            s.assume_init()
13411        }
13412    }
13413}
13414impl Default for xt_bpf_info_v1 {
13415    fn default() -> Self {
13416        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13417        unsafe {
13418            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13419            s.assume_init()
13420        }
13421    }
13422}
13423#[repr(C)]
13424#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13425pub struct xt_mark_tginfo2 {
13426    pub mark: __u32,
13427    pub mask: __u32,
13428}
13429#[repr(C)]
13430#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13431pub struct xt_mark_mtinfo1 {
13432    pub mark: __u32,
13433    pub mask: __u32,
13434    pub invert: __u8,
13435    pub __bindgen_padding_0: [u8; 3usize],
13436}
13437pub const nf_ip_hook_priorities_NF_IP_PRI_FIRST: nf_ip_hook_priorities = -2147483648;
13438pub const nf_ip_hook_priorities_NF_IP_PRI_RAW_BEFORE_DEFRAG: nf_ip_hook_priorities = -450;
13439pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_DEFRAG: nf_ip_hook_priorities = -400;
13440pub const nf_ip_hook_priorities_NF_IP_PRI_RAW: nf_ip_hook_priorities = -300;
13441pub const nf_ip_hook_priorities_NF_IP_PRI_SELINUX_FIRST: nf_ip_hook_priorities = -225;
13442pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK: nf_ip_hook_priorities = -200;
13443pub const nf_ip_hook_priorities_NF_IP_PRI_MANGLE: nf_ip_hook_priorities = -150;
13444pub const nf_ip_hook_priorities_NF_IP_PRI_NAT_DST: nf_ip_hook_priorities = -100;
13445pub const nf_ip_hook_priorities_NF_IP_PRI_FILTER: nf_ip_hook_priorities = 0;
13446pub const nf_ip_hook_priorities_NF_IP_PRI_SECURITY: nf_ip_hook_priorities = 50;
13447pub const nf_ip_hook_priorities_NF_IP_PRI_NAT_SRC: nf_ip_hook_priorities = 100;
13448pub const nf_ip_hook_priorities_NF_IP_PRI_SELINUX_LAST: nf_ip_hook_priorities = 225;
13449pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_HELPER: nf_ip_hook_priorities = 300;
13450pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_CONFIRM: nf_ip_hook_priorities = 2147483647;
13451pub const nf_ip_hook_priorities_NF_IP_PRI_LAST: nf_ip_hook_priorities = 2147483647;
13452pub type nf_ip_hook_priorities = crate::types::c_int;
13453#[repr(C)]
13454pub struct xt_entry_match {
13455    pub u: xt_entry_match__bindgen_ty_1,
13456    pub data: __IncompleteArrayField<crate::types::c_uchar>,
13457}
13458#[repr(C)]
13459#[derive(Copy, Clone)]
13460pub union xt_entry_match__bindgen_ty_1 {
13461    pub user: xt_entry_match__bindgen_ty_1__bindgen_ty_1,
13462    pub kernel: xt_entry_match__bindgen_ty_1__bindgen_ty_2,
13463    pub match_size: __u16,
13464}
13465#[repr(C)]
13466#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13467pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_1 {
13468    pub match_size: __u16,
13469    pub name: [crate::types::c_char; 29usize],
13470    pub revision: __u8,
13471}
13472#[repr(C)]
13473#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13474pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
13475    pub match_size: __u16,
13476    pub __bindgen_padding_0: [u8; 6usize],
13477    pub match_: uref<xt_match>,
13478}
13479impl Default for xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
13480    fn default() -> Self {
13481        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13482        unsafe {
13483            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13484            s.assume_init()
13485        }
13486    }
13487}
13488impl Default for xt_entry_match__bindgen_ty_1 {
13489    fn default() -> Self {
13490        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13491        unsafe {
13492            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13493            s.assume_init()
13494        }
13495    }
13496}
13497impl Default for xt_entry_match {
13498    fn default() -> Self {
13499        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13500        unsafe {
13501            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13502            s.assume_init()
13503        }
13504    }
13505}
13506#[repr(C)]
13507pub struct xt_entry_target {
13508    pub u: xt_entry_target__bindgen_ty_1,
13509    pub data: __IncompleteArrayField<crate::types::c_uchar>,
13510}
13511#[repr(C)]
13512#[derive(Copy, Clone)]
13513pub union xt_entry_target__bindgen_ty_1 {
13514    pub user: xt_entry_target__bindgen_ty_1__bindgen_ty_1,
13515    pub kernel: xt_entry_target__bindgen_ty_1__bindgen_ty_2,
13516    pub target_size: __u16,
13517}
13518#[repr(C)]
13519#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13520pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_1 {
13521    pub target_size: __u16,
13522    pub name: [crate::types::c_char; 29usize],
13523    pub revision: __u8,
13524}
13525#[repr(C)]
13526#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13527pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
13528    pub target_size: __u16,
13529    pub __bindgen_padding_0: [u8; 6usize],
13530    pub target: uref<xt_target>,
13531}
13532impl Default for xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
13533    fn default() -> Self {
13534        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13535        unsafe {
13536            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13537            s.assume_init()
13538        }
13539    }
13540}
13541impl Default for xt_entry_target__bindgen_ty_1 {
13542    fn default() -> Self {
13543        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13544        unsafe {
13545            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13546            s.assume_init()
13547        }
13548    }
13549}
13550impl Default for xt_entry_target {
13551    fn default() -> Self {
13552        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13553        unsafe {
13554            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13555            s.assume_init()
13556        }
13557    }
13558}
13559#[repr(C)]
13560pub struct xt_standard_target {
13561    pub target: xt_entry_target,
13562    pub verdict: crate::types::c_int,
13563    pub __bindgen_padding_0: [u8; 4usize],
13564}
13565impl Default for xt_standard_target {
13566    fn default() -> Self {
13567        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13568        unsafe {
13569            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13570            s.assume_init()
13571        }
13572    }
13573}
13574#[repr(C)]
13575pub struct xt_error_target {
13576    pub target: xt_entry_target,
13577    pub errorname: [crate::types::c_char; 30usize],
13578    pub __bindgen_padding_0: [u8; 2usize],
13579}
13580impl Default for xt_error_target {
13581    fn default() -> Self {
13582        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13583        unsafe {
13584            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13585            s.assume_init()
13586        }
13587    }
13588}
13589#[repr(C)]
13590#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13591pub struct xt_get_revision {
13592    pub name: [crate::types::c_char; 29usize],
13593    pub revision: __u8,
13594}
13595#[repr(C)]
13596#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13597pub struct _xt_align {
13598    pub u8_: __u8,
13599    pub __bindgen_padding_0: u8,
13600    pub u16_: __u16,
13601    pub u32_: __u32,
13602    pub u64_: __u64,
13603}
13604#[repr(C)]
13605#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13606pub struct xt_counters {
13607    pub pcnt: __u64,
13608    pub bcnt: __u64,
13609}
13610#[repr(C)]
13611#[derive(Debug, Default, FromBytes, Immutable, KnownLayout)]
13612pub struct xt_counters_info {
13613    pub name: [crate::types::c_char; 32usize],
13614    pub num_counters: crate::types::c_uint,
13615    pub __bindgen_padding_0: [u8; 4usize],
13616    pub counters: __IncompleteArrayField<xt_counters>,
13617}
13618#[repr(C)]
13619#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13620pub struct xt_tcp {
13621    pub spts: [__u16; 2usize],
13622    pub dpts: [__u16; 2usize],
13623    pub option: __u8,
13624    pub flg_mask: __u8,
13625    pub flg_cmp: __u8,
13626    pub invflags: __u8,
13627}
13628#[repr(C)]
13629#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13630pub struct xt_udp {
13631    pub spts: [__u16; 2usize],
13632    pub dpts: [__u16; 2usize],
13633    pub invflags: __u8,
13634    pub __bindgen_padding_0: u8,
13635}
13636#[repr(C)]
13637#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13638pub struct ipt_ip {
13639    pub src: in_addr,
13640    pub dst: in_addr,
13641    pub smsk: in_addr,
13642    pub dmsk: in_addr,
13643    pub iniface: [crate::types::c_char; 16usize],
13644    pub outiface: [crate::types::c_char; 16usize],
13645    pub iniface_mask: [crate::types::c_uchar; 16usize],
13646    pub outiface_mask: [crate::types::c_uchar; 16usize],
13647    pub proto: __u16,
13648    pub flags: __u8,
13649    pub invflags: __u8,
13650}
13651#[repr(C)]
13652#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13653pub struct ipt_entry {
13654    pub ip: ipt_ip,
13655    pub nfcache: crate::types::c_uint,
13656    pub target_offset: __u16,
13657    pub next_offset: __u16,
13658    pub comefrom: crate::types::c_uint,
13659    pub counters: xt_counters,
13660    pub elems: __IncompleteArrayField<crate::types::c_uchar>,
13661}
13662#[repr(C)]
13663#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13664pub struct ipt_icmp {
13665    pub type_: __u8,
13666    pub code: [__u8; 2usize],
13667    pub invflags: __u8,
13668}
13669#[repr(C)]
13670#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13671pub struct ipt_getinfo {
13672    pub name: [crate::types::c_char; 32usize],
13673    pub valid_hooks: crate::types::c_uint,
13674    pub hook_entry: [crate::types::c_uint; 5usize],
13675    pub underflow: [crate::types::c_uint; 5usize],
13676    pub num_entries: crate::types::c_uint,
13677    pub size: crate::types::c_uint,
13678}
13679#[repr(C)]
13680#[derive(Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13681pub struct ipt_replace {
13682    pub name: [crate::types::c_char; 32usize],
13683    pub valid_hooks: crate::types::c_uint,
13684    pub num_entries: crate::types::c_uint,
13685    pub size: crate::types::c_uint,
13686    pub hook_entry: [crate::types::c_uint; 5usize],
13687    pub underflow: [crate::types::c_uint; 5usize],
13688    pub num_counters: crate::types::c_uint,
13689    pub counters: uref<xt_counters>,
13690    pub entries: __IncompleteArrayField<ipt_entry>,
13691}
13692impl Default for ipt_replace {
13693    fn default() -> Self {
13694        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13695        unsafe {
13696            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13697            s.assume_init()
13698        }
13699    }
13700}
13701#[repr(C)]
13702#[derive(Debug, Default, FromBytes, Immutable, KnownLayout)]
13703pub struct ipt_get_entries {
13704    pub name: [crate::types::c_char; 32usize],
13705    pub size: crate::types::c_uint,
13706    pub __bindgen_padding_0: [u8; 4usize],
13707    pub entrytable: __IncompleteArrayField<ipt_entry>,
13708}
13709pub const ipt_reject_with_IPT_ICMP_NET_UNREACHABLE: ipt_reject_with = 0;
13710pub const ipt_reject_with_IPT_ICMP_HOST_UNREACHABLE: ipt_reject_with = 1;
13711pub const ipt_reject_with_IPT_ICMP_PROT_UNREACHABLE: ipt_reject_with = 2;
13712pub const ipt_reject_with_IPT_ICMP_PORT_UNREACHABLE: ipt_reject_with = 3;
13713pub const ipt_reject_with_IPT_ICMP_ECHOREPLY: ipt_reject_with = 4;
13714pub const ipt_reject_with_IPT_ICMP_NET_PROHIBITED: ipt_reject_with = 5;
13715pub const ipt_reject_with_IPT_ICMP_HOST_PROHIBITED: ipt_reject_with = 6;
13716pub const ipt_reject_with_IPT_TCP_RESET: ipt_reject_with = 7;
13717pub const ipt_reject_with_IPT_ICMP_ADMIN_PROHIBITED: ipt_reject_with = 8;
13718pub type ipt_reject_with = crate::types::c_uint;
13719#[repr(C)]
13720#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13721pub struct ipt_reject_info {
13722    pub with: ipt_reject_with,
13723}
13724impl Default for ipt_reject_info {
13725    fn default() -> Self {
13726        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13727        unsafe {
13728            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13729            s.assume_init()
13730        }
13731    }
13732}
13733pub const nf_ip6_hook_priorities_NF_IP6_PRI_FIRST: nf_ip6_hook_priorities = -2147483648;
13734pub const nf_ip6_hook_priorities_NF_IP6_PRI_RAW_BEFORE_DEFRAG: nf_ip6_hook_priorities = -450;
13735pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK_DEFRAG: nf_ip6_hook_priorities = -400;
13736pub const nf_ip6_hook_priorities_NF_IP6_PRI_RAW: nf_ip6_hook_priorities = -300;
13737pub const nf_ip6_hook_priorities_NF_IP6_PRI_SELINUX_FIRST: nf_ip6_hook_priorities = -225;
13738pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK: nf_ip6_hook_priorities = -200;
13739pub const nf_ip6_hook_priorities_NF_IP6_PRI_MANGLE: nf_ip6_hook_priorities = -150;
13740pub const nf_ip6_hook_priorities_NF_IP6_PRI_NAT_DST: nf_ip6_hook_priorities = -100;
13741pub const nf_ip6_hook_priorities_NF_IP6_PRI_FILTER: nf_ip6_hook_priorities = 0;
13742pub const nf_ip6_hook_priorities_NF_IP6_PRI_SECURITY: nf_ip6_hook_priorities = 50;
13743pub const nf_ip6_hook_priorities_NF_IP6_PRI_NAT_SRC: nf_ip6_hook_priorities = 100;
13744pub const nf_ip6_hook_priorities_NF_IP6_PRI_SELINUX_LAST: nf_ip6_hook_priorities = 225;
13745pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK_HELPER: nf_ip6_hook_priorities = 300;
13746pub const nf_ip6_hook_priorities_NF_IP6_PRI_LAST: nf_ip6_hook_priorities = 2147483647;
13747pub type nf_ip6_hook_priorities = crate::types::c_int;
13748#[repr(C)]
13749#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13750pub struct ip6t_ip6 {
13751    pub src: in6_addr,
13752    pub dst: in6_addr,
13753    pub smsk: in6_addr,
13754    pub dmsk: in6_addr,
13755    pub iniface: [crate::types::c_char; 16usize],
13756    pub outiface: [crate::types::c_char; 16usize],
13757    pub iniface_mask: [crate::types::c_uchar; 16usize],
13758    pub outiface_mask: [crate::types::c_uchar; 16usize],
13759    pub proto: __u16,
13760    pub tos: __u8,
13761    pub flags: __u8,
13762    pub invflags: __u8,
13763    pub __bindgen_padding_0: [u8; 3usize],
13764}
13765impl Default for ip6t_ip6 {
13766    fn default() -> Self {
13767        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13768        unsafe {
13769            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13770            s.assume_init()
13771        }
13772    }
13773}
13774#[repr(C)]
13775#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
13776pub struct ip6t_entry {
13777    pub ipv6: ip6t_ip6,
13778    pub nfcache: crate::types::c_uint,
13779    pub target_offset: __u16,
13780    pub next_offset: __u16,
13781    pub comefrom: crate::types::c_uint,
13782    pub __bindgen_padding_0: [u8; 4usize],
13783    pub counters: xt_counters,
13784    pub elems: __IncompleteArrayField<crate::types::c_uchar>,
13785}
13786impl Default for ip6t_entry {
13787    fn default() -> Self {
13788        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13789        unsafe {
13790            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13791            s.assume_init()
13792        }
13793    }
13794}
13795#[repr(C)]
13796pub struct ip6t_standard {
13797    pub entry: ip6t_entry,
13798    pub target: xt_standard_target,
13799}
13800impl Default for ip6t_standard {
13801    fn default() -> Self {
13802        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13803        unsafe {
13804            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13805            s.assume_init()
13806        }
13807    }
13808}
13809#[repr(C)]
13810pub struct ip6t_error {
13811    pub entry: ip6t_entry,
13812    pub target: xt_error_target,
13813}
13814impl Default for ip6t_error {
13815    fn default() -> Self {
13816        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13817        unsafe {
13818            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13819            s.assume_init()
13820        }
13821    }
13822}
13823#[repr(C)]
13824#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13825pub struct ip6t_icmp {
13826    pub type_: __u8,
13827    pub code: [__u8; 2usize],
13828    pub invflags: __u8,
13829}
13830#[repr(C)]
13831#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13832pub struct ip6t_getinfo {
13833    pub name: [crate::types::c_char; 32usize],
13834    pub valid_hooks: crate::types::c_uint,
13835    pub hook_entry: [crate::types::c_uint; 5usize],
13836    pub underflow: [crate::types::c_uint; 5usize],
13837    pub num_entries: crate::types::c_uint,
13838    pub size: crate::types::c_uint,
13839}
13840#[repr(C)]
13841#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
13842pub struct ip6t_replace {
13843    pub name: [crate::types::c_char; 32usize],
13844    pub valid_hooks: crate::types::c_uint,
13845    pub num_entries: crate::types::c_uint,
13846    pub size: crate::types::c_uint,
13847    pub hook_entry: [crate::types::c_uint; 5usize],
13848    pub underflow: [crate::types::c_uint; 5usize],
13849    pub num_counters: crate::types::c_uint,
13850    pub counters: uref<xt_counters>,
13851    pub entries: __IncompleteArrayField<ip6t_entry>,
13852}
13853impl Default for ip6t_replace {
13854    fn default() -> Self {
13855        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13856        unsafe {
13857            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13858            s.assume_init()
13859        }
13860    }
13861}
13862#[repr(C)]
13863#[derive(FromBytes, Immutable, KnownLayout)]
13864pub struct ip6t_get_entries {
13865    pub name: [crate::types::c_char; 32usize],
13866    pub size: crate::types::c_uint,
13867    pub __bindgen_padding_0: [u8; 4usize],
13868    pub entrytable: __IncompleteArrayField<ip6t_entry>,
13869}
13870impl Default for ip6t_get_entries {
13871    fn default() -> Self {
13872        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13873        unsafe {
13874            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13875            s.assume_init()
13876        }
13877    }
13878}
13879pub const ip6t_reject_with_IP6T_ICMP6_NO_ROUTE: ip6t_reject_with = 0;
13880pub const ip6t_reject_with_IP6T_ICMP6_ADM_PROHIBITED: ip6t_reject_with = 1;
13881pub const ip6t_reject_with_IP6T_ICMP6_NOT_NEIGHBOUR: ip6t_reject_with = 2;
13882pub const ip6t_reject_with_IP6T_ICMP6_ADDR_UNREACH: ip6t_reject_with = 3;
13883pub const ip6t_reject_with_IP6T_ICMP6_PORT_UNREACH: ip6t_reject_with = 4;
13884pub const ip6t_reject_with_IP6T_ICMP6_ECHOREPLY: ip6t_reject_with = 5;
13885pub const ip6t_reject_with_IP6T_TCP_RESET: ip6t_reject_with = 6;
13886pub const ip6t_reject_with_IP6T_ICMP6_POLICY_FAIL: ip6t_reject_with = 7;
13887pub const ip6t_reject_with_IP6T_ICMP6_REJECT_ROUTE: ip6t_reject_with = 8;
13888pub type ip6t_reject_with = crate::types::c_uint;
13889#[repr(C)]
13890#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13891pub struct ip6t_reject_info {
13892    pub with: __u32,
13893}
13894pub const perf_type_id_PERF_TYPE_HARDWARE: perf_type_id = 0;
13895pub const perf_type_id_PERF_TYPE_SOFTWARE: perf_type_id = 1;
13896pub const perf_type_id_PERF_TYPE_TRACEPOINT: perf_type_id = 2;
13897pub const perf_type_id_PERF_TYPE_HW_CACHE: perf_type_id = 3;
13898pub const perf_type_id_PERF_TYPE_RAW: perf_type_id = 4;
13899pub const perf_type_id_PERF_TYPE_BREAKPOINT: perf_type_id = 5;
13900pub const perf_type_id_PERF_TYPE_MAX: perf_type_id = 6;
13901pub type perf_type_id = crate::types::c_uint;
13902pub const perf_hw_id_PERF_COUNT_HW_CPU_CYCLES: perf_hw_id = 0;
13903pub const perf_hw_id_PERF_COUNT_HW_INSTRUCTIONS: perf_hw_id = 1;
13904pub const perf_hw_id_PERF_COUNT_HW_CACHE_REFERENCES: perf_hw_id = 2;
13905pub const perf_hw_id_PERF_COUNT_HW_CACHE_MISSES: perf_hw_id = 3;
13906pub const perf_hw_id_PERF_COUNT_HW_BRANCH_INSTRUCTIONS: perf_hw_id = 4;
13907pub const perf_hw_id_PERF_COUNT_HW_BRANCH_MISSES: perf_hw_id = 5;
13908pub const perf_hw_id_PERF_COUNT_HW_BUS_CYCLES: perf_hw_id = 6;
13909pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_FRONTEND: perf_hw_id = 7;
13910pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_BACKEND: perf_hw_id = 8;
13911pub const perf_hw_id_PERF_COUNT_HW_REF_CPU_CYCLES: perf_hw_id = 9;
13912pub const perf_hw_id_PERF_COUNT_HW_MAX: perf_hw_id = 10;
13913pub type perf_hw_id = crate::types::c_uint;
13914pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1D: perf_hw_cache_id = 0;
13915pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1I: perf_hw_cache_id = 1;
13916pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_LL: perf_hw_cache_id = 2;
13917pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_DTLB: perf_hw_cache_id = 3;
13918pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_ITLB: perf_hw_cache_id = 4;
13919pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_BPU: perf_hw_cache_id = 5;
13920pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_NODE: perf_hw_cache_id = 6;
13921pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_MAX: perf_hw_cache_id = 7;
13922pub type perf_hw_cache_id = crate::types::c_uint;
13923pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_READ: perf_hw_cache_op_id = 0;
13924pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_WRITE: perf_hw_cache_op_id = 1;
13925pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_PREFETCH: perf_hw_cache_op_id = 2;
13926pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_MAX: perf_hw_cache_op_id = 3;
13927pub type perf_hw_cache_op_id = crate::types::c_uint;
13928pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_ACCESS: perf_hw_cache_op_result_id =
13929    0;
13930pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MISS: perf_hw_cache_op_result_id =
13931    1;
13932pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MAX: perf_hw_cache_op_result_id = 2;
13933pub type perf_hw_cache_op_result_id = crate::types::c_uint;
13934pub const perf_sw_ids_PERF_COUNT_SW_CPU_CLOCK: perf_sw_ids = 0;
13935pub const perf_sw_ids_PERF_COUNT_SW_TASK_CLOCK: perf_sw_ids = 1;
13936pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS: perf_sw_ids = 2;
13937pub const perf_sw_ids_PERF_COUNT_SW_CONTEXT_SWITCHES: perf_sw_ids = 3;
13938pub const perf_sw_ids_PERF_COUNT_SW_CPU_MIGRATIONS: perf_sw_ids = 4;
13939pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MIN: perf_sw_ids = 5;
13940pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MAJ: perf_sw_ids = 6;
13941pub const perf_sw_ids_PERF_COUNT_SW_ALIGNMENT_FAULTS: perf_sw_ids = 7;
13942pub const perf_sw_ids_PERF_COUNT_SW_EMULATION_FAULTS: perf_sw_ids = 8;
13943pub const perf_sw_ids_PERF_COUNT_SW_DUMMY: perf_sw_ids = 9;
13944pub const perf_sw_ids_PERF_COUNT_SW_BPF_OUTPUT: perf_sw_ids = 10;
13945pub const perf_sw_ids_PERF_COUNT_SW_CGROUP_SWITCHES: perf_sw_ids = 11;
13946pub const perf_sw_ids_PERF_COUNT_SW_MAX: perf_sw_ids = 12;
13947pub type perf_sw_ids = crate::types::c_uint;
13948pub const perf_event_sample_format_PERF_SAMPLE_IP: perf_event_sample_format = 1;
13949pub const perf_event_sample_format_PERF_SAMPLE_TID: perf_event_sample_format = 2;
13950pub const perf_event_sample_format_PERF_SAMPLE_TIME: perf_event_sample_format = 4;
13951pub const perf_event_sample_format_PERF_SAMPLE_ADDR: perf_event_sample_format = 8;
13952pub const perf_event_sample_format_PERF_SAMPLE_READ: perf_event_sample_format = 16;
13953pub const perf_event_sample_format_PERF_SAMPLE_CALLCHAIN: perf_event_sample_format = 32;
13954pub const perf_event_sample_format_PERF_SAMPLE_ID: perf_event_sample_format = 64;
13955pub const perf_event_sample_format_PERF_SAMPLE_CPU: perf_event_sample_format = 128;
13956pub const perf_event_sample_format_PERF_SAMPLE_PERIOD: perf_event_sample_format = 256;
13957pub const perf_event_sample_format_PERF_SAMPLE_STREAM_ID: perf_event_sample_format = 512;
13958pub const perf_event_sample_format_PERF_SAMPLE_RAW: perf_event_sample_format = 1024;
13959pub const perf_event_sample_format_PERF_SAMPLE_BRANCH_STACK: perf_event_sample_format = 2048;
13960pub const perf_event_sample_format_PERF_SAMPLE_REGS_USER: perf_event_sample_format = 4096;
13961pub const perf_event_sample_format_PERF_SAMPLE_STACK_USER: perf_event_sample_format = 8192;
13962pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT: perf_event_sample_format = 16384;
13963pub const perf_event_sample_format_PERF_SAMPLE_DATA_SRC: perf_event_sample_format = 32768;
13964pub const perf_event_sample_format_PERF_SAMPLE_IDENTIFIER: perf_event_sample_format = 65536;
13965pub const perf_event_sample_format_PERF_SAMPLE_TRANSACTION: perf_event_sample_format = 131072;
13966pub const perf_event_sample_format_PERF_SAMPLE_REGS_INTR: perf_event_sample_format = 262144;
13967pub const perf_event_sample_format_PERF_SAMPLE_PHYS_ADDR: perf_event_sample_format = 524288;
13968pub const perf_event_sample_format_PERF_SAMPLE_AUX: perf_event_sample_format = 1048576;
13969pub const perf_event_sample_format_PERF_SAMPLE_CGROUP: perf_event_sample_format = 2097152;
13970pub const perf_event_sample_format_PERF_SAMPLE_DATA_PAGE_SIZE: perf_event_sample_format = 4194304;
13971pub const perf_event_sample_format_PERF_SAMPLE_CODE_PAGE_SIZE: perf_event_sample_format = 8388608;
13972pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT_STRUCT: perf_event_sample_format = 16777216;
13973pub const perf_event_sample_format_PERF_SAMPLE_MAX: perf_event_sample_format = 33554432;
13974pub type perf_event_sample_format = crate::types::c_uint;
13975pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_USER_SHIFT:
13976    perf_branch_sample_type_shift = 0;
13977pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_KERNEL_SHIFT:
13978    perf_branch_sample_type_shift = 1;
13979pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HV_SHIFT: perf_branch_sample_type_shift =
13980    2;
13981pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_SHIFT:
13982    perf_branch_sample_type_shift = 3;
13983pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT:
13984    perf_branch_sample_type_shift = 4;
13985pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT:
13986    perf_branch_sample_type_shift = 5;
13987pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_CALL_SHIFT:
13988    perf_branch_sample_type_shift = 6;
13989pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT:
13990    perf_branch_sample_type_shift = 7;
13991pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IN_TX_SHIFT:
13992    perf_branch_sample_type_shift = 8;
13993pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_TX_SHIFT:
13994    perf_branch_sample_type_shift = 9;
13995pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COND_SHIFT:
13996    perf_branch_sample_type_shift = 10;
13997pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT:
13998    perf_branch_sample_type_shift = 11;
13999pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT:
14000    perf_branch_sample_type_shift = 12;
14001pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_SHIFT:
14002    perf_branch_sample_type_shift = 13;
14003pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT:
14004    perf_branch_sample_type_shift = 14;
14005pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT:
14006    perf_branch_sample_type_shift = 15;
14007pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT:
14008    perf_branch_sample_type_shift = 16;
14009pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT:
14010    perf_branch_sample_type_shift = 17;
14011pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_PRIV_SAVE_SHIFT:
14012    perf_branch_sample_type_shift = 18;
14013pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COUNTERS_SHIFT:
14014    perf_branch_sample_type_shift = 19;
14015pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_MAX_SHIFT:
14016    perf_branch_sample_type_shift = 20;
14017pub type perf_branch_sample_type_shift = crate::types::c_uint;
14018pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_USER: perf_branch_sample_type = 1;
14019pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_KERNEL: perf_branch_sample_type = 2;
14020pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HV: perf_branch_sample_type = 4;
14021pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY: perf_branch_sample_type = 8;
14022pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_CALL: perf_branch_sample_type = 16;
14023pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_RETURN: perf_branch_sample_type = 32;
14024pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_CALL: perf_branch_sample_type = 64;
14025pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ABORT_TX: perf_branch_sample_type = 128;
14026pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IN_TX: perf_branch_sample_type = 256;
14027pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_TX: perf_branch_sample_type = 512;
14028pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COND: perf_branch_sample_type = 1024;
14029pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL_STACK: perf_branch_sample_type = 2048;
14030pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_JUMP: perf_branch_sample_type = 4096;
14031pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL: perf_branch_sample_type = 8192;
14032pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_FLAGS: perf_branch_sample_type = 16384;
14033pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_CYCLES: perf_branch_sample_type = 32768;
14034pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_TYPE_SAVE: perf_branch_sample_type = 65536;
14035pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HW_INDEX: perf_branch_sample_type = 131072;
14036pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_PRIV_SAVE: perf_branch_sample_type = 262144;
14037pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COUNTERS: perf_branch_sample_type = 524288;
14038pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_MAX: perf_branch_sample_type = 1048576;
14039pub type perf_branch_sample_type = crate::types::c_uint;
14040pub const PERF_BR_UNKNOWN: _bindgen_ty_86 = 0;
14041pub const PERF_BR_COND: _bindgen_ty_86 = 1;
14042pub const PERF_BR_UNCOND: _bindgen_ty_86 = 2;
14043pub const PERF_BR_IND: _bindgen_ty_86 = 3;
14044pub const PERF_BR_CALL: _bindgen_ty_86 = 4;
14045pub const PERF_BR_IND_CALL: _bindgen_ty_86 = 5;
14046pub const PERF_BR_RET: _bindgen_ty_86 = 6;
14047pub const PERF_BR_SYSCALL: _bindgen_ty_86 = 7;
14048pub const PERF_BR_SYSRET: _bindgen_ty_86 = 8;
14049pub const PERF_BR_COND_CALL: _bindgen_ty_86 = 9;
14050pub const PERF_BR_COND_RET: _bindgen_ty_86 = 10;
14051pub const PERF_BR_ERET: _bindgen_ty_86 = 11;
14052pub const PERF_BR_IRQ: _bindgen_ty_86 = 12;
14053pub const PERF_BR_SERROR: _bindgen_ty_86 = 13;
14054pub const PERF_BR_NO_TX: _bindgen_ty_86 = 14;
14055pub const PERF_BR_EXTEND_ABI: _bindgen_ty_86 = 15;
14056pub const PERF_BR_MAX: _bindgen_ty_86 = 16;
14057pub type _bindgen_ty_86 = crate::types::c_uint;
14058pub const PERF_BR_SPEC_NA: _bindgen_ty_87 = 0;
14059pub const PERF_BR_SPEC_WRONG_PATH: _bindgen_ty_87 = 1;
14060pub const PERF_BR_NON_SPEC_CORRECT_PATH: _bindgen_ty_87 = 2;
14061pub const PERF_BR_SPEC_CORRECT_PATH: _bindgen_ty_87 = 3;
14062pub const PERF_BR_SPEC_MAX: _bindgen_ty_87 = 4;
14063pub type _bindgen_ty_87 = crate::types::c_uint;
14064pub const PERF_BR_NEW_FAULT_ALGN: _bindgen_ty_88 = 0;
14065pub const PERF_BR_NEW_FAULT_DATA: _bindgen_ty_88 = 1;
14066pub const PERF_BR_NEW_FAULT_INST: _bindgen_ty_88 = 2;
14067pub const PERF_BR_NEW_ARCH_1: _bindgen_ty_88 = 3;
14068pub const PERF_BR_NEW_ARCH_2: _bindgen_ty_88 = 4;
14069pub const PERF_BR_NEW_ARCH_3: _bindgen_ty_88 = 5;
14070pub const PERF_BR_NEW_ARCH_4: _bindgen_ty_88 = 6;
14071pub const PERF_BR_NEW_ARCH_5: _bindgen_ty_88 = 7;
14072pub const PERF_BR_NEW_MAX: _bindgen_ty_88 = 8;
14073pub type _bindgen_ty_88 = crate::types::c_uint;
14074pub const PERF_BR_PRIV_UNKNOWN: _bindgen_ty_89 = 0;
14075pub const PERF_BR_PRIV_USER: _bindgen_ty_89 = 1;
14076pub const PERF_BR_PRIV_KERNEL: _bindgen_ty_89 = 2;
14077pub const PERF_BR_PRIV_HV: _bindgen_ty_89 = 3;
14078pub type _bindgen_ty_89 = crate::types::c_uint;
14079pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_NONE: perf_sample_regs_abi = 0;
14080pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_32: perf_sample_regs_abi = 1;
14081pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_64: perf_sample_regs_abi = 2;
14082pub type perf_sample_regs_abi = crate::types::c_uint;
14083pub const PERF_TXN_ELISION: _bindgen_ty_90 = 1;
14084pub const PERF_TXN_TRANSACTION: _bindgen_ty_90 = 2;
14085pub const PERF_TXN_SYNC: _bindgen_ty_90 = 4;
14086pub const PERF_TXN_ASYNC: _bindgen_ty_90 = 8;
14087pub const PERF_TXN_RETRY: _bindgen_ty_90 = 16;
14088pub const PERF_TXN_CONFLICT: _bindgen_ty_90 = 32;
14089pub const PERF_TXN_CAPACITY_WRITE: _bindgen_ty_90 = 64;
14090pub const PERF_TXN_CAPACITY_READ: _bindgen_ty_90 = 128;
14091pub const PERF_TXN_MAX: _bindgen_ty_90 = 256;
14092pub const PERF_TXN_ABORT_MASK: _bindgen_ty_90 = 18446744069414584320;
14093pub const PERF_TXN_ABORT_SHIFT: _bindgen_ty_90 = 32;
14094pub type _bindgen_ty_90 = crate::types::c_ulong;
14095pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_ENABLED: perf_event_read_format = 1;
14096pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_RUNNING: perf_event_read_format = 2;
14097pub const perf_event_read_format_PERF_FORMAT_ID: perf_event_read_format = 4;
14098pub const perf_event_read_format_PERF_FORMAT_GROUP: perf_event_read_format = 8;
14099pub const perf_event_read_format_PERF_FORMAT_LOST: perf_event_read_format = 16;
14100pub const perf_event_read_format_PERF_FORMAT_MAX: perf_event_read_format = 32;
14101pub type perf_event_read_format = crate::types::c_uint;
14102#[repr(C)]
14103#[derive(Clone, Copy, FromBytes, Immutable)]
14104pub struct perf_event_attr {
14105    pub type_: __u32,
14106    pub size: __u32,
14107    pub config: __u64,
14108    pub __bindgen_anon_1: perf_event_attr__bindgen_ty_1,
14109    pub sample_type: __u64,
14110    pub read_format: __u64,
14111    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
14112    pub __bindgen_anon_2: perf_event_attr__bindgen_ty_2,
14113    pub bp_type: __u32,
14114    pub __bindgen_anon_3: perf_event_attr__bindgen_ty_3,
14115    pub __bindgen_anon_4: perf_event_attr__bindgen_ty_4,
14116    pub branch_sample_type: __u64,
14117    pub sample_regs_user: __u64,
14118    pub sample_stack_user: __u32,
14119    pub clockid: __s32,
14120    pub sample_regs_intr: __u64,
14121    pub aux_watermark: __u32,
14122    pub sample_max_stack: __u16,
14123    pub __reserved_2: __u16,
14124    pub aux_sample_size: __u32,
14125    pub __reserved_3: __u32,
14126    pub sig_data: __u64,
14127    pub config3: __u64,
14128}
14129#[repr(C)]
14130#[derive(Clone, Copy, FromBytes, Immutable)]
14131pub union perf_event_attr__bindgen_ty_1 {
14132    pub sample_period: __u64,
14133    pub sample_freq: __u64,
14134}
14135impl Default for perf_event_attr__bindgen_ty_1 {
14136    fn default() -> Self {
14137        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14138        unsafe {
14139            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14140            s.assume_init()
14141        }
14142    }
14143}
14144#[repr(C)]
14145#[derive(Clone, Copy, FromBytes, Immutable)]
14146pub union perf_event_attr__bindgen_ty_2 {
14147    pub wakeup_events: __u32,
14148    pub wakeup_watermark: __u32,
14149}
14150impl Default for perf_event_attr__bindgen_ty_2 {
14151    fn default() -> Self {
14152        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14153        unsafe {
14154            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14155            s.assume_init()
14156        }
14157    }
14158}
14159#[repr(C)]
14160#[derive(Clone, Copy, FromBytes, Immutable)]
14161pub union perf_event_attr__bindgen_ty_3 {
14162    pub bp_addr: __u64,
14163    pub kprobe_func: __u64,
14164    pub uprobe_path: __u64,
14165    pub config1: __u64,
14166}
14167impl Default for perf_event_attr__bindgen_ty_3 {
14168    fn default() -> Self {
14169        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14170        unsafe {
14171            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14172            s.assume_init()
14173        }
14174    }
14175}
14176#[repr(C)]
14177#[derive(Clone, Copy, FromBytes, Immutable)]
14178pub union perf_event_attr__bindgen_ty_4 {
14179    pub bp_len: __u64,
14180    pub kprobe_addr: __u64,
14181    pub probe_offset: __u64,
14182    pub config2: __u64,
14183}
14184impl Default for perf_event_attr__bindgen_ty_4 {
14185    fn default() -> Self {
14186        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14187        unsafe {
14188            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14189            s.assume_init()
14190        }
14191    }
14192}
14193impl Default for perf_event_attr {
14194    fn default() -> Self {
14195        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14196        unsafe {
14197            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14198            s.assume_init()
14199        }
14200    }
14201}
14202impl perf_event_attr {
14203    #[inline]
14204    pub fn disabled(&self) -> __u64 {
14205        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u64) }
14206    }
14207    #[inline]
14208    pub fn set_disabled(&mut self, val: __u64) {
14209        unsafe {
14210            let val: u64 = val as _;
14211            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
14212        }
14213    }
14214    #[inline]
14215    pub unsafe fn disabled_raw(this: *const Self) -> __u64 {
14216        unsafe {
14217            ::std::mem::transmute(
14218                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
14219                    ::std::ptr::addr_of!((*this)._bitfield_1),
14220                ) as u64,
14221            )
14222        }
14223    }
14224    #[inline]
14225    pub unsafe fn set_disabled_raw(this: *mut Self, val: __u64) {
14226        unsafe {
14227            let val: u64 = val as _;
14228            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
14229                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14230                val as u64,
14231            )
14232        }
14233    }
14234    #[inline]
14235    pub fn inherit(&self) -> __u64 {
14236        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u64) }
14237    }
14238    #[inline]
14239    pub fn set_inherit(&mut self, val: __u64) {
14240        unsafe {
14241            let val: u64 = val as _;
14242            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
14243        }
14244    }
14245    #[inline]
14246    pub unsafe fn inherit_raw(this: *const Self) -> __u64 {
14247        unsafe {
14248            ::std::mem::transmute(
14249                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
14250                    ::std::ptr::addr_of!((*this)._bitfield_1),
14251                ) as u64,
14252            )
14253        }
14254    }
14255    #[inline]
14256    pub unsafe fn set_inherit_raw(this: *mut Self, val: __u64) {
14257        unsafe {
14258            let val: u64 = val as _;
14259            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
14260                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14261                val as u64,
14262            )
14263        }
14264    }
14265    #[inline]
14266    pub fn pinned(&self) -> __u64 {
14267        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u64) }
14268    }
14269    #[inline]
14270    pub fn set_pinned(&mut self, val: __u64) {
14271        unsafe {
14272            let val: u64 = val as _;
14273            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
14274        }
14275    }
14276    #[inline]
14277    pub unsafe fn pinned_raw(this: *const Self) -> __u64 {
14278        unsafe {
14279            ::std::mem::transmute(
14280                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
14281                    ::std::ptr::addr_of!((*this)._bitfield_1),
14282                ) as u64,
14283            )
14284        }
14285    }
14286    #[inline]
14287    pub unsafe fn set_pinned_raw(this: *mut Self, val: __u64) {
14288        unsafe {
14289            let val: u64 = val as _;
14290            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
14291                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14292                val as u64,
14293            )
14294        }
14295    }
14296    #[inline]
14297    pub fn exclusive(&self) -> __u64 {
14298        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u64) }
14299    }
14300    #[inline]
14301    pub fn set_exclusive(&mut self, val: __u64) {
14302        unsafe {
14303            let val: u64 = val as _;
14304            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
14305        }
14306    }
14307    #[inline]
14308    pub unsafe fn exclusive_raw(this: *const Self) -> __u64 {
14309        unsafe {
14310            ::std::mem::transmute(
14311                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
14312                    ::std::ptr::addr_of!((*this)._bitfield_1),
14313                ) as u64,
14314            )
14315        }
14316    }
14317    #[inline]
14318    pub unsafe fn set_exclusive_raw(this: *mut Self, val: __u64) {
14319        unsafe {
14320            let val: u64 = val as _;
14321            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
14322                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14323                val as u64,
14324            )
14325        }
14326    }
14327    #[inline]
14328    pub fn exclude_user(&self) -> __u64 {
14329        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 1u8>() as u64) }
14330    }
14331    #[inline]
14332    pub fn set_exclude_user(&mut self, val: __u64) {
14333        unsafe {
14334            let val: u64 = val as _;
14335            self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
14336        }
14337    }
14338    #[inline]
14339    pub unsafe fn exclude_user_raw(this: *const Self) -> __u64 {
14340        unsafe {
14341            ::std::mem::transmute(
14342                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 1u8>(
14343                    ::std::ptr::addr_of!((*this)._bitfield_1),
14344                ) as u64,
14345            )
14346        }
14347    }
14348    #[inline]
14349    pub unsafe fn set_exclude_user_raw(this: *mut Self, val: __u64) {
14350        unsafe {
14351            let val: u64 = val as _;
14352            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 1u8>(
14353                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14354                val as u64,
14355            )
14356        }
14357    }
14358    #[inline]
14359    pub fn exclude_kernel(&self) -> __u64 {
14360        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 1u8>() as u64) }
14361    }
14362    #[inline]
14363    pub fn set_exclude_kernel(&mut self, val: __u64) {
14364        unsafe {
14365            let val: u64 = val as _;
14366            self._bitfield_1.set_const::<5usize, 1u8>(val as u64)
14367        }
14368    }
14369    #[inline]
14370    pub unsafe fn exclude_kernel_raw(this: *const Self) -> __u64 {
14371        unsafe {
14372            ::std::mem::transmute(
14373                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 1u8>(
14374                    ::std::ptr::addr_of!((*this)._bitfield_1),
14375                ) as u64,
14376            )
14377        }
14378    }
14379    #[inline]
14380    pub unsafe fn set_exclude_kernel_raw(this: *mut Self, val: __u64) {
14381        unsafe {
14382            let val: u64 = val as _;
14383            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 1u8>(
14384                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14385                val as u64,
14386            )
14387        }
14388    }
14389    #[inline]
14390    pub fn exclude_hv(&self) -> __u64 {
14391        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<6usize, 1u8>() as u64) }
14392    }
14393    #[inline]
14394    pub fn set_exclude_hv(&mut self, val: __u64) {
14395        unsafe {
14396            let val: u64 = val as _;
14397            self._bitfield_1.set_const::<6usize, 1u8>(val as u64)
14398        }
14399    }
14400    #[inline]
14401    pub unsafe fn exclude_hv_raw(this: *const Self) -> __u64 {
14402        unsafe {
14403            ::std::mem::transmute(
14404                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<6usize, 1u8>(
14405                    ::std::ptr::addr_of!((*this)._bitfield_1),
14406                ) as u64,
14407            )
14408        }
14409    }
14410    #[inline]
14411    pub unsafe fn set_exclude_hv_raw(this: *mut Self, val: __u64) {
14412        unsafe {
14413            let val: u64 = val as _;
14414            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<6usize, 1u8>(
14415                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14416                val as u64,
14417            )
14418        }
14419    }
14420    #[inline]
14421    pub fn exclude_idle(&self) -> __u64 {
14422        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<7usize, 1u8>() as u64) }
14423    }
14424    #[inline]
14425    pub fn set_exclude_idle(&mut self, val: __u64) {
14426        unsafe {
14427            let val: u64 = val as _;
14428            self._bitfield_1.set_const::<7usize, 1u8>(val as u64)
14429        }
14430    }
14431    #[inline]
14432    pub unsafe fn exclude_idle_raw(this: *const Self) -> __u64 {
14433        unsafe {
14434            ::std::mem::transmute(
14435                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<7usize, 1u8>(
14436                    ::std::ptr::addr_of!((*this)._bitfield_1),
14437                ) as u64,
14438            )
14439        }
14440    }
14441    #[inline]
14442    pub unsafe fn set_exclude_idle_raw(this: *mut Self, val: __u64) {
14443        unsafe {
14444            let val: u64 = val as _;
14445            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<7usize, 1u8>(
14446                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14447                val as u64,
14448            )
14449        }
14450    }
14451    #[inline]
14452    pub fn mmap(&self) -> __u64 {
14453        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<8usize, 1u8>() as u64) }
14454    }
14455    #[inline]
14456    pub fn set_mmap(&mut self, val: __u64) {
14457        unsafe {
14458            let val: u64 = val as _;
14459            self._bitfield_1.set_const::<8usize, 1u8>(val as u64)
14460        }
14461    }
14462    #[inline]
14463    pub unsafe fn mmap_raw(this: *const Self) -> __u64 {
14464        unsafe {
14465            ::std::mem::transmute(
14466                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<8usize, 1u8>(
14467                    ::std::ptr::addr_of!((*this)._bitfield_1),
14468                ) as u64,
14469            )
14470        }
14471    }
14472    #[inline]
14473    pub unsafe fn set_mmap_raw(this: *mut Self, val: __u64) {
14474        unsafe {
14475            let val: u64 = val as _;
14476            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<8usize, 1u8>(
14477                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14478                val as u64,
14479            )
14480        }
14481    }
14482    #[inline]
14483    pub fn comm(&self) -> __u64 {
14484        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<9usize, 1u8>() as u64) }
14485    }
14486    #[inline]
14487    pub fn set_comm(&mut self, val: __u64) {
14488        unsafe {
14489            let val: u64 = val as _;
14490            self._bitfield_1.set_const::<9usize, 1u8>(val as u64)
14491        }
14492    }
14493    #[inline]
14494    pub unsafe fn comm_raw(this: *const Self) -> __u64 {
14495        unsafe {
14496            ::std::mem::transmute(
14497                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<9usize, 1u8>(
14498                    ::std::ptr::addr_of!((*this)._bitfield_1),
14499                ) as u64,
14500            )
14501        }
14502    }
14503    #[inline]
14504    pub unsafe fn set_comm_raw(this: *mut Self, val: __u64) {
14505        unsafe {
14506            let val: u64 = val as _;
14507            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<9usize, 1u8>(
14508                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14509                val as u64,
14510            )
14511        }
14512    }
14513    #[inline]
14514    pub fn freq(&self) -> __u64 {
14515        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<10usize, 1u8>() as u64) }
14516    }
14517    #[inline]
14518    pub fn set_freq(&mut self, val: __u64) {
14519        unsafe {
14520            let val: u64 = val as _;
14521            self._bitfield_1.set_const::<10usize, 1u8>(val as u64)
14522        }
14523    }
14524    #[inline]
14525    pub unsafe fn freq_raw(this: *const Self) -> __u64 {
14526        unsafe {
14527            ::std::mem::transmute(
14528                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<10usize, 1u8>(
14529                    ::std::ptr::addr_of!((*this)._bitfield_1),
14530                ) as u64,
14531            )
14532        }
14533    }
14534    #[inline]
14535    pub unsafe fn set_freq_raw(this: *mut Self, val: __u64) {
14536        unsafe {
14537            let val: u64 = val as _;
14538            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<10usize, 1u8>(
14539                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14540                val as u64,
14541            )
14542        }
14543    }
14544    #[inline]
14545    pub fn inherit_stat(&self) -> __u64 {
14546        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<11usize, 1u8>() as u64) }
14547    }
14548    #[inline]
14549    pub fn set_inherit_stat(&mut self, val: __u64) {
14550        unsafe {
14551            let val: u64 = val as _;
14552            self._bitfield_1.set_const::<11usize, 1u8>(val as u64)
14553        }
14554    }
14555    #[inline]
14556    pub unsafe fn inherit_stat_raw(this: *const Self) -> __u64 {
14557        unsafe {
14558            ::std::mem::transmute(
14559                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<11usize, 1u8>(
14560                    ::std::ptr::addr_of!((*this)._bitfield_1),
14561                ) as u64,
14562            )
14563        }
14564    }
14565    #[inline]
14566    pub unsafe fn set_inherit_stat_raw(this: *mut Self, val: __u64) {
14567        unsafe {
14568            let val: u64 = val as _;
14569            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<11usize, 1u8>(
14570                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14571                val as u64,
14572            )
14573        }
14574    }
14575    #[inline]
14576    pub fn enable_on_exec(&self) -> __u64 {
14577        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<12usize, 1u8>() as u64) }
14578    }
14579    #[inline]
14580    pub fn set_enable_on_exec(&mut self, val: __u64) {
14581        unsafe {
14582            let val: u64 = val as _;
14583            self._bitfield_1.set_const::<12usize, 1u8>(val as u64)
14584        }
14585    }
14586    #[inline]
14587    pub unsafe fn enable_on_exec_raw(this: *const Self) -> __u64 {
14588        unsafe {
14589            ::std::mem::transmute(
14590                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<12usize, 1u8>(
14591                    ::std::ptr::addr_of!((*this)._bitfield_1),
14592                ) as u64,
14593            )
14594        }
14595    }
14596    #[inline]
14597    pub unsafe fn set_enable_on_exec_raw(this: *mut Self, val: __u64) {
14598        unsafe {
14599            let val: u64 = val as _;
14600            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<12usize, 1u8>(
14601                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14602                val as u64,
14603            )
14604        }
14605    }
14606    #[inline]
14607    pub fn task(&self) -> __u64 {
14608        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<13usize, 1u8>() as u64) }
14609    }
14610    #[inline]
14611    pub fn set_task(&mut self, val: __u64) {
14612        unsafe {
14613            let val: u64 = val as _;
14614            self._bitfield_1.set_const::<13usize, 1u8>(val as u64)
14615        }
14616    }
14617    #[inline]
14618    pub unsafe fn task_raw(this: *const Self) -> __u64 {
14619        unsafe {
14620            ::std::mem::transmute(
14621                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<13usize, 1u8>(
14622                    ::std::ptr::addr_of!((*this)._bitfield_1),
14623                ) as u64,
14624            )
14625        }
14626    }
14627    #[inline]
14628    pub unsafe fn set_task_raw(this: *mut Self, val: __u64) {
14629        unsafe {
14630            let val: u64 = val as _;
14631            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<13usize, 1u8>(
14632                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14633                val as u64,
14634            )
14635        }
14636    }
14637    #[inline]
14638    pub fn watermark(&self) -> __u64 {
14639        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<14usize, 1u8>() as u64) }
14640    }
14641    #[inline]
14642    pub fn set_watermark(&mut self, val: __u64) {
14643        unsafe {
14644            let val: u64 = val as _;
14645            self._bitfield_1.set_const::<14usize, 1u8>(val as u64)
14646        }
14647    }
14648    #[inline]
14649    pub unsafe fn watermark_raw(this: *const Self) -> __u64 {
14650        unsafe {
14651            ::std::mem::transmute(
14652                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<14usize, 1u8>(
14653                    ::std::ptr::addr_of!((*this)._bitfield_1),
14654                ) as u64,
14655            )
14656        }
14657    }
14658    #[inline]
14659    pub unsafe fn set_watermark_raw(this: *mut Self, val: __u64) {
14660        unsafe {
14661            let val: u64 = val as _;
14662            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<14usize, 1u8>(
14663                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14664                val as u64,
14665            )
14666        }
14667    }
14668    #[inline]
14669    pub fn precise_ip(&self) -> __u64 {
14670        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<15usize, 2u8>() as u64) }
14671    }
14672    #[inline]
14673    pub fn set_precise_ip(&mut self, val: __u64) {
14674        unsafe {
14675            let val: u64 = val as _;
14676            self._bitfield_1.set_const::<15usize, 2u8>(val as u64)
14677        }
14678    }
14679    #[inline]
14680    pub unsafe fn precise_ip_raw(this: *const Self) -> __u64 {
14681        unsafe {
14682            ::std::mem::transmute(
14683                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<15usize, 2u8>(
14684                    ::std::ptr::addr_of!((*this)._bitfield_1),
14685                ) as u64,
14686            )
14687        }
14688    }
14689    #[inline]
14690    pub unsafe fn set_precise_ip_raw(this: *mut Self, val: __u64) {
14691        unsafe {
14692            let val: u64 = val as _;
14693            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<15usize, 2u8>(
14694                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14695                val as u64,
14696            )
14697        }
14698    }
14699    #[inline]
14700    pub fn mmap_data(&self) -> __u64 {
14701        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<17usize, 1u8>() as u64) }
14702    }
14703    #[inline]
14704    pub fn set_mmap_data(&mut self, val: __u64) {
14705        unsafe {
14706            let val: u64 = val as _;
14707            self._bitfield_1.set_const::<17usize, 1u8>(val as u64)
14708        }
14709    }
14710    #[inline]
14711    pub unsafe fn mmap_data_raw(this: *const Self) -> __u64 {
14712        unsafe {
14713            ::std::mem::transmute(
14714                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<17usize, 1u8>(
14715                    ::std::ptr::addr_of!((*this)._bitfield_1),
14716                ) as u64,
14717            )
14718        }
14719    }
14720    #[inline]
14721    pub unsafe fn set_mmap_data_raw(this: *mut Self, val: __u64) {
14722        unsafe {
14723            let val: u64 = val as _;
14724            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<17usize, 1u8>(
14725                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14726                val as u64,
14727            )
14728        }
14729    }
14730    #[inline]
14731    pub fn sample_id_all(&self) -> __u64 {
14732        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<18usize, 1u8>() as u64) }
14733    }
14734    #[inline]
14735    pub fn set_sample_id_all(&mut self, val: __u64) {
14736        unsafe {
14737            let val: u64 = val as _;
14738            self._bitfield_1.set_const::<18usize, 1u8>(val as u64)
14739        }
14740    }
14741    #[inline]
14742    pub unsafe fn sample_id_all_raw(this: *const Self) -> __u64 {
14743        unsafe {
14744            ::std::mem::transmute(
14745                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<18usize, 1u8>(
14746                    ::std::ptr::addr_of!((*this)._bitfield_1),
14747                ) as u64,
14748            )
14749        }
14750    }
14751    #[inline]
14752    pub unsafe fn set_sample_id_all_raw(this: *mut Self, val: __u64) {
14753        unsafe {
14754            let val: u64 = val as _;
14755            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<18usize, 1u8>(
14756                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14757                val as u64,
14758            )
14759        }
14760    }
14761    #[inline]
14762    pub fn exclude_host(&self) -> __u64 {
14763        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<19usize, 1u8>() as u64) }
14764    }
14765    #[inline]
14766    pub fn set_exclude_host(&mut self, val: __u64) {
14767        unsafe {
14768            let val: u64 = val as _;
14769            self._bitfield_1.set_const::<19usize, 1u8>(val as u64)
14770        }
14771    }
14772    #[inline]
14773    pub unsafe fn exclude_host_raw(this: *const Self) -> __u64 {
14774        unsafe {
14775            ::std::mem::transmute(
14776                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<19usize, 1u8>(
14777                    ::std::ptr::addr_of!((*this)._bitfield_1),
14778                ) as u64,
14779            )
14780        }
14781    }
14782    #[inline]
14783    pub unsafe fn set_exclude_host_raw(this: *mut Self, val: __u64) {
14784        unsafe {
14785            let val: u64 = val as _;
14786            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<19usize, 1u8>(
14787                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14788                val as u64,
14789            )
14790        }
14791    }
14792    #[inline]
14793    pub fn exclude_guest(&self) -> __u64 {
14794        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<20usize, 1u8>() as u64) }
14795    }
14796    #[inline]
14797    pub fn set_exclude_guest(&mut self, val: __u64) {
14798        unsafe {
14799            let val: u64 = val as _;
14800            self._bitfield_1.set_const::<20usize, 1u8>(val as u64)
14801        }
14802    }
14803    #[inline]
14804    pub unsafe fn exclude_guest_raw(this: *const Self) -> __u64 {
14805        unsafe {
14806            ::std::mem::transmute(
14807                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<20usize, 1u8>(
14808                    ::std::ptr::addr_of!((*this)._bitfield_1),
14809                ) as u64,
14810            )
14811        }
14812    }
14813    #[inline]
14814    pub unsafe fn set_exclude_guest_raw(this: *mut Self, val: __u64) {
14815        unsafe {
14816            let val: u64 = val as _;
14817            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<20usize, 1u8>(
14818                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14819                val as u64,
14820            )
14821        }
14822    }
14823    #[inline]
14824    pub fn exclude_callchain_kernel(&self) -> __u64 {
14825        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<21usize, 1u8>() as u64) }
14826    }
14827    #[inline]
14828    pub fn set_exclude_callchain_kernel(&mut self, val: __u64) {
14829        unsafe {
14830            let val: u64 = val as _;
14831            self._bitfield_1.set_const::<21usize, 1u8>(val as u64)
14832        }
14833    }
14834    #[inline]
14835    pub unsafe fn exclude_callchain_kernel_raw(this: *const Self) -> __u64 {
14836        unsafe {
14837            ::std::mem::transmute(
14838                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<21usize, 1u8>(
14839                    ::std::ptr::addr_of!((*this)._bitfield_1),
14840                ) as u64,
14841            )
14842        }
14843    }
14844    #[inline]
14845    pub unsafe fn set_exclude_callchain_kernel_raw(this: *mut Self, val: __u64) {
14846        unsafe {
14847            let val: u64 = val as _;
14848            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<21usize, 1u8>(
14849                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14850                val as u64,
14851            )
14852        }
14853    }
14854    #[inline]
14855    pub fn exclude_callchain_user(&self) -> __u64 {
14856        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<22usize, 1u8>() as u64) }
14857    }
14858    #[inline]
14859    pub fn set_exclude_callchain_user(&mut self, val: __u64) {
14860        unsafe {
14861            let val: u64 = val as _;
14862            self._bitfield_1.set_const::<22usize, 1u8>(val as u64)
14863        }
14864    }
14865    #[inline]
14866    pub unsafe fn exclude_callchain_user_raw(this: *const Self) -> __u64 {
14867        unsafe {
14868            ::std::mem::transmute(
14869                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<22usize, 1u8>(
14870                    ::std::ptr::addr_of!((*this)._bitfield_1),
14871                ) as u64,
14872            )
14873        }
14874    }
14875    #[inline]
14876    pub unsafe fn set_exclude_callchain_user_raw(this: *mut Self, val: __u64) {
14877        unsafe {
14878            let val: u64 = val as _;
14879            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<22usize, 1u8>(
14880                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14881                val as u64,
14882            )
14883        }
14884    }
14885    #[inline]
14886    pub fn mmap2(&self) -> __u64 {
14887        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<23usize, 1u8>() as u64) }
14888    }
14889    #[inline]
14890    pub fn set_mmap2(&mut self, val: __u64) {
14891        unsafe {
14892            let val: u64 = val as _;
14893            self._bitfield_1.set_const::<23usize, 1u8>(val as u64)
14894        }
14895    }
14896    #[inline]
14897    pub unsafe fn mmap2_raw(this: *const Self) -> __u64 {
14898        unsafe {
14899            ::std::mem::transmute(
14900                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<23usize, 1u8>(
14901                    ::std::ptr::addr_of!((*this)._bitfield_1),
14902                ) as u64,
14903            )
14904        }
14905    }
14906    #[inline]
14907    pub unsafe fn set_mmap2_raw(this: *mut Self, val: __u64) {
14908        unsafe {
14909            let val: u64 = val as _;
14910            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<23usize, 1u8>(
14911                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14912                val as u64,
14913            )
14914        }
14915    }
14916    #[inline]
14917    pub fn comm_exec(&self) -> __u64 {
14918        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<24usize, 1u8>() as u64) }
14919    }
14920    #[inline]
14921    pub fn set_comm_exec(&mut self, val: __u64) {
14922        unsafe {
14923            let val: u64 = val as _;
14924            self._bitfield_1.set_const::<24usize, 1u8>(val as u64)
14925        }
14926    }
14927    #[inline]
14928    pub unsafe fn comm_exec_raw(this: *const Self) -> __u64 {
14929        unsafe {
14930            ::std::mem::transmute(
14931                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 1u8>(
14932                    ::std::ptr::addr_of!((*this)._bitfield_1),
14933                ) as u64,
14934            )
14935        }
14936    }
14937    #[inline]
14938    pub unsafe fn set_comm_exec_raw(this: *mut Self, val: __u64) {
14939        unsafe {
14940            let val: u64 = val as _;
14941            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 1u8>(
14942                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14943                val as u64,
14944            )
14945        }
14946    }
14947    #[inline]
14948    pub fn use_clockid(&self) -> __u64 {
14949        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<25usize, 1u8>() as u64) }
14950    }
14951    #[inline]
14952    pub fn set_use_clockid(&mut self, val: __u64) {
14953        unsafe {
14954            let val: u64 = val as _;
14955            self._bitfield_1.set_const::<25usize, 1u8>(val as u64)
14956        }
14957    }
14958    #[inline]
14959    pub unsafe fn use_clockid_raw(this: *const Self) -> __u64 {
14960        unsafe {
14961            ::std::mem::transmute(
14962                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<25usize, 1u8>(
14963                    ::std::ptr::addr_of!((*this)._bitfield_1),
14964                ) as u64,
14965            )
14966        }
14967    }
14968    #[inline]
14969    pub unsafe fn set_use_clockid_raw(this: *mut Self, val: __u64) {
14970        unsafe {
14971            let val: u64 = val as _;
14972            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<25usize, 1u8>(
14973                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14974                val as u64,
14975            )
14976        }
14977    }
14978    #[inline]
14979    pub fn context_switch(&self) -> __u64 {
14980        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<26usize, 1u8>() as u64) }
14981    }
14982    #[inline]
14983    pub fn set_context_switch(&mut self, val: __u64) {
14984        unsafe {
14985            let val: u64 = val as _;
14986            self._bitfield_1.set_const::<26usize, 1u8>(val as u64)
14987        }
14988    }
14989    #[inline]
14990    pub unsafe fn context_switch_raw(this: *const Self) -> __u64 {
14991        unsafe {
14992            ::std::mem::transmute(
14993                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 1u8>(
14994                    ::std::ptr::addr_of!((*this)._bitfield_1),
14995                ) as u64,
14996            )
14997        }
14998    }
14999    #[inline]
15000    pub unsafe fn set_context_switch_raw(this: *mut Self, val: __u64) {
15001        unsafe {
15002            let val: u64 = val as _;
15003            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 1u8>(
15004                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15005                val as u64,
15006            )
15007        }
15008    }
15009    #[inline]
15010    pub fn write_backward(&self) -> __u64 {
15011        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<27usize, 1u8>() as u64) }
15012    }
15013    #[inline]
15014    pub fn set_write_backward(&mut self, val: __u64) {
15015        unsafe {
15016            let val: u64 = val as _;
15017            self._bitfield_1.set_const::<27usize, 1u8>(val as u64)
15018        }
15019    }
15020    #[inline]
15021    pub unsafe fn write_backward_raw(this: *const Self) -> __u64 {
15022        unsafe {
15023            ::std::mem::transmute(
15024                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<27usize, 1u8>(
15025                    ::std::ptr::addr_of!((*this)._bitfield_1),
15026                ) as u64,
15027            )
15028        }
15029    }
15030    #[inline]
15031    pub unsafe fn set_write_backward_raw(this: *mut Self, val: __u64) {
15032        unsafe {
15033            let val: u64 = val as _;
15034            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<27usize, 1u8>(
15035                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15036                val as u64,
15037            )
15038        }
15039    }
15040    #[inline]
15041    pub fn namespaces(&self) -> __u64 {
15042        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<28usize, 1u8>() as u64) }
15043    }
15044    #[inline]
15045    pub fn set_namespaces(&mut self, val: __u64) {
15046        unsafe {
15047            let val: u64 = val as _;
15048            self._bitfield_1.set_const::<28usize, 1u8>(val as u64)
15049        }
15050    }
15051    #[inline]
15052    pub unsafe fn namespaces_raw(this: *const Self) -> __u64 {
15053        unsafe {
15054            ::std::mem::transmute(
15055                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<28usize, 1u8>(
15056                    ::std::ptr::addr_of!((*this)._bitfield_1),
15057                ) as u64,
15058            )
15059        }
15060    }
15061    #[inline]
15062    pub unsafe fn set_namespaces_raw(this: *mut Self, val: __u64) {
15063        unsafe {
15064            let val: u64 = val as _;
15065            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<28usize, 1u8>(
15066                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15067                val as u64,
15068            )
15069        }
15070    }
15071    #[inline]
15072    pub fn ksymbol(&self) -> __u64 {
15073        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<29usize, 1u8>() as u64) }
15074    }
15075    #[inline]
15076    pub fn set_ksymbol(&mut self, val: __u64) {
15077        unsafe {
15078            let val: u64 = val as _;
15079            self._bitfield_1.set_const::<29usize, 1u8>(val as u64)
15080        }
15081    }
15082    #[inline]
15083    pub unsafe fn ksymbol_raw(this: *const Self) -> __u64 {
15084        unsafe {
15085            ::std::mem::transmute(
15086                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<29usize, 1u8>(
15087                    ::std::ptr::addr_of!((*this)._bitfield_1),
15088                ) as u64,
15089            )
15090        }
15091    }
15092    #[inline]
15093    pub unsafe fn set_ksymbol_raw(this: *mut Self, val: __u64) {
15094        unsafe {
15095            let val: u64 = val as _;
15096            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<29usize, 1u8>(
15097                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15098                val as u64,
15099            )
15100        }
15101    }
15102    #[inline]
15103    pub fn bpf_event(&self) -> __u64 {
15104        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<30usize, 1u8>() as u64) }
15105    }
15106    #[inline]
15107    pub fn set_bpf_event(&mut self, val: __u64) {
15108        unsafe {
15109            let val: u64 = val as _;
15110            self._bitfield_1.set_const::<30usize, 1u8>(val as u64)
15111        }
15112    }
15113    #[inline]
15114    pub unsafe fn bpf_event_raw(this: *const Self) -> __u64 {
15115        unsafe {
15116            ::std::mem::transmute(
15117                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<30usize, 1u8>(
15118                    ::std::ptr::addr_of!((*this)._bitfield_1),
15119                ) as u64,
15120            )
15121        }
15122    }
15123    #[inline]
15124    pub unsafe fn set_bpf_event_raw(this: *mut Self, val: __u64) {
15125        unsafe {
15126            let val: u64 = val as _;
15127            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<30usize, 1u8>(
15128                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15129                val as u64,
15130            )
15131        }
15132    }
15133    #[inline]
15134    pub fn aux_output(&self) -> __u64 {
15135        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<31usize, 1u8>() as u64) }
15136    }
15137    #[inline]
15138    pub fn set_aux_output(&mut self, val: __u64) {
15139        unsafe {
15140            let val: u64 = val as _;
15141            self._bitfield_1.set_const::<31usize, 1u8>(val as u64)
15142        }
15143    }
15144    #[inline]
15145    pub unsafe fn aux_output_raw(this: *const Self) -> __u64 {
15146        unsafe {
15147            ::std::mem::transmute(
15148                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<31usize, 1u8>(
15149                    ::std::ptr::addr_of!((*this)._bitfield_1),
15150                ) as u64,
15151            )
15152        }
15153    }
15154    #[inline]
15155    pub unsafe fn set_aux_output_raw(this: *mut Self, val: __u64) {
15156        unsafe {
15157            let val: u64 = val as _;
15158            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<31usize, 1u8>(
15159                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15160                val as u64,
15161            )
15162        }
15163    }
15164    #[inline]
15165    pub fn cgroup(&self) -> __u64 {
15166        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<32usize, 1u8>() as u64) }
15167    }
15168    #[inline]
15169    pub fn set_cgroup(&mut self, val: __u64) {
15170        unsafe {
15171            let val: u64 = val as _;
15172            self._bitfield_1.set_const::<32usize, 1u8>(val as u64)
15173        }
15174    }
15175    #[inline]
15176    pub unsafe fn cgroup_raw(this: *const Self) -> __u64 {
15177        unsafe {
15178            ::std::mem::transmute(
15179                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<32usize, 1u8>(
15180                    ::std::ptr::addr_of!((*this)._bitfield_1),
15181                ) as u64,
15182            )
15183        }
15184    }
15185    #[inline]
15186    pub unsafe fn set_cgroup_raw(this: *mut Self, val: __u64) {
15187        unsafe {
15188            let val: u64 = val as _;
15189            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<32usize, 1u8>(
15190                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15191                val as u64,
15192            )
15193        }
15194    }
15195    #[inline]
15196    pub fn text_poke(&self) -> __u64 {
15197        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<33usize, 1u8>() as u64) }
15198    }
15199    #[inline]
15200    pub fn set_text_poke(&mut self, val: __u64) {
15201        unsafe {
15202            let val: u64 = val as _;
15203            self._bitfield_1.set_const::<33usize, 1u8>(val as u64)
15204        }
15205    }
15206    #[inline]
15207    pub unsafe fn text_poke_raw(this: *const Self) -> __u64 {
15208        unsafe {
15209            ::std::mem::transmute(
15210                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 1u8>(
15211                    ::std::ptr::addr_of!((*this)._bitfield_1),
15212                ) as u64,
15213            )
15214        }
15215    }
15216    #[inline]
15217    pub unsafe fn set_text_poke_raw(this: *mut Self, val: __u64) {
15218        unsafe {
15219            let val: u64 = val as _;
15220            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 1u8>(
15221                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15222                val as u64,
15223            )
15224        }
15225    }
15226    #[inline]
15227    pub fn build_id(&self) -> __u64 {
15228        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<34usize, 1u8>() as u64) }
15229    }
15230    #[inline]
15231    pub fn set_build_id(&mut self, val: __u64) {
15232        unsafe {
15233            let val: u64 = val as _;
15234            self._bitfield_1.set_const::<34usize, 1u8>(val as u64)
15235        }
15236    }
15237    #[inline]
15238    pub unsafe fn build_id_raw(this: *const Self) -> __u64 {
15239        unsafe {
15240            ::std::mem::transmute(
15241                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<34usize, 1u8>(
15242                    ::std::ptr::addr_of!((*this)._bitfield_1),
15243                ) as u64,
15244            )
15245        }
15246    }
15247    #[inline]
15248    pub unsafe fn set_build_id_raw(this: *mut Self, val: __u64) {
15249        unsafe {
15250            let val: u64 = val as _;
15251            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<34usize, 1u8>(
15252                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15253                val as u64,
15254            )
15255        }
15256    }
15257    #[inline]
15258    pub fn inherit_thread(&self) -> __u64 {
15259        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<35usize, 1u8>() as u64) }
15260    }
15261    #[inline]
15262    pub fn set_inherit_thread(&mut self, val: __u64) {
15263        unsafe {
15264            let val: u64 = val as _;
15265            self._bitfield_1.set_const::<35usize, 1u8>(val as u64)
15266        }
15267    }
15268    #[inline]
15269    pub unsafe fn inherit_thread_raw(this: *const Self) -> __u64 {
15270        unsafe {
15271            ::std::mem::transmute(
15272                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<35usize, 1u8>(
15273                    ::std::ptr::addr_of!((*this)._bitfield_1),
15274                ) as u64,
15275            )
15276        }
15277    }
15278    #[inline]
15279    pub unsafe fn set_inherit_thread_raw(this: *mut Self, val: __u64) {
15280        unsafe {
15281            let val: u64 = val as _;
15282            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<35usize, 1u8>(
15283                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15284                val as u64,
15285            )
15286        }
15287    }
15288    #[inline]
15289    pub fn remove_on_exec(&self) -> __u64 {
15290        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<36usize, 1u8>() as u64) }
15291    }
15292    #[inline]
15293    pub fn set_remove_on_exec(&mut self, val: __u64) {
15294        unsafe {
15295            let val: u64 = val as _;
15296            self._bitfield_1.set_const::<36usize, 1u8>(val as u64)
15297        }
15298    }
15299    #[inline]
15300    pub unsafe fn remove_on_exec_raw(this: *const Self) -> __u64 {
15301        unsafe {
15302            ::std::mem::transmute(
15303                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<36usize, 1u8>(
15304                    ::std::ptr::addr_of!((*this)._bitfield_1),
15305                ) as u64,
15306            )
15307        }
15308    }
15309    #[inline]
15310    pub unsafe fn set_remove_on_exec_raw(this: *mut Self, val: __u64) {
15311        unsafe {
15312            let val: u64 = val as _;
15313            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<36usize, 1u8>(
15314                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15315                val as u64,
15316            )
15317        }
15318    }
15319    #[inline]
15320    pub fn sigtrap(&self) -> __u64 {
15321        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<37usize, 1u8>() as u64) }
15322    }
15323    #[inline]
15324    pub fn set_sigtrap(&mut self, val: __u64) {
15325        unsafe {
15326            let val: u64 = val as _;
15327            self._bitfield_1.set_const::<37usize, 1u8>(val as u64)
15328        }
15329    }
15330    #[inline]
15331    pub unsafe fn sigtrap_raw(this: *const Self) -> __u64 {
15332        unsafe {
15333            ::std::mem::transmute(
15334                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<37usize, 1u8>(
15335                    ::std::ptr::addr_of!((*this)._bitfield_1),
15336                ) as u64,
15337            )
15338        }
15339    }
15340    #[inline]
15341    pub unsafe fn set_sigtrap_raw(this: *mut Self, val: __u64) {
15342        unsafe {
15343            let val: u64 = val as _;
15344            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<37usize, 1u8>(
15345                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15346                val as u64,
15347            )
15348        }
15349    }
15350    #[inline]
15351    pub fn __reserved_1(&self) -> __u64 {
15352        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<38usize, 26u8>() as u64) }
15353    }
15354    #[inline]
15355    pub fn set___reserved_1(&mut self, val: __u64) {
15356        unsafe {
15357            let val: u64 = val as _;
15358            self._bitfield_1.set_const::<38usize, 26u8>(val as u64)
15359        }
15360    }
15361    #[inline]
15362    pub unsafe fn __reserved_1_raw(this: *const Self) -> __u64 {
15363        unsafe {
15364            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<
15365                38usize,
15366                26u8,
15367            >(::std::ptr::addr_of!((*this)._bitfield_1)) as u64)
15368        }
15369    }
15370    #[inline]
15371    pub unsafe fn set___reserved_1_raw(this: *mut Self, val: __u64) {
15372        unsafe {
15373            let val: u64 = val as _;
15374            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<38usize, 26u8>(
15375                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15376                val as u64,
15377            )
15378        }
15379    }
15380    #[inline]
15381    pub fn new_bitfield_1(
15382        disabled: __u64,
15383        inherit: __u64,
15384        pinned: __u64,
15385        exclusive: __u64,
15386        exclude_user: __u64,
15387        exclude_kernel: __u64,
15388        exclude_hv: __u64,
15389        exclude_idle: __u64,
15390        mmap: __u64,
15391        comm: __u64,
15392        freq: __u64,
15393        inherit_stat: __u64,
15394        enable_on_exec: __u64,
15395        task: __u64,
15396        watermark: __u64,
15397        precise_ip: __u64,
15398        mmap_data: __u64,
15399        sample_id_all: __u64,
15400        exclude_host: __u64,
15401        exclude_guest: __u64,
15402        exclude_callchain_kernel: __u64,
15403        exclude_callchain_user: __u64,
15404        mmap2: __u64,
15405        comm_exec: __u64,
15406        use_clockid: __u64,
15407        context_switch: __u64,
15408        write_backward: __u64,
15409        namespaces: __u64,
15410        ksymbol: __u64,
15411        bpf_event: __u64,
15412        aux_output: __u64,
15413        cgroup: __u64,
15414        text_poke: __u64,
15415        build_id: __u64,
15416        inherit_thread: __u64,
15417        remove_on_exec: __u64,
15418        sigtrap: __u64,
15419        __reserved_1: __u64,
15420    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
15421        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
15422        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
15423            let disabled: u64 = disabled as _;
15424            disabled as u64
15425        });
15426        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
15427            let inherit: u64 = inherit as _;
15428            inherit as u64
15429        });
15430        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
15431            let pinned: u64 = pinned as _;
15432            pinned as u64
15433        });
15434        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
15435            let exclusive: u64 = exclusive as _;
15436            exclusive as u64
15437        });
15438        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
15439            let exclude_user: u64 = exclude_user as _;
15440            exclude_user as u64
15441        });
15442        __bindgen_bitfield_unit.set_const::<5usize, 1u8>({
15443            let exclude_kernel: u64 = exclude_kernel as _;
15444            exclude_kernel as u64
15445        });
15446        __bindgen_bitfield_unit.set_const::<6usize, 1u8>({
15447            let exclude_hv: u64 = exclude_hv as _;
15448            exclude_hv as u64
15449        });
15450        __bindgen_bitfield_unit.set_const::<7usize, 1u8>({
15451            let exclude_idle: u64 = exclude_idle as _;
15452            exclude_idle as u64
15453        });
15454        __bindgen_bitfield_unit.set_const::<8usize, 1u8>({
15455            let mmap: u64 = mmap as _;
15456            mmap as u64
15457        });
15458        __bindgen_bitfield_unit.set_const::<9usize, 1u8>({
15459            let comm: u64 = comm as _;
15460            comm as u64
15461        });
15462        __bindgen_bitfield_unit.set_const::<10usize, 1u8>({
15463            let freq: u64 = freq as _;
15464            freq as u64
15465        });
15466        __bindgen_bitfield_unit.set_const::<11usize, 1u8>({
15467            let inherit_stat: u64 = inherit_stat as _;
15468            inherit_stat as u64
15469        });
15470        __bindgen_bitfield_unit.set_const::<12usize, 1u8>({
15471            let enable_on_exec: u64 = enable_on_exec as _;
15472            enable_on_exec as u64
15473        });
15474        __bindgen_bitfield_unit.set_const::<13usize, 1u8>({
15475            let task: u64 = task as _;
15476            task as u64
15477        });
15478        __bindgen_bitfield_unit.set_const::<14usize, 1u8>({
15479            let watermark: u64 = watermark as _;
15480            watermark as u64
15481        });
15482        __bindgen_bitfield_unit.set_const::<15usize, 2u8>({
15483            let precise_ip: u64 = precise_ip as _;
15484            precise_ip as u64
15485        });
15486        __bindgen_bitfield_unit.set_const::<17usize, 1u8>({
15487            let mmap_data: u64 = mmap_data as _;
15488            mmap_data as u64
15489        });
15490        __bindgen_bitfield_unit.set_const::<18usize, 1u8>({
15491            let sample_id_all: u64 = sample_id_all as _;
15492            sample_id_all as u64
15493        });
15494        __bindgen_bitfield_unit.set_const::<19usize, 1u8>({
15495            let exclude_host: u64 = exclude_host as _;
15496            exclude_host as u64
15497        });
15498        __bindgen_bitfield_unit.set_const::<20usize, 1u8>({
15499            let exclude_guest: u64 = exclude_guest as _;
15500            exclude_guest as u64
15501        });
15502        __bindgen_bitfield_unit.set_const::<21usize, 1u8>({
15503            let exclude_callchain_kernel: u64 = exclude_callchain_kernel as _;
15504            exclude_callchain_kernel as u64
15505        });
15506        __bindgen_bitfield_unit.set_const::<22usize, 1u8>({
15507            let exclude_callchain_user: u64 = exclude_callchain_user as _;
15508            exclude_callchain_user as u64
15509        });
15510        __bindgen_bitfield_unit.set_const::<23usize, 1u8>({
15511            let mmap2: u64 = mmap2 as _;
15512            mmap2 as u64
15513        });
15514        __bindgen_bitfield_unit.set_const::<24usize, 1u8>({
15515            let comm_exec: u64 = comm_exec as _;
15516            comm_exec as u64
15517        });
15518        __bindgen_bitfield_unit.set_const::<25usize, 1u8>({
15519            let use_clockid: u64 = use_clockid as _;
15520            use_clockid as u64
15521        });
15522        __bindgen_bitfield_unit.set_const::<26usize, 1u8>({
15523            let context_switch: u64 = context_switch as _;
15524            context_switch as u64
15525        });
15526        __bindgen_bitfield_unit.set_const::<27usize, 1u8>({
15527            let write_backward: u64 = write_backward as _;
15528            write_backward as u64
15529        });
15530        __bindgen_bitfield_unit.set_const::<28usize, 1u8>({
15531            let namespaces: u64 = namespaces as _;
15532            namespaces as u64
15533        });
15534        __bindgen_bitfield_unit.set_const::<29usize, 1u8>({
15535            let ksymbol: u64 = ksymbol as _;
15536            ksymbol as u64
15537        });
15538        __bindgen_bitfield_unit.set_const::<30usize, 1u8>({
15539            let bpf_event: u64 = bpf_event as _;
15540            bpf_event as u64
15541        });
15542        __bindgen_bitfield_unit.set_const::<31usize, 1u8>({
15543            let aux_output: u64 = aux_output as _;
15544            aux_output as u64
15545        });
15546        __bindgen_bitfield_unit.set_const::<32usize, 1u8>({
15547            let cgroup: u64 = cgroup as _;
15548            cgroup as u64
15549        });
15550        __bindgen_bitfield_unit.set_const::<33usize, 1u8>({
15551            let text_poke: u64 = text_poke as _;
15552            text_poke as u64
15553        });
15554        __bindgen_bitfield_unit.set_const::<34usize, 1u8>({
15555            let build_id: u64 = build_id as _;
15556            build_id as u64
15557        });
15558        __bindgen_bitfield_unit.set_const::<35usize, 1u8>({
15559            let inherit_thread: u64 = inherit_thread as _;
15560            inherit_thread as u64
15561        });
15562        __bindgen_bitfield_unit.set_const::<36usize, 1u8>({
15563            let remove_on_exec: u64 = remove_on_exec as _;
15564            remove_on_exec as u64
15565        });
15566        __bindgen_bitfield_unit.set_const::<37usize, 1u8>({
15567            let sigtrap: u64 = sigtrap as _;
15568            sigtrap as u64
15569        });
15570        __bindgen_bitfield_unit.set_const::<38usize, 26u8>({
15571            let __reserved_1: u64 = __reserved_1 as _;
15572            __reserved_1 as u64
15573        });
15574        __bindgen_bitfield_unit
15575    }
15576}
15577#[repr(C)]
15578#[derive(Debug, Default)]
15579pub struct perf_event_query_bpf {
15580    pub ids_len: __u32,
15581    pub prog_cnt: __u32,
15582    pub ids: __IncompleteArrayField<__u32>,
15583}
15584pub const perf_event_ioc_flags_PERF_IOC_FLAG_GROUP: perf_event_ioc_flags = 1;
15585pub type perf_event_ioc_flags = crate::types::c_uint;
15586#[repr(C)]
15587#[derive(Clone, Copy, Immutable, IntoBytes)]
15588pub struct perf_event_mmap_page {
15589    pub version: __u32,
15590    pub compat_version: __u32,
15591    pub lock: __u32,
15592    pub index: __u32,
15593    pub offset: __s64,
15594    pub time_enabled: __u64,
15595    pub time_running: __u64,
15596    pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1,
15597    pub pmc_width: __u16,
15598    pub time_shift: __u16,
15599    pub time_mult: __u32,
15600    pub time_offset: __u64,
15601    pub time_zero: __u64,
15602    pub size: __u32,
15603    pub __reserved_1: __u32,
15604    pub time_cycles: __u64,
15605    pub time_mask: __u64,
15606    pub __reserved: [__u8; 928usize],
15607    pub data_head: __u64,
15608    pub data_tail: __u64,
15609    pub data_offset: __u64,
15610    pub data_size: __u64,
15611    pub aux_head: __u64,
15612    pub aux_tail: __u64,
15613    pub aux_offset: __u64,
15614    pub aux_size: __u64,
15615}
15616#[repr(C)]
15617#[derive(Clone, Copy, Immutable, IntoBytes)]
15618pub union perf_event_mmap_page__bindgen_ty_1 {
15619    pub capabilities: __u64,
15620    pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1,
15621}
15622#[repr(C)]
15623#[derive(Clone, Copy, Debug, Default, Immutable, IntoBytes)]
15624pub struct perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
15625    pub _bindgen_align: [u64; 0],
15626    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
15627}
15628impl perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
15629    #[inline]
15630    pub fn cap_bit0(&self) -> __u64 {
15631        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u64) }
15632    }
15633    #[inline]
15634    pub fn set_cap_bit0(&mut self, val: __u64) {
15635        unsafe {
15636            let val: u64 = val as _;
15637            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
15638        }
15639    }
15640    #[inline]
15641    pub unsafe fn cap_bit0_raw(this: *const Self) -> __u64 {
15642        unsafe {
15643            ::std::mem::transmute(
15644                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
15645                    ::std::ptr::addr_of!((*this)._bitfield_1),
15646                ) as u64,
15647            )
15648        }
15649    }
15650    #[inline]
15651    pub unsafe fn set_cap_bit0_raw(this: *mut Self, val: __u64) {
15652        unsafe {
15653            let val: u64 = val as _;
15654            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
15655                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15656                val as u64,
15657            )
15658        }
15659    }
15660    #[inline]
15661    pub fn cap_bit0_is_deprecated(&self) -> __u64 {
15662        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u64) }
15663    }
15664    #[inline]
15665    pub fn set_cap_bit0_is_deprecated(&mut self, val: __u64) {
15666        unsafe {
15667            let val: u64 = val as _;
15668            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
15669        }
15670    }
15671    #[inline]
15672    pub unsafe fn cap_bit0_is_deprecated_raw(this: *const Self) -> __u64 {
15673        unsafe {
15674            ::std::mem::transmute(
15675                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
15676                    ::std::ptr::addr_of!((*this)._bitfield_1),
15677                ) as u64,
15678            )
15679        }
15680    }
15681    #[inline]
15682    pub unsafe fn set_cap_bit0_is_deprecated_raw(this: *mut Self, val: __u64) {
15683        unsafe {
15684            let val: u64 = val as _;
15685            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
15686                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15687                val as u64,
15688            )
15689        }
15690    }
15691    #[inline]
15692    pub fn cap_user_rdpmc(&self) -> __u64 {
15693        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u64) }
15694    }
15695    #[inline]
15696    pub fn set_cap_user_rdpmc(&mut self, val: __u64) {
15697        unsafe {
15698            let val: u64 = val as _;
15699            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
15700        }
15701    }
15702    #[inline]
15703    pub unsafe fn cap_user_rdpmc_raw(this: *const Self) -> __u64 {
15704        unsafe {
15705            ::std::mem::transmute(
15706                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
15707                    ::std::ptr::addr_of!((*this)._bitfield_1),
15708                ) as u64,
15709            )
15710        }
15711    }
15712    #[inline]
15713    pub unsafe fn set_cap_user_rdpmc_raw(this: *mut Self, val: __u64) {
15714        unsafe {
15715            let val: u64 = val as _;
15716            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
15717                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15718                val as u64,
15719            )
15720        }
15721    }
15722    #[inline]
15723    pub fn cap_user_time(&self) -> __u64 {
15724        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u64) }
15725    }
15726    #[inline]
15727    pub fn set_cap_user_time(&mut self, val: __u64) {
15728        unsafe {
15729            let val: u64 = val as _;
15730            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
15731        }
15732    }
15733    #[inline]
15734    pub unsafe fn cap_user_time_raw(this: *const Self) -> __u64 {
15735        unsafe {
15736            ::std::mem::transmute(
15737                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
15738                    ::std::ptr::addr_of!((*this)._bitfield_1),
15739                ) as u64,
15740            )
15741        }
15742    }
15743    #[inline]
15744    pub unsafe fn set_cap_user_time_raw(this: *mut Self, val: __u64) {
15745        unsafe {
15746            let val: u64 = val as _;
15747            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
15748                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15749                val as u64,
15750            )
15751        }
15752    }
15753    #[inline]
15754    pub fn cap_user_time_zero(&self) -> __u64 {
15755        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 1u8>() as u64) }
15756    }
15757    #[inline]
15758    pub fn set_cap_user_time_zero(&mut self, val: __u64) {
15759        unsafe {
15760            let val: u64 = val as _;
15761            self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
15762        }
15763    }
15764    #[inline]
15765    pub unsafe fn cap_user_time_zero_raw(this: *const Self) -> __u64 {
15766        unsafe {
15767            ::std::mem::transmute(
15768                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 1u8>(
15769                    ::std::ptr::addr_of!((*this)._bitfield_1),
15770                ) as u64,
15771            )
15772        }
15773    }
15774    #[inline]
15775    pub unsafe fn set_cap_user_time_zero_raw(this: *mut Self, val: __u64) {
15776        unsafe {
15777            let val: u64 = val as _;
15778            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 1u8>(
15779                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15780                val as u64,
15781            )
15782        }
15783    }
15784    #[inline]
15785    pub fn cap_user_time_short(&self) -> __u64 {
15786        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 1u8>() as u64) }
15787    }
15788    #[inline]
15789    pub fn set_cap_user_time_short(&mut self, val: __u64) {
15790        unsafe {
15791            let val: u64 = val as _;
15792            self._bitfield_1.set_const::<5usize, 1u8>(val as u64)
15793        }
15794    }
15795    #[inline]
15796    pub unsafe fn cap_user_time_short_raw(this: *const Self) -> __u64 {
15797        unsafe {
15798            ::std::mem::transmute(
15799                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 1u8>(
15800                    ::std::ptr::addr_of!((*this)._bitfield_1),
15801                ) as u64,
15802            )
15803        }
15804    }
15805    #[inline]
15806    pub unsafe fn set_cap_user_time_short_raw(this: *mut Self, val: __u64) {
15807        unsafe {
15808            let val: u64 = val as _;
15809            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 1u8>(
15810                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15811                val as u64,
15812            )
15813        }
15814    }
15815    #[inline]
15816    pub fn cap_____res(&self) -> __u64 {
15817        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<6usize, 58u8>() as u64) }
15818    }
15819    #[inline]
15820    pub fn set_cap_____res(&mut self, val: __u64) {
15821        unsafe {
15822            let val: u64 = val as _;
15823            self._bitfield_1.set_const::<6usize, 58u8>(val as u64)
15824        }
15825    }
15826    #[inline]
15827    pub unsafe fn cap_____res_raw(this: *const Self) -> __u64 {
15828        unsafe {
15829            ::std::mem::transmute(
15830                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<6usize, 58u8>(
15831                    ::std::ptr::addr_of!((*this)._bitfield_1),
15832                ) as u64,
15833            )
15834        }
15835    }
15836    #[inline]
15837    pub unsafe fn set_cap_____res_raw(this: *mut Self, val: __u64) {
15838        unsafe {
15839            let val: u64 = val as _;
15840            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<6usize, 58u8>(
15841                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15842                val as u64,
15843            )
15844        }
15845    }
15846    #[inline]
15847    pub fn new_bitfield_1(
15848        cap_bit0: __u64,
15849        cap_bit0_is_deprecated: __u64,
15850        cap_user_rdpmc: __u64,
15851        cap_user_time: __u64,
15852        cap_user_time_zero: __u64,
15853        cap_user_time_short: __u64,
15854        cap_____res: __u64,
15855    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
15856        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
15857        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
15858            let cap_bit0: u64 = cap_bit0 as _;
15859            cap_bit0 as u64
15860        });
15861        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
15862            let cap_bit0_is_deprecated: u64 = cap_bit0_is_deprecated as _;
15863            cap_bit0_is_deprecated as u64
15864        });
15865        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
15866            let cap_user_rdpmc: u64 = cap_user_rdpmc as _;
15867            cap_user_rdpmc as u64
15868        });
15869        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
15870            let cap_user_time: u64 = cap_user_time as _;
15871            cap_user_time as u64
15872        });
15873        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
15874            let cap_user_time_zero: u64 = cap_user_time_zero as _;
15875            cap_user_time_zero as u64
15876        });
15877        __bindgen_bitfield_unit.set_const::<5usize, 1u8>({
15878            let cap_user_time_short: u64 = cap_user_time_short as _;
15879            cap_user_time_short as u64
15880        });
15881        __bindgen_bitfield_unit.set_const::<6usize, 58u8>({
15882            let cap_____res: u64 = cap_____res as _;
15883            cap_____res as u64
15884        });
15885        __bindgen_bitfield_unit
15886    }
15887}
15888impl Default for perf_event_mmap_page__bindgen_ty_1 {
15889    fn default() -> Self {
15890        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15891        unsafe {
15892            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15893            s.assume_init()
15894        }
15895    }
15896}
15897impl Default for perf_event_mmap_page {
15898    fn default() -> Self {
15899        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15900        unsafe {
15901            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15902            s.assume_init()
15903        }
15904    }
15905}
15906#[repr(C)]
15907#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15908pub struct perf_event_header {
15909    pub type_: __u32,
15910    pub misc: __u16,
15911    pub size: __u16,
15912}
15913#[repr(C)]
15914#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15915pub struct perf_ns_link_info {
15916    pub dev: __u64,
15917    pub ino: __u64,
15918}
15919pub const NET_NS_INDEX: _bindgen_ty_91 = 0;
15920pub const UTS_NS_INDEX: _bindgen_ty_91 = 1;
15921pub const IPC_NS_INDEX: _bindgen_ty_91 = 2;
15922pub const PID_NS_INDEX: _bindgen_ty_91 = 3;
15923pub const USER_NS_INDEX: _bindgen_ty_91 = 4;
15924pub const MNT_NS_INDEX: _bindgen_ty_91 = 5;
15925pub const CGROUP_NS_INDEX: _bindgen_ty_91 = 6;
15926pub const NR_NAMESPACES: _bindgen_ty_91 = 7;
15927pub type _bindgen_ty_91 = crate::types::c_uint;
15928pub const perf_event_type_PERF_RECORD_MMAP: perf_event_type = 1;
15929pub const perf_event_type_PERF_RECORD_LOST: perf_event_type = 2;
15930pub const perf_event_type_PERF_RECORD_COMM: perf_event_type = 3;
15931pub const perf_event_type_PERF_RECORD_EXIT: perf_event_type = 4;
15932pub const perf_event_type_PERF_RECORD_THROTTLE: perf_event_type = 5;
15933pub const perf_event_type_PERF_RECORD_UNTHROTTLE: perf_event_type = 6;
15934pub const perf_event_type_PERF_RECORD_FORK: perf_event_type = 7;
15935pub const perf_event_type_PERF_RECORD_READ: perf_event_type = 8;
15936pub const perf_event_type_PERF_RECORD_SAMPLE: perf_event_type = 9;
15937pub const perf_event_type_PERF_RECORD_MMAP2: perf_event_type = 10;
15938pub const perf_event_type_PERF_RECORD_AUX: perf_event_type = 11;
15939pub const perf_event_type_PERF_RECORD_ITRACE_START: perf_event_type = 12;
15940pub const perf_event_type_PERF_RECORD_LOST_SAMPLES: perf_event_type = 13;
15941pub const perf_event_type_PERF_RECORD_SWITCH: perf_event_type = 14;
15942pub const perf_event_type_PERF_RECORD_SWITCH_CPU_WIDE: perf_event_type = 15;
15943pub const perf_event_type_PERF_RECORD_NAMESPACES: perf_event_type = 16;
15944pub const perf_event_type_PERF_RECORD_KSYMBOL: perf_event_type = 17;
15945pub const perf_event_type_PERF_RECORD_BPF_EVENT: perf_event_type = 18;
15946pub const perf_event_type_PERF_RECORD_CGROUP: perf_event_type = 19;
15947pub const perf_event_type_PERF_RECORD_TEXT_POKE: perf_event_type = 20;
15948pub const perf_event_type_PERF_RECORD_AUX_OUTPUT_HW_ID: perf_event_type = 21;
15949pub const perf_event_type_PERF_RECORD_MAX: perf_event_type = 22;
15950pub type perf_event_type = crate::types::c_uint;
15951pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_UNKNOWN: perf_record_ksymbol_type = 0;
15952pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_BPF: perf_record_ksymbol_type = 1;
15953pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_OOL: perf_record_ksymbol_type = 2;
15954pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_MAX: perf_record_ksymbol_type = 3;
15955pub type perf_record_ksymbol_type = crate::types::c_uint;
15956pub const perf_bpf_event_type_PERF_BPF_EVENT_UNKNOWN: perf_bpf_event_type = 0;
15957pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_LOAD: perf_bpf_event_type = 1;
15958pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_UNLOAD: perf_bpf_event_type = 2;
15959pub const perf_bpf_event_type_PERF_BPF_EVENT_MAX: perf_bpf_event_type = 3;
15960pub type perf_bpf_event_type = crate::types::c_uint;
15961pub const perf_callchain_context_PERF_CONTEXT_HV: perf_callchain_context = 18446744073709551584;
15962pub const perf_callchain_context_PERF_CONTEXT_KERNEL: perf_callchain_context = 18446744073709551488;
15963pub const perf_callchain_context_PERF_CONTEXT_USER: perf_callchain_context = 18446744073709551104;
15964pub const perf_callchain_context_PERF_CONTEXT_GUEST: perf_callchain_context = 18446744073709549568;
15965pub const perf_callchain_context_PERF_CONTEXT_GUEST_KERNEL: perf_callchain_context =
15966    18446744073709549440;
15967pub const perf_callchain_context_PERF_CONTEXT_GUEST_USER: perf_callchain_context =
15968    18446744073709549056;
15969pub const perf_callchain_context_PERF_CONTEXT_MAX: perf_callchain_context = 18446744073709547521;
15970pub type perf_callchain_context = crate::types::c_ulong;
15971#[repr(C)]
15972#[derive(Copy, Clone)]
15973pub union perf_mem_data_src {
15974    pub val: __u64,
15975    pub __bindgen_anon_1: perf_mem_data_src__bindgen_ty_1,
15976}
15977#[repr(C)]
15978#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15979pub struct perf_mem_data_src__bindgen_ty_1 {
15980    pub _bindgen_align: [u64; 0],
15981    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
15982}
15983impl perf_mem_data_src__bindgen_ty_1 {
15984    #[inline]
15985    pub fn mem_op(&self) -> __u64 {
15986        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 5u8>() as u64) }
15987    }
15988    #[inline]
15989    pub fn set_mem_op(&mut self, val: __u64) {
15990        unsafe {
15991            let val: u64 = val as _;
15992            self._bitfield_1.set_const::<0usize, 5u8>(val as u64)
15993        }
15994    }
15995    #[inline]
15996    pub unsafe fn mem_op_raw(this: *const Self) -> __u64 {
15997        unsafe {
15998            ::std::mem::transmute(
15999                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 5u8>(
16000                    ::std::ptr::addr_of!((*this)._bitfield_1),
16001                ) as u64,
16002            )
16003        }
16004    }
16005    #[inline]
16006    pub unsafe fn set_mem_op_raw(this: *mut Self, val: __u64) {
16007        unsafe {
16008            let val: u64 = val as _;
16009            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 5u8>(
16010                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16011                val as u64,
16012            )
16013        }
16014    }
16015    #[inline]
16016    pub fn mem_lvl(&self) -> __u64 {
16017        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 14u8>() as u64) }
16018    }
16019    #[inline]
16020    pub fn set_mem_lvl(&mut self, val: __u64) {
16021        unsafe {
16022            let val: u64 = val as _;
16023            self._bitfield_1.set_const::<5usize, 14u8>(val as u64)
16024        }
16025    }
16026    #[inline]
16027    pub unsafe fn mem_lvl_raw(this: *const Self) -> __u64 {
16028        unsafe {
16029            ::std::mem::transmute(
16030                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 14u8>(
16031                    ::std::ptr::addr_of!((*this)._bitfield_1),
16032                ) as u64,
16033            )
16034        }
16035    }
16036    #[inline]
16037    pub unsafe fn set_mem_lvl_raw(this: *mut Self, val: __u64) {
16038        unsafe {
16039            let val: u64 = val as _;
16040            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 14u8>(
16041                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16042                val as u64,
16043            )
16044        }
16045    }
16046    #[inline]
16047    pub fn mem_snoop(&self) -> __u64 {
16048        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<19usize, 5u8>() as u64) }
16049    }
16050    #[inline]
16051    pub fn set_mem_snoop(&mut self, val: __u64) {
16052        unsafe {
16053            let val: u64 = val as _;
16054            self._bitfield_1.set_const::<19usize, 5u8>(val as u64)
16055        }
16056    }
16057    #[inline]
16058    pub unsafe fn mem_snoop_raw(this: *const Self) -> __u64 {
16059        unsafe {
16060            ::std::mem::transmute(
16061                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<19usize, 5u8>(
16062                    ::std::ptr::addr_of!((*this)._bitfield_1),
16063                ) as u64,
16064            )
16065        }
16066    }
16067    #[inline]
16068    pub unsafe fn set_mem_snoop_raw(this: *mut Self, val: __u64) {
16069        unsafe {
16070            let val: u64 = val as _;
16071            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<19usize, 5u8>(
16072                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16073                val as u64,
16074            )
16075        }
16076    }
16077    #[inline]
16078    pub fn mem_lock(&self) -> __u64 {
16079        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<24usize, 2u8>() as u64) }
16080    }
16081    #[inline]
16082    pub fn set_mem_lock(&mut self, val: __u64) {
16083        unsafe {
16084            let val: u64 = val as _;
16085            self._bitfield_1.set_const::<24usize, 2u8>(val as u64)
16086        }
16087    }
16088    #[inline]
16089    pub unsafe fn mem_lock_raw(this: *const Self) -> __u64 {
16090        unsafe {
16091            ::std::mem::transmute(
16092                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 2u8>(
16093                    ::std::ptr::addr_of!((*this)._bitfield_1),
16094                ) as u64,
16095            )
16096        }
16097    }
16098    #[inline]
16099    pub unsafe fn set_mem_lock_raw(this: *mut Self, val: __u64) {
16100        unsafe {
16101            let val: u64 = val as _;
16102            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 2u8>(
16103                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16104                val as u64,
16105            )
16106        }
16107    }
16108    #[inline]
16109    pub fn mem_dtlb(&self) -> __u64 {
16110        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<26usize, 7u8>() as u64) }
16111    }
16112    #[inline]
16113    pub fn set_mem_dtlb(&mut self, val: __u64) {
16114        unsafe {
16115            let val: u64 = val as _;
16116            self._bitfield_1.set_const::<26usize, 7u8>(val as u64)
16117        }
16118    }
16119    #[inline]
16120    pub unsafe fn mem_dtlb_raw(this: *const Self) -> __u64 {
16121        unsafe {
16122            ::std::mem::transmute(
16123                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 7u8>(
16124                    ::std::ptr::addr_of!((*this)._bitfield_1),
16125                ) as u64,
16126            )
16127        }
16128    }
16129    #[inline]
16130    pub unsafe fn set_mem_dtlb_raw(this: *mut Self, val: __u64) {
16131        unsafe {
16132            let val: u64 = val as _;
16133            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 7u8>(
16134                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16135                val as u64,
16136            )
16137        }
16138    }
16139    #[inline]
16140    pub fn mem_lvl_num(&self) -> __u64 {
16141        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<33usize, 4u8>() as u64) }
16142    }
16143    #[inline]
16144    pub fn set_mem_lvl_num(&mut self, val: __u64) {
16145        unsafe {
16146            let val: u64 = val as _;
16147            self._bitfield_1.set_const::<33usize, 4u8>(val as u64)
16148        }
16149    }
16150    #[inline]
16151    pub unsafe fn mem_lvl_num_raw(this: *const Self) -> __u64 {
16152        unsafe {
16153            ::std::mem::transmute(
16154                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 4u8>(
16155                    ::std::ptr::addr_of!((*this)._bitfield_1),
16156                ) as u64,
16157            )
16158        }
16159    }
16160    #[inline]
16161    pub unsafe fn set_mem_lvl_num_raw(this: *mut Self, val: __u64) {
16162        unsafe {
16163            let val: u64 = val as _;
16164            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 4u8>(
16165                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16166                val as u64,
16167            )
16168        }
16169    }
16170    #[inline]
16171    pub fn mem_remote(&self) -> __u64 {
16172        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<37usize, 1u8>() as u64) }
16173    }
16174    #[inline]
16175    pub fn set_mem_remote(&mut self, val: __u64) {
16176        unsafe {
16177            let val: u64 = val as _;
16178            self._bitfield_1.set_const::<37usize, 1u8>(val as u64)
16179        }
16180    }
16181    #[inline]
16182    pub unsafe fn mem_remote_raw(this: *const Self) -> __u64 {
16183        unsafe {
16184            ::std::mem::transmute(
16185                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<37usize, 1u8>(
16186                    ::std::ptr::addr_of!((*this)._bitfield_1),
16187                ) as u64,
16188            )
16189        }
16190    }
16191    #[inline]
16192    pub unsafe fn set_mem_remote_raw(this: *mut Self, val: __u64) {
16193        unsafe {
16194            let val: u64 = val as _;
16195            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<37usize, 1u8>(
16196                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16197                val as u64,
16198            )
16199        }
16200    }
16201    #[inline]
16202    pub fn mem_snoopx(&self) -> __u64 {
16203        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<38usize, 2u8>() as u64) }
16204    }
16205    #[inline]
16206    pub fn set_mem_snoopx(&mut self, val: __u64) {
16207        unsafe {
16208            let val: u64 = val as _;
16209            self._bitfield_1.set_const::<38usize, 2u8>(val as u64)
16210        }
16211    }
16212    #[inline]
16213    pub unsafe fn mem_snoopx_raw(this: *const Self) -> __u64 {
16214        unsafe {
16215            ::std::mem::transmute(
16216                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<38usize, 2u8>(
16217                    ::std::ptr::addr_of!((*this)._bitfield_1),
16218                ) as u64,
16219            )
16220        }
16221    }
16222    #[inline]
16223    pub unsafe fn set_mem_snoopx_raw(this: *mut Self, val: __u64) {
16224        unsafe {
16225            let val: u64 = val as _;
16226            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<38usize, 2u8>(
16227                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16228                val as u64,
16229            )
16230        }
16231    }
16232    #[inline]
16233    pub fn mem_blk(&self) -> __u64 {
16234        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<40usize, 3u8>() as u64) }
16235    }
16236    #[inline]
16237    pub fn set_mem_blk(&mut self, val: __u64) {
16238        unsafe {
16239            let val: u64 = val as _;
16240            self._bitfield_1.set_const::<40usize, 3u8>(val as u64)
16241        }
16242    }
16243    #[inline]
16244    pub unsafe fn mem_blk_raw(this: *const Self) -> __u64 {
16245        unsafe {
16246            ::std::mem::transmute(
16247                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<40usize, 3u8>(
16248                    ::std::ptr::addr_of!((*this)._bitfield_1),
16249                ) as u64,
16250            )
16251        }
16252    }
16253    #[inline]
16254    pub unsafe fn set_mem_blk_raw(this: *mut Self, val: __u64) {
16255        unsafe {
16256            let val: u64 = val as _;
16257            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<40usize, 3u8>(
16258                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16259                val as u64,
16260            )
16261        }
16262    }
16263    #[inline]
16264    pub fn mem_hops(&self) -> __u64 {
16265        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<43usize, 3u8>() as u64) }
16266    }
16267    #[inline]
16268    pub fn set_mem_hops(&mut self, val: __u64) {
16269        unsafe {
16270            let val: u64 = val as _;
16271            self._bitfield_1.set_const::<43usize, 3u8>(val as u64)
16272        }
16273    }
16274    #[inline]
16275    pub unsafe fn mem_hops_raw(this: *const Self) -> __u64 {
16276        unsafe {
16277            ::std::mem::transmute(
16278                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<43usize, 3u8>(
16279                    ::std::ptr::addr_of!((*this)._bitfield_1),
16280                ) as u64,
16281            )
16282        }
16283    }
16284    #[inline]
16285    pub unsafe fn set_mem_hops_raw(this: *mut Self, val: __u64) {
16286        unsafe {
16287            let val: u64 = val as _;
16288            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<43usize, 3u8>(
16289                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16290                val as u64,
16291            )
16292        }
16293    }
16294    #[inline]
16295    pub fn mem_rsvd(&self) -> __u64 {
16296        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<46usize, 18u8>() as u64) }
16297    }
16298    #[inline]
16299    pub fn set_mem_rsvd(&mut self, val: __u64) {
16300        unsafe {
16301            let val: u64 = val as _;
16302            self._bitfield_1.set_const::<46usize, 18u8>(val as u64)
16303        }
16304    }
16305    #[inline]
16306    pub unsafe fn mem_rsvd_raw(this: *const Self) -> __u64 {
16307        unsafe {
16308            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<
16309                46usize,
16310                18u8,
16311            >(::std::ptr::addr_of!((*this)._bitfield_1)) as u64)
16312        }
16313    }
16314    #[inline]
16315    pub unsafe fn set_mem_rsvd_raw(this: *mut Self, val: __u64) {
16316        unsafe {
16317            let val: u64 = val as _;
16318            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<46usize, 18u8>(
16319                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16320                val as u64,
16321            )
16322        }
16323    }
16324    #[inline]
16325    pub fn new_bitfield_1(
16326        mem_op: __u64,
16327        mem_lvl: __u64,
16328        mem_snoop: __u64,
16329        mem_lock: __u64,
16330        mem_dtlb: __u64,
16331        mem_lvl_num: __u64,
16332        mem_remote: __u64,
16333        mem_snoopx: __u64,
16334        mem_blk: __u64,
16335        mem_hops: __u64,
16336        mem_rsvd: __u64,
16337    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
16338        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
16339        __bindgen_bitfield_unit.set_const::<0usize, 5u8>({
16340            let mem_op: u64 = mem_op as _;
16341            mem_op as u64
16342        });
16343        __bindgen_bitfield_unit.set_const::<5usize, 14u8>({
16344            let mem_lvl: u64 = mem_lvl as _;
16345            mem_lvl as u64
16346        });
16347        __bindgen_bitfield_unit.set_const::<19usize, 5u8>({
16348            let mem_snoop: u64 = mem_snoop as _;
16349            mem_snoop as u64
16350        });
16351        __bindgen_bitfield_unit.set_const::<24usize, 2u8>({
16352            let mem_lock: u64 = mem_lock as _;
16353            mem_lock as u64
16354        });
16355        __bindgen_bitfield_unit.set_const::<26usize, 7u8>({
16356            let mem_dtlb: u64 = mem_dtlb as _;
16357            mem_dtlb as u64
16358        });
16359        __bindgen_bitfield_unit.set_const::<33usize, 4u8>({
16360            let mem_lvl_num: u64 = mem_lvl_num as _;
16361            mem_lvl_num as u64
16362        });
16363        __bindgen_bitfield_unit.set_const::<37usize, 1u8>({
16364            let mem_remote: u64 = mem_remote as _;
16365            mem_remote as u64
16366        });
16367        __bindgen_bitfield_unit.set_const::<38usize, 2u8>({
16368            let mem_snoopx: u64 = mem_snoopx as _;
16369            mem_snoopx as u64
16370        });
16371        __bindgen_bitfield_unit.set_const::<40usize, 3u8>({
16372            let mem_blk: u64 = mem_blk as _;
16373            mem_blk as u64
16374        });
16375        __bindgen_bitfield_unit.set_const::<43usize, 3u8>({
16376            let mem_hops: u64 = mem_hops as _;
16377            mem_hops as u64
16378        });
16379        __bindgen_bitfield_unit.set_const::<46usize, 18u8>({
16380            let mem_rsvd: u64 = mem_rsvd as _;
16381            mem_rsvd as u64
16382        });
16383        __bindgen_bitfield_unit
16384    }
16385}
16386impl Default for perf_mem_data_src {
16387    fn default() -> Self {
16388        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16389        unsafe {
16390            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16391            s.assume_init()
16392        }
16393    }
16394}
16395#[repr(C)]
16396#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16397pub struct perf_branch_entry {
16398    pub from: __u64,
16399    pub to: __u64,
16400    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
16401}
16402impl perf_branch_entry {
16403    #[inline]
16404    pub fn mispred(&self) -> __u64 {
16405        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u64) }
16406    }
16407    #[inline]
16408    pub fn set_mispred(&mut self, val: __u64) {
16409        unsafe {
16410            let val: u64 = val as _;
16411            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
16412        }
16413    }
16414    #[inline]
16415    pub unsafe fn mispred_raw(this: *const Self) -> __u64 {
16416        unsafe {
16417            ::std::mem::transmute(
16418                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
16419                    ::std::ptr::addr_of!((*this)._bitfield_1),
16420                ) as u64,
16421            )
16422        }
16423    }
16424    #[inline]
16425    pub unsafe fn set_mispred_raw(this: *mut Self, val: __u64) {
16426        unsafe {
16427            let val: u64 = val as _;
16428            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
16429                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16430                val as u64,
16431            )
16432        }
16433    }
16434    #[inline]
16435    pub fn predicted(&self) -> __u64 {
16436        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u64) }
16437    }
16438    #[inline]
16439    pub fn set_predicted(&mut self, val: __u64) {
16440        unsafe {
16441            let val: u64 = val as _;
16442            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
16443        }
16444    }
16445    #[inline]
16446    pub unsafe fn predicted_raw(this: *const Self) -> __u64 {
16447        unsafe {
16448            ::std::mem::transmute(
16449                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
16450                    ::std::ptr::addr_of!((*this)._bitfield_1),
16451                ) as u64,
16452            )
16453        }
16454    }
16455    #[inline]
16456    pub unsafe fn set_predicted_raw(this: *mut Self, val: __u64) {
16457        unsafe {
16458            let val: u64 = val as _;
16459            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
16460                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16461                val as u64,
16462            )
16463        }
16464    }
16465    #[inline]
16466    pub fn in_tx(&self) -> __u64 {
16467        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u64) }
16468    }
16469    #[inline]
16470    pub fn set_in_tx(&mut self, val: __u64) {
16471        unsafe {
16472            let val: u64 = val as _;
16473            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
16474        }
16475    }
16476    #[inline]
16477    pub unsafe fn in_tx_raw(this: *const Self) -> __u64 {
16478        unsafe {
16479            ::std::mem::transmute(
16480                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
16481                    ::std::ptr::addr_of!((*this)._bitfield_1),
16482                ) as u64,
16483            )
16484        }
16485    }
16486    #[inline]
16487    pub unsafe fn set_in_tx_raw(this: *mut Self, val: __u64) {
16488        unsafe {
16489            let val: u64 = val as _;
16490            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
16491                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16492                val as u64,
16493            )
16494        }
16495    }
16496    #[inline]
16497    pub fn abort(&self) -> __u64 {
16498        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u64) }
16499    }
16500    #[inline]
16501    pub fn set_abort(&mut self, val: __u64) {
16502        unsafe {
16503            let val: u64 = val as _;
16504            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
16505        }
16506    }
16507    #[inline]
16508    pub unsafe fn abort_raw(this: *const Self) -> __u64 {
16509        unsafe {
16510            ::std::mem::transmute(
16511                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
16512                    ::std::ptr::addr_of!((*this)._bitfield_1),
16513                ) as u64,
16514            )
16515        }
16516    }
16517    #[inline]
16518    pub unsafe fn set_abort_raw(this: *mut Self, val: __u64) {
16519        unsafe {
16520            let val: u64 = val as _;
16521            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
16522                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16523                val as u64,
16524            )
16525        }
16526    }
16527    #[inline]
16528    pub fn cycles(&self) -> __u64 {
16529        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 16u8>() as u64) }
16530    }
16531    #[inline]
16532    pub fn set_cycles(&mut self, val: __u64) {
16533        unsafe {
16534            let val: u64 = val as _;
16535            self._bitfield_1.set_const::<4usize, 16u8>(val as u64)
16536        }
16537    }
16538    #[inline]
16539    pub unsafe fn cycles_raw(this: *const Self) -> __u64 {
16540        unsafe {
16541            ::std::mem::transmute(
16542                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 16u8>(
16543                    ::std::ptr::addr_of!((*this)._bitfield_1),
16544                ) as u64,
16545            )
16546        }
16547    }
16548    #[inline]
16549    pub unsafe fn set_cycles_raw(this: *mut Self, val: __u64) {
16550        unsafe {
16551            let val: u64 = val as _;
16552            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 16u8>(
16553                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16554                val as u64,
16555            )
16556        }
16557    }
16558    #[inline]
16559    pub fn type_(&self) -> __u64 {
16560        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<20usize, 4u8>() as u64) }
16561    }
16562    #[inline]
16563    pub fn set_type(&mut self, val: __u64) {
16564        unsafe {
16565            let val: u64 = val as _;
16566            self._bitfield_1.set_const::<20usize, 4u8>(val as u64)
16567        }
16568    }
16569    #[inline]
16570    pub unsafe fn type__raw(this: *const Self) -> __u64 {
16571        unsafe {
16572            ::std::mem::transmute(
16573                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<20usize, 4u8>(
16574                    ::std::ptr::addr_of!((*this)._bitfield_1),
16575                ) as u64,
16576            )
16577        }
16578    }
16579    #[inline]
16580    pub unsafe fn set_type_raw(this: *mut Self, val: __u64) {
16581        unsafe {
16582            let val: u64 = val as _;
16583            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<20usize, 4u8>(
16584                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16585                val as u64,
16586            )
16587        }
16588    }
16589    #[inline]
16590    pub fn spec(&self) -> __u64 {
16591        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<24usize, 2u8>() as u64) }
16592    }
16593    #[inline]
16594    pub fn set_spec(&mut self, val: __u64) {
16595        unsafe {
16596            let val: u64 = val as _;
16597            self._bitfield_1.set_const::<24usize, 2u8>(val as u64)
16598        }
16599    }
16600    #[inline]
16601    pub unsafe fn spec_raw(this: *const Self) -> __u64 {
16602        unsafe {
16603            ::std::mem::transmute(
16604                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 2u8>(
16605                    ::std::ptr::addr_of!((*this)._bitfield_1),
16606                ) as u64,
16607            )
16608        }
16609    }
16610    #[inline]
16611    pub unsafe fn set_spec_raw(this: *mut Self, val: __u64) {
16612        unsafe {
16613            let val: u64 = val as _;
16614            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 2u8>(
16615                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16616                val as u64,
16617            )
16618        }
16619    }
16620    #[inline]
16621    pub fn new_type(&self) -> __u64 {
16622        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<26usize, 4u8>() as u64) }
16623    }
16624    #[inline]
16625    pub fn set_new_type(&mut self, val: __u64) {
16626        unsafe {
16627            let val: u64 = val as _;
16628            self._bitfield_1.set_const::<26usize, 4u8>(val as u64)
16629        }
16630    }
16631    #[inline]
16632    pub unsafe fn new_type_raw(this: *const Self) -> __u64 {
16633        unsafe {
16634            ::std::mem::transmute(
16635                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 4u8>(
16636                    ::std::ptr::addr_of!((*this)._bitfield_1),
16637                ) as u64,
16638            )
16639        }
16640    }
16641    #[inline]
16642    pub unsafe fn set_new_type_raw(this: *mut Self, val: __u64) {
16643        unsafe {
16644            let val: u64 = val as _;
16645            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 4u8>(
16646                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16647                val as u64,
16648            )
16649        }
16650    }
16651    #[inline]
16652    pub fn priv_(&self) -> __u64 {
16653        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<30usize, 3u8>() as u64) }
16654    }
16655    #[inline]
16656    pub fn set_priv(&mut self, val: __u64) {
16657        unsafe {
16658            let val: u64 = val as _;
16659            self._bitfield_1.set_const::<30usize, 3u8>(val as u64)
16660        }
16661    }
16662    #[inline]
16663    pub unsafe fn priv__raw(this: *const Self) -> __u64 {
16664        unsafe {
16665            ::std::mem::transmute(
16666                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<30usize, 3u8>(
16667                    ::std::ptr::addr_of!((*this)._bitfield_1),
16668                ) as u64,
16669            )
16670        }
16671    }
16672    #[inline]
16673    pub unsafe fn set_priv_raw(this: *mut Self, val: __u64) {
16674        unsafe {
16675            let val: u64 = val as _;
16676            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<30usize, 3u8>(
16677                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16678                val as u64,
16679            )
16680        }
16681    }
16682    #[inline]
16683    pub fn reserved(&self) -> __u64 {
16684        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<33usize, 31u8>() as u64) }
16685    }
16686    #[inline]
16687    pub fn set_reserved(&mut self, val: __u64) {
16688        unsafe {
16689            let val: u64 = val as _;
16690            self._bitfield_1.set_const::<33usize, 31u8>(val as u64)
16691        }
16692    }
16693    #[inline]
16694    pub unsafe fn reserved_raw(this: *const Self) -> __u64 {
16695        unsafe {
16696            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<
16697                33usize,
16698                31u8,
16699            >(::std::ptr::addr_of!((*this)._bitfield_1)) as u64)
16700        }
16701    }
16702    #[inline]
16703    pub unsafe fn set_reserved_raw(this: *mut Self, val: __u64) {
16704        unsafe {
16705            let val: u64 = val as _;
16706            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 31u8>(
16707                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16708                val as u64,
16709            )
16710        }
16711    }
16712    #[inline]
16713    pub fn new_bitfield_1(
16714        mispred: __u64,
16715        predicted: __u64,
16716        in_tx: __u64,
16717        abort: __u64,
16718        cycles: __u64,
16719        type_: __u64,
16720        spec: __u64,
16721        new_type: __u64,
16722        priv_: __u64,
16723        reserved: __u64,
16724    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
16725        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
16726        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
16727            let mispred: u64 = mispred as _;
16728            mispred as u64
16729        });
16730        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
16731            let predicted: u64 = predicted as _;
16732            predicted as u64
16733        });
16734        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
16735            let in_tx: u64 = in_tx as _;
16736            in_tx as u64
16737        });
16738        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
16739            let abort: u64 = abort as _;
16740            abort as u64
16741        });
16742        __bindgen_bitfield_unit.set_const::<4usize, 16u8>({
16743            let cycles: u64 = cycles as _;
16744            cycles as u64
16745        });
16746        __bindgen_bitfield_unit.set_const::<20usize, 4u8>({
16747            let type_: u64 = type_ as _;
16748            type_ as u64
16749        });
16750        __bindgen_bitfield_unit.set_const::<24usize, 2u8>({
16751            let spec: u64 = spec as _;
16752            spec as u64
16753        });
16754        __bindgen_bitfield_unit.set_const::<26usize, 4u8>({
16755            let new_type: u64 = new_type as _;
16756            new_type as u64
16757        });
16758        __bindgen_bitfield_unit.set_const::<30usize, 3u8>({
16759            let priv_: u64 = priv_ as _;
16760            priv_ as u64
16761        });
16762        __bindgen_bitfield_unit.set_const::<33usize, 31u8>({
16763            let reserved: u64 = reserved as _;
16764            reserved as u64
16765        });
16766        __bindgen_bitfield_unit
16767    }
16768}
16769#[repr(C)]
16770#[derive(Copy, Clone)]
16771pub union perf_sample_weight {
16772    pub full: __u64,
16773    pub __bindgen_anon_1: perf_sample_weight__bindgen_ty_1,
16774}
16775#[repr(C)]
16776#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16777pub struct perf_sample_weight__bindgen_ty_1 {
16778    pub var1_dw: __u32,
16779    pub var2_w: __u16,
16780    pub var3_w: __u16,
16781}
16782impl Default for perf_sample_weight {
16783    fn default() -> Self {
16784        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16785        unsafe {
16786            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16787            s.assume_init()
16788        }
16789    }
16790}
16791pub const UNAME26: _bindgen_ty_92 = 131072;
16792pub const ADDR_NO_RANDOMIZE: _bindgen_ty_92 = 262144;
16793pub const FDPIC_FUNCPTRS: _bindgen_ty_92 = 524288;
16794pub const MMAP_PAGE_ZERO: _bindgen_ty_92 = 1048576;
16795pub const ADDR_COMPAT_LAYOUT: _bindgen_ty_92 = 2097152;
16796pub const READ_IMPLIES_EXEC: _bindgen_ty_92 = 4194304;
16797pub const ADDR_LIMIT_32BIT: _bindgen_ty_92 = 8388608;
16798pub const SHORT_INODE: _bindgen_ty_92 = 16777216;
16799pub const WHOLE_SECONDS: _bindgen_ty_92 = 33554432;
16800pub const STICKY_TIMEOUTS: _bindgen_ty_92 = 67108864;
16801pub const ADDR_LIMIT_3GB: _bindgen_ty_92 = 134217728;
16802pub type _bindgen_ty_92 = crate::types::c_uint;
16803pub const PER_LINUX: _bindgen_ty_93 = 0;
16804pub const PER_LINUX_32BIT: _bindgen_ty_93 = 8388608;
16805pub const PER_LINUX_FDPIC: _bindgen_ty_93 = 524288;
16806pub const PER_SVR4: _bindgen_ty_93 = 68157441;
16807pub const PER_SVR3: _bindgen_ty_93 = 83886082;
16808pub const PER_SCOSVR3: _bindgen_ty_93 = 117440515;
16809pub const PER_OSR5: _bindgen_ty_93 = 100663299;
16810pub const PER_WYSEV386: _bindgen_ty_93 = 83886084;
16811pub const PER_ISCR4: _bindgen_ty_93 = 67108869;
16812pub const PER_BSD: _bindgen_ty_93 = 6;
16813pub const PER_SUNOS: _bindgen_ty_93 = 67108870;
16814pub const PER_XENIX: _bindgen_ty_93 = 83886087;
16815pub const PER_LINUX32: _bindgen_ty_93 = 8;
16816pub const PER_LINUX32_3GB: _bindgen_ty_93 = 134217736;
16817pub const PER_IRIX32: _bindgen_ty_93 = 67108873;
16818pub const PER_IRIXN32: _bindgen_ty_93 = 67108874;
16819pub const PER_IRIX64: _bindgen_ty_93 = 67108875;
16820pub const PER_RISCOS: _bindgen_ty_93 = 12;
16821pub const PER_SOLARIS: _bindgen_ty_93 = 67108877;
16822pub const PER_UW7: _bindgen_ty_93 = 68157454;
16823pub const PER_OSF4: _bindgen_ty_93 = 15;
16824pub const PER_HPUX: _bindgen_ty_93 = 16;
16825pub const PER_MASK: _bindgen_ty_93 = 255;
16826pub type _bindgen_ty_93 = crate::types::c_uint;
16827#[repr(C, packed)]
16828#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16829pub struct sadb_msg {
16830    pub sadb_msg_version: __u8,
16831    pub sadb_msg_type: __u8,
16832    pub sadb_msg_errno: __u8,
16833    pub sadb_msg_satype: __u8,
16834    pub sadb_msg_len: __u16,
16835    pub sadb_msg_reserved: __u16,
16836    pub sadb_msg_seq: __u32,
16837    pub sadb_msg_pid: __u32,
16838}
16839#[repr(C, packed)]
16840#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16841pub struct sadb_ext {
16842    pub sadb_ext_len: __u16,
16843    pub sadb_ext_type: __u16,
16844}
16845#[repr(C, packed)]
16846#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16847pub struct sadb_sa {
16848    pub sadb_sa_len: __u16,
16849    pub sadb_sa_exttype: __u16,
16850    pub sadb_sa_spi: __be32,
16851    pub sadb_sa_replay: __u8,
16852    pub sadb_sa_state: __u8,
16853    pub sadb_sa_auth: __u8,
16854    pub sadb_sa_encrypt: __u8,
16855    pub sadb_sa_flags: __u32,
16856}
16857#[repr(C, packed)]
16858#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16859pub struct sadb_lifetime {
16860    pub sadb_lifetime_len: __u16,
16861    pub sadb_lifetime_exttype: __u16,
16862    pub sadb_lifetime_allocations: __u32,
16863    pub sadb_lifetime_bytes: __u64,
16864    pub sadb_lifetime_addtime: __u64,
16865    pub sadb_lifetime_usetime: __u64,
16866}
16867#[repr(C, packed)]
16868#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16869pub struct sadb_address {
16870    pub sadb_address_len: __u16,
16871    pub sadb_address_exttype: __u16,
16872    pub sadb_address_proto: __u8,
16873    pub sadb_address_prefixlen: __u8,
16874    pub sadb_address_reserved: __u16,
16875}
16876#[repr(C, packed)]
16877#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16878pub struct sadb_key {
16879    pub sadb_key_len: __u16,
16880    pub sadb_key_exttype: __u16,
16881    pub sadb_key_bits: __u16,
16882    pub sadb_key_reserved: __u16,
16883}
16884#[repr(C, packed)]
16885#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16886pub struct sadb_ident {
16887    pub sadb_ident_len: __u16,
16888    pub sadb_ident_exttype: __u16,
16889    pub sadb_ident_type: __u16,
16890    pub sadb_ident_reserved: __u16,
16891    pub sadb_ident_id: __u64,
16892}
16893#[repr(C, packed)]
16894#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16895pub struct sadb_sens {
16896    pub sadb_sens_len: __u16,
16897    pub sadb_sens_exttype: __u16,
16898    pub sadb_sens_dpd: __u32,
16899    pub sadb_sens_sens_level: __u8,
16900    pub sadb_sens_sens_len: __u8,
16901    pub sadb_sens_integ_level: __u8,
16902    pub sadb_sens_integ_len: __u8,
16903    pub sadb_sens_reserved: __u32,
16904}
16905#[repr(C, packed)]
16906#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16907pub struct sadb_prop {
16908    pub sadb_prop_len: __u16,
16909    pub sadb_prop_exttype: __u16,
16910    pub sadb_prop_replay: __u8,
16911    pub sadb_prop_reserved: [__u8; 3usize],
16912}
16913#[repr(C, packed)]
16914#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16915pub struct sadb_comb {
16916    pub sadb_comb_auth: __u8,
16917    pub sadb_comb_encrypt: __u8,
16918    pub sadb_comb_flags: __u16,
16919    pub sadb_comb_auth_minbits: __u16,
16920    pub sadb_comb_auth_maxbits: __u16,
16921    pub sadb_comb_encrypt_minbits: __u16,
16922    pub sadb_comb_encrypt_maxbits: __u16,
16923    pub sadb_comb_reserved: __u32,
16924    pub sadb_comb_soft_allocations: __u32,
16925    pub sadb_comb_hard_allocations: __u32,
16926    pub sadb_comb_soft_bytes: __u64,
16927    pub sadb_comb_hard_bytes: __u64,
16928    pub sadb_comb_soft_addtime: __u64,
16929    pub sadb_comb_hard_addtime: __u64,
16930    pub sadb_comb_soft_usetime: __u64,
16931    pub sadb_comb_hard_usetime: __u64,
16932}
16933#[repr(C, packed)]
16934#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16935pub struct sadb_supported {
16936    pub sadb_supported_len: __u16,
16937    pub sadb_supported_exttype: __u16,
16938    pub sadb_supported_reserved: __u32,
16939}
16940#[repr(C, packed)]
16941#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16942pub struct sadb_alg {
16943    pub sadb_alg_id: __u8,
16944    pub sadb_alg_ivlen: __u8,
16945    pub sadb_alg_minbits: __u16,
16946    pub sadb_alg_maxbits: __u16,
16947    pub sadb_alg_reserved: __u16,
16948}
16949#[repr(C, packed)]
16950#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16951pub struct sadb_spirange {
16952    pub sadb_spirange_len: __u16,
16953    pub sadb_spirange_exttype: __u16,
16954    pub sadb_spirange_min: __u32,
16955    pub sadb_spirange_max: __u32,
16956    pub sadb_spirange_reserved: __u32,
16957}
16958#[repr(C, packed)]
16959#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16960pub struct sadb_x_kmprivate {
16961    pub sadb_x_kmprivate_len: __u16,
16962    pub sadb_x_kmprivate_exttype: __u16,
16963    pub sadb_x_kmprivate_reserved: __u32,
16964}
16965#[repr(C, packed)]
16966#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16967pub struct sadb_x_sa2 {
16968    pub sadb_x_sa2_len: __u16,
16969    pub sadb_x_sa2_exttype: __u16,
16970    pub sadb_x_sa2_mode: __u8,
16971    pub sadb_x_sa2_reserved1: __u8,
16972    pub sadb_x_sa2_reserved2: __u16,
16973    pub sadb_x_sa2_sequence: __u32,
16974    pub sadb_x_sa2_reqid: __u32,
16975}
16976#[repr(C, packed)]
16977#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16978pub struct sadb_x_policy {
16979    pub sadb_x_policy_len: __u16,
16980    pub sadb_x_policy_exttype: __u16,
16981    pub sadb_x_policy_type: __u16,
16982    pub sadb_x_policy_dir: __u8,
16983    pub sadb_x_policy_reserved: __u8,
16984    pub sadb_x_policy_id: __u32,
16985    pub sadb_x_policy_priority: __u32,
16986}
16987#[repr(C, packed)]
16988#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16989pub struct sadb_x_ipsecrequest {
16990    pub sadb_x_ipsecrequest_len: __u16,
16991    pub sadb_x_ipsecrequest_proto: __u16,
16992    pub sadb_x_ipsecrequest_mode: __u8,
16993    pub sadb_x_ipsecrequest_level: __u8,
16994    pub sadb_x_ipsecrequest_reserved1: __u16,
16995    pub sadb_x_ipsecrequest_reqid: __u32,
16996    pub sadb_x_ipsecrequest_reserved2: __u32,
16997}
16998#[repr(C, packed)]
16999#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17000pub struct sadb_x_nat_t_type {
17001    pub sadb_x_nat_t_type_len: __u16,
17002    pub sadb_x_nat_t_type_exttype: __u16,
17003    pub sadb_x_nat_t_type_type: __u8,
17004    pub sadb_x_nat_t_type_reserved: [__u8; 3usize],
17005}
17006#[repr(C, packed)]
17007#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17008pub struct sadb_x_nat_t_port {
17009    pub sadb_x_nat_t_port_len: __u16,
17010    pub sadb_x_nat_t_port_exttype: __u16,
17011    pub sadb_x_nat_t_port_port: __be16,
17012    pub sadb_x_nat_t_port_reserved: __u16,
17013}
17014#[repr(C, packed)]
17015#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17016pub struct sadb_x_sec_ctx {
17017    pub sadb_x_sec_len: __u16,
17018    pub sadb_x_sec_exttype: __u16,
17019    pub sadb_x_ctx_alg: __u8,
17020    pub sadb_x_ctx_doi: __u8,
17021    pub sadb_x_ctx_len: __u16,
17022}
17023#[repr(C, packed)]
17024#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17025pub struct sadb_x_kmaddress {
17026    pub sadb_x_kmaddress_len: __u16,
17027    pub sadb_x_kmaddress_exttype: __u16,
17028    pub sadb_x_kmaddress_reserved: __u32,
17029}
17030#[repr(C, packed)]
17031#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17032pub struct sadb_x_filter {
17033    pub sadb_x_filter_len: __u16,
17034    pub sadb_x_filter_exttype: __u16,
17035    pub sadb_x_filter_saddr: [__u32; 4usize],
17036    pub sadb_x_filter_daddr: [__u32; 4usize],
17037    pub sadb_x_filter_family: __u16,
17038    pub sadb_x_filter_splen: __u8,
17039    pub sadb_x_filter_dplen: __u8,
17040}
17041#[repr(C)]
17042#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17043pub struct prctl_mm_map {
17044    pub start_code: __u64,
17045    pub end_code: __u64,
17046    pub start_data: __u64,
17047    pub end_data: __u64,
17048    pub start_brk: __u64,
17049    pub brk: __u64,
17050    pub start_stack: __u64,
17051    pub arg_start: __u64,
17052    pub arg_end: __u64,
17053    pub env_start: __u64,
17054    pub env_end: __u64,
17055    pub auxv: uref<__u64>,
17056    pub auxv_size: __u32,
17057    pub exe_fd: __u32,
17058}
17059impl Default for prctl_mm_map {
17060    fn default() -> Self {
17061        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17062        unsafe {
17063            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17064            s.assume_init()
17065        }
17066    }
17067}
17068#[repr(C)]
17069#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17070pub struct ptrace_peeksiginfo_args {
17071    pub off: __u64,
17072    pub flags: __u32,
17073    pub nr: __s32,
17074}
17075#[repr(C)]
17076#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17077pub struct seccomp_metadata {
17078    pub filter_off: __u64,
17079    pub flags: __u64,
17080}
17081#[repr(C)]
17082#[derive(Copy, Clone)]
17083pub struct ptrace_syscall_info {
17084    pub op: __u8,
17085    pub pad: [__u8; 3usize],
17086    pub arch: __u32,
17087    pub instruction_pointer: __u64,
17088    pub stack_pointer: __u64,
17089    pub __bindgen_anon_1: ptrace_syscall_info__bindgen_ty_1,
17090}
17091#[repr(C)]
17092#[derive(Copy, Clone)]
17093pub union ptrace_syscall_info__bindgen_ty_1 {
17094    pub entry: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1,
17095    pub exit: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2,
17096    pub seccomp: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3,
17097}
17098#[repr(C)]
17099#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17100pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1 {
17101    pub nr: __u64,
17102    pub args: [__u64; 6usize],
17103}
17104#[repr(C)]
17105#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17106pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2 {
17107    pub rval: __s64,
17108    pub is_error: __u8,
17109    pub __bindgen_padding_0: [u8; 7usize],
17110}
17111#[repr(C)]
17112#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17113pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3 {
17114    pub nr: __u64,
17115    pub args: [__u64; 6usize],
17116    pub ret_data: __u32,
17117    pub __bindgen_padding_0: [u8; 4usize],
17118}
17119impl Default for ptrace_syscall_info__bindgen_ty_1 {
17120    fn default() -> Self {
17121        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17122        unsafe {
17123            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17124            s.assume_init()
17125        }
17126    }
17127}
17128impl Default for ptrace_syscall_info {
17129    fn default() -> Self {
17130        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17131        unsafe {
17132            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17133            s.assume_init()
17134        }
17135    }
17136}
17137#[repr(C)]
17138#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17139pub struct ptrace_rseq_configuration {
17140    pub rseq_abi_pointer: __u64,
17141    pub rseq_abi_size: __u32,
17142    pub signature: __u32,
17143    pub flags: __u32,
17144    pub pad: __u32,
17145}
17146#[repr(C)]
17147#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17148pub struct ptrace_sud_config {
17149    pub mode: __u64,
17150    pub selector: __u64,
17151    pub offset: __u64,
17152    pub len: __u64,
17153}
17154#[repr(C)]
17155#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17156pub struct pt_regs {
17157    pub r15: crate::types::c_ulong,
17158    pub r14: crate::types::c_ulong,
17159    pub r13: crate::types::c_ulong,
17160    pub r12: crate::types::c_ulong,
17161    pub rbp: crate::types::c_ulong,
17162    pub rbx: crate::types::c_ulong,
17163    pub r11: crate::types::c_ulong,
17164    pub r10: crate::types::c_ulong,
17165    pub r9: crate::types::c_ulong,
17166    pub r8: crate::types::c_ulong,
17167    pub rax: crate::types::c_ulong,
17168    pub rcx: crate::types::c_ulong,
17169    pub rdx: crate::types::c_ulong,
17170    pub rsi: crate::types::c_ulong,
17171    pub rdi: crate::types::c_ulong,
17172    pub orig_rax: crate::types::c_ulong,
17173    pub rip: crate::types::c_ulong,
17174    pub cs: crate::types::c_ulong,
17175    pub eflags: crate::types::c_ulong,
17176    pub rsp: crate::types::c_ulong,
17177    pub ss: crate::types::c_ulong,
17178}
17179#[repr(C)]
17180#[derive(Debug, Default)]
17181pub struct rand_pool_info {
17182    pub entropy_count: crate::types::c_int,
17183    pub buf_size: crate::types::c_int,
17184    pub buf: __IncompleteArrayField<__u32>,
17185}
17186#[repr(C)]
17187#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17188pub struct vgetrandom_opaque_params {
17189    pub size_of_opaque_state: __u32,
17190    pub mmap_prot: __u32,
17191    pub mmap_flags: __u32,
17192    pub reserved: [__u32; 13usize],
17193}
17194#[repr(C)]
17195#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17196pub struct rusage {
17197    pub ru_utime: timeval,
17198    pub ru_stime: timeval,
17199    pub ru_maxrss: __kernel_long_t,
17200    pub ru_ixrss: __kernel_long_t,
17201    pub ru_idrss: __kernel_long_t,
17202    pub ru_isrss: __kernel_long_t,
17203    pub ru_minflt: __kernel_long_t,
17204    pub ru_majflt: __kernel_long_t,
17205    pub ru_nswap: __kernel_long_t,
17206    pub ru_inblock: __kernel_long_t,
17207    pub ru_oublock: __kernel_long_t,
17208    pub ru_msgsnd: __kernel_long_t,
17209    pub ru_msgrcv: __kernel_long_t,
17210    pub ru_nsignals: __kernel_long_t,
17211    pub ru_nvcsw: __kernel_long_t,
17212    pub ru_nivcsw: __kernel_long_t,
17213}
17214#[repr(C)]
17215#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17216pub struct rlimit {
17217    pub rlim_cur: __kernel_ulong_t,
17218    pub rlim_max: __kernel_ulong_t,
17219}
17220#[repr(C)]
17221#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17222pub struct rlimit64 {
17223    pub rlim_cur: __u64,
17224    pub rlim_max: __u64,
17225}
17226#[repr(C)]
17227#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17228pub struct rtc_time {
17229    pub tm_sec: crate::types::c_int,
17230    pub tm_min: crate::types::c_int,
17231    pub tm_hour: crate::types::c_int,
17232    pub tm_mday: crate::types::c_int,
17233    pub tm_mon: crate::types::c_int,
17234    pub tm_year: crate::types::c_int,
17235    pub tm_wday: crate::types::c_int,
17236    pub tm_yday: crate::types::c_int,
17237    pub tm_isdst: crate::types::c_int,
17238}
17239#[repr(C)]
17240#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17241pub struct rtc_wkalrm {
17242    pub enabled: crate::types::c_uchar,
17243    pub pending: crate::types::c_uchar,
17244    pub __bindgen_padding_0: [u8; 2usize],
17245    pub time: rtc_time,
17246}
17247#[repr(C)]
17248#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17249pub struct rtc_pll_info {
17250    pub pll_ctrl: crate::types::c_int,
17251    pub pll_value: crate::types::c_int,
17252    pub pll_max: crate::types::c_int,
17253    pub pll_min: crate::types::c_int,
17254    pub pll_posmult: crate::types::c_int,
17255    pub pll_negmult: crate::types::c_int,
17256    pub pll_clock: crate::types::c_long,
17257}
17258#[repr(C)]
17259#[derive(Copy, Clone)]
17260pub struct rtc_param {
17261    pub param: __u64,
17262    pub __bindgen_anon_1: rtc_param__bindgen_ty_1,
17263    pub index: __u32,
17264    pub __pad: __u32,
17265}
17266#[repr(C)]
17267#[derive(Copy, Clone)]
17268pub union rtc_param__bindgen_ty_1 {
17269    pub uvalue: __u64,
17270    pub svalue: __s64,
17271    pub ptr: __u64,
17272}
17273impl Default for rtc_param__bindgen_ty_1 {
17274    fn default() -> Self {
17275        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17276        unsafe {
17277            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17278            s.assume_init()
17279        }
17280    }
17281}
17282impl Default for rtc_param {
17283    fn default() -> Self {
17284        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17285        unsafe {
17286            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17287            s.assume_init()
17288        }
17289    }
17290}
17291#[repr(C)]
17292#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17293pub struct clone_args {
17294    pub flags: __u64,
17295    pub pidfd: __u64,
17296    pub child_tid: __u64,
17297    pub parent_tid: __u64,
17298    pub exit_signal: __u64,
17299    pub stack: __u64,
17300    pub stack_size: __u64,
17301    pub tls: __u64,
17302    pub set_tid: __u64,
17303    pub set_tid_size: __u64,
17304    pub cgroup: __u64,
17305}
17306#[repr(C)]
17307#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17308pub struct sched_attr {
17309    pub size: __u32,
17310    pub sched_policy: __u32,
17311    pub sched_flags: __u64,
17312    pub sched_nice: __s32,
17313    pub sched_priority: __u32,
17314    pub sched_runtime: __u64,
17315    pub sched_deadline: __u64,
17316    pub sched_period: __u64,
17317    pub sched_util_min: __u32,
17318    pub sched_util_max: __u32,
17319}
17320#[repr(C)]
17321#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17322pub struct seccomp_data {
17323    pub nr: crate::types::c_int,
17324    pub arch: __u32,
17325    pub instruction_pointer: __u64,
17326    pub args: [__u64; 6usize],
17327}
17328#[repr(C)]
17329#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17330pub struct seccomp_notif_sizes {
17331    pub seccomp_notif: __u16,
17332    pub seccomp_notif_resp: __u16,
17333    pub seccomp_data: __u16,
17334}
17335#[repr(C)]
17336#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17337pub struct seccomp_notif {
17338    pub id: __u64,
17339    pub pid: __u32,
17340    pub flags: __u32,
17341    pub data: seccomp_data,
17342}
17343#[repr(C)]
17344#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17345pub struct seccomp_notif_resp {
17346    pub id: __u64,
17347    pub val: __s64,
17348    pub error: __s32,
17349    pub flags: __u32,
17350}
17351#[repr(C)]
17352#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17353pub struct seccomp_notif_addfd {
17354    pub id: __u64,
17355    pub flags: __u32,
17356    pub srcfd: __u32,
17357    pub newfd: __u32,
17358    pub newfd_flags: __u32,
17359}
17360#[repr(C)]
17361#[repr(align(8))]
17362#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
17363pub union sigval {
17364    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 8usize]>,
17365}
17366impl Default for sigval {
17367    fn default() -> Self {
17368        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17369        unsafe {
17370            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17371            s.assume_init()
17372        }
17373    }
17374}
17375pub type sigval_t = sigval;
17376#[repr(C)]
17377#[derive(Copy, Clone)]
17378pub union __sifields {
17379    pub _kill: __sifields__bindgen_ty_1,
17380    pub _timer: __sifields__bindgen_ty_2,
17381    pub _rt: __sifields__bindgen_ty_3,
17382    pub _sigchld: __sifields__bindgen_ty_4,
17383    pub _sigfault: __sifields__bindgen_ty_5,
17384    pub _sigpoll: __sifields__bindgen_ty_6,
17385    pub _sigsys: __sifields__bindgen_ty_7,
17386}
17387#[repr(C)]
17388#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17389pub struct __sifields__bindgen_ty_1 {
17390    pub _pid: __kernel_pid_t,
17391    pub _uid: __kernel_uid32_t,
17392}
17393#[repr(C)]
17394#[derive(Clone, Copy, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
17395pub struct __sifields__bindgen_ty_2 {
17396    pub _tid: __kernel_timer_t,
17397    pub _overrun: crate::types::c_int,
17398    pub _sigval: sigval_t,
17399    pub _sys_private: crate::types::c_int,
17400    pub __bindgen_padding_0: [u8; 4usize],
17401}
17402#[repr(C)]
17403#[derive(Clone, Copy, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
17404pub struct __sifields__bindgen_ty_3 {
17405    pub _pid: __kernel_pid_t,
17406    pub _uid: __kernel_uid32_t,
17407    pub _sigval: sigval_t,
17408}
17409#[repr(C)]
17410#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17411pub struct __sifields__bindgen_ty_4 {
17412    pub _pid: __kernel_pid_t,
17413    pub _uid: __kernel_uid32_t,
17414    pub _status: crate::types::c_int,
17415    pub __bindgen_padding_0: [u8; 4usize],
17416    pub _utime: __kernel_clock_t,
17417    pub _stime: __kernel_clock_t,
17418}
17419#[repr(C)]
17420#[derive(Copy, Clone)]
17421pub struct __sifields__bindgen_ty_5 {
17422    pub _addr: uaddr,
17423    pub __bindgen_anon_1: __sifields__bindgen_ty_5__bindgen_ty_1,
17424}
17425#[repr(C)]
17426#[derive(Copy, Clone)]
17427pub union __sifields__bindgen_ty_5__bindgen_ty_1 {
17428    pub _trapno: crate::types::c_int,
17429    pub _addr_lsb: crate::types::c_short,
17430    pub _addr_bnd: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
17431    pub _addr_pkey: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2,
17432    pub _perf: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3,
17433}
17434#[repr(C)]
17435#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17436pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
17437    pub _dummy_bnd: [crate::types::c_char; 8usize],
17438    pub _lower: uaddr,
17439    pub _upper: uaddr,
17440}
17441impl Default for __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
17442    fn default() -> Self {
17443        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17444        unsafe {
17445            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17446            s.assume_init()
17447        }
17448    }
17449}
17450#[repr(C)]
17451#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17452pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 {
17453    pub _dummy_pkey: [crate::types::c_char; 8usize],
17454    pub _pkey: __u32,
17455}
17456#[repr(C)]
17457#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17458pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 {
17459    pub _data: crate::types::c_ulong,
17460    pub _type: __u32,
17461    pub _flags: __u32,
17462}
17463impl Default for __sifields__bindgen_ty_5__bindgen_ty_1 {
17464    fn default() -> Self {
17465        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17466        unsafe {
17467            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17468            s.assume_init()
17469        }
17470    }
17471}
17472impl Default for __sifields__bindgen_ty_5 {
17473    fn default() -> Self {
17474        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17475        unsafe {
17476            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17477            s.assume_init()
17478        }
17479    }
17480}
17481#[repr(C)]
17482#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17483pub struct __sifields__bindgen_ty_6 {
17484    pub _band: crate::types::c_long,
17485    pub _fd: crate::types::c_int,
17486    pub __bindgen_padding_0: [u8; 4usize],
17487}
17488#[repr(C)]
17489#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
17490pub struct __sifields__bindgen_ty_7 {
17491    pub _call_addr: uaddr,
17492    pub _syscall: crate::types::c_int,
17493    pub _arch: crate::types::c_uint,
17494}
17495impl Default for __sifields__bindgen_ty_7 {
17496    fn default() -> Self {
17497        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17498        unsafe {
17499            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17500            s.assume_init()
17501        }
17502    }
17503}
17504impl Default for __sifields {
17505    fn default() -> Self {
17506        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17507        unsafe {
17508            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17509            s.assume_init()
17510        }
17511    }
17512}
17513#[repr(C)]
17514#[derive(Copy, Clone)]
17515pub struct siginfo {
17516    pub __bindgen_anon_1: siginfo__bindgen_ty_1,
17517}
17518#[repr(C)]
17519#[derive(Copy, Clone)]
17520pub union siginfo__bindgen_ty_1 {
17521    pub __bindgen_anon_1: siginfo__bindgen_ty_1__bindgen_ty_1,
17522    pub _si_pad: [crate::types::c_int; 32usize],
17523}
17524#[repr(C)]
17525#[derive(Copy, Clone)]
17526pub struct siginfo__bindgen_ty_1__bindgen_ty_1 {
17527    pub si_signo: crate::types::c_int,
17528    pub si_errno: crate::types::c_int,
17529    pub si_code: crate::types::c_int,
17530    pub __bindgen_padding_0: [u8; 4usize],
17531    pub _sifields: __sifields,
17532}
17533impl Default for siginfo__bindgen_ty_1__bindgen_ty_1 {
17534    fn default() -> Self {
17535        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17536        unsafe {
17537            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17538            s.assume_init()
17539        }
17540    }
17541}
17542impl Default for siginfo__bindgen_ty_1 {
17543    fn default() -> Self {
17544        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17545        unsafe {
17546            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17547            s.assume_init()
17548        }
17549    }
17550}
17551impl Default for siginfo {
17552    fn default() -> Self {
17553        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17554        unsafe {
17555            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17556            s.assume_init()
17557        }
17558    }
17559}
17560pub type siginfo_t = siginfo;
17561#[repr(C)]
17562#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
17563pub struct sigevent {
17564    pub sigev_value: sigval_t,
17565    pub sigev_signo: crate::types::c_int,
17566    pub sigev_notify: crate::types::c_int,
17567    pub _sigev_un: sigevent__bindgen_ty_1,
17568}
17569#[repr(C)]
17570#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
17571pub union sigevent__bindgen_ty_1 {
17572    pub _pad: [crate::types::c_int; 12usize],
17573    pub _tid: crate::types::c_int,
17574    pub _sigev_thread: sigevent__bindgen_ty_1__bindgen_ty_1,
17575}
17576#[repr(C)]
17577#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
17578pub struct sigevent__bindgen_ty_1__bindgen_ty_1 {
17579    pub _function: uaddr,
17580    pub _attribute: uaddr,
17581}
17582impl Default for sigevent__bindgen_ty_1__bindgen_ty_1 {
17583    fn default() -> Self {
17584        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17585        unsafe {
17586            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17587            s.assume_init()
17588        }
17589    }
17590}
17591impl Default for sigevent__bindgen_ty_1 {
17592    fn default() -> Self {
17593        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17594        unsafe {
17595            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17596            s.assume_init()
17597        }
17598    }
17599}
17600impl Default for sigevent {
17601    fn default() -> Self {
17602        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17603        unsafe {
17604            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17605            s.assume_init()
17606        }
17607    }
17608}
17609pub type sigevent_t = sigevent;
17610#[repr(C)]
17611#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17612pub struct signalfd_siginfo {
17613    pub ssi_signo: __u32,
17614    pub ssi_errno: __s32,
17615    pub ssi_code: __s32,
17616    pub ssi_pid: __u32,
17617    pub ssi_uid: __u32,
17618    pub ssi_fd: __s32,
17619    pub ssi_tid: __u32,
17620    pub ssi_band: __u32,
17621    pub ssi_overrun: __u32,
17622    pub ssi_trapno: __u32,
17623    pub ssi_status: __s32,
17624    pub ssi_int: __s32,
17625    pub ssi_ptr: __u64,
17626    pub ssi_utime: __u64,
17627    pub ssi_stime: __u64,
17628    pub ssi_addr: __u64,
17629    pub ssi_addr_lsb: __u16,
17630    pub __pad2: __u16,
17631    pub ssi_syscall: __s32,
17632    pub ssi_call_addr: __u64,
17633    pub ssi_arch: __u32,
17634    pub __pad: [__u8; 28usize],
17635}
17636#[repr(C)]
17637#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17638pub struct sock_diag_req {
17639    pub sdiag_family: __u8,
17640    pub sdiag_protocol: __u8,
17641}
17642pub const SK_MEMINFO_RMEM_ALLOC: _bindgen_ty_94 = 0;
17643pub const SK_MEMINFO_RCVBUF: _bindgen_ty_94 = 1;
17644pub const SK_MEMINFO_WMEM_ALLOC: _bindgen_ty_94 = 2;
17645pub const SK_MEMINFO_SNDBUF: _bindgen_ty_94 = 3;
17646pub const SK_MEMINFO_FWD_ALLOC: _bindgen_ty_94 = 4;
17647pub const SK_MEMINFO_WMEM_QUEUED: _bindgen_ty_94 = 5;
17648pub const SK_MEMINFO_OPTMEM: _bindgen_ty_94 = 6;
17649pub const SK_MEMINFO_BACKLOG: _bindgen_ty_94 = 7;
17650pub const SK_MEMINFO_DROPS: _bindgen_ty_94 = 8;
17651pub const SK_MEMINFO_VARS: _bindgen_ty_94 = 9;
17652pub type _bindgen_ty_94 = crate::types::c_uint;
17653pub const sknetlink_groups_SKNLGRP_NONE: sknetlink_groups = 0;
17654pub const sknetlink_groups_SKNLGRP_INET_TCP_DESTROY: sknetlink_groups = 1;
17655pub const sknetlink_groups_SKNLGRP_INET_UDP_DESTROY: sknetlink_groups = 2;
17656pub const sknetlink_groups_SKNLGRP_INET6_TCP_DESTROY: sknetlink_groups = 3;
17657pub const sknetlink_groups_SKNLGRP_INET6_UDP_DESTROY: sknetlink_groups = 4;
17658pub const sknetlink_groups___SKNLGRP_MAX: sknetlink_groups = 5;
17659pub type sknetlink_groups = crate::types::c_uint;
17660pub const SK_DIAG_BPF_STORAGE_REQ_NONE: _bindgen_ty_95 = 0;
17661pub const SK_DIAG_BPF_STORAGE_REQ_MAP_FD: _bindgen_ty_95 = 1;
17662pub const __SK_DIAG_BPF_STORAGE_REQ_MAX: _bindgen_ty_95 = 2;
17663pub type _bindgen_ty_95 = crate::types::c_uint;
17664pub const SK_DIAG_BPF_STORAGE_REP_NONE: _bindgen_ty_96 = 0;
17665pub const SK_DIAG_BPF_STORAGE: _bindgen_ty_96 = 1;
17666pub const __SK_DIAG_BPF_STORAGE_REP_MAX: _bindgen_ty_96 = 2;
17667pub type _bindgen_ty_96 = crate::types::c_uint;
17668pub const SK_DIAG_BPF_STORAGE_NONE: _bindgen_ty_97 = 0;
17669pub const SK_DIAG_BPF_STORAGE_PAD: _bindgen_ty_97 = 1;
17670pub const SK_DIAG_BPF_STORAGE_MAP_ID: _bindgen_ty_97 = 2;
17671pub const SK_DIAG_BPF_STORAGE_MAP_VALUE: _bindgen_ty_97 = 3;
17672pub const __SK_DIAG_BPF_STORAGE_MAX: _bindgen_ty_97 = 4;
17673pub type _bindgen_ty_97 = crate::types::c_uint;
17674#[repr(C)]
17675#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17676pub struct statx_timestamp {
17677    pub tv_sec: __s64,
17678    pub tv_nsec: __u32,
17679    pub __reserved: __s32,
17680}
17681#[repr(C)]
17682#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17683pub struct statx {
17684    pub stx_mask: __u32,
17685    pub stx_blksize: __u32,
17686    pub stx_attributes: __u64,
17687    pub stx_nlink: __u32,
17688    pub stx_uid: __u32,
17689    pub stx_gid: __u32,
17690    pub stx_mode: __u16,
17691    pub __spare0: [__u16; 1usize],
17692    pub stx_ino: __u64,
17693    pub stx_size: __u64,
17694    pub stx_blocks: __u64,
17695    pub stx_attributes_mask: __u64,
17696    pub stx_atime: statx_timestamp,
17697    pub stx_btime: statx_timestamp,
17698    pub stx_ctime: statx_timestamp,
17699    pub stx_mtime: statx_timestamp,
17700    pub stx_rdev_major: __u32,
17701    pub stx_rdev_minor: __u32,
17702    pub stx_dev_major: __u32,
17703    pub stx_dev_minor: __u32,
17704    pub stx_mnt_id: __u64,
17705    pub stx_dio_mem_align: __u32,
17706    pub stx_dio_offset_align: __u32,
17707    pub stx_subvol: __u64,
17708    pub stx_atomic_write_unit_min: __u32,
17709    pub stx_atomic_write_unit_max: __u32,
17710    pub stx_atomic_write_segments_max: __u32,
17711    pub __spare1: [__u32; 1usize],
17712    pub __spare3: [__u64; 9usize],
17713}
17714#[repr(C)]
17715#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17716pub struct sync_merge_data {
17717    pub name: [crate::types::c_char; 32usize],
17718    pub fd2: __s32,
17719    pub fence: __s32,
17720    pub flags: __u32,
17721    pub pad: __u32,
17722}
17723#[repr(C)]
17724#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17725pub struct sync_fence_info {
17726    pub obj_name: [crate::types::c_char; 32usize],
17727    pub driver_name: [crate::types::c_char; 32usize],
17728    pub status: __s32,
17729    pub flags: __u32,
17730    pub timestamp_ns: __u64,
17731}
17732#[repr(C)]
17733#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17734pub struct sync_file_info {
17735    pub name: [crate::types::c_char; 32usize],
17736    pub status: __s32,
17737    pub flags: __u32,
17738    pub num_fences: __u32,
17739    pub pad: __u32,
17740    pub sync_fence_info: __u64,
17741}
17742#[repr(C)]
17743#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17744pub struct sync_set_deadline {
17745    pub deadline_ns: __u64,
17746    pub pad: __u64,
17747}
17748#[repr(C)]
17749#[derive(Debug, Default, Immutable, IntoBytes, KnownLayout)]
17750pub struct sysinfo {
17751    pub uptime: __kernel_long_t,
17752    pub loads: [__kernel_ulong_t; 3usize],
17753    pub totalram: __kernel_ulong_t,
17754    pub freeram: __kernel_ulong_t,
17755    pub sharedram: __kernel_ulong_t,
17756    pub bufferram: __kernel_ulong_t,
17757    pub totalswap: __kernel_ulong_t,
17758    pub freeswap: __kernel_ulong_t,
17759    pub procs: __u16,
17760    pub pad: __u16,
17761    pub __bindgen_padding_0: [u8; 4usize],
17762    pub totalhigh: __kernel_ulong_t,
17763    pub freehigh: __kernel_ulong_t,
17764    pub mem_unit: __u32,
17765    pub _f: __IncompleteArrayField<crate::types::c_char>,
17766    pub __bindgen_padding_1: [u8; 4usize],
17767}
17768#[repr(C)]
17769#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17770pub struct taskstats {
17771    pub version: __u16,
17772    pub __bindgen_padding_0: [u8; 2usize],
17773    pub ac_exitcode: __u32,
17774    pub ac_flag: __u8,
17775    pub ac_nice: __u8,
17776    pub __bindgen_padding_1: [u8; 6usize],
17777    pub cpu_count: __u64,
17778    pub cpu_delay_total: __u64,
17779    pub blkio_count: __u64,
17780    pub blkio_delay_total: __u64,
17781    pub swapin_count: __u64,
17782    pub swapin_delay_total: __u64,
17783    pub cpu_run_real_total: __u64,
17784    pub cpu_run_virtual_total: __u64,
17785    pub ac_comm: [crate::types::c_char; 32usize],
17786    pub ac_sched: __u8,
17787    pub ac_pad: [__u8; 3usize],
17788    pub __bindgen_padding_2: [u8; 4usize],
17789    pub ac_uid: __u32,
17790    pub ac_gid: __u32,
17791    pub ac_pid: __u32,
17792    pub ac_ppid: __u32,
17793    pub ac_btime: __u32,
17794    pub __bindgen_padding_3: [u8; 4usize],
17795    pub ac_etime: __u64,
17796    pub ac_utime: __u64,
17797    pub ac_stime: __u64,
17798    pub ac_minflt: __u64,
17799    pub ac_majflt: __u64,
17800    pub coremem: __u64,
17801    pub virtmem: __u64,
17802    pub hiwater_rss: __u64,
17803    pub hiwater_vm: __u64,
17804    pub read_char: __u64,
17805    pub write_char: __u64,
17806    pub read_syscalls: __u64,
17807    pub write_syscalls: __u64,
17808    pub read_bytes: __u64,
17809    pub write_bytes: __u64,
17810    pub cancelled_write_bytes: __u64,
17811    pub nvcsw: __u64,
17812    pub nivcsw: __u64,
17813    pub ac_utimescaled: __u64,
17814    pub ac_stimescaled: __u64,
17815    pub cpu_scaled_run_real_total: __u64,
17816    pub freepages_count: __u64,
17817    pub freepages_delay_total: __u64,
17818    pub thrashing_count: __u64,
17819    pub thrashing_delay_total: __u64,
17820    pub ac_btime64: __u64,
17821    pub compact_count: __u64,
17822    pub compact_delay_total: __u64,
17823    pub ac_tgid: __u32,
17824    pub __bindgen_padding_4: [u8; 4usize],
17825    pub ac_tgetime: __u64,
17826    pub ac_exe_dev: __u64,
17827    pub ac_exe_inode: __u64,
17828    pub wpcopy_count: __u64,
17829    pub wpcopy_delay_total: __u64,
17830    pub irq_count: __u64,
17831    pub irq_delay_total: __u64,
17832}
17833pub const TASKSTATS_CMD_UNSPEC: _bindgen_ty_98 = 0;
17834pub const TASKSTATS_CMD_GET: _bindgen_ty_98 = 1;
17835pub const TASKSTATS_CMD_NEW: _bindgen_ty_98 = 2;
17836pub const __TASKSTATS_CMD_MAX: _bindgen_ty_98 = 3;
17837pub type _bindgen_ty_98 = crate::types::c_uint;
17838pub const TASKSTATS_TYPE_UNSPEC: _bindgen_ty_99 = 0;
17839pub const TASKSTATS_TYPE_PID: _bindgen_ty_99 = 1;
17840pub const TASKSTATS_TYPE_TGID: _bindgen_ty_99 = 2;
17841pub const TASKSTATS_TYPE_STATS: _bindgen_ty_99 = 3;
17842pub const TASKSTATS_TYPE_AGGR_PID: _bindgen_ty_99 = 4;
17843pub const TASKSTATS_TYPE_AGGR_TGID: _bindgen_ty_99 = 5;
17844pub const TASKSTATS_TYPE_NULL: _bindgen_ty_99 = 6;
17845pub const __TASKSTATS_TYPE_MAX: _bindgen_ty_99 = 7;
17846pub type _bindgen_ty_99 = crate::types::c_uint;
17847pub const TASKSTATS_CMD_ATTR_UNSPEC: _bindgen_ty_100 = 0;
17848pub const TASKSTATS_CMD_ATTR_PID: _bindgen_ty_100 = 1;
17849pub const TASKSTATS_CMD_ATTR_TGID: _bindgen_ty_100 = 2;
17850pub const TASKSTATS_CMD_ATTR_REGISTER_CPUMASK: _bindgen_ty_100 = 3;
17851pub const TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK: _bindgen_ty_100 = 4;
17852pub const __TASKSTATS_CMD_ATTR_MAX: _bindgen_ty_100 = 5;
17853pub type _bindgen_ty_100 = crate::types::c_uint;
17854pub type cc_t = crate::types::c_uchar;
17855pub type speed_t = crate::types::c_uint;
17856pub type tcflag_t = crate::types::c_uint;
17857#[repr(C)]
17858#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17859pub struct termios {
17860    pub c_iflag: tcflag_t,
17861    pub c_oflag: tcflag_t,
17862    pub c_cflag: tcflag_t,
17863    pub c_lflag: tcflag_t,
17864    pub c_line: cc_t,
17865    pub c_cc: [cc_t; 19usize],
17866}
17867#[repr(C)]
17868#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17869pub struct termios2 {
17870    pub c_iflag: tcflag_t,
17871    pub c_oflag: tcflag_t,
17872    pub c_cflag: tcflag_t,
17873    pub c_lflag: tcflag_t,
17874    pub c_line: cc_t,
17875    pub c_cc: [cc_t; 19usize],
17876    pub c_ispeed: speed_t,
17877    pub c_ospeed: speed_t,
17878}
17879#[repr(C)]
17880#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17881pub struct ktermios {
17882    pub c_iflag: tcflag_t,
17883    pub c_oflag: tcflag_t,
17884    pub c_cflag: tcflag_t,
17885    pub c_lflag: tcflag_t,
17886    pub c_line: cc_t,
17887    pub c_cc: [cc_t; 19usize],
17888    pub c_ispeed: speed_t,
17889    pub c_ospeed: speed_t,
17890}
17891#[repr(C)]
17892#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17893pub struct winsize {
17894    pub ws_row: crate::types::c_ushort,
17895    pub ws_col: crate::types::c_ushort,
17896    pub ws_xpixel: crate::types::c_ushort,
17897    pub ws_ypixel: crate::types::c_ushort,
17898}
17899#[repr(C)]
17900#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17901pub struct termio {
17902    pub c_iflag: crate::types::c_ushort,
17903    pub c_oflag: crate::types::c_ushort,
17904    pub c_cflag: crate::types::c_ushort,
17905    pub c_lflag: crate::types::c_ushort,
17906    pub c_line: crate::types::c_uchar,
17907    pub c_cc: [crate::types::c_uchar; 8usize],
17908    pub __bindgen_padding_0: u8,
17909}
17910pub const thermal_device_mode_THERMAL_DEVICE_DISABLED: thermal_device_mode = 0;
17911pub const thermal_device_mode_THERMAL_DEVICE_ENABLED: thermal_device_mode = 1;
17912pub type thermal_device_mode = crate::types::c_uint;
17913pub const thermal_trip_type_THERMAL_TRIP_ACTIVE: thermal_trip_type = 0;
17914pub const thermal_trip_type_THERMAL_TRIP_PASSIVE: thermal_trip_type = 1;
17915pub const thermal_trip_type_THERMAL_TRIP_HOT: thermal_trip_type = 2;
17916pub const thermal_trip_type_THERMAL_TRIP_CRITICAL: thermal_trip_type = 3;
17917pub type thermal_trip_type = crate::types::c_uint;
17918pub const thermal_genl_attr_THERMAL_GENL_ATTR_UNSPEC: thermal_genl_attr = 0;
17919pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ: thermal_genl_attr = 1;
17920pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_ID: thermal_genl_attr = 2;
17921pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TEMP: thermal_genl_attr = 3;
17922pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP: thermal_genl_attr = 4;
17923pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_ID: thermal_genl_attr = 5;
17924pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_TYPE: thermal_genl_attr = 6;
17925pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_TEMP: thermal_genl_attr = 7;
17926pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_HYST: thermal_genl_attr = 8;
17927pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_MODE: thermal_genl_attr = 9;
17928pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_NAME: thermal_genl_attr = 10;
17929pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_CDEV_WEIGHT: thermal_genl_attr = 11;
17930pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_GOV: thermal_genl_attr = 12;
17931pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_GOV_NAME: thermal_genl_attr = 13;
17932pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV: thermal_genl_attr = 14;
17933pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_ID: thermal_genl_attr = 15;
17934pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_CUR_STATE: thermal_genl_attr = 16;
17935pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_MAX_STATE: thermal_genl_attr = 17;
17936pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_NAME: thermal_genl_attr = 18;
17937pub const thermal_genl_attr_THERMAL_GENL_ATTR_GOV_NAME: thermal_genl_attr = 19;
17938pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY: thermal_genl_attr = 20;
17939pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_ID: thermal_genl_attr = 21;
17940pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_PERFORMANCE: thermal_genl_attr = 22;
17941pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_EFFICIENCY: thermal_genl_attr = 23;
17942pub const thermal_genl_attr___THERMAL_GENL_ATTR_MAX: thermal_genl_attr = 24;
17943pub type thermal_genl_attr = crate::types::c_uint;
17944pub const thermal_genl_sampling_THERMAL_GENL_SAMPLING_TEMP: thermal_genl_sampling = 0;
17945pub const thermal_genl_sampling___THERMAL_GENL_SAMPLING_MAX: thermal_genl_sampling = 1;
17946pub type thermal_genl_sampling = crate::types::c_uint;
17947pub const thermal_genl_event_THERMAL_GENL_EVENT_UNSPEC: thermal_genl_event = 0;
17948pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_CREATE: thermal_genl_event = 1;
17949pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_DELETE: thermal_genl_event = 2;
17950pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_DISABLE: thermal_genl_event = 3;
17951pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_ENABLE: thermal_genl_event = 4;
17952pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_UP: thermal_genl_event = 5;
17953pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_DOWN: thermal_genl_event = 6;
17954pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_CHANGE: thermal_genl_event = 7;
17955pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_ADD: thermal_genl_event = 8;
17956pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_DELETE: thermal_genl_event = 9;
17957pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_ADD: thermal_genl_event = 10;
17958pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_DELETE: thermal_genl_event = 11;
17959pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_STATE_UPDATE: thermal_genl_event = 12;
17960pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_GOV_CHANGE: thermal_genl_event = 13;
17961pub const thermal_genl_event_THERMAL_GENL_EVENT_CPU_CAPABILITY_CHANGE: thermal_genl_event = 14;
17962pub const thermal_genl_event___THERMAL_GENL_EVENT_MAX: thermal_genl_event = 15;
17963pub type thermal_genl_event = crate::types::c_uint;
17964pub const thermal_genl_cmd_THERMAL_GENL_CMD_UNSPEC: thermal_genl_cmd = 0;
17965pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_ID: thermal_genl_cmd = 1;
17966pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_TRIP: thermal_genl_cmd = 2;
17967pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_TEMP: thermal_genl_cmd = 3;
17968pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_GOV: thermal_genl_cmd = 4;
17969pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_MODE: thermal_genl_cmd = 5;
17970pub const thermal_genl_cmd_THERMAL_GENL_CMD_CDEV_GET: thermal_genl_cmd = 6;
17971pub const thermal_genl_cmd___THERMAL_GENL_CMD_MAX: thermal_genl_cmd = 7;
17972pub type thermal_genl_cmd = crate::types::c_uint;
17973#[repr(C)]
17974#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17975pub struct tms {
17976    pub tms_utime: __kernel_clock_t,
17977    pub tms_stime: __kernel_clock_t,
17978    pub tms_cutime: __kernel_clock_t,
17979    pub tms_cstime: __kernel_clock_t,
17980}
17981#[repr(C)]
17982#[derive(Copy, Clone)]
17983pub struct uinput_ff_upload {
17984    pub request_id: __u32,
17985    pub retval: __s32,
17986    pub effect: ff_effect,
17987    pub old: ff_effect,
17988}
17989impl Default for uinput_ff_upload {
17990    fn default() -> Self {
17991        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17992        unsafe {
17993            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17994            s.assume_init()
17995        }
17996    }
17997}
17998#[repr(C)]
17999#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18000pub struct uinput_ff_erase {
18001    pub request_id: __u32,
18002    pub retval: __s32,
18003    pub effect_id: __u32,
18004}
18005#[repr(C)]
18006#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18007pub struct uinput_setup {
18008    pub id: input_id,
18009    pub name: [crate::types::c_char; 80usize],
18010    pub ff_effects_max: __u32,
18011}
18012impl Default for uinput_setup {
18013    fn default() -> Self {
18014        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18015        unsafe {
18016            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18017            s.assume_init()
18018        }
18019    }
18020}
18021#[repr(C)]
18022#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18023pub struct uinput_abs_setup {
18024    pub code: __u16,
18025    pub __bindgen_padding_0: [u8; 2usize],
18026    pub absinfo: input_absinfo,
18027}
18028#[repr(C)]
18029#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18030pub struct uinput_user_dev {
18031    pub name: [crate::types::c_char; 80usize],
18032    pub id: input_id,
18033    pub ff_effects_max: __u32,
18034    pub absmax: [__s32; 64usize],
18035    pub absmin: [__s32; 64usize],
18036    pub absfuzz: [__s32; 64usize],
18037    pub absflat: [__s32; 64usize],
18038}
18039impl Default for uinput_user_dev {
18040    fn default() -> Self {
18041        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18042        unsafe {
18043            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18044            s.assume_init()
18045        }
18046    }
18047}
18048#[repr(C)]
18049#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18050pub struct iovec {
18051    pub iov_base: uaddr,
18052    pub iov_len: __kernel_size_t,
18053}
18054impl Default for iovec {
18055    fn default() -> Self {
18056        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18057        unsafe {
18058            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18059            s.assume_init()
18060        }
18061    }
18062}
18063#[repr(C)]
18064#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18065pub struct dmabuf_cmsg {
18066    pub frag_offset: __u64,
18067    pub frag_size: __u32,
18068    pub frag_token: __u32,
18069    pub dmabuf_id: __u32,
18070    pub flags: __u32,
18071}
18072#[repr(C)]
18073#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18074pub struct dmabuf_token {
18075    pub token_start: __u32,
18076    pub token_count: __u32,
18077}
18078#[repr(C)]
18079#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18080pub struct sockaddr_un {
18081    pub sun_family: __kernel_sa_family_t,
18082    pub sun_path: [crate::types::c_char; 108usize],
18083}
18084impl Default for sockaddr_un {
18085    fn default() -> Self {
18086        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18087        unsafe {
18088            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18089            s.assume_init()
18090        }
18091    }
18092}
18093#[repr(C, packed)]
18094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18095pub struct usb_ctrlrequest {
18096    pub bRequestType: __u8,
18097    pub bRequest: __u8,
18098    pub wValue: __le16,
18099    pub wIndex: __le16,
18100    pub wLength: __le16,
18101}
18102#[repr(C, packed)]
18103#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18104pub struct usb_descriptor_header {
18105    pub bLength: __u8,
18106    pub bDescriptorType: __u8,
18107}
18108#[repr(C, packed)]
18109#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18110pub struct usb_device_descriptor {
18111    pub bLength: __u8,
18112    pub bDescriptorType: __u8,
18113    pub bcdUSB: __le16,
18114    pub bDeviceClass: __u8,
18115    pub bDeviceSubClass: __u8,
18116    pub bDeviceProtocol: __u8,
18117    pub bMaxPacketSize0: __u8,
18118    pub idVendor: __le16,
18119    pub idProduct: __le16,
18120    pub bcdDevice: __le16,
18121    pub iManufacturer: __u8,
18122    pub iProduct: __u8,
18123    pub iSerialNumber: __u8,
18124    pub bNumConfigurations: __u8,
18125}
18126#[repr(C, packed)]
18127#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18128pub struct usb_config_descriptor {
18129    pub bLength: __u8,
18130    pub bDescriptorType: __u8,
18131    pub wTotalLength: __le16,
18132    pub bNumInterfaces: __u8,
18133    pub bConfigurationValue: __u8,
18134    pub iConfiguration: __u8,
18135    pub bmAttributes: __u8,
18136    pub bMaxPower: __u8,
18137}
18138#[repr(C, packed)]
18139pub struct usb_string_descriptor {
18140    pub bLength: __u8,
18141    pub bDescriptorType: __u8,
18142    pub __bindgen_anon_1: usb_string_descriptor__bindgen_ty_1,
18143}
18144#[repr(C)]
18145pub struct usb_string_descriptor__bindgen_ty_1 {
18146    pub legacy_padding: __BindgenUnionField<__le16>,
18147    pub __bindgen_anon_1: __BindgenUnionField<usb_string_descriptor__bindgen_ty_1__bindgen_ty_1>,
18148    pub bindgen_union_field: u16,
18149}
18150#[repr(C)]
18151#[derive(Debug, Default)]
18152pub struct usb_string_descriptor__bindgen_ty_1__bindgen_ty_1 {
18153    pub __empty_wData: usb_string_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18154    pub wData: __IncompleteArrayField<__le16>,
18155}
18156#[repr(C)]
18157#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18158pub struct usb_string_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
18159impl Default for usb_string_descriptor__bindgen_ty_1 {
18160    fn default() -> Self {
18161        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18162        unsafe {
18163            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18164            s.assume_init()
18165        }
18166    }
18167}
18168impl Default for usb_string_descriptor {
18169    fn default() -> Self {
18170        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18171        unsafe {
18172            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18173            s.assume_init()
18174        }
18175    }
18176}
18177#[repr(C, packed)]
18178#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18179pub struct usb_interface_descriptor {
18180    pub bLength: __u8,
18181    pub bDescriptorType: __u8,
18182    pub bInterfaceNumber: __u8,
18183    pub bAlternateSetting: __u8,
18184    pub bNumEndpoints: __u8,
18185    pub bInterfaceClass: __u8,
18186    pub bInterfaceSubClass: __u8,
18187    pub bInterfaceProtocol: __u8,
18188    pub iInterface: __u8,
18189}
18190#[repr(C, packed)]
18191#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18192pub struct usb_endpoint_descriptor {
18193    pub bLength: __u8,
18194    pub bDescriptorType: __u8,
18195    pub bEndpointAddress: __u8,
18196    pub bmAttributes: __u8,
18197    pub wMaxPacketSize: __le16,
18198    pub bInterval: __u8,
18199    pub bRefresh: __u8,
18200    pub bSynchAddress: __u8,
18201}
18202#[repr(C, packed)]
18203#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18204pub struct usb_ssp_isoc_ep_comp_descriptor {
18205    pub bLength: __u8,
18206    pub bDescriptorType: __u8,
18207    pub wReseved: __le16,
18208    pub dwBytesPerInterval: __le32,
18209}
18210#[repr(C, packed)]
18211#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18212pub struct usb_ss_ep_comp_descriptor {
18213    pub bLength: __u8,
18214    pub bDescriptorType: __u8,
18215    pub bMaxBurst: __u8,
18216    pub bmAttributes: __u8,
18217    pub wBytesPerInterval: __le16,
18218}
18219#[repr(C, packed)]
18220#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18221pub struct usb_qualifier_descriptor {
18222    pub bLength: __u8,
18223    pub bDescriptorType: __u8,
18224    pub bcdUSB: __le16,
18225    pub bDeviceClass: __u8,
18226    pub bDeviceSubClass: __u8,
18227    pub bDeviceProtocol: __u8,
18228    pub bMaxPacketSize0: __u8,
18229    pub bNumConfigurations: __u8,
18230    pub bRESERVED: __u8,
18231}
18232#[repr(C, packed)]
18233#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18234pub struct usb_otg_descriptor {
18235    pub bLength: __u8,
18236    pub bDescriptorType: __u8,
18237    pub bmAttributes: __u8,
18238}
18239#[repr(C, packed)]
18240#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18241pub struct usb_otg20_descriptor {
18242    pub bLength: __u8,
18243    pub bDescriptorType: __u8,
18244    pub bmAttributes: __u8,
18245    pub bcdOTG: __le16,
18246}
18247#[repr(C, packed)]
18248#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18249pub struct usb_debug_descriptor {
18250    pub bLength: __u8,
18251    pub bDescriptorType: __u8,
18252    pub bDebugInEndpoint: __u8,
18253    pub bDebugOutEndpoint: __u8,
18254}
18255#[repr(C, packed)]
18256#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18257pub struct usb_interface_assoc_descriptor {
18258    pub bLength: __u8,
18259    pub bDescriptorType: __u8,
18260    pub bFirstInterface: __u8,
18261    pub bInterfaceCount: __u8,
18262    pub bFunctionClass: __u8,
18263    pub bFunctionSubClass: __u8,
18264    pub bFunctionProtocol: __u8,
18265    pub iFunction: __u8,
18266}
18267#[repr(C, packed)]
18268#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18269pub struct usb_security_descriptor {
18270    pub bLength: __u8,
18271    pub bDescriptorType: __u8,
18272    pub wTotalLength: __le16,
18273    pub bNumEncryptionTypes: __u8,
18274}
18275#[repr(C, packed)]
18276pub struct usb_key_descriptor {
18277    pub bLength: __u8,
18278    pub bDescriptorType: __u8,
18279    pub tTKID: [__u8; 3usize],
18280    pub bReserved: __u8,
18281    pub bKeyData: __IncompleteArrayField<__u8>,
18282}
18283impl Default for usb_key_descriptor {
18284    fn default() -> Self {
18285        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18286        unsafe {
18287            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18288            s.assume_init()
18289        }
18290    }
18291}
18292#[repr(C, packed)]
18293#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18294pub struct usb_encryption_descriptor {
18295    pub bLength: __u8,
18296    pub bDescriptorType: __u8,
18297    pub bEncryptionType: __u8,
18298    pub bEncryptionValue: __u8,
18299    pub bAuthKeyIndex: __u8,
18300}
18301#[repr(C, packed)]
18302#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18303pub struct usb_bos_descriptor {
18304    pub bLength: __u8,
18305    pub bDescriptorType: __u8,
18306    pub wTotalLength: __le16,
18307    pub bNumDeviceCaps: __u8,
18308}
18309#[repr(C, packed)]
18310#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18311pub struct usb_dev_cap_header {
18312    pub bLength: __u8,
18313    pub bDescriptorType: __u8,
18314    pub bDevCapabilityType: __u8,
18315}
18316#[repr(C, packed)]
18317#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18318pub struct usb_wireless_cap_descriptor {
18319    pub bLength: __u8,
18320    pub bDescriptorType: __u8,
18321    pub bDevCapabilityType: __u8,
18322    pub bmAttributes: __u8,
18323    pub wPHYRates: __le16,
18324    pub bmTFITXPowerInfo: __u8,
18325    pub bmFFITXPowerInfo: __u8,
18326    pub bmBandGroup: __le16,
18327    pub bReserved: __u8,
18328}
18329#[repr(C, packed)]
18330#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18331pub struct usb_ext_cap_descriptor {
18332    pub bLength: __u8,
18333    pub bDescriptorType: __u8,
18334    pub bDevCapabilityType: __u8,
18335    pub bmAttributes: __le32,
18336}
18337#[repr(C, packed)]
18338#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18339pub struct usb_ss_cap_descriptor {
18340    pub bLength: __u8,
18341    pub bDescriptorType: __u8,
18342    pub bDevCapabilityType: __u8,
18343    pub bmAttributes: __u8,
18344    pub wSpeedSupported: __le16,
18345    pub bFunctionalitySupport: __u8,
18346    pub bU1devExitLat: __u8,
18347    pub bU2DevExitLat: __le16,
18348}
18349#[repr(C, packed)]
18350#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18351pub struct usb_ss_container_id_descriptor {
18352    pub bLength: __u8,
18353    pub bDescriptorType: __u8,
18354    pub bDevCapabilityType: __u8,
18355    pub bReserved: __u8,
18356    pub ContainerID: [__u8; 16usize],
18357}
18358#[repr(C, packed)]
18359pub struct usb_plat_dev_cap_descriptor {
18360    pub bLength: __u8,
18361    pub bDescriptorType: __u8,
18362    pub bDevCapabilityType: __u8,
18363    pub bReserved: __u8,
18364    pub UUID: [__u8; 16usize],
18365    pub CapabilityData: __IncompleteArrayField<__u8>,
18366}
18367impl Default for usb_plat_dev_cap_descriptor {
18368    fn default() -> Self {
18369        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18370        unsafe {
18371            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18372            s.assume_init()
18373        }
18374    }
18375}
18376#[repr(C, packed)]
18377pub struct usb_ssp_cap_descriptor {
18378    pub bLength: __u8,
18379    pub bDescriptorType: __u8,
18380    pub bDevCapabilityType: __u8,
18381    pub bReserved: __u8,
18382    pub bmAttributes: __le32,
18383    pub wFunctionalitySupport: __le16,
18384    pub wReserved: __le16,
18385    pub __bindgen_anon_1: usb_ssp_cap_descriptor__bindgen_ty_1,
18386}
18387#[repr(C)]
18388pub struct usb_ssp_cap_descriptor__bindgen_ty_1 {
18389    pub legacy_padding: __BindgenUnionField<__le32>,
18390    pub __bindgen_anon_1: __BindgenUnionField<usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1>,
18391    pub bindgen_union_field: u32,
18392}
18393#[repr(C)]
18394#[derive(Debug, Default)]
18395pub struct usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1 {
18396    pub __empty_bmSublinkSpeedAttr:
18397        usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18398    pub bmSublinkSpeedAttr: __IncompleteArrayField<__le32>,
18399}
18400#[repr(C)]
18401#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18402pub struct usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
18403impl Default for usb_ssp_cap_descriptor__bindgen_ty_1 {
18404    fn default() -> Self {
18405        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18406        unsafe {
18407            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18408            s.assume_init()
18409        }
18410    }
18411}
18412impl Default for usb_ssp_cap_descriptor {
18413    fn default() -> Self {
18414        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18415        unsafe {
18416            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18417            s.assume_init()
18418        }
18419    }
18420}
18421#[repr(C, packed)]
18422#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18423pub struct usb_pd_cap_descriptor {
18424    pub bLength: __u8,
18425    pub bDescriptorType: __u8,
18426    pub bDevCapabilityType: __u8,
18427    pub bReserved: __u8,
18428    pub bmAttributes: __le32,
18429    pub bmProviderPorts: __le16,
18430    pub bmConsumerPorts: __le16,
18431    pub bcdBCVersion: __le16,
18432    pub bcdPDVersion: __le16,
18433    pub bcdUSBTypeCVersion: __le16,
18434}
18435#[repr(C, packed)]
18436#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18437pub struct usb_pd_cap_battery_info_descriptor {
18438    pub bLength: __u8,
18439    pub bDescriptorType: __u8,
18440    pub bDevCapabilityType: __u8,
18441    pub iBattery: __u8,
18442    pub iSerial: __u8,
18443    pub iManufacturer: __u8,
18444    pub bBatteryId: __u8,
18445    pub bReserved: __u8,
18446    pub dwChargedThreshold: __le32,
18447    pub dwWeakThreshold: __le32,
18448    pub dwBatteryDesignCapacity: __le32,
18449    pub dwBatteryLastFullchargeCapacity: __le32,
18450}
18451#[repr(C, packed)]
18452#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18453pub struct usb_pd_cap_consumer_port_descriptor {
18454    pub bLength: __u8,
18455    pub bDescriptorType: __u8,
18456    pub bDevCapabilityType: __u8,
18457    pub bReserved: __u8,
18458    pub bmCapabilities: __u8,
18459    pub wMinVoltage: __le16,
18460    pub wMaxVoltage: __le16,
18461    pub wReserved: __u16,
18462    pub dwMaxOperatingPower: __le32,
18463    pub dwMaxPeakPower: __le32,
18464    pub dwMaxPeakPowerTime: __le32,
18465}
18466#[repr(C, packed)]
18467pub struct usb_pd_cap_provider_port_descriptor {
18468    pub bLength: __u8,
18469    pub bDescriptorType: __u8,
18470    pub bDevCapabilityType: __u8,
18471    pub bReserved1: __u8,
18472    pub bmCapabilities: __u8,
18473    pub bNumOfPDObjects: __u8,
18474    pub bReserved2: __u8,
18475    pub wPowerDataObject: __IncompleteArrayField<__le32>,
18476}
18477impl Default for usb_pd_cap_provider_port_descriptor {
18478    fn default() -> Self {
18479        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18480        unsafe {
18481            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18482            s.assume_init()
18483        }
18484    }
18485}
18486#[repr(C, packed)]
18487#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18488pub struct usb_ptm_cap_descriptor {
18489    pub bLength: __u8,
18490    pub bDescriptorType: __u8,
18491    pub bDevCapabilityType: __u8,
18492}
18493#[repr(C, packed)]
18494#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18495pub struct usb_wireless_ep_comp_descriptor {
18496    pub bLength: __u8,
18497    pub bDescriptorType: __u8,
18498    pub bMaxBurst: __u8,
18499    pub bMaxSequence: __u8,
18500    pub wMaxStreamDelay: __le16,
18501    pub wOverTheAirPacketSize: __le16,
18502    pub bOverTheAirInterval: __u8,
18503    pub bmCompAttributes: __u8,
18504}
18505#[repr(C, packed)]
18506#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18507pub struct usb_handshake {
18508    pub bMessageNumber: __u8,
18509    pub bStatus: __u8,
18510    pub tTKID: [__u8; 3usize],
18511    pub bReserved: __u8,
18512    pub CDID: [__u8; 16usize],
18513    pub nonce: [__u8; 16usize],
18514    pub MIC: [__u8; 8usize],
18515}
18516#[repr(C, packed)]
18517#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18518pub struct usb_connection_context {
18519    pub CHID: [__u8; 16usize],
18520    pub CDID: [__u8; 16usize],
18521    pub CK: [__u8; 16usize],
18522}
18523pub const usb_device_speed_USB_SPEED_UNKNOWN: usb_device_speed = 0;
18524pub const usb_device_speed_USB_SPEED_LOW: usb_device_speed = 1;
18525pub const usb_device_speed_USB_SPEED_FULL: usb_device_speed = 2;
18526pub const usb_device_speed_USB_SPEED_HIGH: usb_device_speed = 3;
18527pub const usb_device_speed_USB_SPEED_WIRELESS: usb_device_speed = 4;
18528pub const usb_device_speed_USB_SPEED_SUPER: usb_device_speed = 5;
18529pub const usb_device_speed_USB_SPEED_SUPER_PLUS: usb_device_speed = 6;
18530pub type usb_device_speed = crate::types::c_uint;
18531pub const usb_device_state_USB_STATE_NOTATTACHED: usb_device_state = 0;
18532pub const usb_device_state_USB_STATE_ATTACHED: usb_device_state = 1;
18533pub const usb_device_state_USB_STATE_POWERED: usb_device_state = 2;
18534pub const usb_device_state_USB_STATE_RECONNECTING: usb_device_state = 3;
18535pub const usb_device_state_USB_STATE_UNAUTHENTICATED: usb_device_state = 4;
18536pub const usb_device_state_USB_STATE_DEFAULT: usb_device_state = 5;
18537pub const usb_device_state_USB_STATE_ADDRESS: usb_device_state = 6;
18538pub const usb_device_state_USB_STATE_CONFIGURED: usb_device_state = 7;
18539pub const usb_device_state_USB_STATE_SUSPENDED: usb_device_state = 8;
18540pub type usb_device_state = crate::types::c_uint;
18541pub const usb3_link_state_USB3_LPM_U0: usb3_link_state = 0;
18542pub const usb3_link_state_USB3_LPM_U1: usb3_link_state = 1;
18543pub const usb3_link_state_USB3_LPM_U2: usb3_link_state = 2;
18544pub const usb3_link_state_USB3_LPM_U3: usb3_link_state = 3;
18545pub type usb3_link_state = crate::types::c_uint;
18546#[repr(C, packed)]
18547#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18548pub struct usb_set_sel_req {
18549    pub u1_sel: __u8,
18550    pub u1_pel: __u8,
18551    pub u2_sel: __le16,
18552    pub u2_pel: __le16,
18553}
18554pub const FUNCTIONFS_DESCRIPTORS_MAGIC: _bindgen_ty_101 = 1;
18555pub const FUNCTIONFS_STRINGS_MAGIC: _bindgen_ty_101 = 2;
18556pub const FUNCTIONFS_DESCRIPTORS_MAGIC_V2: _bindgen_ty_101 = 3;
18557pub type _bindgen_ty_101 = crate::types::c_uint;
18558pub const functionfs_flags_FUNCTIONFS_HAS_FS_DESC: functionfs_flags = 1;
18559pub const functionfs_flags_FUNCTIONFS_HAS_HS_DESC: functionfs_flags = 2;
18560pub const functionfs_flags_FUNCTIONFS_HAS_SS_DESC: functionfs_flags = 4;
18561pub const functionfs_flags_FUNCTIONFS_HAS_MS_OS_DESC: functionfs_flags = 8;
18562pub const functionfs_flags_FUNCTIONFS_VIRTUAL_ADDR: functionfs_flags = 16;
18563pub const functionfs_flags_FUNCTIONFS_EVENTFD: functionfs_flags = 32;
18564pub const functionfs_flags_FUNCTIONFS_ALL_CTRL_RECIP: functionfs_flags = 64;
18565pub const functionfs_flags_FUNCTIONFS_CONFIG0_SETUP: functionfs_flags = 128;
18566pub type functionfs_flags = crate::types::c_uint;
18567#[repr(C, packed)]
18568#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18569pub struct usb_endpoint_descriptor_no_audio {
18570    pub bLength: __u8,
18571    pub bDescriptorType: __u8,
18572    pub bEndpointAddress: __u8,
18573    pub bmAttributes: __u8,
18574    pub wMaxPacketSize: __le16,
18575    pub bInterval: __u8,
18576}
18577#[repr(C, packed)]
18578#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18579pub struct usb_dfu_functional_descriptor {
18580    pub bLength: __u8,
18581    pub bDescriptorType: __u8,
18582    pub bmAttributes: __u8,
18583    pub wDetachTimeOut: __le16,
18584    pub wTransferSize: __le16,
18585    pub bcdDFUVersion: __le16,
18586}
18587#[repr(C, packed)]
18588#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18589pub struct usb_functionfs_descs_head_v2 {
18590    pub magic: __le32,
18591    pub length: __le32,
18592    pub flags: __le32,
18593}
18594#[repr(C, packed)]
18595#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18596pub struct usb_functionfs_descs_head {
18597    pub magic: __le32,
18598    pub length: __le32,
18599    pub fs_count: __le32,
18600    pub hs_count: __le32,
18601}
18602#[repr(C, packed)]
18603#[derive(Copy, Clone)]
18604pub struct usb_os_desc_header {
18605    pub interface: __u8,
18606    pub dwLength: __le32,
18607    pub bcdVersion: __le16,
18608    pub wIndex: __le16,
18609    pub __bindgen_anon_1: usb_os_desc_header__bindgen_ty_1,
18610}
18611#[repr(C)]
18612#[derive(Copy, Clone)]
18613pub union usb_os_desc_header__bindgen_ty_1 {
18614    pub __bindgen_anon_1: usb_os_desc_header__bindgen_ty_1__bindgen_ty_1,
18615    pub wCount: __le16,
18616}
18617#[repr(C)]
18618#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18619pub struct usb_os_desc_header__bindgen_ty_1__bindgen_ty_1 {
18620    pub bCount: __u8,
18621    pub Reserved: __u8,
18622}
18623impl Default for usb_os_desc_header__bindgen_ty_1 {
18624    fn default() -> Self {
18625        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18626        unsafe {
18627            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18628            s.assume_init()
18629        }
18630    }
18631}
18632impl Default for usb_os_desc_header {
18633    fn default() -> Self {
18634        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18635        unsafe {
18636            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18637            s.assume_init()
18638        }
18639    }
18640}
18641#[repr(C)]
18642#[derive(Copy, Clone)]
18643pub struct usb_ext_compat_desc {
18644    pub bFirstInterfaceNumber: __u8,
18645    pub Reserved1: __u8,
18646    pub __bindgen_anon_1: usb_ext_compat_desc__bindgen_ty_1,
18647    pub Reserved2: [__u8; 6usize],
18648}
18649#[repr(C)]
18650#[derive(Copy, Clone)]
18651pub union usb_ext_compat_desc__bindgen_ty_1 {
18652    pub __bindgen_anon_1: usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_1,
18653    pub IDs: usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_2,
18654}
18655#[repr(C)]
18656#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18657pub struct usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_1 {
18658    pub CompatibleID: [__u8; 8usize],
18659    pub SubCompatibleID: [__u8; 8usize],
18660}
18661#[repr(C)]
18662#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18663pub struct usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_2 {
18664    pub CompatibleID: [__u8; 8usize],
18665    pub SubCompatibleID: [__u8; 8usize],
18666}
18667impl Default for usb_ext_compat_desc__bindgen_ty_1 {
18668    fn default() -> Self {
18669        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18670        unsafe {
18671            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18672            s.assume_init()
18673        }
18674    }
18675}
18676impl Default for usb_ext_compat_desc {
18677    fn default() -> Self {
18678        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18679        unsafe {
18680            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18681            s.assume_init()
18682        }
18683    }
18684}
18685#[repr(C, packed)]
18686#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18687pub struct usb_ext_prop_desc {
18688    pub dwSize: __le32,
18689    pub dwPropertyDataType: __le32,
18690    pub wPropertyNameLength: __le16,
18691}
18692#[repr(C, packed)]
18693#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18694pub struct usb_ffs_dmabuf_transfer_req {
18695    pub fd: crate::types::c_int,
18696    pub flags: __u32,
18697    pub length: __u64,
18698}
18699#[repr(C, packed)]
18700#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18701pub struct usb_functionfs_strings_head {
18702    pub magic: __le32,
18703    pub length: __le32,
18704    pub str_count: __le32,
18705    pub lang_count: __le32,
18706}
18707pub const usb_functionfs_event_type_FUNCTIONFS_BIND: usb_functionfs_event_type = 0;
18708pub const usb_functionfs_event_type_FUNCTIONFS_UNBIND: usb_functionfs_event_type = 1;
18709pub const usb_functionfs_event_type_FUNCTIONFS_ENABLE: usb_functionfs_event_type = 2;
18710pub const usb_functionfs_event_type_FUNCTIONFS_DISABLE: usb_functionfs_event_type = 3;
18711pub const usb_functionfs_event_type_FUNCTIONFS_SETUP: usb_functionfs_event_type = 4;
18712pub const usb_functionfs_event_type_FUNCTIONFS_SUSPEND: usb_functionfs_event_type = 5;
18713pub const usb_functionfs_event_type_FUNCTIONFS_RESUME: usb_functionfs_event_type = 6;
18714pub type usb_functionfs_event_type = crate::types::c_uint;
18715#[repr(C, packed)]
18716#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
18717pub struct usb_functionfs_event {
18718    pub u: usb_functionfs_event__bindgen_ty_1,
18719    pub type_: __u8,
18720    pub _pad: [__u8; 3usize],
18721}
18722#[repr(C, packed)]
18723#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
18724pub union usb_functionfs_event__bindgen_ty_1 {
18725    pub setup: usb_ctrlrequest,
18726}
18727impl Default for usb_functionfs_event__bindgen_ty_1 {
18728    fn default() -> Self {
18729        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18730        unsafe {
18731            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18732            s.assume_init()
18733        }
18734    }
18735}
18736impl Default for usb_functionfs_event {
18737    fn default() -> Self {
18738        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18739        unsafe {
18740            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18741            s.assume_init()
18742        }
18743    }
18744}
18745#[repr(C, packed)]
18746#[derive(Copy, Clone)]
18747pub struct uffd_msg {
18748    pub event: __u8,
18749    pub reserved1: __u8,
18750    pub reserved2: __u16,
18751    pub reserved3: __u32,
18752    pub arg: uffd_msg__bindgen_ty_1,
18753}
18754#[repr(C)]
18755#[derive(Copy, Clone)]
18756pub union uffd_msg__bindgen_ty_1 {
18757    pub pagefault: uffd_msg__bindgen_ty_1__bindgen_ty_1,
18758    pub fork: uffd_msg__bindgen_ty_1__bindgen_ty_2,
18759    pub remap: uffd_msg__bindgen_ty_1__bindgen_ty_3,
18760    pub remove: uffd_msg__bindgen_ty_1__bindgen_ty_4,
18761    pub reserved: uffd_msg__bindgen_ty_1__bindgen_ty_5,
18762}
18763#[repr(C)]
18764#[derive(Copy, Clone)]
18765pub struct uffd_msg__bindgen_ty_1__bindgen_ty_1 {
18766    pub flags: __u64,
18767    pub address: __u64,
18768    pub feat: uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18769    pub __bindgen_padding_0: [u8; 4usize],
18770}
18771#[repr(C)]
18772#[derive(Copy, Clone)]
18773pub union uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
18774    pub ptid: __u32,
18775}
18776impl Default for uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
18777    fn default() -> Self {
18778        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18779        unsafe {
18780            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18781            s.assume_init()
18782        }
18783    }
18784}
18785impl Default for uffd_msg__bindgen_ty_1__bindgen_ty_1 {
18786    fn default() -> Self {
18787        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18788        unsafe {
18789            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18790            s.assume_init()
18791        }
18792    }
18793}
18794#[repr(C)]
18795#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18796pub struct uffd_msg__bindgen_ty_1__bindgen_ty_2 {
18797    pub ufd: __u32,
18798}
18799#[repr(C)]
18800#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18801pub struct uffd_msg__bindgen_ty_1__bindgen_ty_3 {
18802    pub from: __u64,
18803    pub to: __u64,
18804    pub len: __u64,
18805}
18806#[repr(C)]
18807#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18808pub struct uffd_msg__bindgen_ty_1__bindgen_ty_4 {
18809    pub start: __u64,
18810    pub end: __u64,
18811}
18812#[repr(C)]
18813#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18814pub struct uffd_msg__bindgen_ty_1__bindgen_ty_5 {
18815    pub reserved1: __u64,
18816    pub reserved2: __u64,
18817    pub reserved3: __u64,
18818}
18819impl Default for uffd_msg__bindgen_ty_1 {
18820    fn default() -> Self {
18821        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18822        unsafe {
18823            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18824            s.assume_init()
18825        }
18826    }
18827}
18828impl Default for uffd_msg {
18829    fn default() -> Self {
18830        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18831        unsafe {
18832            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18833            s.assume_init()
18834        }
18835    }
18836}
18837#[repr(C)]
18838#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18839pub struct uffdio_api {
18840    pub api: __u64,
18841    pub features: __u64,
18842    pub ioctls: __u64,
18843}
18844#[repr(C)]
18845#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18846pub struct uffdio_range {
18847    pub start: __u64,
18848    pub len: __u64,
18849}
18850#[repr(C)]
18851#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18852pub struct uffdio_register {
18853    pub range: uffdio_range,
18854    pub mode: __u64,
18855    pub ioctls: __u64,
18856}
18857#[repr(C)]
18858#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18859pub struct uffdio_copy {
18860    pub dst: __u64,
18861    pub src: __u64,
18862    pub len: __u64,
18863    pub mode: __u64,
18864    pub copy: __s64,
18865}
18866#[repr(C)]
18867#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18868pub struct uffdio_zeropage {
18869    pub range: uffdio_range,
18870    pub mode: __u64,
18871    pub zeropage: __s64,
18872}
18873#[repr(C)]
18874#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18875pub struct uffdio_writeprotect {
18876    pub range: uffdio_range,
18877    pub mode: __u64,
18878}
18879#[repr(C)]
18880#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18881pub struct uffdio_continue {
18882    pub range: uffdio_range,
18883    pub mode: __u64,
18884    pub mapped: __s64,
18885}
18886#[repr(C)]
18887#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18888pub struct uffdio_poison {
18889    pub range: uffdio_range,
18890    pub mode: __u64,
18891    pub updated: __s64,
18892}
18893#[repr(C)]
18894#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18895pub struct uffdio_move {
18896    pub dst: __u64,
18897    pub src: __u64,
18898    pub len: __u64,
18899    pub mode: __u64,
18900    pub move_: __s64,
18901}
18902#[repr(C)]
18903#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18904pub struct oldold_utsname {
18905    pub sysname: [crate::types::c_char; 9usize],
18906    pub nodename: [crate::types::c_char; 9usize],
18907    pub release: [crate::types::c_char; 9usize],
18908    pub version: [crate::types::c_char; 9usize],
18909    pub machine: [crate::types::c_char; 9usize],
18910}
18911#[repr(C)]
18912#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18913pub struct old_utsname {
18914    pub sysname: [crate::types::c_char; 65usize],
18915    pub nodename: [crate::types::c_char; 65usize],
18916    pub release: [crate::types::c_char; 65usize],
18917    pub version: [crate::types::c_char; 65usize],
18918    pub machine: [crate::types::c_char; 65usize],
18919}
18920impl Default for old_utsname {
18921    fn default() -> Self {
18922        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18923        unsafe {
18924            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18925            s.assume_init()
18926        }
18927    }
18928}
18929#[repr(C)]
18930#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18931pub struct new_utsname {
18932    pub sysname: [crate::types::c_char; 65usize],
18933    pub nodename: [crate::types::c_char; 65usize],
18934    pub release: [crate::types::c_char; 65usize],
18935    pub version: [crate::types::c_char; 65usize],
18936    pub machine: [crate::types::c_char; 65usize],
18937    pub domainname: [crate::types::c_char; 65usize],
18938}
18939impl Default for new_utsname {
18940    fn default() -> Self {
18941        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18942        unsafe {
18943            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18944            s.assume_init()
18945        }
18946    }
18947}
18948#[repr(C)]
18949#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18950pub struct sockaddr_vm {
18951    pub svm_family: __kernel_sa_family_t,
18952    pub svm_reserved1: crate::types::c_ushort,
18953    pub svm_port: crate::types::c_uint,
18954    pub svm_cid: crate::types::c_uint,
18955    pub svm_flags: __u8,
18956    pub svm_zero: [crate::types::c_uchar; 3usize],
18957}
18958#[repr(C)]
18959#[derive(Copy, Clone)]
18960pub union xfrm_address_t {
18961    pub a4: __be32,
18962    pub a6: [__be32; 4usize],
18963    pub in6: in6_addr,
18964}
18965impl Default for xfrm_address_t {
18966    fn default() -> Self {
18967        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18968        unsafe {
18969            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18970            s.assume_init()
18971        }
18972    }
18973}
18974#[repr(C)]
18975#[derive(Copy, Clone)]
18976pub struct xfrm_id {
18977    pub daddr: xfrm_address_t,
18978    pub spi: __be32,
18979    pub proto: __u8,
18980    pub __bindgen_padding_0: [u8; 3usize],
18981}
18982impl Default for xfrm_id {
18983    fn default() -> Self {
18984        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18985        unsafe {
18986            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18987            s.assume_init()
18988        }
18989    }
18990}
18991#[repr(C)]
18992#[derive(Debug, Default)]
18993pub struct xfrm_sec_ctx {
18994    pub ctx_doi: __u8,
18995    pub ctx_alg: __u8,
18996    pub ctx_len: __u16,
18997    pub ctx_sid: __u32,
18998    pub ctx_str: __IncompleteArrayField<crate::types::c_char>,
18999}
19000#[repr(C)]
19001#[derive(Copy, Clone)]
19002pub struct xfrm_selector {
19003    pub daddr: xfrm_address_t,
19004    pub saddr: xfrm_address_t,
19005    pub dport: __be16,
19006    pub dport_mask: __be16,
19007    pub sport: __be16,
19008    pub sport_mask: __be16,
19009    pub family: __u16,
19010    pub prefixlen_d: __u8,
19011    pub prefixlen_s: __u8,
19012    pub proto: __u8,
19013    pub __bindgen_padding_0: [u8; 3usize],
19014    pub ifindex: crate::types::c_int,
19015    pub user: __kernel_uid32_t,
19016}
19017impl Default for xfrm_selector {
19018    fn default() -> Self {
19019        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19020        unsafe {
19021            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19022            s.assume_init()
19023        }
19024    }
19025}
19026#[repr(C)]
19027#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19028pub struct xfrm_lifetime_cfg {
19029    pub soft_byte_limit: __u64,
19030    pub hard_byte_limit: __u64,
19031    pub soft_packet_limit: __u64,
19032    pub hard_packet_limit: __u64,
19033    pub soft_add_expires_seconds: __u64,
19034    pub hard_add_expires_seconds: __u64,
19035    pub soft_use_expires_seconds: __u64,
19036    pub hard_use_expires_seconds: __u64,
19037}
19038#[repr(C)]
19039#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19040pub struct xfrm_lifetime_cur {
19041    pub bytes: __u64,
19042    pub packets: __u64,
19043    pub add_time: __u64,
19044    pub use_time: __u64,
19045}
19046#[repr(C)]
19047#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19048pub struct xfrm_replay_state {
19049    pub oseq: __u32,
19050    pub seq: __u32,
19051    pub bitmap: __u32,
19052}
19053#[repr(C)]
19054#[derive(Debug, Default)]
19055pub struct xfrm_replay_state_esn {
19056    pub bmp_len: crate::types::c_uint,
19057    pub oseq: __u32,
19058    pub seq: __u32,
19059    pub oseq_hi: __u32,
19060    pub seq_hi: __u32,
19061    pub replay_window: __u32,
19062    pub bmp: __IncompleteArrayField<__u32>,
19063}
19064#[repr(C)]
19065#[derive(Debug)]
19066pub struct xfrm_algo {
19067    pub alg_name: [crate::types::c_char; 64usize],
19068    pub alg_key_len: crate::types::c_uint,
19069    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19070}
19071impl Default for xfrm_algo {
19072    fn default() -> Self {
19073        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19074        unsafe {
19075            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19076            s.assume_init()
19077        }
19078    }
19079}
19080#[repr(C)]
19081#[derive(Debug)]
19082pub struct xfrm_algo_auth {
19083    pub alg_name: [crate::types::c_char; 64usize],
19084    pub alg_key_len: crate::types::c_uint,
19085    pub alg_trunc_len: crate::types::c_uint,
19086    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19087}
19088impl Default for xfrm_algo_auth {
19089    fn default() -> Self {
19090        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19091        unsafe {
19092            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19093            s.assume_init()
19094        }
19095    }
19096}
19097#[repr(C)]
19098#[derive(Debug)]
19099pub struct xfrm_algo_aead {
19100    pub alg_name: [crate::types::c_char; 64usize],
19101    pub alg_key_len: crate::types::c_uint,
19102    pub alg_icv_len: crate::types::c_uint,
19103    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19104}
19105impl Default for xfrm_algo_aead {
19106    fn default() -> Self {
19107        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19108        unsafe {
19109            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19110            s.assume_init()
19111        }
19112    }
19113}
19114#[repr(C)]
19115#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19116pub struct xfrm_stats {
19117    pub replay_window: __u32,
19118    pub replay: __u32,
19119    pub integrity_failed: __u32,
19120}
19121pub const XFRM_POLICY_TYPE_MAIN: _bindgen_ty_102 = 0;
19122pub const XFRM_POLICY_TYPE_SUB: _bindgen_ty_102 = 1;
19123pub const XFRM_POLICY_TYPE_MAX: _bindgen_ty_102 = 2;
19124pub const XFRM_POLICY_TYPE_ANY: _bindgen_ty_102 = 255;
19125pub type _bindgen_ty_102 = crate::types::c_uint;
19126pub const XFRM_POLICY_IN: _bindgen_ty_103 = 0;
19127pub const XFRM_POLICY_OUT: _bindgen_ty_103 = 1;
19128pub const XFRM_POLICY_FWD: _bindgen_ty_103 = 2;
19129pub const XFRM_POLICY_MASK: _bindgen_ty_103 = 3;
19130pub const XFRM_POLICY_MAX: _bindgen_ty_103 = 3;
19131pub type _bindgen_ty_103 = crate::types::c_uint;
19132pub const xfrm_sa_dir_XFRM_SA_DIR_IN: xfrm_sa_dir = 1;
19133pub const xfrm_sa_dir_XFRM_SA_DIR_OUT: xfrm_sa_dir = 2;
19134pub type xfrm_sa_dir = crate::types::c_uint;
19135pub const XFRM_SHARE_ANY: _bindgen_ty_104 = 0;
19136pub const XFRM_SHARE_SESSION: _bindgen_ty_104 = 1;
19137pub const XFRM_SHARE_USER: _bindgen_ty_104 = 2;
19138pub const XFRM_SHARE_UNIQUE: _bindgen_ty_104 = 3;
19139pub type _bindgen_ty_104 = crate::types::c_uint;
19140pub const XFRM_MSG_BASE: _bindgen_ty_105 = 16;
19141pub const XFRM_MSG_NEWSA: _bindgen_ty_105 = 16;
19142pub const XFRM_MSG_DELSA: _bindgen_ty_105 = 17;
19143pub const XFRM_MSG_GETSA: _bindgen_ty_105 = 18;
19144pub const XFRM_MSG_NEWPOLICY: _bindgen_ty_105 = 19;
19145pub const XFRM_MSG_DELPOLICY: _bindgen_ty_105 = 20;
19146pub const XFRM_MSG_GETPOLICY: _bindgen_ty_105 = 21;
19147pub const XFRM_MSG_ALLOCSPI: _bindgen_ty_105 = 22;
19148pub const XFRM_MSG_ACQUIRE: _bindgen_ty_105 = 23;
19149pub const XFRM_MSG_EXPIRE: _bindgen_ty_105 = 24;
19150pub const XFRM_MSG_UPDPOLICY: _bindgen_ty_105 = 25;
19151pub const XFRM_MSG_UPDSA: _bindgen_ty_105 = 26;
19152pub const XFRM_MSG_POLEXPIRE: _bindgen_ty_105 = 27;
19153pub const XFRM_MSG_FLUSHSA: _bindgen_ty_105 = 28;
19154pub const XFRM_MSG_FLUSHPOLICY: _bindgen_ty_105 = 29;
19155pub const XFRM_MSG_NEWAE: _bindgen_ty_105 = 30;
19156pub const XFRM_MSG_GETAE: _bindgen_ty_105 = 31;
19157pub const XFRM_MSG_REPORT: _bindgen_ty_105 = 32;
19158pub const XFRM_MSG_MIGRATE: _bindgen_ty_105 = 33;
19159pub const XFRM_MSG_NEWSADINFO: _bindgen_ty_105 = 34;
19160pub const XFRM_MSG_GETSADINFO: _bindgen_ty_105 = 35;
19161pub const XFRM_MSG_NEWSPDINFO: _bindgen_ty_105 = 36;
19162pub const XFRM_MSG_GETSPDINFO: _bindgen_ty_105 = 37;
19163pub const XFRM_MSG_MAPPING: _bindgen_ty_105 = 38;
19164pub const XFRM_MSG_SETDEFAULT: _bindgen_ty_105 = 39;
19165pub const XFRM_MSG_GETDEFAULT: _bindgen_ty_105 = 40;
19166pub const __XFRM_MSG_MAX: _bindgen_ty_105 = 41;
19167pub type _bindgen_ty_105 = crate::types::c_uint;
19168#[repr(C)]
19169#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19170pub struct xfrm_user_sec_ctx {
19171    pub len: __u16,
19172    pub exttype: __u16,
19173    pub ctx_alg: __u8,
19174    pub ctx_doi: __u8,
19175    pub ctx_len: __u16,
19176}
19177#[repr(C)]
19178#[derive(Copy, Clone)]
19179pub struct xfrm_user_tmpl {
19180    pub id: xfrm_id,
19181    pub family: __u16,
19182    pub __bindgen_padding_0: [u8; 2usize],
19183    pub saddr: xfrm_address_t,
19184    pub reqid: __u32,
19185    pub mode: __u8,
19186    pub share: __u8,
19187    pub optional: __u8,
19188    pub __bindgen_padding_1: u8,
19189    pub aalgos: __u32,
19190    pub ealgos: __u32,
19191    pub calgos: __u32,
19192}
19193impl Default for xfrm_user_tmpl {
19194    fn default() -> Self {
19195        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19196        unsafe {
19197            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19198            s.assume_init()
19199        }
19200    }
19201}
19202#[repr(C)]
19203#[derive(Copy, Clone)]
19204pub struct xfrm_encap_tmpl {
19205    pub encap_type: __u16,
19206    pub encap_sport: __be16,
19207    pub encap_dport: __be16,
19208    pub __bindgen_padding_0: [u8; 2usize],
19209    pub encap_oa: xfrm_address_t,
19210}
19211impl Default for xfrm_encap_tmpl {
19212    fn default() -> Self {
19213        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19214        unsafe {
19215            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19216            s.assume_init()
19217        }
19218    }
19219}
19220pub const xfrm_ae_ftype_t_XFRM_AE_UNSPEC: xfrm_ae_ftype_t = 0;
19221pub const xfrm_ae_ftype_t_XFRM_AE_RTHR: xfrm_ae_ftype_t = 1;
19222pub const xfrm_ae_ftype_t_XFRM_AE_RVAL: xfrm_ae_ftype_t = 2;
19223pub const xfrm_ae_ftype_t_XFRM_AE_LVAL: xfrm_ae_ftype_t = 4;
19224pub const xfrm_ae_ftype_t_XFRM_AE_ETHR: xfrm_ae_ftype_t = 8;
19225pub const xfrm_ae_ftype_t_XFRM_AE_CR: xfrm_ae_ftype_t = 16;
19226pub const xfrm_ae_ftype_t_XFRM_AE_CE: xfrm_ae_ftype_t = 32;
19227pub const xfrm_ae_ftype_t_XFRM_AE_CU: xfrm_ae_ftype_t = 64;
19228pub const xfrm_ae_ftype_t___XFRM_AE_MAX: xfrm_ae_ftype_t = 65;
19229pub type xfrm_ae_ftype_t = crate::types::c_uint;
19230#[repr(C)]
19231#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19232pub struct xfrm_userpolicy_type {
19233    pub type_: __u8,
19234    pub __bindgen_padding_0: u8,
19235    pub reserved1: __u16,
19236    pub reserved2: __u8,
19237    pub __bindgen_padding_1: u8,
19238}
19239pub const xfrm_attr_type_t_XFRMA_UNSPEC: xfrm_attr_type_t = 0;
19240pub const xfrm_attr_type_t_XFRMA_ALG_AUTH: xfrm_attr_type_t = 1;
19241pub const xfrm_attr_type_t_XFRMA_ALG_CRYPT: xfrm_attr_type_t = 2;
19242pub const xfrm_attr_type_t_XFRMA_ALG_COMP: xfrm_attr_type_t = 3;
19243pub const xfrm_attr_type_t_XFRMA_ENCAP: xfrm_attr_type_t = 4;
19244pub const xfrm_attr_type_t_XFRMA_TMPL: xfrm_attr_type_t = 5;
19245pub const xfrm_attr_type_t_XFRMA_SA: xfrm_attr_type_t = 6;
19246pub const xfrm_attr_type_t_XFRMA_POLICY: xfrm_attr_type_t = 7;
19247pub const xfrm_attr_type_t_XFRMA_SEC_CTX: xfrm_attr_type_t = 8;
19248pub const xfrm_attr_type_t_XFRMA_LTIME_VAL: xfrm_attr_type_t = 9;
19249pub const xfrm_attr_type_t_XFRMA_REPLAY_VAL: xfrm_attr_type_t = 10;
19250pub const xfrm_attr_type_t_XFRMA_REPLAY_THRESH: xfrm_attr_type_t = 11;
19251pub const xfrm_attr_type_t_XFRMA_ETIMER_THRESH: xfrm_attr_type_t = 12;
19252pub const xfrm_attr_type_t_XFRMA_SRCADDR: xfrm_attr_type_t = 13;
19253pub const xfrm_attr_type_t_XFRMA_COADDR: xfrm_attr_type_t = 14;
19254pub const xfrm_attr_type_t_XFRMA_LASTUSED: xfrm_attr_type_t = 15;
19255pub const xfrm_attr_type_t_XFRMA_POLICY_TYPE: xfrm_attr_type_t = 16;
19256pub const xfrm_attr_type_t_XFRMA_MIGRATE: xfrm_attr_type_t = 17;
19257pub const xfrm_attr_type_t_XFRMA_ALG_AEAD: xfrm_attr_type_t = 18;
19258pub const xfrm_attr_type_t_XFRMA_KMADDRESS: xfrm_attr_type_t = 19;
19259pub const xfrm_attr_type_t_XFRMA_ALG_AUTH_TRUNC: xfrm_attr_type_t = 20;
19260pub const xfrm_attr_type_t_XFRMA_MARK: xfrm_attr_type_t = 21;
19261pub const xfrm_attr_type_t_XFRMA_TFCPAD: xfrm_attr_type_t = 22;
19262pub const xfrm_attr_type_t_XFRMA_REPLAY_ESN_VAL: xfrm_attr_type_t = 23;
19263pub const xfrm_attr_type_t_XFRMA_SA_EXTRA_FLAGS: xfrm_attr_type_t = 24;
19264pub const xfrm_attr_type_t_XFRMA_PROTO: xfrm_attr_type_t = 25;
19265pub const xfrm_attr_type_t_XFRMA_ADDRESS_FILTER: xfrm_attr_type_t = 26;
19266pub const xfrm_attr_type_t_XFRMA_PAD: xfrm_attr_type_t = 27;
19267pub const xfrm_attr_type_t_XFRMA_OFFLOAD_DEV: xfrm_attr_type_t = 28;
19268pub const xfrm_attr_type_t_XFRMA_SET_MARK: xfrm_attr_type_t = 29;
19269pub const xfrm_attr_type_t_XFRMA_SET_MARK_MASK: xfrm_attr_type_t = 30;
19270pub const xfrm_attr_type_t_XFRMA_IF_ID: xfrm_attr_type_t = 31;
19271pub const xfrm_attr_type_t_XFRMA_MTIMER_THRESH: xfrm_attr_type_t = 32;
19272pub const xfrm_attr_type_t_XFRMA_SA_DIR: xfrm_attr_type_t = 33;
19273pub const xfrm_attr_type_t_XFRMA_NAT_KEEPALIVE_INTERVAL: xfrm_attr_type_t = 34;
19274pub const xfrm_attr_type_t___XFRMA_MAX: xfrm_attr_type_t = 35;
19275pub type xfrm_attr_type_t = crate::types::c_uint;
19276#[repr(C)]
19277#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19278pub struct xfrm_mark {
19279    pub v: __u32,
19280    pub m: __u32,
19281}
19282pub const xfrm_sadattr_type_t_XFRMA_SAD_UNSPEC: xfrm_sadattr_type_t = 0;
19283pub const xfrm_sadattr_type_t_XFRMA_SAD_CNT: xfrm_sadattr_type_t = 1;
19284pub const xfrm_sadattr_type_t_XFRMA_SAD_HINFO: xfrm_sadattr_type_t = 2;
19285pub const xfrm_sadattr_type_t___XFRMA_SAD_MAX: xfrm_sadattr_type_t = 3;
19286pub type xfrm_sadattr_type_t = crate::types::c_uint;
19287#[repr(C)]
19288#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19289pub struct xfrmu_sadhinfo {
19290    pub sadhcnt: __u32,
19291    pub sadhmcnt: __u32,
19292}
19293pub const xfrm_spdattr_type_t_XFRMA_SPD_UNSPEC: xfrm_spdattr_type_t = 0;
19294pub const xfrm_spdattr_type_t_XFRMA_SPD_INFO: xfrm_spdattr_type_t = 1;
19295pub const xfrm_spdattr_type_t_XFRMA_SPD_HINFO: xfrm_spdattr_type_t = 2;
19296pub const xfrm_spdattr_type_t_XFRMA_SPD_IPV4_HTHRESH: xfrm_spdattr_type_t = 3;
19297pub const xfrm_spdattr_type_t_XFRMA_SPD_IPV6_HTHRESH: xfrm_spdattr_type_t = 4;
19298pub const xfrm_spdattr_type_t___XFRMA_SPD_MAX: xfrm_spdattr_type_t = 5;
19299pub type xfrm_spdattr_type_t = crate::types::c_uint;
19300#[repr(C)]
19301#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19302pub struct xfrmu_spdinfo {
19303    pub incnt: __u32,
19304    pub outcnt: __u32,
19305    pub fwdcnt: __u32,
19306    pub inscnt: __u32,
19307    pub outscnt: __u32,
19308    pub fwdscnt: __u32,
19309}
19310#[repr(C)]
19311#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19312pub struct xfrmu_spdhinfo {
19313    pub spdhcnt: __u32,
19314    pub spdhmcnt: __u32,
19315}
19316#[repr(C)]
19317#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19318pub struct xfrmu_spdhthresh {
19319    pub lbits: __u8,
19320    pub rbits: __u8,
19321}
19322#[repr(C)]
19323#[derive(Copy, Clone)]
19324pub struct xfrm_usersa_info {
19325    pub sel: xfrm_selector,
19326    pub id: xfrm_id,
19327    pub saddr: xfrm_address_t,
19328    pub lft: xfrm_lifetime_cfg,
19329    pub curlft: xfrm_lifetime_cur,
19330    pub stats: xfrm_stats,
19331    pub seq: __u32,
19332    pub reqid: __u32,
19333    pub family: __u16,
19334    pub mode: __u8,
19335    pub replay_window: __u8,
19336    pub flags: __u8,
19337    pub __bindgen_padding_0: [u8; 7usize],
19338}
19339impl Default for xfrm_usersa_info {
19340    fn default() -> Self {
19341        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19342        unsafe {
19343            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19344            s.assume_init()
19345        }
19346    }
19347}
19348#[repr(C)]
19349#[derive(Copy, Clone)]
19350pub struct xfrm_usersa_id {
19351    pub daddr: xfrm_address_t,
19352    pub spi: __be32,
19353    pub family: __u16,
19354    pub proto: __u8,
19355    pub __bindgen_padding_0: u8,
19356}
19357impl Default for xfrm_usersa_id {
19358    fn default() -> Self {
19359        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19360        unsafe {
19361            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19362            s.assume_init()
19363        }
19364    }
19365}
19366#[repr(C)]
19367#[derive(Copy, Clone)]
19368pub struct xfrm_aevent_id {
19369    pub sa_id: xfrm_usersa_id,
19370    pub saddr: xfrm_address_t,
19371    pub flags: __u32,
19372    pub reqid: __u32,
19373}
19374impl Default for xfrm_aevent_id {
19375    fn default() -> Self {
19376        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19377        unsafe {
19378            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19379            s.assume_init()
19380        }
19381    }
19382}
19383#[repr(C)]
19384#[derive(Copy, Clone)]
19385pub struct xfrm_userspi_info {
19386    pub info: xfrm_usersa_info,
19387    pub min: __u32,
19388    pub max: __u32,
19389}
19390impl Default for xfrm_userspi_info {
19391    fn default() -> Self {
19392        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19393        unsafe {
19394            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19395            s.assume_init()
19396        }
19397    }
19398}
19399#[repr(C)]
19400#[derive(Copy, Clone)]
19401pub struct xfrm_userpolicy_info {
19402    pub sel: xfrm_selector,
19403    pub lft: xfrm_lifetime_cfg,
19404    pub curlft: xfrm_lifetime_cur,
19405    pub priority: __u32,
19406    pub index: __u32,
19407    pub dir: __u8,
19408    pub action: __u8,
19409    pub flags: __u8,
19410    pub share: __u8,
19411    pub __bindgen_padding_0: [u8; 4usize],
19412}
19413impl Default for xfrm_userpolicy_info {
19414    fn default() -> Self {
19415        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19416        unsafe {
19417            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19418            s.assume_init()
19419        }
19420    }
19421}
19422#[repr(C)]
19423#[derive(Copy, Clone)]
19424pub struct xfrm_userpolicy_id {
19425    pub sel: xfrm_selector,
19426    pub index: __u32,
19427    pub dir: __u8,
19428    pub __bindgen_padding_0: [u8; 3usize],
19429}
19430impl Default for xfrm_userpolicy_id {
19431    fn default() -> Self {
19432        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19433        unsafe {
19434            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19435            s.assume_init()
19436        }
19437    }
19438}
19439#[repr(C)]
19440#[derive(Copy, Clone)]
19441pub struct xfrm_user_acquire {
19442    pub id: xfrm_id,
19443    pub saddr: xfrm_address_t,
19444    pub sel: xfrm_selector,
19445    pub policy: xfrm_userpolicy_info,
19446    pub aalgos: __u32,
19447    pub ealgos: __u32,
19448    pub calgos: __u32,
19449    pub seq: __u32,
19450}
19451impl Default for xfrm_user_acquire {
19452    fn default() -> Self {
19453        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19454        unsafe {
19455            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19456            s.assume_init()
19457        }
19458    }
19459}
19460#[repr(C)]
19461#[derive(Copy, Clone)]
19462pub struct xfrm_user_expire {
19463    pub state: xfrm_usersa_info,
19464    pub hard: __u8,
19465    pub __bindgen_padding_0: [u8; 7usize],
19466}
19467impl Default for xfrm_user_expire {
19468    fn default() -> Self {
19469        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19470        unsafe {
19471            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19472            s.assume_init()
19473        }
19474    }
19475}
19476#[repr(C)]
19477#[derive(Copy, Clone)]
19478pub struct xfrm_user_polexpire {
19479    pub pol: xfrm_userpolicy_info,
19480    pub hard: __u8,
19481    pub __bindgen_padding_0: [u8; 7usize],
19482}
19483impl Default for xfrm_user_polexpire {
19484    fn default() -> Self {
19485        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19486        unsafe {
19487            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19488            s.assume_init()
19489        }
19490    }
19491}
19492#[repr(C)]
19493#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19494pub struct xfrm_usersa_flush {
19495    pub proto: __u8,
19496}
19497#[repr(C)]
19498#[derive(Copy, Clone)]
19499pub struct xfrm_user_report {
19500    pub proto: __u8,
19501    pub __bindgen_padding_0: [u8; 3usize],
19502    pub sel: xfrm_selector,
19503}
19504impl Default for xfrm_user_report {
19505    fn default() -> Self {
19506        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19507        unsafe {
19508            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19509            s.assume_init()
19510        }
19511    }
19512}
19513#[repr(C)]
19514#[derive(Copy, Clone)]
19515pub struct xfrm_user_kmaddress {
19516    pub local: xfrm_address_t,
19517    pub remote: xfrm_address_t,
19518    pub reserved: __u32,
19519    pub family: __u16,
19520    pub __bindgen_padding_0: [u8; 2usize],
19521}
19522impl Default for xfrm_user_kmaddress {
19523    fn default() -> Self {
19524        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19525        unsafe {
19526            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19527            s.assume_init()
19528        }
19529    }
19530}
19531#[repr(C)]
19532#[derive(Copy, Clone)]
19533pub struct xfrm_user_migrate {
19534    pub old_daddr: xfrm_address_t,
19535    pub old_saddr: xfrm_address_t,
19536    pub new_daddr: xfrm_address_t,
19537    pub new_saddr: xfrm_address_t,
19538    pub proto: __u8,
19539    pub mode: __u8,
19540    pub reserved: __u16,
19541    pub reqid: __u32,
19542    pub old_family: __u16,
19543    pub new_family: __u16,
19544}
19545impl Default for xfrm_user_migrate {
19546    fn default() -> Self {
19547        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19548        unsafe {
19549            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19550            s.assume_init()
19551        }
19552    }
19553}
19554#[repr(C)]
19555#[derive(Copy, Clone)]
19556pub struct xfrm_user_mapping {
19557    pub id: xfrm_usersa_id,
19558    pub reqid: __u32,
19559    pub old_saddr: xfrm_address_t,
19560    pub new_saddr: xfrm_address_t,
19561    pub old_sport: __be16,
19562    pub new_sport: __be16,
19563}
19564impl Default for xfrm_user_mapping {
19565    fn default() -> Self {
19566        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19567        unsafe {
19568            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19569            s.assume_init()
19570        }
19571    }
19572}
19573#[repr(C)]
19574#[derive(Copy, Clone)]
19575pub struct xfrm_address_filter {
19576    pub saddr: xfrm_address_t,
19577    pub daddr: xfrm_address_t,
19578    pub family: __u16,
19579    pub splen: __u8,
19580    pub dplen: __u8,
19581}
19582impl Default for xfrm_address_filter {
19583    fn default() -> Self {
19584        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19585        unsafe {
19586            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19587            s.assume_init()
19588        }
19589    }
19590}
19591#[repr(C)]
19592#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19593pub struct xfrm_user_offload {
19594    pub ifindex: crate::types::c_int,
19595    pub flags: __u8,
19596    pub __bindgen_padding_0: [u8; 3usize],
19597}
19598#[repr(C)]
19599#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19600pub struct xfrm_userpolicy_default {
19601    pub in_: __u8,
19602    pub fwd: __u8,
19603    pub out: __u8,
19604}
19605pub const xfrm_nlgroups_XFRMNLGRP_NONE: xfrm_nlgroups = 0;
19606pub const xfrm_nlgroups_XFRMNLGRP_ACQUIRE: xfrm_nlgroups = 1;
19607pub const xfrm_nlgroups_XFRMNLGRP_EXPIRE: xfrm_nlgroups = 2;
19608pub const xfrm_nlgroups_XFRMNLGRP_SA: xfrm_nlgroups = 3;
19609pub const xfrm_nlgroups_XFRMNLGRP_POLICY: xfrm_nlgroups = 4;
19610pub const xfrm_nlgroups_XFRMNLGRP_AEVENTS: xfrm_nlgroups = 5;
19611pub const xfrm_nlgroups_XFRMNLGRP_REPORT: xfrm_nlgroups = 6;
19612pub const xfrm_nlgroups_XFRMNLGRP_MIGRATE: xfrm_nlgroups = 7;
19613pub const xfrm_nlgroups_XFRMNLGRP_MAPPING: xfrm_nlgroups = 8;
19614pub const xfrm_nlgroups___XFRMNLGRP_MAX: xfrm_nlgroups = 9;
19615pub type xfrm_nlgroups = crate::types::c_uint;
19616#[repr(C)]
19617#[derive(Copy, Clone)]
19618pub struct ucontext {
19619    pub uc_flags: crate::types::c_ulong,
19620    pub uc_link: uref<ucontext>,
19621    pub uc_stack: stack_t,
19622    pub uc_mcontext: sigcontext,
19623    pub uc_sigmask: sigset_t,
19624}
19625impl Default for ucontext {
19626    fn default() -> Self {
19627        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19628        unsafe {
19629            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19630            s.assume_init()
19631        }
19632    }
19633}
19634pub const bpf_cond_pseudo_jmp_BPF_MAY_GOTO: bpf_cond_pseudo_jmp = 0;
19635pub type bpf_cond_pseudo_jmp = crate::types::c_uint;
19636pub const BPF_REG_0: _bindgen_ty_106 = 0;
19637pub const BPF_REG_1: _bindgen_ty_106 = 1;
19638pub const BPF_REG_2: _bindgen_ty_106 = 2;
19639pub const BPF_REG_3: _bindgen_ty_106 = 3;
19640pub const BPF_REG_4: _bindgen_ty_106 = 4;
19641pub const BPF_REG_5: _bindgen_ty_106 = 5;
19642pub const BPF_REG_6: _bindgen_ty_106 = 6;
19643pub const BPF_REG_7: _bindgen_ty_106 = 7;
19644pub const BPF_REG_8: _bindgen_ty_106 = 8;
19645pub const BPF_REG_9: _bindgen_ty_106 = 9;
19646pub const BPF_REG_10: _bindgen_ty_106 = 10;
19647pub const __MAX_BPF_REG: _bindgen_ty_106 = 11;
19648pub type _bindgen_ty_106 = crate::types::c_uint;
19649#[repr(C)]
19650#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
19651pub struct bpf_insn {
19652    pub code: __u8,
19653    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
19654    pub off: __s16,
19655    pub imm: __s32,
19656}
19657impl bpf_insn {
19658    #[inline]
19659    pub fn dst_reg(&self) -> __u8 {
19660        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 4u8>() as u8) }
19661    }
19662    #[inline]
19663    pub fn set_dst_reg(&mut self, val: __u8) {
19664        unsafe {
19665            let val: u8 = val as _;
19666            self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
19667        }
19668    }
19669    #[inline]
19670    pub unsafe fn dst_reg_raw(this: *const Self) -> __u8 {
19671        unsafe {
19672            ::std::mem::transmute(
19673                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
19674                    ::std::ptr::addr_of!((*this)._bitfield_1),
19675                ) as u8,
19676            )
19677        }
19678    }
19679    #[inline]
19680    pub unsafe fn set_dst_reg_raw(this: *mut Self, val: __u8) {
19681        unsafe {
19682            let val: u8 = val as _;
19683            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
19684                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19685                val as u64,
19686            )
19687        }
19688    }
19689    #[inline]
19690    pub fn src_reg(&self) -> __u8 {
19691        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 4u8>() as u8) }
19692    }
19693    #[inline]
19694    pub fn set_src_reg(&mut self, val: __u8) {
19695        unsafe {
19696            let val: u8 = val as _;
19697            self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
19698        }
19699    }
19700    #[inline]
19701    pub unsafe fn src_reg_raw(this: *const Self) -> __u8 {
19702        unsafe {
19703            ::std::mem::transmute(
19704                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
19705                    ::std::ptr::addr_of!((*this)._bitfield_1),
19706                ) as u8,
19707            )
19708        }
19709    }
19710    #[inline]
19711    pub unsafe fn set_src_reg_raw(this: *mut Self, val: __u8) {
19712        unsafe {
19713            let val: u8 = val as _;
19714            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
19715                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19716                val as u64,
19717            )
19718        }
19719    }
19720    #[inline]
19721    pub fn new_bitfield_1(dst_reg: __u8, src_reg: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
19722        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
19723        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
19724            let dst_reg: u8 = dst_reg as _;
19725            dst_reg as u64
19726        });
19727        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
19728            let src_reg: u8 = src_reg as _;
19729            src_reg as u64
19730        });
19731        __bindgen_bitfield_unit
19732    }
19733}
19734#[repr(C)]
19735#[derive(Debug, Default)]
19736pub struct bpf_lpm_trie_key {
19737    pub prefixlen: __u32,
19738    pub data: __IncompleteArrayField<__u8>,
19739}
19740#[repr(C)]
19741#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19742pub struct bpf_lpm_trie_key_hdr {
19743    pub prefixlen: __u32,
19744}
19745#[repr(C)]
19746pub struct bpf_lpm_trie_key_u8 {
19747    pub __bindgen_anon_1: bpf_lpm_trie_key_u8__bindgen_ty_1,
19748    pub data: __IncompleteArrayField<__u8>,
19749}
19750#[repr(C)]
19751#[derive(Copy, Clone)]
19752pub union bpf_lpm_trie_key_u8__bindgen_ty_1 {
19753    pub hdr: bpf_lpm_trie_key_hdr,
19754    pub prefixlen: __u32,
19755}
19756impl Default for bpf_lpm_trie_key_u8__bindgen_ty_1 {
19757    fn default() -> Self {
19758        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19759        unsafe {
19760            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19761            s.assume_init()
19762        }
19763    }
19764}
19765impl Default for bpf_lpm_trie_key_u8 {
19766    fn default() -> Self {
19767        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19768        unsafe {
19769            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19770            s.assume_init()
19771        }
19772    }
19773}
19774#[repr(C)]
19775#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19776pub struct bpf_cgroup_storage_key {
19777    pub cgroup_inode_id: __u64,
19778    pub attach_type: __u32,
19779    pub __bindgen_padding_0: [u8; 4usize],
19780}
19781pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_ORDER_UNSPEC: bpf_cgroup_iter_order = 0;
19782pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_SELF_ONLY: bpf_cgroup_iter_order = 1;
19783pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_DESCENDANTS_PRE: bpf_cgroup_iter_order = 2;
19784pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_DESCENDANTS_POST: bpf_cgroup_iter_order = 3;
19785pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_ANCESTORS_UP: bpf_cgroup_iter_order = 4;
19786pub type bpf_cgroup_iter_order = crate::types::c_uint;
19787#[repr(C)]
19788#[derive(Copy, Clone)]
19789pub union bpf_iter_link_info {
19790    pub map: bpf_iter_link_info__bindgen_ty_1,
19791    pub cgroup: bpf_iter_link_info__bindgen_ty_2,
19792    pub task: bpf_iter_link_info__bindgen_ty_3,
19793}
19794#[repr(C)]
19795#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19796pub struct bpf_iter_link_info__bindgen_ty_1 {
19797    pub map_fd: __u32,
19798}
19799#[repr(C)]
19800#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19801pub struct bpf_iter_link_info__bindgen_ty_2 {
19802    pub order: bpf_cgroup_iter_order,
19803    pub cgroup_fd: __u32,
19804    pub cgroup_id: __u64,
19805}
19806impl Default for bpf_iter_link_info__bindgen_ty_2 {
19807    fn default() -> Self {
19808        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19809        unsafe {
19810            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19811            s.assume_init()
19812        }
19813    }
19814}
19815#[repr(C)]
19816#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19817pub struct bpf_iter_link_info__bindgen_ty_3 {
19818    pub tid: __u32,
19819    pub pid: __u32,
19820    pub pid_fd: __u32,
19821}
19822impl Default for bpf_iter_link_info {
19823    fn default() -> Self {
19824        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19825        unsafe {
19826            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19827            s.assume_init()
19828        }
19829    }
19830}
19831pub const bpf_cmd_BPF_MAP_CREATE: bpf_cmd = 0;
19832pub const bpf_cmd_BPF_MAP_LOOKUP_ELEM: bpf_cmd = 1;
19833pub const bpf_cmd_BPF_MAP_UPDATE_ELEM: bpf_cmd = 2;
19834pub const bpf_cmd_BPF_MAP_DELETE_ELEM: bpf_cmd = 3;
19835pub const bpf_cmd_BPF_MAP_GET_NEXT_KEY: bpf_cmd = 4;
19836pub const bpf_cmd_BPF_PROG_LOAD: bpf_cmd = 5;
19837pub const bpf_cmd_BPF_OBJ_PIN: bpf_cmd = 6;
19838pub const bpf_cmd_BPF_OBJ_GET: bpf_cmd = 7;
19839pub const bpf_cmd_BPF_PROG_ATTACH: bpf_cmd = 8;
19840pub const bpf_cmd_BPF_PROG_DETACH: bpf_cmd = 9;
19841pub const bpf_cmd_BPF_PROG_TEST_RUN: bpf_cmd = 10;
19842pub const bpf_cmd_BPF_PROG_RUN: bpf_cmd = 10;
19843pub const bpf_cmd_BPF_PROG_GET_NEXT_ID: bpf_cmd = 11;
19844pub const bpf_cmd_BPF_MAP_GET_NEXT_ID: bpf_cmd = 12;
19845pub const bpf_cmd_BPF_PROG_GET_FD_BY_ID: bpf_cmd = 13;
19846pub const bpf_cmd_BPF_MAP_GET_FD_BY_ID: bpf_cmd = 14;
19847pub const bpf_cmd_BPF_OBJ_GET_INFO_BY_FD: bpf_cmd = 15;
19848pub const bpf_cmd_BPF_PROG_QUERY: bpf_cmd = 16;
19849pub const bpf_cmd_BPF_RAW_TRACEPOINT_OPEN: bpf_cmd = 17;
19850pub const bpf_cmd_BPF_BTF_LOAD: bpf_cmd = 18;
19851pub const bpf_cmd_BPF_BTF_GET_FD_BY_ID: bpf_cmd = 19;
19852pub const bpf_cmd_BPF_TASK_FD_QUERY: bpf_cmd = 20;
19853pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_ELEM: bpf_cmd = 21;
19854pub const bpf_cmd_BPF_MAP_FREEZE: bpf_cmd = 22;
19855pub const bpf_cmd_BPF_BTF_GET_NEXT_ID: bpf_cmd = 23;
19856pub const bpf_cmd_BPF_MAP_LOOKUP_BATCH: bpf_cmd = 24;
19857pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_BATCH: bpf_cmd = 25;
19858pub const bpf_cmd_BPF_MAP_UPDATE_BATCH: bpf_cmd = 26;
19859pub const bpf_cmd_BPF_MAP_DELETE_BATCH: bpf_cmd = 27;
19860pub const bpf_cmd_BPF_LINK_CREATE: bpf_cmd = 28;
19861pub const bpf_cmd_BPF_LINK_UPDATE: bpf_cmd = 29;
19862pub const bpf_cmd_BPF_LINK_GET_FD_BY_ID: bpf_cmd = 30;
19863pub const bpf_cmd_BPF_LINK_GET_NEXT_ID: bpf_cmd = 31;
19864pub const bpf_cmd_BPF_ENABLE_STATS: bpf_cmd = 32;
19865pub const bpf_cmd_BPF_ITER_CREATE: bpf_cmd = 33;
19866pub const bpf_cmd_BPF_LINK_DETACH: bpf_cmd = 34;
19867pub const bpf_cmd_BPF_PROG_BIND_MAP: bpf_cmd = 35;
19868pub const bpf_cmd_BPF_TOKEN_CREATE: bpf_cmd = 36;
19869pub const bpf_cmd___MAX_BPF_CMD: bpf_cmd = 37;
19870pub type bpf_cmd = crate::types::c_uint;
19871pub const bpf_map_type_BPF_MAP_TYPE_UNSPEC: bpf_map_type = 0;
19872pub const bpf_map_type_BPF_MAP_TYPE_HASH: bpf_map_type = 1;
19873pub const bpf_map_type_BPF_MAP_TYPE_ARRAY: bpf_map_type = 2;
19874pub const bpf_map_type_BPF_MAP_TYPE_PROG_ARRAY: bpf_map_type = 3;
19875pub const bpf_map_type_BPF_MAP_TYPE_PERF_EVENT_ARRAY: bpf_map_type = 4;
19876pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_HASH: bpf_map_type = 5;
19877pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_ARRAY: bpf_map_type = 6;
19878pub const bpf_map_type_BPF_MAP_TYPE_STACK_TRACE: bpf_map_type = 7;
19879pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_ARRAY: bpf_map_type = 8;
19880pub const bpf_map_type_BPF_MAP_TYPE_LRU_HASH: bpf_map_type = 9;
19881pub const bpf_map_type_BPF_MAP_TYPE_LRU_PERCPU_HASH: bpf_map_type = 10;
19882pub const bpf_map_type_BPF_MAP_TYPE_LPM_TRIE: bpf_map_type = 11;
19883pub const bpf_map_type_BPF_MAP_TYPE_ARRAY_OF_MAPS: bpf_map_type = 12;
19884pub const bpf_map_type_BPF_MAP_TYPE_HASH_OF_MAPS: bpf_map_type = 13;
19885pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP: bpf_map_type = 14;
19886pub const bpf_map_type_BPF_MAP_TYPE_SOCKMAP: bpf_map_type = 15;
19887pub const bpf_map_type_BPF_MAP_TYPE_CPUMAP: bpf_map_type = 16;
19888pub const bpf_map_type_BPF_MAP_TYPE_XSKMAP: bpf_map_type = 17;
19889pub const bpf_map_type_BPF_MAP_TYPE_SOCKHASH: bpf_map_type = 18;
19890pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED: bpf_map_type = 19;
19891pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE: bpf_map_type = 19;
19892pub const bpf_map_type_BPF_MAP_TYPE_REUSEPORT_SOCKARRAY: bpf_map_type = 20;
19893pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE_DEPRECATED: bpf_map_type = 21;
19894pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE: bpf_map_type = 21;
19895pub const bpf_map_type_BPF_MAP_TYPE_QUEUE: bpf_map_type = 22;
19896pub const bpf_map_type_BPF_MAP_TYPE_STACK: bpf_map_type = 23;
19897pub const bpf_map_type_BPF_MAP_TYPE_SK_STORAGE: bpf_map_type = 24;
19898pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP_HASH: bpf_map_type = 25;
19899pub const bpf_map_type_BPF_MAP_TYPE_STRUCT_OPS: bpf_map_type = 26;
19900pub const bpf_map_type_BPF_MAP_TYPE_RINGBUF: bpf_map_type = 27;
19901pub const bpf_map_type_BPF_MAP_TYPE_INODE_STORAGE: bpf_map_type = 28;
19902pub const bpf_map_type_BPF_MAP_TYPE_TASK_STORAGE: bpf_map_type = 29;
19903pub const bpf_map_type_BPF_MAP_TYPE_BLOOM_FILTER: bpf_map_type = 30;
19904pub const bpf_map_type_BPF_MAP_TYPE_USER_RINGBUF: bpf_map_type = 31;
19905pub const bpf_map_type_BPF_MAP_TYPE_CGRP_STORAGE: bpf_map_type = 32;
19906pub const bpf_map_type_BPF_MAP_TYPE_ARENA: bpf_map_type = 33;
19907pub const bpf_map_type___MAX_BPF_MAP_TYPE: bpf_map_type = 34;
19908pub type bpf_map_type = crate::types::c_uint;
19909pub const bpf_prog_type_BPF_PROG_TYPE_UNSPEC: bpf_prog_type = 0;
19910pub const bpf_prog_type_BPF_PROG_TYPE_SOCKET_FILTER: bpf_prog_type = 1;
19911pub const bpf_prog_type_BPF_PROG_TYPE_KPROBE: bpf_prog_type = 2;
19912pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_CLS: bpf_prog_type = 3;
19913pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_ACT: bpf_prog_type = 4;
19914pub const bpf_prog_type_BPF_PROG_TYPE_TRACEPOINT: bpf_prog_type = 5;
19915pub const bpf_prog_type_BPF_PROG_TYPE_XDP: bpf_prog_type = 6;
19916pub const bpf_prog_type_BPF_PROG_TYPE_PERF_EVENT: bpf_prog_type = 7;
19917pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SKB: bpf_prog_type = 8;
19918pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK: bpf_prog_type = 9;
19919pub const bpf_prog_type_BPF_PROG_TYPE_LWT_IN: bpf_prog_type = 10;
19920pub const bpf_prog_type_BPF_PROG_TYPE_LWT_OUT: bpf_prog_type = 11;
19921pub const bpf_prog_type_BPF_PROG_TYPE_LWT_XMIT: bpf_prog_type = 12;
19922pub const bpf_prog_type_BPF_PROG_TYPE_SOCK_OPS: bpf_prog_type = 13;
19923pub const bpf_prog_type_BPF_PROG_TYPE_SK_SKB: bpf_prog_type = 14;
19924pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_DEVICE: bpf_prog_type = 15;
19925pub const bpf_prog_type_BPF_PROG_TYPE_SK_MSG: bpf_prog_type = 16;
19926pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT: bpf_prog_type = 17;
19927pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK_ADDR: bpf_prog_type = 18;
19928pub const bpf_prog_type_BPF_PROG_TYPE_LWT_SEG6LOCAL: bpf_prog_type = 19;
19929pub const bpf_prog_type_BPF_PROG_TYPE_LIRC_MODE2: bpf_prog_type = 20;
19930pub const bpf_prog_type_BPF_PROG_TYPE_SK_REUSEPORT: bpf_prog_type = 21;
19931pub const bpf_prog_type_BPF_PROG_TYPE_FLOW_DISSECTOR: bpf_prog_type = 22;
19932pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SYSCTL: bpf_prog_type = 23;
19933pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE: bpf_prog_type = 24;
19934pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCKOPT: bpf_prog_type = 25;
19935pub const bpf_prog_type_BPF_PROG_TYPE_TRACING: bpf_prog_type = 26;
19936pub const bpf_prog_type_BPF_PROG_TYPE_STRUCT_OPS: bpf_prog_type = 27;
19937pub const bpf_prog_type_BPF_PROG_TYPE_EXT: bpf_prog_type = 28;
19938pub const bpf_prog_type_BPF_PROG_TYPE_LSM: bpf_prog_type = 29;
19939pub const bpf_prog_type_BPF_PROG_TYPE_SK_LOOKUP: bpf_prog_type = 30;
19940pub const bpf_prog_type_BPF_PROG_TYPE_SYSCALL: bpf_prog_type = 31;
19941pub const bpf_prog_type_BPF_PROG_TYPE_NETFILTER: bpf_prog_type = 32;
19942pub const bpf_prog_type___MAX_BPF_PROG_TYPE: bpf_prog_type = 33;
19943pub type bpf_prog_type = crate::types::c_uint;
19944pub const bpf_attach_type_BPF_CGROUP_INET_INGRESS: bpf_attach_type = 0;
19945pub const bpf_attach_type_BPF_CGROUP_INET_EGRESS: bpf_attach_type = 1;
19946pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_CREATE: bpf_attach_type = 2;
19947pub const bpf_attach_type_BPF_CGROUP_SOCK_OPS: bpf_attach_type = 3;
19948pub const bpf_attach_type_BPF_SK_SKB_STREAM_PARSER: bpf_attach_type = 4;
19949pub const bpf_attach_type_BPF_SK_SKB_STREAM_VERDICT: bpf_attach_type = 5;
19950pub const bpf_attach_type_BPF_CGROUP_DEVICE: bpf_attach_type = 6;
19951pub const bpf_attach_type_BPF_SK_MSG_VERDICT: bpf_attach_type = 7;
19952pub const bpf_attach_type_BPF_CGROUP_INET4_BIND: bpf_attach_type = 8;
19953pub const bpf_attach_type_BPF_CGROUP_INET6_BIND: bpf_attach_type = 9;
19954pub const bpf_attach_type_BPF_CGROUP_INET4_CONNECT: bpf_attach_type = 10;
19955pub const bpf_attach_type_BPF_CGROUP_INET6_CONNECT: bpf_attach_type = 11;
19956pub const bpf_attach_type_BPF_CGROUP_INET4_POST_BIND: bpf_attach_type = 12;
19957pub const bpf_attach_type_BPF_CGROUP_INET6_POST_BIND: bpf_attach_type = 13;
19958pub const bpf_attach_type_BPF_CGROUP_UDP4_SENDMSG: bpf_attach_type = 14;
19959pub const bpf_attach_type_BPF_CGROUP_UDP6_SENDMSG: bpf_attach_type = 15;
19960pub const bpf_attach_type_BPF_LIRC_MODE2: bpf_attach_type = 16;
19961pub const bpf_attach_type_BPF_FLOW_DISSECTOR: bpf_attach_type = 17;
19962pub const bpf_attach_type_BPF_CGROUP_SYSCTL: bpf_attach_type = 18;
19963pub const bpf_attach_type_BPF_CGROUP_UDP4_RECVMSG: bpf_attach_type = 19;
19964pub const bpf_attach_type_BPF_CGROUP_UDP6_RECVMSG: bpf_attach_type = 20;
19965pub const bpf_attach_type_BPF_CGROUP_GETSOCKOPT: bpf_attach_type = 21;
19966pub const bpf_attach_type_BPF_CGROUP_SETSOCKOPT: bpf_attach_type = 22;
19967pub const bpf_attach_type_BPF_TRACE_RAW_TP: bpf_attach_type = 23;
19968pub const bpf_attach_type_BPF_TRACE_FENTRY: bpf_attach_type = 24;
19969pub const bpf_attach_type_BPF_TRACE_FEXIT: bpf_attach_type = 25;
19970pub const bpf_attach_type_BPF_MODIFY_RETURN: bpf_attach_type = 26;
19971pub const bpf_attach_type_BPF_LSM_MAC: bpf_attach_type = 27;
19972pub const bpf_attach_type_BPF_TRACE_ITER: bpf_attach_type = 28;
19973pub const bpf_attach_type_BPF_CGROUP_INET4_GETPEERNAME: bpf_attach_type = 29;
19974pub const bpf_attach_type_BPF_CGROUP_INET6_GETPEERNAME: bpf_attach_type = 30;
19975pub const bpf_attach_type_BPF_CGROUP_INET4_GETSOCKNAME: bpf_attach_type = 31;
19976pub const bpf_attach_type_BPF_CGROUP_INET6_GETSOCKNAME: bpf_attach_type = 32;
19977pub const bpf_attach_type_BPF_XDP_DEVMAP: bpf_attach_type = 33;
19978pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_RELEASE: bpf_attach_type = 34;
19979pub const bpf_attach_type_BPF_XDP_CPUMAP: bpf_attach_type = 35;
19980pub const bpf_attach_type_BPF_SK_LOOKUP: bpf_attach_type = 36;
19981pub const bpf_attach_type_BPF_XDP: bpf_attach_type = 37;
19982pub const bpf_attach_type_BPF_SK_SKB_VERDICT: bpf_attach_type = 38;
19983pub const bpf_attach_type_BPF_SK_REUSEPORT_SELECT: bpf_attach_type = 39;
19984pub const bpf_attach_type_BPF_SK_REUSEPORT_SELECT_OR_MIGRATE: bpf_attach_type = 40;
19985pub const bpf_attach_type_BPF_PERF_EVENT: bpf_attach_type = 41;
19986pub const bpf_attach_type_BPF_TRACE_KPROBE_MULTI: bpf_attach_type = 42;
19987pub const bpf_attach_type_BPF_LSM_CGROUP: bpf_attach_type = 43;
19988pub const bpf_attach_type_BPF_STRUCT_OPS: bpf_attach_type = 44;
19989pub const bpf_attach_type_BPF_NETFILTER: bpf_attach_type = 45;
19990pub const bpf_attach_type_BPF_TCX_INGRESS: bpf_attach_type = 46;
19991pub const bpf_attach_type_BPF_TCX_EGRESS: bpf_attach_type = 47;
19992pub const bpf_attach_type_BPF_TRACE_UPROBE_MULTI: bpf_attach_type = 48;
19993pub const bpf_attach_type_BPF_CGROUP_UNIX_CONNECT: bpf_attach_type = 49;
19994pub const bpf_attach_type_BPF_CGROUP_UNIX_SENDMSG: bpf_attach_type = 50;
19995pub const bpf_attach_type_BPF_CGROUP_UNIX_RECVMSG: bpf_attach_type = 51;
19996pub const bpf_attach_type_BPF_CGROUP_UNIX_GETPEERNAME: bpf_attach_type = 52;
19997pub const bpf_attach_type_BPF_CGROUP_UNIX_GETSOCKNAME: bpf_attach_type = 53;
19998pub const bpf_attach_type_BPF_NETKIT_PRIMARY: bpf_attach_type = 54;
19999pub const bpf_attach_type_BPF_NETKIT_PEER: bpf_attach_type = 55;
20000pub const bpf_attach_type_BPF_TRACE_KPROBE_SESSION: bpf_attach_type = 56;
20001pub const bpf_attach_type___MAX_BPF_ATTACH_TYPE: bpf_attach_type = 57;
20002pub type bpf_attach_type = crate::types::c_uint;
20003pub const bpf_link_type_BPF_LINK_TYPE_UNSPEC: bpf_link_type = 0;
20004pub const bpf_link_type_BPF_LINK_TYPE_RAW_TRACEPOINT: bpf_link_type = 1;
20005pub const bpf_link_type_BPF_LINK_TYPE_TRACING: bpf_link_type = 2;
20006pub const bpf_link_type_BPF_LINK_TYPE_CGROUP: bpf_link_type = 3;
20007pub const bpf_link_type_BPF_LINK_TYPE_ITER: bpf_link_type = 4;
20008pub const bpf_link_type_BPF_LINK_TYPE_NETNS: bpf_link_type = 5;
20009pub const bpf_link_type_BPF_LINK_TYPE_XDP: bpf_link_type = 6;
20010pub const bpf_link_type_BPF_LINK_TYPE_PERF_EVENT: bpf_link_type = 7;
20011pub const bpf_link_type_BPF_LINK_TYPE_KPROBE_MULTI: bpf_link_type = 8;
20012pub const bpf_link_type_BPF_LINK_TYPE_STRUCT_OPS: bpf_link_type = 9;
20013pub const bpf_link_type_BPF_LINK_TYPE_NETFILTER: bpf_link_type = 10;
20014pub const bpf_link_type_BPF_LINK_TYPE_TCX: bpf_link_type = 11;
20015pub const bpf_link_type_BPF_LINK_TYPE_UPROBE_MULTI: bpf_link_type = 12;
20016pub const bpf_link_type_BPF_LINK_TYPE_NETKIT: bpf_link_type = 13;
20017pub const bpf_link_type_BPF_LINK_TYPE_SOCKMAP: bpf_link_type = 14;
20018pub const bpf_link_type___MAX_BPF_LINK_TYPE: bpf_link_type = 15;
20019pub type bpf_link_type = crate::types::c_uint;
20020pub const bpf_perf_event_type_BPF_PERF_EVENT_UNSPEC: bpf_perf_event_type = 0;
20021pub const bpf_perf_event_type_BPF_PERF_EVENT_UPROBE: bpf_perf_event_type = 1;
20022pub const bpf_perf_event_type_BPF_PERF_EVENT_URETPROBE: bpf_perf_event_type = 2;
20023pub const bpf_perf_event_type_BPF_PERF_EVENT_KPROBE: bpf_perf_event_type = 3;
20024pub const bpf_perf_event_type_BPF_PERF_EVENT_KRETPROBE: bpf_perf_event_type = 4;
20025pub const bpf_perf_event_type_BPF_PERF_EVENT_TRACEPOINT: bpf_perf_event_type = 5;
20026pub const bpf_perf_event_type_BPF_PERF_EVENT_EVENT: bpf_perf_event_type = 6;
20027pub type bpf_perf_event_type = crate::types::c_uint;
20028pub const BPF_F_KPROBE_MULTI_RETURN: _bindgen_ty_107 = 1;
20029pub type _bindgen_ty_107 = crate::types::c_uint;
20030pub const BPF_F_UPROBE_MULTI_RETURN: _bindgen_ty_108 = 1;
20031pub type _bindgen_ty_108 = crate::types::c_uint;
20032pub const bpf_addr_space_cast_BPF_ADDR_SPACE_CAST: bpf_addr_space_cast = 1;
20033pub type bpf_addr_space_cast = crate::types::c_uint;
20034pub const BPF_ANY: _bindgen_ty_109 = 0;
20035pub const BPF_NOEXIST: _bindgen_ty_109 = 1;
20036pub const BPF_EXIST: _bindgen_ty_109 = 2;
20037pub const BPF_F_LOCK: _bindgen_ty_109 = 4;
20038pub type _bindgen_ty_109 = crate::types::c_uint;
20039pub const BPF_F_NO_PREALLOC: _bindgen_ty_110 = 1;
20040pub const BPF_F_NO_COMMON_LRU: _bindgen_ty_110 = 2;
20041pub const BPF_F_NUMA_NODE: _bindgen_ty_110 = 4;
20042pub const BPF_F_RDONLY: _bindgen_ty_110 = 8;
20043pub const BPF_F_WRONLY: _bindgen_ty_110 = 16;
20044pub const BPF_F_STACK_BUILD_ID: _bindgen_ty_110 = 32;
20045pub const BPF_F_ZERO_SEED: _bindgen_ty_110 = 64;
20046pub const BPF_F_RDONLY_PROG: _bindgen_ty_110 = 128;
20047pub const BPF_F_WRONLY_PROG: _bindgen_ty_110 = 256;
20048pub const BPF_F_CLONE: _bindgen_ty_110 = 512;
20049pub const BPF_F_MMAPABLE: _bindgen_ty_110 = 1024;
20050pub const BPF_F_PRESERVE_ELEMS: _bindgen_ty_110 = 2048;
20051pub const BPF_F_INNER_MAP: _bindgen_ty_110 = 4096;
20052pub const BPF_F_LINK: _bindgen_ty_110 = 8192;
20053pub const BPF_F_PATH_FD: _bindgen_ty_110 = 16384;
20054pub const BPF_F_VTYPE_BTF_OBJ_FD: _bindgen_ty_110 = 32768;
20055pub const BPF_F_TOKEN_FD: _bindgen_ty_110 = 65536;
20056pub const BPF_F_SEGV_ON_FAULT: _bindgen_ty_110 = 131072;
20057pub const BPF_F_NO_USER_CONV: _bindgen_ty_110 = 262144;
20058pub type _bindgen_ty_110 = crate::types::c_uint;
20059pub const bpf_stats_type_BPF_STATS_RUN_TIME: bpf_stats_type = 0;
20060pub type bpf_stats_type = crate::types::c_uint;
20061pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_EMPTY: bpf_stack_build_id_status = 0;
20062pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_VALID: bpf_stack_build_id_status = 1;
20063pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_IP: bpf_stack_build_id_status = 2;
20064pub type bpf_stack_build_id_status = crate::types::c_uint;
20065#[repr(C)]
20066#[derive(Copy, Clone)]
20067pub struct bpf_stack_build_id {
20068    pub status: __s32,
20069    pub build_id: [crate::types::c_uchar; 20usize],
20070    pub __bindgen_anon_1: bpf_stack_build_id__bindgen_ty_1,
20071}
20072#[repr(C)]
20073#[derive(Copy, Clone)]
20074pub union bpf_stack_build_id__bindgen_ty_1 {
20075    pub offset: __u64,
20076    pub ip: __u64,
20077}
20078impl Default for bpf_stack_build_id__bindgen_ty_1 {
20079    fn default() -> Self {
20080        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20081        unsafe {
20082            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20083            s.assume_init()
20084        }
20085    }
20086}
20087impl Default for bpf_stack_build_id {
20088    fn default() -> Self {
20089        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20090        unsafe {
20091            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20092            s.assume_init()
20093        }
20094    }
20095}
20096#[repr(C)]
20097#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20098pub union bpf_attr {
20099    pub __bindgen_anon_1: bpf_attr__bindgen_ty_1,
20100    pub __bindgen_anon_2: bpf_attr__bindgen_ty_2,
20101    pub batch: bpf_attr__bindgen_ty_3,
20102    pub __bindgen_anon_3: bpf_attr__bindgen_ty_4,
20103    pub __bindgen_anon_4: bpf_attr__bindgen_ty_5,
20104    pub __bindgen_anon_5: bpf_attr__bindgen_ty_6,
20105    pub test: bpf_attr__bindgen_ty_7,
20106    pub __bindgen_anon_6: bpf_attr__bindgen_ty_8,
20107    pub info: bpf_attr__bindgen_ty_9,
20108    pub query: bpf_attr__bindgen_ty_10,
20109    pub raw_tracepoint: bpf_attr__bindgen_ty_11,
20110    pub __bindgen_anon_7: bpf_attr__bindgen_ty_12,
20111    pub task_fd_query: bpf_attr__bindgen_ty_13,
20112    pub link_create: bpf_attr__bindgen_ty_14,
20113    pub link_update: bpf_attr__bindgen_ty_15,
20114    pub link_detach: bpf_attr__bindgen_ty_16,
20115    pub enable_stats: bpf_attr__bindgen_ty_17,
20116    pub iter_create: bpf_attr__bindgen_ty_18,
20117    pub prog_bind_map: bpf_attr__bindgen_ty_19,
20118    pub token_create: bpf_attr__bindgen_ty_20,
20119}
20120#[repr(C)]
20121#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20122pub struct bpf_attr__bindgen_ty_1 {
20123    pub map_type: __u32,
20124    pub key_size: __u32,
20125    pub value_size: __u32,
20126    pub max_entries: __u32,
20127    pub map_flags: __u32,
20128    pub inner_map_fd: __u32,
20129    pub numa_node: __u32,
20130    pub map_name: [crate::types::c_char; 16usize],
20131    pub map_ifindex: __u32,
20132    pub btf_fd: __u32,
20133    pub btf_key_type_id: __u32,
20134    pub btf_value_type_id: __u32,
20135    pub btf_vmlinux_value_type_id: __u32,
20136    pub map_extra: __u64,
20137    pub value_type_btf_obj_fd: __s32,
20138    pub map_token_fd: __s32,
20139}
20140#[repr(C)]
20141#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20142pub struct bpf_attr__bindgen_ty_2 {
20143    pub map_fd: __u32,
20144    pub __bindgen_padding_0: [u8; 4usize],
20145    pub key: __u64,
20146    pub __bindgen_anon_1: bpf_attr__bindgen_ty_2__bindgen_ty_1,
20147    pub flags: __u64,
20148}
20149#[repr(C)]
20150#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20151pub union bpf_attr__bindgen_ty_2__bindgen_ty_1 {
20152    pub value: __u64,
20153    pub next_key: __u64,
20154}
20155impl Default for bpf_attr__bindgen_ty_2__bindgen_ty_1 {
20156    fn default() -> Self {
20157        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20158        unsafe {
20159            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20160            s.assume_init()
20161        }
20162    }
20163}
20164impl Default for bpf_attr__bindgen_ty_2 {
20165    fn default() -> Self {
20166        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20167        unsafe {
20168            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20169            s.assume_init()
20170        }
20171    }
20172}
20173#[repr(C)]
20174#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20175pub struct bpf_attr__bindgen_ty_3 {
20176    pub in_batch: __u64,
20177    pub out_batch: __u64,
20178    pub keys: __u64,
20179    pub values: __u64,
20180    pub count: __u32,
20181    pub map_fd: __u32,
20182    pub elem_flags: __u64,
20183    pub flags: __u64,
20184}
20185#[repr(C)]
20186#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20187pub struct bpf_attr__bindgen_ty_4 {
20188    pub prog_type: __u32,
20189    pub insn_cnt: __u32,
20190    pub insns: __u64,
20191    pub license: __u64,
20192    pub log_level: __u32,
20193    pub log_size: __u32,
20194    pub log_buf: __u64,
20195    pub kern_version: __u32,
20196    pub prog_flags: __u32,
20197    pub prog_name: [crate::types::c_char; 16usize],
20198    pub prog_ifindex: __u32,
20199    pub expected_attach_type: __u32,
20200    pub prog_btf_fd: __u32,
20201    pub func_info_rec_size: __u32,
20202    pub func_info: __u64,
20203    pub func_info_cnt: __u32,
20204    pub line_info_rec_size: __u32,
20205    pub line_info: __u64,
20206    pub line_info_cnt: __u32,
20207    pub attach_btf_id: __u32,
20208    pub __bindgen_anon_1: bpf_attr__bindgen_ty_4__bindgen_ty_1,
20209    pub core_relo_cnt: __u32,
20210    pub fd_array: __u64,
20211    pub core_relos: __u64,
20212    pub core_relo_rec_size: __u32,
20213    pub log_true_size: __u32,
20214    pub prog_token_fd: __s32,
20215    pub __bindgen_padding_0: [u8; 4usize],
20216}
20217#[repr(C)]
20218#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20219pub union bpf_attr__bindgen_ty_4__bindgen_ty_1 {
20220    pub attach_prog_fd: __u32,
20221    pub attach_btf_obj_fd: __u32,
20222}
20223impl Default for bpf_attr__bindgen_ty_4__bindgen_ty_1 {
20224    fn default() -> Self {
20225        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20226        unsafe {
20227            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20228            s.assume_init()
20229        }
20230    }
20231}
20232impl Default for bpf_attr__bindgen_ty_4 {
20233    fn default() -> Self {
20234        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20235        unsafe {
20236            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20237            s.assume_init()
20238        }
20239    }
20240}
20241#[repr(C)]
20242#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20243pub struct bpf_attr__bindgen_ty_5 {
20244    pub pathname: __u64,
20245    pub bpf_fd: __u32,
20246    pub file_flags: __u32,
20247    pub path_fd: __s32,
20248    pub __bindgen_padding_0: [u8; 4usize],
20249}
20250#[repr(C)]
20251#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20252pub struct bpf_attr__bindgen_ty_6 {
20253    pub __bindgen_anon_1: bpf_attr__bindgen_ty_6__bindgen_ty_1,
20254    pub attach_bpf_fd: __u32,
20255    pub attach_type: __u32,
20256    pub attach_flags: __u32,
20257    pub replace_bpf_fd: __u32,
20258    pub __bindgen_anon_2: bpf_attr__bindgen_ty_6__bindgen_ty_2,
20259    pub expected_revision: __u64,
20260}
20261#[repr(C)]
20262#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20263pub union bpf_attr__bindgen_ty_6__bindgen_ty_1 {
20264    pub target_fd: __u32,
20265    pub target_ifindex: __u32,
20266}
20267impl Default for bpf_attr__bindgen_ty_6__bindgen_ty_1 {
20268    fn default() -> Self {
20269        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20270        unsafe {
20271            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20272            s.assume_init()
20273        }
20274    }
20275}
20276#[repr(C)]
20277#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20278pub union bpf_attr__bindgen_ty_6__bindgen_ty_2 {
20279    pub relative_fd: __u32,
20280    pub relative_id: __u32,
20281}
20282impl Default for bpf_attr__bindgen_ty_6__bindgen_ty_2 {
20283    fn default() -> Self {
20284        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20285        unsafe {
20286            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20287            s.assume_init()
20288        }
20289    }
20290}
20291impl Default for bpf_attr__bindgen_ty_6 {
20292    fn default() -> Self {
20293        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20294        unsafe {
20295            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20296            s.assume_init()
20297        }
20298    }
20299}
20300#[repr(C)]
20301#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20302pub struct bpf_attr__bindgen_ty_7 {
20303    pub prog_fd: __u32,
20304    pub retval: __u32,
20305    pub data_size_in: __u32,
20306    pub data_size_out: __u32,
20307    pub data_in: __u64,
20308    pub data_out: __u64,
20309    pub repeat: __u32,
20310    pub duration: __u32,
20311    pub ctx_size_in: __u32,
20312    pub ctx_size_out: __u32,
20313    pub ctx_in: __u64,
20314    pub ctx_out: __u64,
20315    pub flags: __u32,
20316    pub cpu: __u32,
20317    pub batch_size: __u32,
20318    pub __bindgen_padding_0: [u8; 4usize],
20319}
20320#[repr(C)]
20321#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20322pub struct bpf_attr__bindgen_ty_8 {
20323    pub __bindgen_anon_1: bpf_attr__bindgen_ty_8__bindgen_ty_1,
20324    pub next_id: __u32,
20325    pub open_flags: __u32,
20326}
20327#[repr(C)]
20328#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20329pub union bpf_attr__bindgen_ty_8__bindgen_ty_1 {
20330    pub start_id: __u32,
20331    pub prog_id: __u32,
20332    pub map_id: __u32,
20333    pub btf_id: __u32,
20334    pub link_id: __u32,
20335}
20336impl Default for bpf_attr__bindgen_ty_8__bindgen_ty_1 {
20337    fn default() -> Self {
20338        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20339        unsafe {
20340            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20341            s.assume_init()
20342        }
20343    }
20344}
20345impl Default for bpf_attr__bindgen_ty_8 {
20346    fn default() -> Self {
20347        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20348        unsafe {
20349            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20350            s.assume_init()
20351        }
20352    }
20353}
20354#[repr(C)]
20355#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20356pub struct bpf_attr__bindgen_ty_9 {
20357    pub bpf_fd: __u32,
20358    pub info_len: __u32,
20359    pub info: __u64,
20360}
20361#[repr(C)]
20362#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20363pub struct bpf_attr__bindgen_ty_10 {
20364    pub __bindgen_anon_1: bpf_attr__bindgen_ty_10__bindgen_ty_1,
20365    pub attach_type: __u32,
20366    pub query_flags: __u32,
20367    pub attach_flags: __u32,
20368    pub prog_ids: __u64,
20369    pub __bindgen_anon_2: bpf_attr__bindgen_ty_10__bindgen_ty_2,
20370    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
20371    pub prog_attach_flags: __u64,
20372    pub link_ids: __u64,
20373    pub link_attach_flags: __u64,
20374    pub revision: __u64,
20375}
20376#[repr(C)]
20377#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20378pub union bpf_attr__bindgen_ty_10__bindgen_ty_1 {
20379    pub target_fd: __u32,
20380    pub target_ifindex: __u32,
20381}
20382impl Default for bpf_attr__bindgen_ty_10__bindgen_ty_1 {
20383    fn default() -> Self {
20384        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20385        unsafe {
20386            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20387            s.assume_init()
20388        }
20389    }
20390}
20391#[repr(C)]
20392#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20393pub union bpf_attr__bindgen_ty_10__bindgen_ty_2 {
20394    pub prog_cnt: __u32,
20395    pub count: __u32,
20396}
20397impl Default for bpf_attr__bindgen_ty_10__bindgen_ty_2 {
20398    fn default() -> Self {
20399        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20400        unsafe {
20401            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20402            s.assume_init()
20403        }
20404    }
20405}
20406impl Default for bpf_attr__bindgen_ty_10 {
20407    fn default() -> Self {
20408        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20409        unsafe {
20410            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20411            s.assume_init()
20412        }
20413    }
20414}
20415impl bpf_attr__bindgen_ty_10 {
20416    #[inline]
20417    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
20418        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
20419        __bindgen_bitfield_unit
20420    }
20421}
20422#[repr(C)]
20423#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20424pub struct bpf_attr__bindgen_ty_11 {
20425    pub name: __u64,
20426    pub prog_fd: __u32,
20427    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
20428    pub cookie: __u64,
20429}
20430impl bpf_attr__bindgen_ty_11 {
20431    #[inline]
20432    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
20433        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
20434        __bindgen_bitfield_unit
20435    }
20436}
20437#[repr(C)]
20438#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20439pub struct bpf_attr__bindgen_ty_12 {
20440    pub btf: __u64,
20441    pub btf_log_buf: __u64,
20442    pub btf_size: __u32,
20443    pub btf_log_size: __u32,
20444    pub btf_log_level: __u32,
20445    pub btf_log_true_size: __u32,
20446    pub btf_flags: __u32,
20447    pub btf_token_fd: __s32,
20448}
20449#[repr(C)]
20450#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20451pub struct bpf_attr__bindgen_ty_13 {
20452    pub pid: __u32,
20453    pub fd: __u32,
20454    pub flags: __u32,
20455    pub buf_len: __u32,
20456    pub buf: __u64,
20457    pub prog_id: __u32,
20458    pub fd_type: __u32,
20459    pub probe_offset: __u64,
20460    pub probe_addr: __u64,
20461}
20462#[repr(C)]
20463#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20464pub struct bpf_attr__bindgen_ty_14 {
20465    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_1,
20466    pub __bindgen_anon_2: bpf_attr__bindgen_ty_14__bindgen_ty_2,
20467    pub attach_type: __u32,
20468    pub flags: __u32,
20469    pub __bindgen_anon_3: bpf_attr__bindgen_ty_14__bindgen_ty_3,
20470}
20471#[repr(C)]
20472#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20473pub union bpf_attr__bindgen_ty_14__bindgen_ty_1 {
20474    pub prog_fd: __u32,
20475    pub map_fd: __u32,
20476}
20477impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_1 {
20478    fn default() -> Self {
20479        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20480        unsafe {
20481            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20482            s.assume_init()
20483        }
20484    }
20485}
20486#[repr(C)]
20487#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20488pub union bpf_attr__bindgen_ty_14__bindgen_ty_2 {
20489    pub target_fd: __u32,
20490    pub target_ifindex: __u32,
20491}
20492impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_2 {
20493    fn default() -> Self {
20494        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20495        unsafe {
20496            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20497            s.assume_init()
20498        }
20499    }
20500}
20501#[repr(C)]
20502#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20503pub union bpf_attr__bindgen_ty_14__bindgen_ty_3 {
20504    pub target_btf_id: __u32,
20505    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_1,
20506    pub perf_event: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_2,
20507    pub kprobe_multi: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_3,
20508    pub tracing: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_4,
20509    pub netfilter: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_5,
20510    pub tcx: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6,
20511    pub uprobe_multi: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_7,
20512    pub netkit: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8,
20513}
20514#[repr(C)]
20515#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20516pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_1 {
20517    pub iter_info: __u64,
20518    pub iter_info_len: __u32,
20519    pub __bindgen_padding_0: [u8; 4usize],
20520}
20521#[repr(C)]
20522#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20523pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_2 {
20524    pub bpf_cookie: __u64,
20525}
20526#[repr(C)]
20527#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20528pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_3 {
20529    pub flags: __u32,
20530    pub cnt: __u32,
20531    pub syms: __u64,
20532    pub addrs: __u64,
20533    pub cookies: __u64,
20534}
20535#[repr(C)]
20536#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20537pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_4 {
20538    pub target_btf_id: __u32,
20539    pub __bindgen_padding_0: [u8; 4usize],
20540    pub cookie: __u64,
20541}
20542#[repr(C)]
20543#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20544pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_5 {
20545    pub pf: __u32,
20546    pub hooknum: __u32,
20547    pub priority: __s32,
20548    pub flags: __u32,
20549}
20550#[repr(C)]
20551#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20552pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6 {
20553    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1,
20554    pub __bindgen_padding_0: [u8; 4usize],
20555    pub expected_revision: __u64,
20556}
20557#[repr(C)]
20558#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20559pub union bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1 {
20560    pub relative_fd: __u32,
20561    pub relative_id: __u32,
20562}
20563impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1 {
20564    fn default() -> Self {
20565        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20566        unsafe {
20567            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20568            s.assume_init()
20569        }
20570    }
20571}
20572impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6 {
20573    fn default() -> Self {
20574        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20575        unsafe {
20576            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20577            s.assume_init()
20578        }
20579    }
20580}
20581#[repr(C)]
20582#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20583pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_7 {
20584    pub path: __u64,
20585    pub offsets: __u64,
20586    pub ref_ctr_offsets: __u64,
20587    pub cookies: __u64,
20588    pub cnt: __u32,
20589    pub flags: __u32,
20590    pub pid: __u32,
20591    pub __bindgen_padding_0: [u8; 4usize],
20592}
20593#[repr(C)]
20594#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20595pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8 {
20596    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1,
20597    pub __bindgen_padding_0: [u8; 4usize],
20598    pub expected_revision: __u64,
20599}
20600#[repr(C)]
20601#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20602pub union bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1 {
20603    pub relative_fd: __u32,
20604    pub relative_id: __u32,
20605}
20606impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1 {
20607    fn default() -> Self {
20608        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20609        unsafe {
20610            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20611            s.assume_init()
20612        }
20613    }
20614}
20615impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8 {
20616    fn default() -> Self {
20617        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20618        unsafe {
20619            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20620            s.assume_init()
20621        }
20622    }
20623}
20624impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3 {
20625    fn default() -> Self {
20626        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20627        unsafe {
20628            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20629            s.assume_init()
20630        }
20631    }
20632}
20633impl Default for bpf_attr__bindgen_ty_14 {
20634    fn default() -> Self {
20635        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20636        unsafe {
20637            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20638            s.assume_init()
20639        }
20640    }
20641}
20642#[repr(C)]
20643#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20644pub struct bpf_attr__bindgen_ty_15 {
20645    pub link_fd: __u32,
20646    pub __bindgen_anon_1: bpf_attr__bindgen_ty_15__bindgen_ty_1,
20647    pub flags: __u32,
20648    pub __bindgen_anon_2: bpf_attr__bindgen_ty_15__bindgen_ty_2,
20649}
20650#[repr(C)]
20651#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20652pub union bpf_attr__bindgen_ty_15__bindgen_ty_1 {
20653    pub new_prog_fd: __u32,
20654    pub new_map_fd: __u32,
20655}
20656impl Default for bpf_attr__bindgen_ty_15__bindgen_ty_1 {
20657    fn default() -> Self {
20658        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20659        unsafe {
20660            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20661            s.assume_init()
20662        }
20663    }
20664}
20665#[repr(C)]
20666#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20667pub union bpf_attr__bindgen_ty_15__bindgen_ty_2 {
20668    pub old_prog_fd: __u32,
20669    pub old_map_fd: __u32,
20670}
20671impl Default for bpf_attr__bindgen_ty_15__bindgen_ty_2 {
20672    fn default() -> Self {
20673        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20674        unsafe {
20675            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20676            s.assume_init()
20677        }
20678    }
20679}
20680impl Default for bpf_attr__bindgen_ty_15 {
20681    fn default() -> Self {
20682        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20683        unsafe {
20684            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20685            s.assume_init()
20686        }
20687    }
20688}
20689#[repr(C)]
20690#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20691pub struct bpf_attr__bindgen_ty_16 {
20692    pub link_fd: __u32,
20693}
20694#[repr(C)]
20695#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20696pub struct bpf_attr__bindgen_ty_17 {
20697    pub type_: __u32,
20698}
20699#[repr(C)]
20700#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20701pub struct bpf_attr__bindgen_ty_18 {
20702    pub link_fd: __u32,
20703    pub flags: __u32,
20704}
20705#[repr(C)]
20706#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20707pub struct bpf_attr__bindgen_ty_19 {
20708    pub prog_fd: __u32,
20709    pub map_fd: __u32,
20710    pub flags: __u32,
20711}
20712#[repr(C)]
20713#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20714pub struct bpf_attr__bindgen_ty_20 {
20715    pub flags: __u32,
20716    pub bpffs_fd: __u32,
20717}
20718impl Default for bpf_attr {
20719    fn default() -> Self {
20720        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20721        unsafe {
20722            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20723            s.assume_init()
20724        }
20725    }
20726}
20727pub const bpf_func_id_BPF_FUNC_unspec: bpf_func_id = 0;
20728pub const bpf_func_id_BPF_FUNC_map_lookup_elem: bpf_func_id = 1;
20729pub const bpf_func_id_BPF_FUNC_map_update_elem: bpf_func_id = 2;
20730pub const bpf_func_id_BPF_FUNC_map_delete_elem: bpf_func_id = 3;
20731pub const bpf_func_id_BPF_FUNC_probe_read: bpf_func_id = 4;
20732pub const bpf_func_id_BPF_FUNC_ktime_get_ns: bpf_func_id = 5;
20733pub const bpf_func_id_BPF_FUNC_trace_printk: bpf_func_id = 6;
20734pub const bpf_func_id_BPF_FUNC_get_prandom_u32: bpf_func_id = 7;
20735pub const bpf_func_id_BPF_FUNC_get_smp_processor_id: bpf_func_id = 8;
20736pub const bpf_func_id_BPF_FUNC_skb_store_bytes: bpf_func_id = 9;
20737pub const bpf_func_id_BPF_FUNC_l3_csum_replace: bpf_func_id = 10;
20738pub const bpf_func_id_BPF_FUNC_l4_csum_replace: bpf_func_id = 11;
20739pub const bpf_func_id_BPF_FUNC_tail_call: bpf_func_id = 12;
20740pub const bpf_func_id_BPF_FUNC_clone_redirect: bpf_func_id = 13;
20741pub const bpf_func_id_BPF_FUNC_get_current_pid_tgid: bpf_func_id = 14;
20742pub const bpf_func_id_BPF_FUNC_get_current_uid_gid: bpf_func_id = 15;
20743pub const bpf_func_id_BPF_FUNC_get_current_comm: bpf_func_id = 16;
20744pub const bpf_func_id_BPF_FUNC_get_cgroup_classid: bpf_func_id = 17;
20745pub const bpf_func_id_BPF_FUNC_skb_vlan_push: bpf_func_id = 18;
20746pub const bpf_func_id_BPF_FUNC_skb_vlan_pop: bpf_func_id = 19;
20747pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_key: bpf_func_id = 20;
20748pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_key: bpf_func_id = 21;
20749pub const bpf_func_id_BPF_FUNC_perf_event_read: bpf_func_id = 22;
20750pub const bpf_func_id_BPF_FUNC_redirect: bpf_func_id = 23;
20751pub const bpf_func_id_BPF_FUNC_get_route_realm: bpf_func_id = 24;
20752pub const bpf_func_id_BPF_FUNC_perf_event_output: bpf_func_id = 25;
20753pub const bpf_func_id_BPF_FUNC_skb_load_bytes: bpf_func_id = 26;
20754pub const bpf_func_id_BPF_FUNC_get_stackid: bpf_func_id = 27;
20755pub const bpf_func_id_BPF_FUNC_csum_diff: bpf_func_id = 28;
20756pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_opt: bpf_func_id = 29;
20757pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_opt: bpf_func_id = 30;
20758pub const bpf_func_id_BPF_FUNC_skb_change_proto: bpf_func_id = 31;
20759pub const bpf_func_id_BPF_FUNC_skb_change_type: bpf_func_id = 32;
20760pub const bpf_func_id_BPF_FUNC_skb_under_cgroup: bpf_func_id = 33;
20761pub const bpf_func_id_BPF_FUNC_get_hash_recalc: bpf_func_id = 34;
20762pub const bpf_func_id_BPF_FUNC_get_current_task: bpf_func_id = 35;
20763pub const bpf_func_id_BPF_FUNC_probe_write_user: bpf_func_id = 36;
20764pub const bpf_func_id_BPF_FUNC_current_task_under_cgroup: bpf_func_id = 37;
20765pub const bpf_func_id_BPF_FUNC_skb_change_tail: bpf_func_id = 38;
20766pub const bpf_func_id_BPF_FUNC_skb_pull_data: bpf_func_id = 39;
20767pub const bpf_func_id_BPF_FUNC_csum_update: bpf_func_id = 40;
20768pub const bpf_func_id_BPF_FUNC_set_hash_invalid: bpf_func_id = 41;
20769pub const bpf_func_id_BPF_FUNC_get_numa_node_id: bpf_func_id = 42;
20770pub const bpf_func_id_BPF_FUNC_skb_change_head: bpf_func_id = 43;
20771pub const bpf_func_id_BPF_FUNC_xdp_adjust_head: bpf_func_id = 44;
20772pub const bpf_func_id_BPF_FUNC_probe_read_str: bpf_func_id = 45;
20773pub const bpf_func_id_BPF_FUNC_get_socket_cookie: bpf_func_id = 46;
20774pub const bpf_func_id_BPF_FUNC_get_socket_uid: bpf_func_id = 47;
20775pub const bpf_func_id_BPF_FUNC_set_hash: bpf_func_id = 48;
20776pub const bpf_func_id_BPF_FUNC_setsockopt: bpf_func_id = 49;
20777pub const bpf_func_id_BPF_FUNC_skb_adjust_room: bpf_func_id = 50;
20778pub const bpf_func_id_BPF_FUNC_redirect_map: bpf_func_id = 51;
20779pub const bpf_func_id_BPF_FUNC_sk_redirect_map: bpf_func_id = 52;
20780pub const bpf_func_id_BPF_FUNC_sock_map_update: bpf_func_id = 53;
20781pub const bpf_func_id_BPF_FUNC_xdp_adjust_meta: bpf_func_id = 54;
20782pub const bpf_func_id_BPF_FUNC_perf_event_read_value: bpf_func_id = 55;
20783pub const bpf_func_id_BPF_FUNC_perf_prog_read_value: bpf_func_id = 56;
20784pub const bpf_func_id_BPF_FUNC_getsockopt: bpf_func_id = 57;
20785pub const bpf_func_id_BPF_FUNC_override_return: bpf_func_id = 58;
20786pub const bpf_func_id_BPF_FUNC_sock_ops_cb_flags_set: bpf_func_id = 59;
20787pub const bpf_func_id_BPF_FUNC_msg_redirect_map: bpf_func_id = 60;
20788pub const bpf_func_id_BPF_FUNC_msg_apply_bytes: bpf_func_id = 61;
20789pub const bpf_func_id_BPF_FUNC_msg_cork_bytes: bpf_func_id = 62;
20790pub const bpf_func_id_BPF_FUNC_msg_pull_data: bpf_func_id = 63;
20791pub const bpf_func_id_BPF_FUNC_bind: bpf_func_id = 64;
20792pub const bpf_func_id_BPF_FUNC_xdp_adjust_tail: bpf_func_id = 65;
20793pub const bpf_func_id_BPF_FUNC_skb_get_xfrm_state: bpf_func_id = 66;
20794pub const bpf_func_id_BPF_FUNC_get_stack: bpf_func_id = 67;
20795pub const bpf_func_id_BPF_FUNC_skb_load_bytes_relative: bpf_func_id = 68;
20796pub const bpf_func_id_BPF_FUNC_fib_lookup: bpf_func_id = 69;
20797pub const bpf_func_id_BPF_FUNC_sock_hash_update: bpf_func_id = 70;
20798pub const bpf_func_id_BPF_FUNC_msg_redirect_hash: bpf_func_id = 71;
20799pub const bpf_func_id_BPF_FUNC_sk_redirect_hash: bpf_func_id = 72;
20800pub const bpf_func_id_BPF_FUNC_lwt_push_encap: bpf_func_id = 73;
20801pub const bpf_func_id_BPF_FUNC_lwt_seg6_store_bytes: bpf_func_id = 74;
20802pub const bpf_func_id_BPF_FUNC_lwt_seg6_adjust_srh: bpf_func_id = 75;
20803pub const bpf_func_id_BPF_FUNC_lwt_seg6_action: bpf_func_id = 76;
20804pub const bpf_func_id_BPF_FUNC_rc_repeat: bpf_func_id = 77;
20805pub const bpf_func_id_BPF_FUNC_rc_keydown: bpf_func_id = 78;
20806pub const bpf_func_id_BPF_FUNC_skb_cgroup_id: bpf_func_id = 79;
20807pub const bpf_func_id_BPF_FUNC_get_current_cgroup_id: bpf_func_id = 80;
20808pub const bpf_func_id_BPF_FUNC_get_local_storage: bpf_func_id = 81;
20809pub const bpf_func_id_BPF_FUNC_sk_select_reuseport: bpf_func_id = 82;
20810pub const bpf_func_id_BPF_FUNC_skb_ancestor_cgroup_id: bpf_func_id = 83;
20811pub const bpf_func_id_BPF_FUNC_sk_lookup_tcp: bpf_func_id = 84;
20812pub const bpf_func_id_BPF_FUNC_sk_lookup_udp: bpf_func_id = 85;
20813pub const bpf_func_id_BPF_FUNC_sk_release: bpf_func_id = 86;
20814pub const bpf_func_id_BPF_FUNC_map_push_elem: bpf_func_id = 87;
20815pub const bpf_func_id_BPF_FUNC_map_pop_elem: bpf_func_id = 88;
20816pub const bpf_func_id_BPF_FUNC_map_peek_elem: bpf_func_id = 89;
20817pub const bpf_func_id_BPF_FUNC_msg_push_data: bpf_func_id = 90;
20818pub const bpf_func_id_BPF_FUNC_msg_pop_data: bpf_func_id = 91;
20819pub const bpf_func_id_BPF_FUNC_rc_pointer_rel: bpf_func_id = 92;
20820pub const bpf_func_id_BPF_FUNC_spin_lock: bpf_func_id = 93;
20821pub const bpf_func_id_BPF_FUNC_spin_unlock: bpf_func_id = 94;
20822pub const bpf_func_id_BPF_FUNC_sk_fullsock: bpf_func_id = 95;
20823pub const bpf_func_id_BPF_FUNC_tcp_sock: bpf_func_id = 96;
20824pub const bpf_func_id_BPF_FUNC_skb_ecn_set_ce: bpf_func_id = 97;
20825pub const bpf_func_id_BPF_FUNC_get_listener_sock: bpf_func_id = 98;
20826pub const bpf_func_id_BPF_FUNC_skc_lookup_tcp: bpf_func_id = 99;
20827pub const bpf_func_id_BPF_FUNC_tcp_check_syncookie: bpf_func_id = 100;
20828pub const bpf_func_id_BPF_FUNC_sysctl_get_name: bpf_func_id = 101;
20829pub const bpf_func_id_BPF_FUNC_sysctl_get_current_value: bpf_func_id = 102;
20830pub const bpf_func_id_BPF_FUNC_sysctl_get_new_value: bpf_func_id = 103;
20831pub const bpf_func_id_BPF_FUNC_sysctl_set_new_value: bpf_func_id = 104;
20832pub const bpf_func_id_BPF_FUNC_strtol: bpf_func_id = 105;
20833pub const bpf_func_id_BPF_FUNC_strtoul: bpf_func_id = 106;
20834pub const bpf_func_id_BPF_FUNC_sk_storage_get: bpf_func_id = 107;
20835pub const bpf_func_id_BPF_FUNC_sk_storage_delete: bpf_func_id = 108;
20836pub const bpf_func_id_BPF_FUNC_send_signal: bpf_func_id = 109;
20837pub const bpf_func_id_BPF_FUNC_tcp_gen_syncookie: bpf_func_id = 110;
20838pub const bpf_func_id_BPF_FUNC_skb_output: bpf_func_id = 111;
20839pub const bpf_func_id_BPF_FUNC_probe_read_user: bpf_func_id = 112;
20840pub const bpf_func_id_BPF_FUNC_probe_read_kernel: bpf_func_id = 113;
20841pub const bpf_func_id_BPF_FUNC_probe_read_user_str: bpf_func_id = 114;
20842pub const bpf_func_id_BPF_FUNC_probe_read_kernel_str: bpf_func_id = 115;
20843pub const bpf_func_id_BPF_FUNC_tcp_send_ack: bpf_func_id = 116;
20844pub const bpf_func_id_BPF_FUNC_send_signal_thread: bpf_func_id = 117;
20845pub const bpf_func_id_BPF_FUNC_jiffies64: bpf_func_id = 118;
20846pub const bpf_func_id_BPF_FUNC_read_branch_records: bpf_func_id = 119;
20847pub const bpf_func_id_BPF_FUNC_get_ns_current_pid_tgid: bpf_func_id = 120;
20848pub const bpf_func_id_BPF_FUNC_xdp_output: bpf_func_id = 121;
20849pub const bpf_func_id_BPF_FUNC_get_netns_cookie: bpf_func_id = 122;
20850pub const bpf_func_id_BPF_FUNC_get_current_ancestor_cgroup_id: bpf_func_id = 123;
20851pub const bpf_func_id_BPF_FUNC_sk_assign: bpf_func_id = 124;
20852pub const bpf_func_id_BPF_FUNC_ktime_get_boot_ns: bpf_func_id = 125;
20853pub const bpf_func_id_BPF_FUNC_seq_printf: bpf_func_id = 126;
20854pub const bpf_func_id_BPF_FUNC_seq_write: bpf_func_id = 127;
20855pub const bpf_func_id_BPF_FUNC_sk_cgroup_id: bpf_func_id = 128;
20856pub const bpf_func_id_BPF_FUNC_sk_ancestor_cgroup_id: bpf_func_id = 129;
20857pub const bpf_func_id_BPF_FUNC_ringbuf_output: bpf_func_id = 130;
20858pub const bpf_func_id_BPF_FUNC_ringbuf_reserve: bpf_func_id = 131;
20859pub const bpf_func_id_BPF_FUNC_ringbuf_submit: bpf_func_id = 132;
20860pub const bpf_func_id_BPF_FUNC_ringbuf_discard: bpf_func_id = 133;
20861pub const bpf_func_id_BPF_FUNC_ringbuf_query: bpf_func_id = 134;
20862pub const bpf_func_id_BPF_FUNC_csum_level: bpf_func_id = 135;
20863pub const bpf_func_id_BPF_FUNC_skc_to_tcp6_sock: bpf_func_id = 136;
20864pub const bpf_func_id_BPF_FUNC_skc_to_tcp_sock: bpf_func_id = 137;
20865pub const bpf_func_id_BPF_FUNC_skc_to_tcp_timewait_sock: bpf_func_id = 138;
20866pub const bpf_func_id_BPF_FUNC_skc_to_tcp_request_sock: bpf_func_id = 139;
20867pub const bpf_func_id_BPF_FUNC_skc_to_udp6_sock: bpf_func_id = 140;
20868pub const bpf_func_id_BPF_FUNC_get_task_stack: bpf_func_id = 141;
20869pub const bpf_func_id_BPF_FUNC_load_hdr_opt: bpf_func_id = 142;
20870pub const bpf_func_id_BPF_FUNC_store_hdr_opt: bpf_func_id = 143;
20871pub const bpf_func_id_BPF_FUNC_reserve_hdr_opt: bpf_func_id = 144;
20872pub const bpf_func_id_BPF_FUNC_inode_storage_get: bpf_func_id = 145;
20873pub const bpf_func_id_BPF_FUNC_inode_storage_delete: bpf_func_id = 146;
20874pub const bpf_func_id_BPF_FUNC_d_path: bpf_func_id = 147;
20875pub const bpf_func_id_BPF_FUNC_copy_from_user: bpf_func_id = 148;
20876pub const bpf_func_id_BPF_FUNC_snprintf_btf: bpf_func_id = 149;
20877pub const bpf_func_id_BPF_FUNC_seq_printf_btf: bpf_func_id = 150;
20878pub const bpf_func_id_BPF_FUNC_skb_cgroup_classid: bpf_func_id = 151;
20879pub const bpf_func_id_BPF_FUNC_redirect_neigh: bpf_func_id = 152;
20880pub const bpf_func_id_BPF_FUNC_per_cpu_ptr: bpf_func_id = 153;
20881pub const bpf_func_id_BPF_FUNC_this_cpu_ptr: bpf_func_id = 154;
20882pub const bpf_func_id_BPF_FUNC_redirect_peer: bpf_func_id = 155;
20883pub const bpf_func_id_BPF_FUNC_task_storage_get: bpf_func_id = 156;
20884pub const bpf_func_id_BPF_FUNC_task_storage_delete: bpf_func_id = 157;
20885pub const bpf_func_id_BPF_FUNC_get_current_task_btf: bpf_func_id = 158;
20886pub const bpf_func_id_BPF_FUNC_bprm_opts_set: bpf_func_id = 159;
20887pub const bpf_func_id_BPF_FUNC_ktime_get_coarse_ns: bpf_func_id = 160;
20888pub const bpf_func_id_BPF_FUNC_ima_inode_hash: bpf_func_id = 161;
20889pub const bpf_func_id_BPF_FUNC_sock_from_file: bpf_func_id = 162;
20890pub const bpf_func_id_BPF_FUNC_check_mtu: bpf_func_id = 163;
20891pub const bpf_func_id_BPF_FUNC_for_each_map_elem: bpf_func_id = 164;
20892pub const bpf_func_id_BPF_FUNC_snprintf: bpf_func_id = 165;
20893pub const bpf_func_id_BPF_FUNC_sys_bpf: bpf_func_id = 166;
20894pub const bpf_func_id_BPF_FUNC_btf_find_by_name_kind: bpf_func_id = 167;
20895pub const bpf_func_id_BPF_FUNC_sys_close: bpf_func_id = 168;
20896pub const bpf_func_id_BPF_FUNC_timer_init: bpf_func_id = 169;
20897pub const bpf_func_id_BPF_FUNC_timer_set_callback: bpf_func_id = 170;
20898pub const bpf_func_id_BPF_FUNC_timer_start: bpf_func_id = 171;
20899pub const bpf_func_id_BPF_FUNC_timer_cancel: bpf_func_id = 172;
20900pub const bpf_func_id_BPF_FUNC_get_func_ip: bpf_func_id = 173;
20901pub const bpf_func_id_BPF_FUNC_get_attach_cookie: bpf_func_id = 174;
20902pub const bpf_func_id_BPF_FUNC_task_pt_regs: bpf_func_id = 175;
20903pub const bpf_func_id_BPF_FUNC_get_branch_snapshot: bpf_func_id = 176;
20904pub const bpf_func_id_BPF_FUNC_trace_vprintk: bpf_func_id = 177;
20905pub const bpf_func_id_BPF_FUNC_skc_to_unix_sock: bpf_func_id = 178;
20906pub const bpf_func_id_BPF_FUNC_kallsyms_lookup_name: bpf_func_id = 179;
20907pub const bpf_func_id_BPF_FUNC_find_vma: bpf_func_id = 180;
20908pub const bpf_func_id_BPF_FUNC_loop: bpf_func_id = 181;
20909pub const bpf_func_id_BPF_FUNC_strncmp: bpf_func_id = 182;
20910pub const bpf_func_id_BPF_FUNC_get_func_arg: bpf_func_id = 183;
20911pub const bpf_func_id_BPF_FUNC_get_func_ret: bpf_func_id = 184;
20912pub const bpf_func_id_BPF_FUNC_get_func_arg_cnt: bpf_func_id = 185;
20913pub const bpf_func_id_BPF_FUNC_get_retval: bpf_func_id = 186;
20914pub const bpf_func_id_BPF_FUNC_set_retval: bpf_func_id = 187;
20915pub const bpf_func_id_BPF_FUNC_xdp_get_buff_len: bpf_func_id = 188;
20916pub const bpf_func_id_BPF_FUNC_xdp_load_bytes: bpf_func_id = 189;
20917pub const bpf_func_id_BPF_FUNC_xdp_store_bytes: bpf_func_id = 190;
20918pub const bpf_func_id_BPF_FUNC_copy_from_user_task: bpf_func_id = 191;
20919pub const bpf_func_id_BPF_FUNC_skb_set_tstamp: bpf_func_id = 192;
20920pub const bpf_func_id_BPF_FUNC_ima_file_hash: bpf_func_id = 193;
20921pub const bpf_func_id_BPF_FUNC_kptr_xchg: bpf_func_id = 194;
20922pub const bpf_func_id_BPF_FUNC_map_lookup_percpu_elem: bpf_func_id = 195;
20923pub const bpf_func_id_BPF_FUNC_skc_to_mptcp_sock: bpf_func_id = 196;
20924pub const bpf_func_id_BPF_FUNC_dynptr_from_mem: bpf_func_id = 197;
20925pub const bpf_func_id_BPF_FUNC_ringbuf_reserve_dynptr: bpf_func_id = 198;
20926pub const bpf_func_id_BPF_FUNC_ringbuf_submit_dynptr: bpf_func_id = 199;
20927pub const bpf_func_id_BPF_FUNC_ringbuf_discard_dynptr: bpf_func_id = 200;
20928pub const bpf_func_id_BPF_FUNC_dynptr_read: bpf_func_id = 201;
20929pub const bpf_func_id_BPF_FUNC_dynptr_write: bpf_func_id = 202;
20930pub const bpf_func_id_BPF_FUNC_dynptr_data: bpf_func_id = 203;
20931pub const bpf_func_id_BPF_FUNC_tcp_raw_gen_syncookie_ipv4: bpf_func_id = 204;
20932pub const bpf_func_id_BPF_FUNC_tcp_raw_gen_syncookie_ipv6: bpf_func_id = 205;
20933pub const bpf_func_id_BPF_FUNC_tcp_raw_check_syncookie_ipv4: bpf_func_id = 206;
20934pub const bpf_func_id_BPF_FUNC_tcp_raw_check_syncookie_ipv6: bpf_func_id = 207;
20935pub const bpf_func_id_BPF_FUNC_ktime_get_tai_ns: bpf_func_id = 208;
20936pub const bpf_func_id_BPF_FUNC_user_ringbuf_drain: bpf_func_id = 209;
20937pub const bpf_func_id_BPF_FUNC_cgrp_storage_get: bpf_func_id = 210;
20938pub const bpf_func_id_BPF_FUNC_cgrp_storage_delete: bpf_func_id = 211;
20939pub const bpf_func_id___BPF_FUNC_MAX_ID: bpf_func_id = 212;
20940pub type bpf_func_id = crate::types::c_uint;
20941pub const BPF_F_RECOMPUTE_CSUM: _bindgen_ty_111 = 1;
20942pub const BPF_F_INVALIDATE_HASH: _bindgen_ty_111 = 2;
20943pub type _bindgen_ty_111 = crate::types::c_uint;
20944pub const BPF_F_HDR_FIELD_MASK: _bindgen_ty_112 = 15;
20945pub type _bindgen_ty_112 = crate::types::c_uint;
20946pub const BPF_F_PSEUDO_HDR: _bindgen_ty_113 = 16;
20947pub const BPF_F_MARK_MANGLED_0: _bindgen_ty_113 = 32;
20948pub const BPF_F_MARK_ENFORCE: _bindgen_ty_113 = 64;
20949pub type _bindgen_ty_113 = crate::types::c_uint;
20950pub const BPF_F_TUNINFO_IPV6: _bindgen_ty_114 = 1;
20951pub type _bindgen_ty_114 = crate::types::c_uint;
20952pub const BPF_F_SKIP_FIELD_MASK: _bindgen_ty_115 = 255;
20953pub const BPF_F_USER_STACK: _bindgen_ty_115 = 256;
20954pub const BPF_F_FAST_STACK_CMP: _bindgen_ty_115 = 512;
20955pub const BPF_F_REUSE_STACKID: _bindgen_ty_115 = 1024;
20956pub const BPF_F_USER_BUILD_ID: _bindgen_ty_115 = 2048;
20957pub type _bindgen_ty_115 = crate::types::c_uint;
20958pub const BPF_F_ZERO_CSUM_TX: _bindgen_ty_116 = 2;
20959pub const BPF_F_DONT_FRAGMENT: _bindgen_ty_116 = 4;
20960pub const BPF_F_SEQ_NUMBER: _bindgen_ty_116 = 8;
20961pub const BPF_F_NO_TUNNEL_KEY: _bindgen_ty_116 = 16;
20962pub type _bindgen_ty_116 = crate::types::c_uint;
20963pub const BPF_F_TUNINFO_FLAGS: _bindgen_ty_117 = 16;
20964pub type _bindgen_ty_117 = crate::types::c_uint;
20965pub const BPF_F_INDEX_MASK: _bindgen_ty_118 = 4294967295;
20966pub const BPF_F_CURRENT_CPU: _bindgen_ty_118 = 4294967295;
20967pub const BPF_F_CTXLEN_MASK: _bindgen_ty_118 = 4503595332403200;
20968pub type _bindgen_ty_118 = crate::types::c_ulong;
20969pub const BPF_F_CURRENT_NETNS: _bindgen_ty_119 = -1;
20970pub type _bindgen_ty_119 = crate::types::c_int;
20971pub const BPF_CSUM_LEVEL_QUERY: _bindgen_ty_120 = 0;
20972pub const BPF_CSUM_LEVEL_INC: _bindgen_ty_120 = 1;
20973pub const BPF_CSUM_LEVEL_DEC: _bindgen_ty_120 = 2;
20974pub const BPF_CSUM_LEVEL_RESET: _bindgen_ty_120 = 3;
20975pub type _bindgen_ty_120 = crate::types::c_uint;
20976pub const BPF_F_ADJ_ROOM_FIXED_GSO: _bindgen_ty_121 = 1;
20977pub const BPF_F_ADJ_ROOM_ENCAP_L3_IPV4: _bindgen_ty_121 = 2;
20978pub const BPF_F_ADJ_ROOM_ENCAP_L3_IPV6: _bindgen_ty_121 = 4;
20979pub const BPF_F_ADJ_ROOM_ENCAP_L4_GRE: _bindgen_ty_121 = 8;
20980pub const BPF_F_ADJ_ROOM_ENCAP_L4_UDP: _bindgen_ty_121 = 16;
20981pub const BPF_F_ADJ_ROOM_NO_CSUM_RESET: _bindgen_ty_121 = 32;
20982pub const BPF_F_ADJ_ROOM_ENCAP_L2_ETH: _bindgen_ty_121 = 64;
20983pub const BPF_F_ADJ_ROOM_DECAP_L3_IPV4: _bindgen_ty_121 = 128;
20984pub const BPF_F_ADJ_ROOM_DECAP_L3_IPV6: _bindgen_ty_121 = 256;
20985pub type _bindgen_ty_121 = crate::types::c_uint;
20986pub const BPF_ADJ_ROOM_ENCAP_L2_MASK: _bindgen_ty_122 = 255;
20987pub const BPF_ADJ_ROOM_ENCAP_L2_SHIFT: _bindgen_ty_122 = 56;
20988pub type _bindgen_ty_122 = crate::types::c_uint;
20989pub const BPF_F_SYSCTL_BASE_NAME: _bindgen_ty_123 = 1;
20990pub type _bindgen_ty_123 = crate::types::c_uint;
20991pub const BPF_LOCAL_STORAGE_GET_F_CREATE: _bindgen_ty_124 = 1;
20992pub const BPF_SK_STORAGE_GET_F_CREATE: _bindgen_ty_124 = 1;
20993pub type _bindgen_ty_124 = crate::types::c_uint;
20994pub const BPF_F_GET_BRANCH_RECORDS_SIZE: _bindgen_ty_125 = 1;
20995pub type _bindgen_ty_125 = crate::types::c_uint;
20996pub const BPF_RB_NO_WAKEUP: _bindgen_ty_126 = 1;
20997pub const BPF_RB_FORCE_WAKEUP: _bindgen_ty_126 = 2;
20998pub type _bindgen_ty_126 = crate::types::c_uint;
20999pub const BPF_RB_AVAIL_DATA: _bindgen_ty_127 = 0;
21000pub const BPF_RB_RING_SIZE: _bindgen_ty_127 = 1;
21001pub const BPF_RB_CONS_POS: _bindgen_ty_127 = 2;
21002pub const BPF_RB_PROD_POS: _bindgen_ty_127 = 3;
21003pub type _bindgen_ty_127 = crate::types::c_uint;
21004pub const BPF_RINGBUF_BUSY_BIT: _bindgen_ty_128 = 2147483648;
21005pub const BPF_RINGBUF_DISCARD_BIT: _bindgen_ty_128 = 1073741824;
21006pub const BPF_RINGBUF_HDR_SZ: _bindgen_ty_128 = 8;
21007pub type _bindgen_ty_128 = crate::types::c_uint;
21008pub const BPF_SK_LOOKUP_F_REPLACE: _bindgen_ty_129 = 1;
21009pub const BPF_SK_LOOKUP_F_NO_REUSEPORT: _bindgen_ty_129 = 2;
21010pub type _bindgen_ty_129 = crate::types::c_uint;
21011pub const bpf_adj_room_mode_BPF_ADJ_ROOM_NET: bpf_adj_room_mode = 0;
21012pub const bpf_adj_room_mode_BPF_ADJ_ROOM_MAC: bpf_adj_room_mode = 1;
21013pub type bpf_adj_room_mode = crate::types::c_uint;
21014pub const bpf_hdr_start_off_BPF_HDR_START_MAC: bpf_hdr_start_off = 0;
21015pub const bpf_hdr_start_off_BPF_HDR_START_NET: bpf_hdr_start_off = 1;
21016pub type bpf_hdr_start_off = crate::types::c_uint;
21017pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_SEG6: bpf_lwt_encap_mode = 0;
21018pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_SEG6_INLINE: bpf_lwt_encap_mode = 1;
21019pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_IP: bpf_lwt_encap_mode = 2;
21020pub type bpf_lwt_encap_mode = crate::types::c_uint;
21021pub const BPF_F_BPRM_SECUREEXEC: _bindgen_ty_130 = 1;
21022pub type _bindgen_ty_130 = crate::types::c_uint;
21023pub const BPF_F_INGRESS: _bindgen_ty_131 = 1;
21024pub const BPF_F_BROADCAST: _bindgen_ty_131 = 8;
21025pub const BPF_F_EXCLUDE_INGRESS: _bindgen_ty_131 = 16;
21026pub type _bindgen_ty_131 = crate::types::c_uint;
21027pub const BPF_SKB_TSTAMP_UNSPEC: _bindgen_ty_132 = 0;
21028pub const BPF_SKB_TSTAMP_DELIVERY_MONO: _bindgen_ty_132 = 1;
21029pub const BPF_SKB_CLOCK_REALTIME: _bindgen_ty_132 = 0;
21030pub const BPF_SKB_CLOCK_MONOTONIC: _bindgen_ty_132 = 1;
21031pub const BPF_SKB_CLOCK_TAI: _bindgen_ty_132 = 2;
21032pub type _bindgen_ty_132 = crate::types::c_uint;
21033#[repr(C)]
21034#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21035pub struct __sk_buff {
21036    pub len: __u32,
21037    pub pkt_type: __u32,
21038    pub mark: __u32,
21039    pub queue_mapping: __u32,
21040    pub protocol: __u32,
21041    pub vlan_present: __u32,
21042    pub vlan_tci: __u32,
21043    pub vlan_proto: __u32,
21044    pub priority: __u32,
21045    pub ingress_ifindex: __u32,
21046    pub ifindex: __u32,
21047    pub tc_index: __u32,
21048    pub cb: [__u32; 5usize],
21049    pub hash: __u32,
21050    pub tc_classid: __u32,
21051    pub data: __u32,
21052    pub data_end: __u32,
21053    pub napi_id: __u32,
21054    pub family: __u32,
21055    pub remote_ip4: __u32,
21056    pub local_ip4: __u32,
21057    pub remote_ip6: [__u32; 4usize],
21058    pub local_ip6: [__u32; 4usize],
21059    pub remote_port: __u32,
21060    pub local_port: __u32,
21061    pub data_meta: __u32,
21062    pub __bindgen_anon_1: __sk_buff__bindgen_ty_1,
21063    pub tstamp: __u64,
21064    pub wire_len: __u32,
21065    pub gso_segs: __u32,
21066    pub __bindgen_anon_2: __sk_buff__bindgen_ty_2,
21067    pub gso_size: __u32,
21068    pub tstamp_type: __u8,
21069    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 3usize]>,
21070    pub hwtstamp: __u64,
21071}
21072#[repr(C)]
21073#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21074pub union __sk_buff__bindgen_ty_1 {
21075    pub flow_keys: uref<bpf_flow_keys>,
21076    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21077}
21078impl Default for __sk_buff__bindgen_ty_1 {
21079    fn default() -> Self {
21080        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21081        unsafe {
21082            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21083            s.assume_init()
21084        }
21085    }
21086}
21087impl __sk_buff__bindgen_ty_1 {
21088    #[inline]
21089    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21090        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21091        __bindgen_bitfield_unit
21092    }
21093}
21094#[repr(C)]
21095#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21096pub union __sk_buff__bindgen_ty_2 {
21097    pub sk: uref<bpf_sock>,
21098    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21099}
21100impl Default for __sk_buff__bindgen_ty_2 {
21101    fn default() -> Self {
21102        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21103        unsafe {
21104            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21105            s.assume_init()
21106        }
21107    }
21108}
21109impl __sk_buff__bindgen_ty_2 {
21110    #[inline]
21111    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21112        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21113        __bindgen_bitfield_unit
21114    }
21115}
21116impl Default for __sk_buff {
21117    fn default() -> Self {
21118        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21119        unsafe {
21120            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21121            s.assume_init()
21122        }
21123    }
21124}
21125impl __sk_buff {
21126    #[inline]
21127    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 3usize]> {
21128        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 3usize]> = Default::default();
21129        __bindgen_bitfield_unit
21130    }
21131}
21132#[repr(C)]
21133#[derive(Copy, Clone)]
21134pub struct bpf_tunnel_key {
21135    pub tunnel_id: __u32,
21136    pub __bindgen_anon_1: bpf_tunnel_key__bindgen_ty_1,
21137    pub tunnel_tos: __u8,
21138    pub tunnel_ttl: __u8,
21139    pub __bindgen_anon_2: bpf_tunnel_key__bindgen_ty_2,
21140    pub tunnel_label: __u32,
21141    pub __bindgen_anon_3: bpf_tunnel_key__bindgen_ty_3,
21142}
21143#[repr(C)]
21144#[derive(Copy, Clone)]
21145pub union bpf_tunnel_key__bindgen_ty_1 {
21146    pub remote_ipv4: __u32,
21147    pub remote_ipv6: [__u32; 4usize],
21148}
21149impl Default for bpf_tunnel_key__bindgen_ty_1 {
21150    fn default() -> Self {
21151        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21152        unsafe {
21153            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21154            s.assume_init()
21155        }
21156    }
21157}
21158#[repr(C)]
21159#[derive(Copy, Clone)]
21160pub union bpf_tunnel_key__bindgen_ty_2 {
21161    pub tunnel_ext: __u16,
21162    pub tunnel_flags: __be16,
21163}
21164impl Default for bpf_tunnel_key__bindgen_ty_2 {
21165    fn default() -> Self {
21166        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21167        unsafe {
21168            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21169            s.assume_init()
21170        }
21171    }
21172}
21173#[repr(C)]
21174#[derive(Copy, Clone)]
21175pub union bpf_tunnel_key__bindgen_ty_3 {
21176    pub local_ipv4: __u32,
21177    pub local_ipv6: [__u32; 4usize],
21178}
21179impl Default for bpf_tunnel_key__bindgen_ty_3 {
21180    fn default() -> Self {
21181        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21182        unsafe {
21183            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21184            s.assume_init()
21185        }
21186    }
21187}
21188impl Default for bpf_tunnel_key {
21189    fn default() -> Self {
21190        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21191        unsafe {
21192            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21193            s.assume_init()
21194        }
21195    }
21196}
21197#[repr(C)]
21198#[derive(Copy, Clone)]
21199pub struct bpf_xfrm_state {
21200    pub reqid: __u32,
21201    pub spi: __u32,
21202    pub family: __u16,
21203    pub ext: __u16,
21204    pub __bindgen_anon_1: bpf_xfrm_state__bindgen_ty_1,
21205}
21206#[repr(C)]
21207#[derive(Copy, Clone)]
21208pub union bpf_xfrm_state__bindgen_ty_1 {
21209    pub remote_ipv4: __u32,
21210    pub remote_ipv6: [__u32; 4usize],
21211}
21212impl Default for bpf_xfrm_state__bindgen_ty_1 {
21213    fn default() -> Self {
21214        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21215        unsafe {
21216            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21217            s.assume_init()
21218        }
21219    }
21220}
21221impl Default for bpf_xfrm_state {
21222    fn default() -> Self {
21223        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21224        unsafe {
21225            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21226            s.assume_init()
21227        }
21228    }
21229}
21230pub const bpf_ret_code_BPF_OK: bpf_ret_code = 0;
21231pub const bpf_ret_code_BPF_DROP: bpf_ret_code = 2;
21232pub const bpf_ret_code_BPF_REDIRECT: bpf_ret_code = 7;
21233pub const bpf_ret_code_BPF_LWT_REROUTE: bpf_ret_code = 128;
21234pub const bpf_ret_code_BPF_FLOW_DISSECTOR_CONTINUE: bpf_ret_code = 129;
21235pub type bpf_ret_code = crate::types::c_uint;
21236#[repr(C)]
21237#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21238pub struct bpf_sock {
21239    pub bound_dev_if: __u32,
21240    pub family: __u32,
21241    pub type_: __u32,
21242    pub protocol: __u32,
21243    pub mark: __u32,
21244    pub priority: __u32,
21245    pub src_ip4: __u32,
21246    pub src_ip6: [__u32; 4usize],
21247    pub src_port: __u32,
21248    pub dst_port: __be16,
21249    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
21250    pub dst_ip4: __u32,
21251    pub dst_ip6: [__u32; 4usize],
21252    pub state: __u32,
21253    pub rx_queue_mapping: __s32,
21254}
21255impl bpf_sock {
21256    #[inline]
21257    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 2usize]> {
21258        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
21259        __bindgen_bitfield_unit
21260    }
21261}
21262#[repr(C)]
21263#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21264pub struct bpf_tcp_sock {
21265    pub snd_cwnd: __u32,
21266    pub srtt_us: __u32,
21267    pub rtt_min: __u32,
21268    pub snd_ssthresh: __u32,
21269    pub rcv_nxt: __u32,
21270    pub snd_nxt: __u32,
21271    pub snd_una: __u32,
21272    pub mss_cache: __u32,
21273    pub ecn_flags: __u32,
21274    pub rate_delivered: __u32,
21275    pub rate_interval_us: __u32,
21276    pub packets_out: __u32,
21277    pub retrans_out: __u32,
21278    pub total_retrans: __u32,
21279    pub segs_in: __u32,
21280    pub data_segs_in: __u32,
21281    pub segs_out: __u32,
21282    pub data_segs_out: __u32,
21283    pub lost_out: __u32,
21284    pub sacked_out: __u32,
21285    pub bytes_received: __u64,
21286    pub bytes_acked: __u64,
21287    pub dsack_dups: __u32,
21288    pub delivered: __u32,
21289    pub delivered_ce: __u32,
21290    pub icsk_retransmits: __u32,
21291}
21292#[repr(C)]
21293#[derive(Copy, Clone)]
21294pub struct bpf_sock_tuple {
21295    pub __bindgen_anon_1: bpf_sock_tuple__bindgen_ty_1,
21296}
21297#[repr(C)]
21298#[derive(Copy, Clone)]
21299pub union bpf_sock_tuple__bindgen_ty_1 {
21300    pub ipv4: bpf_sock_tuple__bindgen_ty_1__bindgen_ty_1,
21301    pub ipv6: bpf_sock_tuple__bindgen_ty_1__bindgen_ty_2,
21302}
21303#[repr(C)]
21304#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21305pub struct bpf_sock_tuple__bindgen_ty_1__bindgen_ty_1 {
21306    pub saddr: __be32,
21307    pub daddr: __be32,
21308    pub sport: __be16,
21309    pub dport: __be16,
21310}
21311#[repr(C)]
21312#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21313pub struct bpf_sock_tuple__bindgen_ty_1__bindgen_ty_2 {
21314    pub saddr: [__be32; 4usize],
21315    pub daddr: [__be32; 4usize],
21316    pub sport: __be16,
21317    pub dport: __be16,
21318}
21319impl Default for bpf_sock_tuple__bindgen_ty_1 {
21320    fn default() -> Self {
21321        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21322        unsafe {
21323            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21324            s.assume_init()
21325        }
21326    }
21327}
21328impl Default for bpf_sock_tuple {
21329    fn default() -> Self {
21330        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21331        unsafe {
21332            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21333            s.assume_init()
21334        }
21335    }
21336}
21337pub const tcx_action_base_TCX_NEXT: tcx_action_base = -1;
21338pub const tcx_action_base_TCX_PASS: tcx_action_base = 0;
21339pub const tcx_action_base_TCX_DROP: tcx_action_base = 2;
21340pub const tcx_action_base_TCX_REDIRECT: tcx_action_base = 7;
21341pub type tcx_action_base = crate::types::c_int;
21342#[repr(C)]
21343#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21344pub struct bpf_xdp_sock {
21345    pub queue_id: __u32,
21346}
21347pub const xdp_action_XDP_ABORTED: xdp_action = 0;
21348pub const xdp_action_XDP_DROP: xdp_action = 1;
21349pub const xdp_action_XDP_PASS: xdp_action = 2;
21350pub const xdp_action_XDP_TX: xdp_action = 3;
21351pub const xdp_action_XDP_REDIRECT: xdp_action = 4;
21352pub type xdp_action = crate::types::c_uint;
21353#[repr(C)]
21354#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21355pub struct xdp_md {
21356    pub data: __u32,
21357    pub data_end: __u32,
21358    pub data_meta: __u32,
21359    pub ingress_ifindex: __u32,
21360    pub rx_queue_index: __u32,
21361    pub egress_ifindex: __u32,
21362}
21363#[repr(C)]
21364#[derive(Copy, Clone)]
21365pub struct bpf_devmap_val {
21366    pub ifindex: __u32,
21367    pub bpf_prog: bpf_devmap_val__bindgen_ty_1,
21368}
21369#[repr(C)]
21370#[derive(Copy, Clone)]
21371pub union bpf_devmap_val__bindgen_ty_1 {
21372    pub fd: crate::types::c_int,
21373    pub id: __u32,
21374}
21375impl Default for bpf_devmap_val__bindgen_ty_1 {
21376    fn default() -> Self {
21377        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21378        unsafe {
21379            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21380            s.assume_init()
21381        }
21382    }
21383}
21384impl Default for bpf_devmap_val {
21385    fn default() -> Self {
21386        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21387        unsafe {
21388            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21389            s.assume_init()
21390        }
21391    }
21392}
21393#[repr(C)]
21394#[derive(Copy, Clone)]
21395pub struct bpf_cpumap_val {
21396    pub qsize: __u32,
21397    pub bpf_prog: bpf_cpumap_val__bindgen_ty_1,
21398}
21399#[repr(C)]
21400#[derive(Copy, Clone)]
21401pub union bpf_cpumap_val__bindgen_ty_1 {
21402    pub fd: crate::types::c_int,
21403    pub id: __u32,
21404}
21405impl Default for bpf_cpumap_val__bindgen_ty_1 {
21406    fn default() -> Self {
21407        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21408        unsafe {
21409            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21410            s.assume_init()
21411        }
21412    }
21413}
21414impl Default for bpf_cpumap_val {
21415    fn default() -> Self {
21416        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21417        unsafe {
21418            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21419            s.assume_init()
21420        }
21421    }
21422}
21423pub const sk_action_SK_DROP: sk_action = 0;
21424pub const sk_action_SK_PASS: sk_action = 1;
21425pub type sk_action = crate::types::c_uint;
21426#[repr(C)]
21427#[derive(Copy, Clone)]
21428pub struct sk_msg_md {
21429    pub __bindgen_anon_1: sk_msg_md__bindgen_ty_1,
21430    pub __bindgen_anon_2: sk_msg_md__bindgen_ty_2,
21431    pub family: __u32,
21432    pub remote_ip4: __u32,
21433    pub local_ip4: __u32,
21434    pub remote_ip6: [__u32; 4usize],
21435    pub local_ip6: [__u32; 4usize],
21436    pub remote_port: __u32,
21437    pub local_port: __u32,
21438    pub size: __u32,
21439    pub __bindgen_anon_3: sk_msg_md__bindgen_ty_3,
21440}
21441#[repr(C)]
21442#[derive(Copy, Clone)]
21443pub union sk_msg_md__bindgen_ty_1 {
21444    pub data: uaddr,
21445    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21446}
21447impl Default for sk_msg_md__bindgen_ty_1 {
21448    fn default() -> Self {
21449        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21450        unsafe {
21451            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21452            s.assume_init()
21453        }
21454    }
21455}
21456impl sk_msg_md__bindgen_ty_1 {
21457    #[inline]
21458    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21459        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21460        __bindgen_bitfield_unit
21461    }
21462}
21463#[repr(C)]
21464#[derive(Copy, Clone)]
21465pub union sk_msg_md__bindgen_ty_2 {
21466    pub data_end: uaddr,
21467    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21468}
21469impl Default for sk_msg_md__bindgen_ty_2 {
21470    fn default() -> Self {
21471        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21472        unsafe {
21473            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21474            s.assume_init()
21475        }
21476    }
21477}
21478impl sk_msg_md__bindgen_ty_2 {
21479    #[inline]
21480    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21481        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21482        __bindgen_bitfield_unit
21483    }
21484}
21485#[repr(C)]
21486#[derive(Copy, Clone)]
21487pub union sk_msg_md__bindgen_ty_3 {
21488    pub sk: uref<bpf_sock>,
21489    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21490}
21491impl Default for sk_msg_md__bindgen_ty_3 {
21492    fn default() -> Self {
21493        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21494        unsafe {
21495            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21496            s.assume_init()
21497        }
21498    }
21499}
21500impl sk_msg_md__bindgen_ty_3 {
21501    #[inline]
21502    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21503        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21504        __bindgen_bitfield_unit
21505    }
21506}
21507impl Default for sk_msg_md {
21508    fn default() -> Self {
21509        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21510        unsafe {
21511            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21512            s.assume_init()
21513        }
21514    }
21515}
21516#[repr(C)]
21517#[derive(Copy, Clone)]
21518pub struct sk_reuseport_md {
21519    pub __bindgen_anon_1: sk_reuseport_md__bindgen_ty_1,
21520    pub __bindgen_anon_2: sk_reuseport_md__bindgen_ty_2,
21521    pub len: __u32,
21522    pub eth_protocol: __u32,
21523    pub ip_protocol: __u32,
21524    pub bind_inany: __u32,
21525    pub hash: __u32,
21526    pub __bindgen_padding_0: [u8; 4usize],
21527    pub __bindgen_anon_3: sk_reuseport_md__bindgen_ty_3,
21528    pub __bindgen_anon_4: sk_reuseport_md__bindgen_ty_4,
21529}
21530#[repr(C)]
21531#[derive(Copy, Clone)]
21532pub union sk_reuseport_md__bindgen_ty_1 {
21533    pub data: uaddr,
21534    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21535}
21536impl Default for sk_reuseport_md__bindgen_ty_1 {
21537    fn default() -> Self {
21538        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21539        unsafe {
21540            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21541            s.assume_init()
21542        }
21543    }
21544}
21545impl sk_reuseport_md__bindgen_ty_1 {
21546    #[inline]
21547    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21548        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21549        __bindgen_bitfield_unit
21550    }
21551}
21552#[repr(C)]
21553#[derive(Copy, Clone)]
21554pub union sk_reuseport_md__bindgen_ty_2 {
21555    pub data_end: uaddr,
21556    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21557}
21558impl Default for sk_reuseport_md__bindgen_ty_2 {
21559    fn default() -> Self {
21560        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21561        unsafe {
21562            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21563            s.assume_init()
21564        }
21565    }
21566}
21567impl sk_reuseport_md__bindgen_ty_2 {
21568    #[inline]
21569    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21570        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21571        __bindgen_bitfield_unit
21572    }
21573}
21574#[repr(C)]
21575#[derive(Copy, Clone)]
21576pub union sk_reuseport_md__bindgen_ty_3 {
21577    pub sk: uref<bpf_sock>,
21578    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21579}
21580impl Default for sk_reuseport_md__bindgen_ty_3 {
21581    fn default() -> Self {
21582        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21583        unsafe {
21584            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21585            s.assume_init()
21586        }
21587    }
21588}
21589impl sk_reuseport_md__bindgen_ty_3 {
21590    #[inline]
21591    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21592        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21593        __bindgen_bitfield_unit
21594    }
21595}
21596#[repr(C)]
21597#[derive(Copy, Clone)]
21598pub union sk_reuseport_md__bindgen_ty_4 {
21599    pub migrating_sk: uref<bpf_sock>,
21600    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21601}
21602impl Default for sk_reuseport_md__bindgen_ty_4 {
21603    fn default() -> Self {
21604        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21605        unsafe {
21606            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21607            s.assume_init()
21608        }
21609    }
21610}
21611impl sk_reuseport_md__bindgen_ty_4 {
21612    #[inline]
21613    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21614        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21615        __bindgen_bitfield_unit
21616    }
21617}
21618impl Default for sk_reuseport_md {
21619    fn default() -> Self {
21620        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21621        unsafe {
21622            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21623            s.assume_init()
21624        }
21625    }
21626}
21627#[repr(C)]
21628#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
21629pub struct bpf_prog_info {
21630    pub type_: __u32,
21631    pub id: __u32,
21632    pub tag: [__u8; 8usize],
21633    pub jited_prog_len: __u32,
21634    pub xlated_prog_len: __u32,
21635    pub jited_prog_insns: __u64,
21636    pub xlated_prog_insns: __u64,
21637    pub load_time: __u64,
21638    pub created_by_uid: __u32,
21639    pub nr_map_ids: __u32,
21640    pub map_ids: __u64,
21641    pub name: [crate::types::c_char; 16usize],
21642    pub ifindex: __u32,
21643    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21644    pub netns_dev: __u64,
21645    pub netns_ino: __u64,
21646    pub nr_jited_ksyms: __u32,
21647    pub nr_jited_func_lens: __u32,
21648    pub jited_ksyms: __u64,
21649    pub jited_func_lens: __u64,
21650    pub btf_id: __u32,
21651    pub func_info_rec_size: __u32,
21652    pub func_info: __u64,
21653    pub nr_func_info: __u32,
21654    pub nr_line_info: __u32,
21655    pub line_info: __u64,
21656    pub jited_line_info: __u64,
21657    pub nr_jited_line_info: __u32,
21658    pub line_info_rec_size: __u32,
21659    pub jited_line_info_rec_size: __u32,
21660    pub nr_prog_tags: __u32,
21661    pub prog_tags: __u64,
21662    pub run_time_ns: __u64,
21663    pub run_cnt: __u64,
21664    pub recursion_misses: __u64,
21665    pub verified_insns: __u32,
21666    pub attach_btf_obj_id: __u32,
21667    pub attach_btf_id: __u32,
21668    pub __bindgen_padding_0: [u8; 4usize],
21669}
21670impl bpf_prog_info {
21671    #[inline]
21672    pub fn gpl_compatible(&self) -> __u32 {
21673        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u32) }
21674    }
21675    #[inline]
21676    pub fn set_gpl_compatible(&mut self, val: __u32) {
21677        unsafe {
21678            let val: u32 = val as _;
21679            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
21680        }
21681    }
21682    #[inline]
21683    pub unsafe fn gpl_compatible_raw(this: *const Self) -> __u32 {
21684        unsafe {
21685            ::std::mem::transmute(
21686                <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<0usize, 1u8>(
21687                    ::std::ptr::addr_of!((*this)._bitfield_1),
21688                ) as u32,
21689            )
21690        }
21691    }
21692    #[inline]
21693    pub unsafe fn set_gpl_compatible_raw(this: *mut Self, val: __u32) {
21694        unsafe {
21695            let val: u32 = val as _;
21696            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<0usize, 1u8>(
21697                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
21698                val as u64,
21699            )
21700        }
21701    }
21702    #[inline]
21703    pub fn new_bitfield_1(gpl_compatible: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
21704        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21705        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
21706            let gpl_compatible: u32 = gpl_compatible as _;
21707            gpl_compatible as u64
21708        });
21709        __bindgen_bitfield_unit
21710    }
21711}
21712#[repr(C)]
21713#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21714pub struct bpf_map_info {
21715    pub type_: __u32,
21716    pub id: __u32,
21717    pub key_size: __u32,
21718    pub value_size: __u32,
21719    pub max_entries: __u32,
21720    pub map_flags: __u32,
21721    pub name: [crate::types::c_char; 16usize],
21722    pub ifindex: __u32,
21723    pub btf_vmlinux_value_type_id: __u32,
21724    pub netns_dev: __u64,
21725    pub netns_ino: __u64,
21726    pub btf_id: __u32,
21727    pub btf_key_type_id: __u32,
21728    pub btf_value_type_id: __u32,
21729    pub btf_vmlinux_id: __u32,
21730    pub map_extra: __u64,
21731}
21732#[repr(C)]
21733#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21734pub struct bpf_btf_info {
21735    pub btf: __u64,
21736    pub btf_size: __u32,
21737    pub id: __u32,
21738    pub name: __u64,
21739    pub name_len: __u32,
21740    pub kernel_btf: __u32,
21741}
21742#[repr(C)]
21743#[derive(Copy, Clone)]
21744pub struct bpf_link_info {
21745    pub type_: __u32,
21746    pub id: __u32,
21747    pub prog_id: __u32,
21748    pub __bindgen_padding_0: [u8; 4usize],
21749    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1,
21750}
21751#[repr(C)]
21752#[derive(Copy, Clone)]
21753pub union bpf_link_info__bindgen_ty_1 {
21754    pub raw_tracepoint: bpf_link_info__bindgen_ty_1__bindgen_ty_1,
21755    pub tracing: bpf_link_info__bindgen_ty_1__bindgen_ty_2,
21756    pub cgroup: bpf_link_info__bindgen_ty_1__bindgen_ty_3,
21757    pub iter: bpf_link_info__bindgen_ty_1__bindgen_ty_4,
21758    pub netns: bpf_link_info__bindgen_ty_1__bindgen_ty_5,
21759    pub xdp: bpf_link_info__bindgen_ty_1__bindgen_ty_6,
21760    pub struct_ops: bpf_link_info__bindgen_ty_1__bindgen_ty_7,
21761    pub netfilter: bpf_link_info__bindgen_ty_1__bindgen_ty_8,
21762    pub kprobe_multi: bpf_link_info__bindgen_ty_1__bindgen_ty_9,
21763    pub uprobe_multi: bpf_link_info__bindgen_ty_1__bindgen_ty_10,
21764    pub perf_event: bpf_link_info__bindgen_ty_1__bindgen_ty_11,
21765    pub tcx: bpf_link_info__bindgen_ty_1__bindgen_ty_12,
21766    pub netkit: bpf_link_info__bindgen_ty_1__bindgen_ty_13,
21767    pub sockmap: bpf_link_info__bindgen_ty_1__bindgen_ty_14,
21768}
21769#[repr(C)]
21770#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21771pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_1 {
21772    pub tp_name: __u64,
21773    pub tp_name_len: __u32,
21774    pub __bindgen_padding_0: [u8; 4usize],
21775}
21776#[repr(C)]
21777#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21778pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_2 {
21779    pub attach_type: __u32,
21780    pub target_obj_id: __u32,
21781    pub target_btf_id: __u32,
21782}
21783#[repr(C)]
21784#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21785pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_3 {
21786    pub cgroup_id: __u64,
21787    pub attach_type: __u32,
21788    pub __bindgen_padding_0: [u8; 4usize],
21789}
21790#[repr(C)]
21791#[derive(Copy, Clone)]
21792pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4 {
21793    pub target_name: __u64,
21794    pub target_name_len: __u32,
21795    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1,
21796    pub __bindgen_anon_2: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2,
21797}
21798#[repr(C)]
21799#[derive(Copy, Clone)]
21800pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 {
21801    pub map: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1,
21802}
21803#[repr(C)]
21804#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21805pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 {
21806    pub map_id: __u32,
21807}
21808impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 {
21809    fn default() -> Self {
21810        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21811        unsafe {
21812            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21813            s.assume_init()
21814        }
21815    }
21816}
21817#[repr(C)]
21818#[derive(Copy, Clone)]
21819pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2 {
21820    pub cgroup: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_1,
21821    pub task: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_2,
21822}
21823#[repr(C)]
21824#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21825pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_1 {
21826    pub cgroup_id: __u64,
21827    pub order: __u32,
21828    pub __bindgen_padding_0: [u8; 4usize],
21829}
21830#[repr(C)]
21831#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21832pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_2 {
21833    pub tid: __u32,
21834    pub pid: __u32,
21835}
21836impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2 {
21837    fn default() -> Self {
21838        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21839        unsafe {
21840            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21841            s.assume_init()
21842        }
21843    }
21844}
21845impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4 {
21846    fn default() -> Self {
21847        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21848        unsafe {
21849            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21850            s.assume_init()
21851        }
21852    }
21853}
21854#[repr(C)]
21855#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21856pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_5 {
21857    pub netns_ino: __u32,
21858    pub attach_type: __u32,
21859}
21860#[repr(C)]
21861#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21862pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_6 {
21863    pub ifindex: __u32,
21864}
21865#[repr(C)]
21866#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21867pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_7 {
21868    pub map_id: __u32,
21869}
21870#[repr(C)]
21871#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21872pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_8 {
21873    pub pf: __u32,
21874    pub hooknum: __u32,
21875    pub priority: __s32,
21876    pub flags: __u32,
21877}
21878#[repr(C)]
21879#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21880pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_9 {
21881    pub addrs: __u64,
21882    pub count: __u32,
21883    pub flags: __u32,
21884    pub missed: __u64,
21885    pub cookies: __u64,
21886}
21887#[repr(C)]
21888#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21889pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_10 {
21890    pub path: __u64,
21891    pub offsets: __u64,
21892    pub ref_ctr_offsets: __u64,
21893    pub cookies: __u64,
21894    pub path_size: __u32,
21895    pub count: __u32,
21896    pub flags: __u32,
21897    pub pid: __u32,
21898}
21899#[repr(C)]
21900#[derive(Copy, Clone)]
21901pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
21902    pub type_: __u32,
21903    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21904    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1,
21905}
21906#[repr(C)]
21907#[derive(Copy, Clone)]
21908pub union bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1 {
21909    pub uprobe: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_1,
21910    pub kprobe: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_2,
21911    pub tracepoint: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3,
21912    pub event: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4,
21913}
21914#[repr(C)]
21915#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21916pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_1 {
21917    pub file_name: __u64,
21918    pub name_len: __u32,
21919    pub offset: __u32,
21920    pub cookie: __u64,
21921}
21922#[repr(C)]
21923#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21924pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_2 {
21925    pub func_name: __u64,
21926    pub name_len: __u32,
21927    pub offset: __u32,
21928    pub addr: __u64,
21929    pub missed: __u64,
21930    pub cookie: __u64,
21931}
21932#[repr(C)]
21933#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21934pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3 {
21935    pub tp_name: __u64,
21936    pub name_len: __u32,
21937    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21938    pub cookie: __u64,
21939}
21940impl bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3 {
21941    #[inline]
21942    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
21943        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21944        __bindgen_bitfield_unit
21945    }
21946}
21947#[repr(C)]
21948#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21949pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4 {
21950    pub config: __u64,
21951    pub type_: __u32,
21952    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21953    pub cookie: __u64,
21954}
21955impl bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4 {
21956    #[inline]
21957    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
21958        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21959        __bindgen_bitfield_unit
21960    }
21961}
21962impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1 {
21963    fn default() -> Self {
21964        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21965        unsafe {
21966            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21967            s.assume_init()
21968        }
21969    }
21970}
21971impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
21972    fn default() -> Self {
21973        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21974        unsafe {
21975            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21976            s.assume_init()
21977        }
21978    }
21979}
21980impl bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
21981    #[inline]
21982    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
21983        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21984        __bindgen_bitfield_unit
21985    }
21986}
21987#[repr(C)]
21988#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21989pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_12 {
21990    pub ifindex: __u32,
21991    pub attach_type: __u32,
21992}
21993#[repr(C)]
21994#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21995pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_13 {
21996    pub ifindex: __u32,
21997    pub attach_type: __u32,
21998}
21999#[repr(C)]
22000#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22001pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_14 {
22002    pub map_id: __u32,
22003    pub attach_type: __u32,
22004}
22005impl Default for bpf_link_info__bindgen_ty_1 {
22006    fn default() -> Self {
22007        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22008        unsafe {
22009            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22010            s.assume_init()
22011        }
22012    }
22013}
22014impl Default for bpf_link_info {
22015    fn default() -> Self {
22016        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22017        unsafe {
22018            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22019            s.assume_init()
22020        }
22021    }
22022}
22023#[repr(C)]
22024#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22025pub struct bpf_sock_addr {
22026    pub user_family: __u32,
22027    pub user_ip4: __u32,
22028    pub user_ip6: [__u32; 4usize],
22029    pub user_port: __u32,
22030    pub family: __u32,
22031    pub type_: __u32,
22032    pub protocol: __u32,
22033    pub msg_src_ip4: __u32,
22034    pub msg_src_ip6: [__u32; 4usize],
22035    pub __bindgen_padding_0: [u8; 4usize],
22036    pub __bindgen_anon_1: bpf_sock_addr__bindgen_ty_1,
22037}
22038#[repr(C)]
22039#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22040pub union bpf_sock_addr__bindgen_ty_1 {
22041    pub sk: uref<bpf_sock>,
22042    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22043}
22044impl Default for bpf_sock_addr__bindgen_ty_1 {
22045    fn default() -> Self {
22046        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22047        unsafe {
22048            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22049            s.assume_init()
22050        }
22051    }
22052}
22053impl bpf_sock_addr__bindgen_ty_1 {
22054    #[inline]
22055    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22056        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22057        __bindgen_bitfield_unit
22058    }
22059}
22060impl Default for bpf_sock_addr {
22061    fn default() -> Self {
22062        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22063        unsafe {
22064            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22065            s.assume_init()
22066        }
22067    }
22068}
22069#[repr(C)]
22070#[derive(Copy, Clone)]
22071pub struct bpf_sock_ops {
22072    pub op: __u32,
22073    pub __bindgen_anon_1: bpf_sock_ops__bindgen_ty_1,
22074    pub family: __u32,
22075    pub remote_ip4: __u32,
22076    pub local_ip4: __u32,
22077    pub remote_ip6: [__u32; 4usize],
22078    pub local_ip6: [__u32; 4usize],
22079    pub remote_port: __u32,
22080    pub local_port: __u32,
22081    pub is_fullsock: __u32,
22082    pub snd_cwnd: __u32,
22083    pub srtt_us: __u32,
22084    pub bpf_sock_ops_cb_flags: __u32,
22085    pub state: __u32,
22086    pub rtt_min: __u32,
22087    pub snd_ssthresh: __u32,
22088    pub rcv_nxt: __u32,
22089    pub snd_nxt: __u32,
22090    pub snd_una: __u32,
22091    pub mss_cache: __u32,
22092    pub ecn_flags: __u32,
22093    pub rate_delivered: __u32,
22094    pub rate_interval_us: __u32,
22095    pub packets_out: __u32,
22096    pub retrans_out: __u32,
22097    pub total_retrans: __u32,
22098    pub segs_in: __u32,
22099    pub data_segs_in: __u32,
22100    pub segs_out: __u32,
22101    pub data_segs_out: __u32,
22102    pub lost_out: __u32,
22103    pub sacked_out: __u32,
22104    pub sk_txhash: __u32,
22105    pub bytes_received: __u64,
22106    pub bytes_acked: __u64,
22107    pub __bindgen_anon_2: bpf_sock_ops__bindgen_ty_2,
22108    pub __bindgen_anon_3: bpf_sock_ops__bindgen_ty_3,
22109    pub __bindgen_anon_4: bpf_sock_ops__bindgen_ty_4,
22110    pub skb_len: __u32,
22111    pub skb_tcp_flags: __u32,
22112    pub skb_hwtstamp: __u64,
22113}
22114#[repr(C)]
22115#[derive(Copy, Clone)]
22116pub union bpf_sock_ops__bindgen_ty_1 {
22117    pub args: [__u32; 4usize],
22118    pub reply: __u32,
22119    pub replylong: [__u32; 4usize],
22120}
22121impl Default for bpf_sock_ops__bindgen_ty_1 {
22122    fn default() -> Self {
22123        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22124        unsafe {
22125            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22126            s.assume_init()
22127        }
22128    }
22129}
22130#[repr(C)]
22131#[derive(Copy, Clone)]
22132pub union bpf_sock_ops__bindgen_ty_2 {
22133    pub sk: uref<bpf_sock>,
22134    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22135}
22136impl Default for bpf_sock_ops__bindgen_ty_2 {
22137    fn default() -> Self {
22138        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22139        unsafe {
22140            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22141            s.assume_init()
22142        }
22143    }
22144}
22145impl bpf_sock_ops__bindgen_ty_2 {
22146    #[inline]
22147    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22148        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22149        __bindgen_bitfield_unit
22150    }
22151}
22152#[repr(C)]
22153#[derive(Copy, Clone)]
22154pub union bpf_sock_ops__bindgen_ty_3 {
22155    pub skb_data: uaddr,
22156    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22157}
22158impl Default for bpf_sock_ops__bindgen_ty_3 {
22159    fn default() -> Self {
22160        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22161        unsafe {
22162            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22163            s.assume_init()
22164        }
22165    }
22166}
22167impl bpf_sock_ops__bindgen_ty_3 {
22168    #[inline]
22169    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22170        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22171        __bindgen_bitfield_unit
22172    }
22173}
22174#[repr(C)]
22175#[derive(Copy, Clone)]
22176pub union bpf_sock_ops__bindgen_ty_4 {
22177    pub skb_data_end: uaddr,
22178    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22179}
22180impl Default for bpf_sock_ops__bindgen_ty_4 {
22181    fn default() -> Self {
22182        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22183        unsafe {
22184            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22185            s.assume_init()
22186        }
22187    }
22188}
22189impl bpf_sock_ops__bindgen_ty_4 {
22190    #[inline]
22191    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22192        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22193        __bindgen_bitfield_unit
22194    }
22195}
22196impl Default for bpf_sock_ops {
22197    fn default() -> Self {
22198        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22199        unsafe {
22200            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22201            s.assume_init()
22202        }
22203    }
22204}
22205pub const BPF_SOCK_OPS_RTO_CB_FLAG: _bindgen_ty_133 = 1;
22206pub const BPF_SOCK_OPS_RETRANS_CB_FLAG: _bindgen_ty_133 = 2;
22207pub const BPF_SOCK_OPS_STATE_CB_FLAG: _bindgen_ty_133 = 4;
22208pub const BPF_SOCK_OPS_RTT_CB_FLAG: _bindgen_ty_133 = 8;
22209pub const BPF_SOCK_OPS_PARSE_ALL_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 16;
22210pub const BPF_SOCK_OPS_PARSE_UNKNOWN_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 32;
22211pub const BPF_SOCK_OPS_WRITE_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 64;
22212pub const BPF_SOCK_OPS_ALL_CB_FLAGS: _bindgen_ty_133 = 127;
22213pub type _bindgen_ty_133 = crate::types::c_uint;
22214pub const BPF_SOCK_OPS_VOID: _bindgen_ty_134 = 0;
22215pub const BPF_SOCK_OPS_TIMEOUT_INIT: _bindgen_ty_134 = 1;
22216pub const BPF_SOCK_OPS_RWND_INIT: _bindgen_ty_134 = 2;
22217pub const BPF_SOCK_OPS_TCP_CONNECT_CB: _bindgen_ty_134 = 3;
22218pub const BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB: _bindgen_ty_134 = 4;
22219pub const BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB: _bindgen_ty_134 = 5;
22220pub const BPF_SOCK_OPS_NEEDS_ECN: _bindgen_ty_134 = 6;
22221pub const BPF_SOCK_OPS_BASE_RTT: _bindgen_ty_134 = 7;
22222pub const BPF_SOCK_OPS_RTO_CB: _bindgen_ty_134 = 8;
22223pub const BPF_SOCK_OPS_RETRANS_CB: _bindgen_ty_134 = 9;
22224pub const BPF_SOCK_OPS_STATE_CB: _bindgen_ty_134 = 10;
22225pub const BPF_SOCK_OPS_TCP_LISTEN_CB: _bindgen_ty_134 = 11;
22226pub const BPF_SOCK_OPS_RTT_CB: _bindgen_ty_134 = 12;
22227pub const BPF_SOCK_OPS_PARSE_HDR_OPT_CB: _bindgen_ty_134 = 13;
22228pub const BPF_SOCK_OPS_HDR_OPT_LEN_CB: _bindgen_ty_134 = 14;
22229pub const BPF_SOCK_OPS_WRITE_HDR_OPT_CB: _bindgen_ty_134 = 15;
22230pub type _bindgen_ty_134 = crate::types::c_uint;
22231pub const BPF_TCP_ESTABLISHED: _bindgen_ty_135 = 1;
22232pub const BPF_TCP_SYN_SENT: _bindgen_ty_135 = 2;
22233pub const BPF_TCP_SYN_RECV: _bindgen_ty_135 = 3;
22234pub const BPF_TCP_FIN_WAIT1: _bindgen_ty_135 = 4;
22235pub const BPF_TCP_FIN_WAIT2: _bindgen_ty_135 = 5;
22236pub const BPF_TCP_TIME_WAIT: _bindgen_ty_135 = 6;
22237pub const BPF_TCP_CLOSE: _bindgen_ty_135 = 7;
22238pub const BPF_TCP_CLOSE_WAIT: _bindgen_ty_135 = 8;
22239pub const BPF_TCP_LAST_ACK: _bindgen_ty_135 = 9;
22240pub const BPF_TCP_LISTEN: _bindgen_ty_135 = 10;
22241pub const BPF_TCP_CLOSING: _bindgen_ty_135 = 11;
22242pub const BPF_TCP_NEW_SYN_RECV: _bindgen_ty_135 = 12;
22243pub const BPF_TCP_BOUND_INACTIVE: _bindgen_ty_135 = 13;
22244pub const BPF_TCP_MAX_STATES: _bindgen_ty_135 = 14;
22245pub type _bindgen_ty_135 = crate::types::c_uint;
22246pub const TCP_BPF_IW: _bindgen_ty_136 = 1001;
22247pub const TCP_BPF_SNDCWND_CLAMP: _bindgen_ty_136 = 1002;
22248pub const TCP_BPF_DELACK_MAX: _bindgen_ty_136 = 1003;
22249pub const TCP_BPF_RTO_MIN: _bindgen_ty_136 = 1004;
22250pub const TCP_BPF_SYN: _bindgen_ty_136 = 1005;
22251pub const TCP_BPF_SYN_IP: _bindgen_ty_136 = 1006;
22252pub const TCP_BPF_SYN_MAC: _bindgen_ty_136 = 1007;
22253pub const TCP_BPF_SOCK_OPS_CB_FLAGS: _bindgen_ty_136 = 1008;
22254pub type _bindgen_ty_136 = crate::types::c_uint;
22255pub const BPF_LOAD_HDR_OPT_TCP_SYN: _bindgen_ty_137 = 1;
22256pub type _bindgen_ty_137 = crate::types::c_uint;
22257pub const BPF_WRITE_HDR_TCP_CURRENT_MSS: _bindgen_ty_138 = 1;
22258pub const BPF_WRITE_HDR_TCP_SYNACK_COOKIE: _bindgen_ty_138 = 2;
22259pub type _bindgen_ty_138 = crate::types::c_uint;
22260#[repr(C)]
22261#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22262pub struct bpf_perf_event_value {
22263    pub counter: __u64,
22264    pub enabled: __u64,
22265    pub running: __u64,
22266}
22267pub const BPF_DEVCG_ACC_MKNOD: _bindgen_ty_139 = 1;
22268pub const BPF_DEVCG_ACC_READ: _bindgen_ty_139 = 2;
22269pub const BPF_DEVCG_ACC_WRITE: _bindgen_ty_139 = 4;
22270pub type _bindgen_ty_139 = crate::types::c_uint;
22271pub const BPF_DEVCG_DEV_BLOCK: _bindgen_ty_140 = 1;
22272pub const BPF_DEVCG_DEV_CHAR: _bindgen_ty_140 = 2;
22273pub type _bindgen_ty_140 = crate::types::c_uint;
22274#[repr(C)]
22275#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22276pub struct bpf_cgroup_dev_ctx {
22277    pub access_type: __u32,
22278    pub major: __u32,
22279    pub minor: __u32,
22280}
22281#[repr(C)]
22282#[derive(Debug, Default)]
22283pub struct bpf_raw_tracepoint_args {
22284    pub args: __IncompleteArrayField<__u64>,
22285}
22286pub const BPF_FIB_LOOKUP_DIRECT: _bindgen_ty_141 = 1;
22287pub const BPF_FIB_LOOKUP_OUTPUT: _bindgen_ty_141 = 2;
22288pub const BPF_FIB_LOOKUP_SKIP_NEIGH: _bindgen_ty_141 = 4;
22289pub const BPF_FIB_LOOKUP_TBID: _bindgen_ty_141 = 8;
22290pub const BPF_FIB_LOOKUP_SRC: _bindgen_ty_141 = 16;
22291pub const BPF_FIB_LOOKUP_MARK: _bindgen_ty_141 = 32;
22292pub type _bindgen_ty_141 = crate::types::c_uint;
22293pub const BPF_FIB_LKUP_RET_SUCCESS: _bindgen_ty_142 = 0;
22294pub const BPF_FIB_LKUP_RET_BLACKHOLE: _bindgen_ty_142 = 1;
22295pub const BPF_FIB_LKUP_RET_UNREACHABLE: _bindgen_ty_142 = 2;
22296pub const BPF_FIB_LKUP_RET_PROHIBIT: _bindgen_ty_142 = 3;
22297pub const BPF_FIB_LKUP_RET_NOT_FWDED: _bindgen_ty_142 = 4;
22298pub const BPF_FIB_LKUP_RET_FWD_DISABLED: _bindgen_ty_142 = 5;
22299pub const BPF_FIB_LKUP_RET_UNSUPP_LWT: _bindgen_ty_142 = 6;
22300pub const BPF_FIB_LKUP_RET_NO_NEIGH: _bindgen_ty_142 = 7;
22301pub const BPF_FIB_LKUP_RET_FRAG_NEEDED: _bindgen_ty_142 = 8;
22302pub const BPF_FIB_LKUP_RET_NO_SRC_ADDR: _bindgen_ty_142 = 9;
22303pub type _bindgen_ty_142 = crate::types::c_uint;
22304#[repr(C)]
22305#[derive(Copy, Clone)]
22306pub struct bpf_fib_lookup {
22307    pub family: __u8,
22308    pub l4_protocol: __u8,
22309    pub sport: __be16,
22310    pub dport: __be16,
22311    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_1,
22312    pub ifindex: __u32,
22313    pub __bindgen_anon_2: bpf_fib_lookup__bindgen_ty_2,
22314    pub __bindgen_anon_3: bpf_fib_lookup__bindgen_ty_3,
22315    pub __bindgen_anon_4: bpf_fib_lookup__bindgen_ty_4,
22316    pub __bindgen_anon_5: bpf_fib_lookup__bindgen_ty_5,
22317    pub __bindgen_anon_6: bpf_fib_lookup__bindgen_ty_6,
22318}
22319#[repr(C, packed(2))]
22320#[derive(Copy, Clone)]
22321pub union bpf_fib_lookup__bindgen_ty_1 {
22322    pub tot_len: __u16,
22323    pub mtu_result: __u16,
22324}
22325impl Default for bpf_fib_lookup__bindgen_ty_1 {
22326    fn default() -> Self {
22327        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22328        unsafe {
22329            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22330            s.assume_init()
22331        }
22332    }
22333}
22334#[repr(C)]
22335#[derive(Copy, Clone)]
22336pub union bpf_fib_lookup__bindgen_ty_2 {
22337    pub tos: __u8,
22338    pub flowinfo: __be32,
22339    pub rt_metric: __u32,
22340}
22341impl Default for bpf_fib_lookup__bindgen_ty_2 {
22342    fn default() -> Self {
22343        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22344        unsafe {
22345            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22346            s.assume_init()
22347        }
22348    }
22349}
22350#[repr(C)]
22351#[derive(Copy, Clone)]
22352pub union bpf_fib_lookup__bindgen_ty_3 {
22353    pub ipv4_src: __be32,
22354    pub ipv6_src: [__u32; 4usize],
22355}
22356impl Default for bpf_fib_lookup__bindgen_ty_3 {
22357    fn default() -> Self {
22358        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22359        unsafe {
22360            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22361            s.assume_init()
22362        }
22363    }
22364}
22365#[repr(C)]
22366#[derive(Copy, Clone)]
22367pub union bpf_fib_lookup__bindgen_ty_4 {
22368    pub ipv4_dst: __be32,
22369    pub ipv6_dst: [__u32; 4usize],
22370}
22371impl Default for bpf_fib_lookup__bindgen_ty_4 {
22372    fn default() -> Self {
22373        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22374        unsafe {
22375            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22376            s.assume_init()
22377        }
22378    }
22379}
22380#[repr(C)]
22381#[derive(Copy, Clone)]
22382pub union bpf_fib_lookup__bindgen_ty_5 {
22383    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_5__bindgen_ty_1,
22384    pub tbid: __u32,
22385}
22386#[repr(C)]
22387#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22388pub struct bpf_fib_lookup__bindgen_ty_5__bindgen_ty_1 {
22389    pub h_vlan_proto: __be16,
22390    pub h_vlan_TCI: __be16,
22391}
22392impl Default for bpf_fib_lookup__bindgen_ty_5 {
22393    fn default() -> Self {
22394        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22395        unsafe {
22396            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22397            s.assume_init()
22398        }
22399    }
22400}
22401#[repr(C)]
22402#[derive(Copy, Clone)]
22403pub union bpf_fib_lookup__bindgen_ty_6 {
22404    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_6__bindgen_ty_1,
22405    pub __bindgen_anon_2: bpf_fib_lookup__bindgen_ty_6__bindgen_ty_2,
22406}
22407#[repr(C)]
22408#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22409pub struct bpf_fib_lookup__bindgen_ty_6__bindgen_ty_1 {
22410    pub mark: __u32,
22411}
22412#[repr(C)]
22413#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22414pub struct bpf_fib_lookup__bindgen_ty_6__bindgen_ty_2 {
22415    pub smac: [__u8; 6usize],
22416    pub dmac: [__u8; 6usize],
22417}
22418impl Default for bpf_fib_lookup__bindgen_ty_6 {
22419    fn default() -> Self {
22420        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22421        unsafe {
22422            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22423            s.assume_init()
22424        }
22425    }
22426}
22427impl Default for bpf_fib_lookup {
22428    fn default() -> Self {
22429        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22430        unsafe {
22431            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22432            s.assume_init()
22433        }
22434    }
22435}
22436#[repr(C)]
22437#[derive(Copy, Clone)]
22438pub struct bpf_redir_neigh {
22439    pub nh_family: __u32,
22440    pub __bindgen_anon_1: bpf_redir_neigh__bindgen_ty_1,
22441}
22442#[repr(C)]
22443#[derive(Copy, Clone)]
22444pub union bpf_redir_neigh__bindgen_ty_1 {
22445    pub ipv4_nh: __be32,
22446    pub ipv6_nh: [__u32; 4usize],
22447}
22448impl Default for bpf_redir_neigh__bindgen_ty_1 {
22449    fn default() -> Self {
22450        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22451        unsafe {
22452            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22453            s.assume_init()
22454        }
22455    }
22456}
22457impl Default for bpf_redir_neigh {
22458    fn default() -> Self {
22459        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22460        unsafe {
22461            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22462            s.assume_init()
22463        }
22464    }
22465}
22466pub const bpf_check_mtu_flags_BPF_MTU_CHK_SEGS: bpf_check_mtu_flags = 1;
22467pub type bpf_check_mtu_flags = crate::types::c_uint;
22468pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_SUCCESS: bpf_check_mtu_ret = 0;
22469pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_FRAG_NEEDED: bpf_check_mtu_ret = 1;
22470pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_SEGS_TOOBIG: bpf_check_mtu_ret = 2;
22471pub type bpf_check_mtu_ret = crate::types::c_uint;
22472pub const bpf_task_fd_type_BPF_FD_TYPE_RAW_TRACEPOINT: bpf_task_fd_type = 0;
22473pub const bpf_task_fd_type_BPF_FD_TYPE_TRACEPOINT: bpf_task_fd_type = 1;
22474pub const bpf_task_fd_type_BPF_FD_TYPE_KPROBE: bpf_task_fd_type = 2;
22475pub const bpf_task_fd_type_BPF_FD_TYPE_KRETPROBE: bpf_task_fd_type = 3;
22476pub const bpf_task_fd_type_BPF_FD_TYPE_UPROBE: bpf_task_fd_type = 4;
22477pub const bpf_task_fd_type_BPF_FD_TYPE_URETPROBE: bpf_task_fd_type = 5;
22478pub type bpf_task_fd_type = crate::types::c_uint;
22479pub const BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG: _bindgen_ty_143 = 1;
22480pub const BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL: _bindgen_ty_143 = 2;
22481pub const BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP: _bindgen_ty_143 = 4;
22482pub type _bindgen_ty_143 = crate::types::c_uint;
22483#[repr(C)]
22484#[derive(Copy, Clone)]
22485pub struct bpf_flow_keys {
22486    pub nhoff: __u16,
22487    pub thoff: __u16,
22488    pub addr_proto: __u16,
22489    pub is_frag: __u8,
22490    pub is_first_frag: __u8,
22491    pub is_encap: __u8,
22492    pub ip_proto: __u8,
22493    pub n_proto: __be16,
22494    pub sport: __be16,
22495    pub dport: __be16,
22496    pub __bindgen_anon_1: bpf_flow_keys__bindgen_ty_1,
22497    pub flags: __u32,
22498    pub flow_label: __be32,
22499}
22500#[repr(C)]
22501#[derive(Copy, Clone)]
22502pub union bpf_flow_keys__bindgen_ty_1 {
22503    pub __bindgen_anon_1: bpf_flow_keys__bindgen_ty_1__bindgen_ty_1,
22504    pub __bindgen_anon_2: bpf_flow_keys__bindgen_ty_1__bindgen_ty_2,
22505}
22506#[repr(C)]
22507#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22508pub struct bpf_flow_keys__bindgen_ty_1__bindgen_ty_1 {
22509    pub ipv4_src: __be32,
22510    pub ipv4_dst: __be32,
22511}
22512#[repr(C)]
22513#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22514pub struct bpf_flow_keys__bindgen_ty_1__bindgen_ty_2 {
22515    pub ipv6_src: [__u32; 4usize],
22516    pub ipv6_dst: [__u32; 4usize],
22517}
22518impl Default for bpf_flow_keys__bindgen_ty_1 {
22519    fn default() -> Self {
22520        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22521        unsafe {
22522            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22523            s.assume_init()
22524        }
22525    }
22526}
22527impl Default for bpf_flow_keys {
22528    fn default() -> Self {
22529        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22530        unsafe {
22531            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22532            s.assume_init()
22533        }
22534    }
22535}
22536#[repr(C)]
22537#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22538pub struct bpf_func_info {
22539    pub insn_off: __u32,
22540    pub type_id: __u32,
22541}
22542#[repr(C)]
22543#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22544pub struct bpf_line_info {
22545    pub insn_off: __u32,
22546    pub file_name_off: __u32,
22547    pub line_off: __u32,
22548    pub line_col: __u32,
22549}
22550#[repr(C)]
22551#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22552pub struct bpf_spin_lock {
22553    pub val: __u32,
22554}
22555#[repr(C)]
22556#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22557pub struct bpf_timer {
22558    pub __opaque: [__u64; 2usize],
22559}
22560#[repr(C)]
22561#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22562pub struct bpf_wq {
22563    pub __opaque: [__u64; 2usize],
22564}
22565#[repr(C)]
22566#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22567pub struct bpf_dynptr {
22568    pub __opaque: [__u64; 2usize],
22569}
22570#[repr(C)]
22571#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22572pub struct bpf_list_head {
22573    pub __opaque: [__u64; 2usize],
22574}
22575#[repr(C)]
22576#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22577pub struct bpf_list_node {
22578    pub __opaque: [__u64; 3usize],
22579}
22580#[repr(C)]
22581#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22582pub struct bpf_rb_root {
22583    pub __opaque: [__u64; 2usize],
22584}
22585#[repr(C)]
22586#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22587pub struct bpf_rb_node {
22588    pub __opaque: [__u64; 4usize],
22589}
22590#[repr(C)]
22591#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22592pub struct bpf_refcount {
22593    pub __opaque: [__u32; 1usize],
22594}
22595#[repr(C)]
22596#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22597pub struct bpf_sysctl {
22598    pub write: __u32,
22599    pub file_pos: __u32,
22600}
22601#[repr(C)]
22602#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22603pub struct bpf_sockopt {
22604    pub __bindgen_anon_1: bpf_sockopt__bindgen_ty_1,
22605    pub __bindgen_anon_2: bpf_sockopt__bindgen_ty_2,
22606    pub __bindgen_anon_3: bpf_sockopt__bindgen_ty_3,
22607    pub level: __s32,
22608    pub optname: __s32,
22609    pub optlen: __s32,
22610    pub retval: __s32,
22611}
22612#[repr(C)]
22613#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22614pub union bpf_sockopt__bindgen_ty_1 {
22615    pub sk: uref<bpf_sock>,
22616    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22617}
22618impl Default for bpf_sockopt__bindgen_ty_1 {
22619    fn default() -> Self {
22620        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22621        unsafe {
22622            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22623            s.assume_init()
22624        }
22625    }
22626}
22627impl bpf_sockopt__bindgen_ty_1 {
22628    #[inline]
22629    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22630        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22631        __bindgen_bitfield_unit
22632    }
22633}
22634#[repr(C)]
22635#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22636pub union bpf_sockopt__bindgen_ty_2 {
22637    pub optval: uaddr,
22638    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22639}
22640impl Default for bpf_sockopt__bindgen_ty_2 {
22641    fn default() -> Self {
22642        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22643        unsafe {
22644            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22645            s.assume_init()
22646        }
22647    }
22648}
22649impl bpf_sockopt__bindgen_ty_2 {
22650    #[inline]
22651    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22652        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22653        __bindgen_bitfield_unit
22654    }
22655}
22656#[repr(C)]
22657#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22658pub union bpf_sockopt__bindgen_ty_3 {
22659    pub optval_end: uaddr,
22660    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22661}
22662impl Default for bpf_sockopt__bindgen_ty_3 {
22663    fn default() -> Self {
22664        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22665        unsafe {
22666            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22667            s.assume_init()
22668        }
22669    }
22670}
22671impl bpf_sockopt__bindgen_ty_3 {
22672    #[inline]
22673    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22674        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22675        __bindgen_bitfield_unit
22676    }
22677}
22678impl Default for bpf_sockopt {
22679    fn default() -> Self {
22680        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22681        unsafe {
22682            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22683            s.assume_init()
22684        }
22685    }
22686}
22687#[repr(C)]
22688#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22689pub struct bpf_pidns_info {
22690    pub pid: __u32,
22691    pub tgid: __u32,
22692}
22693#[repr(C)]
22694#[derive(Copy, Clone)]
22695pub struct bpf_sk_lookup {
22696    pub __bindgen_anon_1: bpf_sk_lookup__bindgen_ty_1,
22697    pub family: __u32,
22698    pub protocol: __u32,
22699    pub remote_ip4: __u32,
22700    pub remote_ip6: [__u32; 4usize],
22701    pub remote_port: __be16,
22702    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
22703    pub local_ip4: __u32,
22704    pub local_ip6: [__u32; 4usize],
22705    pub local_port: __u32,
22706    pub ingress_ifindex: __u32,
22707    pub __bindgen_padding_0: [u8; 4usize],
22708}
22709#[repr(C)]
22710#[derive(Copy, Clone)]
22711pub union bpf_sk_lookup__bindgen_ty_1 {
22712    pub __bindgen_anon_1: bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1,
22713    pub cookie: __u64,
22714}
22715#[repr(C)]
22716#[derive(Copy, Clone)]
22717pub union bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22718    pub sk: uref<bpf_sock>,
22719    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22720}
22721impl Default for bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22722    fn default() -> Self {
22723        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22724        unsafe {
22725            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22726            s.assume_init()
22727        }
22728    }
22729}
22730impl bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22731    #[inline]
22732    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22733        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22734        __bindgen_bitfield_unit
22735    }
22736}
22737impl Default for bpf_sk_lookup__bindgen_ty_1 {
22738    fn default() -> Self {
22739        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22740        unsafe {
22741            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22742            s.assume_init()
22743        }
22744    }
22745}
22746impl Default for bpf_sk_lookup {
22747    fn default() -> Self {
22748        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22749        unsafe {
22750            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22751            s.assume_init()
22752        }
22753    }
22754}
22755impl bpf_sk_lookup {
22756    #[inline]
22757    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 2usize]> {
22758        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
22759        __bindgen_bitfield_unit
22760    }
22761}
22762#[repr(C)]
22763#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22764pub struct btf_ptr {
22765    pub ptr: uaddr,
22766    pub type_id: __u32,
22767    pub flags: __u32,
22768}
22769impl Default for btf_ptr {
22770    fn default() -> Self {
22771        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22772        unsafe {
22773            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22774            s.assume_init()
22775        }
22776    }
22777}
22778pub const BTF_F_COMPACT: _bindgen_ty_144 = 1;
22779pub const BTF_F_NONAME: _bindgen_ty_144 = 2;
22780pub const BTF_F_PTR_RAW: _bindgen_ty_144 = 4;
22781pub const BTF_F_ZERO: _bindgen_ty_144 = 8;
22782pub type _bindgen_ty_144 = crate::types::c_uint;
22783pub const bpf_core_relo_kind_BPF_CORE_FIELD_BYTE_OFFSET: bpf_core_relo_kind = 0;
22784pub const bpf_core_relo_kind_BPF_CORE_FIELD_BYTE_SIZE: bpf_core_relo_kind = 1;
22785pub const bpf_core_relo_kind_BPF_CORE_FIELD_EXISTS: bpf_core_relo_kind = 2;
22786pub const bpf_core_relo_kind_BPF_CORE_FIELD_SIGNED: bpf_core_relo_kind = 3;
22787pub const bpf_core_relo_kind_BPF_CORE_FIELD_LSHIFT_U64: bpf_core_relo_kind = 4;
22788pub const bpf_core_relo_kind_BPF_CORE_FIELD_RSHIFT_U64: bpf_core_relo_kind = 5;
22789pub const bpf_core_relo_kind_BPF_CORE_TYPE_ID_LOCAL: bpf_core_relo_kind = 6;
22790pub const bpf_core_relo_kind_BPF_CORE_TYPE_ID_TARGET: bpf_core_relo_kind = 7;
22791pub const bpf_core_relo_kind_BPF_CORE_TYPE_EXISTS: bpf_core_relo_kind = 8;
22792pub const bpf_core_relo_kind_BPF_CORE_TYPE_SIZE: bpf_core_relo_kind = 9;
22793pub const bpf_core_relo_kind_BPF_CORE_ENUMVAL_EXISTS: bpf_core_relo_kind = 10;
22794pub const bpf_core_relo_kind_BPF_CORE_ENUMVAL_VALUE: bpf_core_relo_kind = 11;
22795pub const bpf_core_relo_kind_BPF_CORE_TYPE_MATCHES: bpf_core_relo_kind = 12;
22796pub type bpf_core_relo_kind = crate::types::c_uint;
22797#[repr(C)]
22798#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22799pub struct bpf_core_relo {
22800    pub insn_off: __u32,
22801    pub type_id: __u32,
22802    pub access_str_off: __u32,
22803    pub kind: bpf_core_relo_kind,
22804}
22805impl Default for bpf_core_relo {
22806    fn default() -> Self {
22807        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22808        unsafe {
22809            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22810            s.assume_init()
22811        }
22812    }
22813}
22814pub const BPF_F_TIMER_ABS: _bindgen_ty_145 = 1;
22815pub const BPF_F_TIMER_CPU_PIN: _bindgen_ty_145 = 2;
22816pub type _bindgen_ty_145 = crate::types::c_uint;
22817#[repr(C)]
22818#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22819pub struct bpf_iter_num {
22820    pub __opaque: [__u64; 1usize],
22821}
22822pub const bpf_kfunc_flags_BPF_F_PAD_ZEROS: bpf_kfunc_flags = 1;
22823pub type bpf_kfunc_flags = crate::types::c_uint;
22824pub type bpf_user_pt_regs_t = pt_regs;
22825#[repr(C)]
22826#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22827pub struct bpf_perf_event_data {
22828    pub regs: bpf_user_pt_regs_t,
22829    pub sample_period: __u64,
22830    pub addr: __u64,
22831}
22832#[repr(C)]
22833#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22834pub struct fuse_attr {
22835    pub ino: u64,
22836    pub size: u64,
22837    pub blocks: u64,
22838    pub atime: u64,
22839    pub mtime: u64,
22840    pub ctime: u64,
22841    pub atimensec: u32,
22842    pub mtimensec: u32,
22843    pub ctimensec: u32,
22844    pub mode: u32,
22845    pub nlink: u32,
22846    pub uid: u32,
22847    pub gid: u32,
22848    pub rdev: u32,
22849    pub blksize: u32,
22850    pub flags: u32,
22851}
22852#[repr(C)]
22853#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22854pub struct fuse_sx_time {
22855    pub tv_sec: i64,
22856    pub tv_nsec: u32,
22857    pub __reserved: i32,
22858}
22859#[repr(C)]
22860#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22861pub struct fuse_statx {
22862    pub mask: u32,
22863    pub blksize: u32,
22864    pub attributes: u64,
22865    pub nlink: u32,
22866    pub uid: u32,
22867    pub gid: u32,
22868    pub mode: u16,
22869    pub __spare0: [u16; 1usize],
22870    pub ino: u64,
22871    pub size: u64,
22872    pub blocks: u64,
22873    pub attributes_mask: u64,
22874    pub atime: fuse_sx_time,
22875    pub btime: fuse_sx_time,
22876    pub ctime: fuse_sx_time,
22877    pub mtime: fuse_sx_time,
22878    pub rdev_major: u32,
22879    pub rdev_minor: u32,
22880    pub dev_major: u32,
22881    pub dev_minor: u32,
22882    pub __spare2: [u64; 14usize],
22883}
22884#[repr(C)]
22885#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22886pub struct fuse_kstatfs {
22887    pub blocks: u64,
22888    pub bfree: u64,
22889    pub bavail: u64,
22890    pub files: u64,
22891    pub ffree: u64,
22892    pub bsize: u32,
22893    pub namelen: u32,
22894    pub frsize: u32,
22895    pub padding: u32,
22896    pub spare: [u32; 6usize],
22897}
22898#[repr(C)]
22899#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22900pub struct fuse_file_lock {
22901    pub start: u64,
22902    pub end: u64,
22903    pub type_: u32,
22904    pub pid: u32,
22905}
22906pub const fuse_ext_type_FUSE_MAX_NR_SECCTX: fuse_ext_type = 31;
22907pub const fuse_ext_type_FUSE_EXT_GROUPS: fuse_ext_type = 32;
22908#[doc = " extension type\n FUSE_MAX_NR_SECCTX: maximum value of &fuse_secctx_header.nr_secctx\n FUSE_EXT_GROUPS: &fuse_supp_groups extension"]
22909pub type fuse_ext_type = crate::types::c_uint;
22910pub const fuse_opcode_FUSE_LOOKUP: fuse_opcode = 1;
22911pub const fuse_opcode_FUSE_FORGET: fuse_opcode = 2;
22912pub const fuse_opcode_FUSE_GETATTR: fuse_opcode = 3;
22913pub const fuse_opcode_FUSE_SETATTR: fuse_opcode = 4;
22914pub const fuse_opcode_FUSE_READLINK: fuse_opcode = 5;
22915pub const fuse_opcode_FUSE_SYMLINK: fuse_opcode = 6;
22916pub const fuse_opcode_FUSE_MKNOD: fuse_opcode = 8;
22917pub const fuse_opcode_FUSE_MKDIR: fuse_opcode = 9;
22918pub const fuse_opcode_FUSE_UNLINK: fuse_opcode = 10;
22919pub const fuse_opcode_FUSE_RMDIR: fuse_opcode = 11;
22920pub const fuse_opcode_FUSE_RENAME: fuse_opcode = 12;
22921pub const fuse_opcode_FUSE_LINK: fuse_opcode = 13;
22922pub const fuse_opcode_FUSE_OPEN: fuse_opcode = 14;
22923pub const fuse_opcode_FUSE_READ: fuse_opcode = 15;
22924pub const fuse_opcode_FUSE_WRITE: fuse_opcode = 16;
22925pub const fuse_opcode_FUSE_STATFS: fuse_opcode = 17;
22926pub const fuse_opcode_FUSE_RELEASE: fuse_opcode = 18;
22927pub const fuse_opcode_FUSE_FSYNC: fuse_opcode = 20;
22928pub const fuse_opcode_FUSE_SETXATTR: fuse_opcode = 21;
22929pub const fuse_opcode_FUSE_GETXATTR: fuse_opcode = 22;
22930pub const fuse_opcode_FUSE_LISTXATTR: fuse_opcode = 23;
22931pub const fuse_opcode_FUSE_REMOVEXATTR: fuse_opcode = 24;
22932pub const fuse_opcode_FUSE_FLUSH: fuse_opcode = 25;
22933pub const fuse_opcode_FUSE_INIT: fuse_opcode = 26;
22934pub const fuse_opcode_FUSE_OPENDIR: fuse_opcode = 27;
22935pub const fuse_opcode_FUSE_READDIR: fuse_opcode = 28;
22936pub const fuse_opcode_FUSE_RELEASEDIR: fuse_opcode = 29;
22937pub const fuse_opcode_FUSE_FSYNCDIR: fuse_opcode = 30;
22938pub const fuse_opcode_FUSE_GETLK: fuse_opcode = 31;
22939pub const fuse_opcode_FUSE_SETLK: fuse_opcode = 32;
22940pub const fuse_opcode_FUSE_SETLKW: fuse_opcode = 33;
22941pub const fuse_opcode_FUSE_ACCESS: fuse_opcode = 34;
22942pub const fuse_opcode_FUSE_CREATE: fuse_opcode = 35;
22943pub const fuse_opcode_FUSE_INTERRUPT: fuse_opcode = 36;
22944pub const fuse_opcode_FUSE_BMAP: fuse_opcode = 37;
22945pub const fuse_opcode_FUSE_DESTROY: fuse_opcode = 38;
22946pub const fuse_opcode_FUSE_IOCTL: fuse_opcode = 39;
22947pub const fuse_opcode_FUSE_POLL: fuse_opcode = 40;
22948pub const fuse_opcode_FUSE_NOTIFY_REPLY: fuse_opcode = 41;
22949pub const fuse_opcode_FUSE_BATCH_FORGET: fuse_opcode = 42;
22950pub const fuse_opcode_FUSE_FALLOCATE: fuse_opcode = 43;
22951pub const fuse_opcode_FUSE_READDIRPLUS: fuse_opcode = 44;
22952pub const fuse_opcode_FUSE_RENAME2: fuse_opcode = 45;
22953pub const fuse_opcode_FUSE_LSEEK: fuse_opcode = 46;
22954pub const fuse_opcode_FUSE_COPY_FILE_RANGE: fuse_opcode = 47;
22955pub const fuse_opcode_FUSE_SETUPMAPPING: fuse_opcode = 48;
22956pub const fuse_opcode_FUSE_REMOVEMAPPING: fuse_opcode = 49;
22957pub const fuse_opcode_FUSE_SYNCFS: fuse_opcode = 50;
22958pub const fuse_opcode_FUSE_TMPFILE: fuse_opcode = 51;
22959pub const fuse_opcode_FUSE_STATX: fuse_opcode = 52;
22960pub const fuse_opcode_FUSE_CANONICAL_PATH: fuse_opcode = 2016;
22961pub const fuse_opcode_CUSE_INIT: fuse_opcode = 4096;
22962pub const fuse_opcode_CUSE_INIT_BSWAP_RESERVED: fuse_opcode = 1048576;
22963pub const fuse_opcode_FUSE_INIT_BSWAP_RESERVED: fuse_opcode = 436207616;
22964pub type fuse_opcode = crate::types::c_uint;
22965pub const fuse_notify_code_FUSE_NOTIFY_POLL: fuse_notify_code = 1;
22966pub const fuse_notify_code_FUSE_NOTIFY_INVAL_INODE: fuse_notify_code = 2;
22967pub const fuse_notify_code_FUSE_NOTIFY_INVAL_ENTRY: fuse_notify_code = 3;
22968pub const fuse_notify_code_FUSE_NOTIFY_STORE: fuse_notify_code = 4;
22969pub const fuse_notify_code_FUSE_NOTIFY_RETRIEVE: fuse_notify_code = 5;
22970pub const fuse_notify_code_FUSE_NOTIFY_DELETE: fuse_notify_code = 6;
22971pub const fuse_notify_code_FUSE_NOTIFY_CODE_MAX: fuse_notify_code = 7;
22972pub type fuse_notify_code = crate::types::c_uint;
22973#[repr(C)]
22974#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22975pub struct fuse_entry_out {
22976    pub nodeid: u64,
22977    pub generation: u64,
22978    pub entry_valid: u64,
22979    pub attr_valid: u64,
22980    pub entry_valid_nsec: u32,
22981    pub attr_valid_nsec: u32,
22982    pub attr: fuse_attr,
22983}
22984#[repr(C)]
22985#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22986pub struct fuse_entry_bpf_out {
22987    pub backing_action: u64,
22988    pub backing_fd: u64,
22989    pub bpf_action: u64,
22990    pub bpf_fd: u64,
22991}
22992#[repr(C)]
22993#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22994pub struct fuse_forget_in {
22995    pub nlookup: u64,
22996}
22997#[repr(C)]
22998#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22999pub struct fuse_forget_one {
23000    pub nodeid: u64,
23001    pub nlookup: u64,
23002}
23003#[repr(C)]
23004#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23005pub struct fuse_batch_forget_in {
23006    pub count: u32,
23007    pub dummy: u32,
23008}
23009#[repr(C)]
23010#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23011pub struct fuse_getattr_in {
23012    pub getattr_flags: u32,
23013    pub dummy: u32,
23014    pub fh: u64,
23015}
23016#[repr(C)]
23017#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23018pub struct fuse_attr_out {
23019    pub attr_valid: u64,
23020    pub attr_valid_nsec: u32,
23021    pub dummy: u32,
23022    pub attr: fuse_attr,
23023}
23024#[repr(C)]
23025#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23026pub struct fuse_statx_in {
23027    pub getattr_flags: u32,
23028    pub reserved: u32,
23029    pub fh: u64,
23030    pub sx_flags: u32,
23031    pub sx_mask: u32,
23032}
23033#[repr(C)]
23034#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23035pub struct fuse_statx_out {
23036    pub attr_valid: u64,
23037    pub attr_valid_nsec: u32,
23038    pub flags: u32,
23039    pub spare: [u64; 2usize],
23040    pub stat: fuse_statx,
23041}
23042#[repr(C)]
23043#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23044pub struct fuse_mknod_in {
23045    pub mode: u32,
23046    pub rdev: u32,
23047    pub umask: u32,
23048    pub padding: u32,
23049}
23050#[repr(C)]
23051#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23052pub struct fuse_mkdir_in {
23053    pub mode: u32,
23054    pub umask: u32,
23055}
23056#[repr(C)]
23057#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23058pub struct fuse_rename_in {
23059    pub newdir: u64,
23060}
23061#[repr(C)]
23062#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23063pub struct fuse_rename2_in {
23064    pub newdir: u64,
23065    pub flags: u32,
23066    pub padding: u32,
23067}
23068#[repr(C)]
23069#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23070pub struct fuse_link_in {
23071    pub oldnodeid: u64,
23072}
23073#[repr(C)]
23074#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23075pub struct fuse_setattr_in {
23076    pub valid: u32,
23077    pub padding: u32,
23078    pub fh: u64,
23079    pub size: u64,
23080    pub lock_owner: u64,
23081    pub atime: u64,
23082    pub mtime: u64,
23083    pub ctime: u64,
23084    pub atimensec: u32,
23085    pub mtimensec: u32,
23086    pub ctimensec: u32,
23087    pub mode: u32,
23088    pub unused4: u32,
23089    pub uid: u32,
23090    pub gid: u32,
23091    pub unused5: u32,
23092}
23093#[repr(C)]
23094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23095pub struct fuse_open_in {
23096    pub flags: u32,
23097    pub open_flags: u32,
23098}
23099#[repr(C)]
23100#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23101pub struct fuse_create_in {
23102    pub flags: u32,
23103    pub mode: u32,
23104    pub umask: u32,
23105    pub open_flags: u32,
23106}
23107#[repr(C)]
23108#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
23109pub struct fuse_open_out {
23110    pub fh: u64,
23111    pub open_flags: u32,
23112    pub __bindgen_anon_1: fuse_open_out__bindgen_ty_1,
23113}
23114#[repr(C)]
23115#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
23116pub union fuse_open_out__bindgen_ty_1 {
23117    pub passthrough_fh: u32,
23118    pub backing_id: i32,
23119}
23120impl Default for fuse_open_out__bindgen_ty_1 {
23121    fn default() -> Self {
23122        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23123        unsafe {
23124            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23125            s.assume_init()
23126        }
23127    }
23128}
23129impl Default for fuse_open_out {
23130    fn default() -> Self {
23131        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23132        unsafe {
23133            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23134            s.assume_init()
23135        }
23136    }
23137}
23138#[repr(C)]
23139#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23140pub struct fuse_release_in {
23141    pub fh: u64,
23142    pub flags: u32,
23143    pub release_flags: u32,
23144    pub lock_owner: u64,
23145}
23146#[repr(C)]
23147#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23148pub struct fuse_flush_in {
23149    pub fh: u64,
23150    pub unused: u32,
23151    pub padding: u32,
23152    pub lock_owner: u64,
23153}
23154#[repr(C)]
23155#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23156pub struct fuse_read_in {
23157    pub fh: u64,
23158    pub offset: u64,
23159    pub size: u32,
23160    pub read_flags: u32,
23161    pub lock_owner: u64,
23162    pub flags: u32,
23163    pub padding: u32,
23164}
23165#[repr(C)]
23166#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23167pub struct fuse_read_out {
23168    pub offset: u64,
23169    pub again: u32,
23170    pub padding: u32,
23171}
23172#[repr(C)]
23173#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23174pub struct fuse_passthrough_out_v0 {
23175    pub fd: u32,
23176    pub len: u32,
23177    pub vec: uaddr,
23178}
23179impl Default for fuse_passthrough_out_v0 {
23180    fn default() -> Self {
23181        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23182        unsafe {
23183            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23184            s.assume_init()
23185        }
23186    }
23187}
23188#[repr(C)]
23189#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23190pub struct fuse_write_in {
23191    pub fh: u64,
23192    pub offset: u64,
23193    pub size: u32,
23194    pub write_flags: u32,
23195    pub lock_owner: u64,
23196    pub flags: u32,
23197    pub padding: u32,
23198}
23199#[repr(C)]
23200#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23201pub struct fuse_write_out {
23202    pub size: u32,
23203    pub padding: u32,
23204}
23205#[repr(C)]
23206#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23207pub struct fuse_statfs_out {
23208    pub st: fuse_kstatfs,
23209}
23210#[repr(C)]
23211#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23212pub struct fuse_fsync_in {
23213    pub fh: u64,
23214    pub fsync_flags: u32,
23215    pub padding: u32,
23216}
23217#[repr(C)]
23218#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23219pub struct fuse_setxattr_in {
23220    pub size: u32,
23221    pub flags: u32,
23222    pub setxattr_flags: u32,
23223    pub padding: u32,
23224}
23225#[repr(C)]
23226#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23227pub struct fuse_getxattr_in {
23228    pub size: u32,
23229    pub padding: u32,
23230}
23231#[repr(C)]
23232#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23233pub struct fuse_getxattr_out {
23234    pub size: u32,
23235    pub padding: u32,
23236}
23237#[repr(C)]
23238#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23239pub struct fuse_lk_in {
23240    pub fh: u64,
23241    pub owner: u64,
23242    pub lk: fuse_file_lock,
23243    pub lk_flags: u32,
23244    pub padding: u32,
23245}
23246#[repr(C)]
23247#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23248pub struct fuse_lk_out {
23249    pub lk: fuse_file_lock,
23250}
23251#[repr(C)]
23252#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23253pub struct fuse_access_in {
23254    pub mask: u32,
23255    pub padding: u32,
23256}
23257#[repr(C)]
23258#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23259pub struct fuse_init_in {
23260    pub major: u32,
23261    pub minor: u32,
23262    pub max_readahead: u32,
23263    pub flags: u32,
23264    pub flags2: u32,
23265    pub unused: [u32; 11usize],
23266}
23267#[repr(C)]
23268#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23269pub struct fuse_init_out {
23270    pub major: u32,
23271    pub minor: u32,
23272    pub max_readahead: u32,
23273    pub flags: u32,
23274    pub max_background: u16,
23275    pub congestion_threshold: u16,
23276    pub max_write: u32,
23277    pub time_gran: u32,
23278    pub max_pages: u16,
23279    pub map_alignment: u16,
23280    pub flags2: u32,
23281    pub max_stack_depth: u32,
23282    pub unused: [u32; 6usize],
23283}
23284#[repr(C)]
23285#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23286pub struct cuse_init_in {
23287    pub major: u32,
23288    pub minor: u32,
23289    pub unused: u32,
23290    pub flags: u32,
23291}
23292#[repr(C)]
23293#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23294pub struct cuse_init_out {
23295    pub major: u32,
23296    pub minor: u32,
23297    pub unused: u32,
23298    pub flags: u32,
23299    pub max_read: u32,
23300    pub max_write: u32,
23301    pub dev_major: u32,
23302    pub dev_minor: u32,
23303    pub spare: [u32; 10usize],
23304}
23305#[repr(C)]
23306#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23307pub struct fuse_interrupt_in {
23308    pub unique: u64,
23309}
23310#[repr(C)]
23311#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23312pub struct fuse_bmap_in {
23313    pub block: u64,
23314    pub blocksize: u32,
23315    pub padding: u32,
23316}
23317#[repr(C)]
23318#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23319pub struct fuse_bmap_out {
23320    pub block: u64,
23321}
23322#[repr(C)]
23323#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23324pub struct fuse_ioctl_in {
23325    pub fh: u64,
23326    pub flags: u32,
23327    pub cmd: u32,
23328    pub arg: u64,
23329    pub in_size: u32,
23330    pub out_size: u32,
23331}
23332#[repr(C)]
23333#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23334pub struct fuse_ioctl_iovec {
23335    pub base: u64,
23336    pub len: u64,
23337}
23338#[repr(C)]
23339#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23340pub struct fuse_ioctl_out {
23341    pub result: i32,
23342    pub flags: u32,
23343    pub in_iovs: u32,
23344    pub out_iovs: u32,
23345}
23346#[repr(C)]
23347#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23348pub struct fuse_poll_in {
23349    pub fh: u64,
23350    pub kh: u64,
23351    pub flags: u32,
23352    pub events: u32,
23353}
23354#[repr(C)]
23355#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23356pub struct fuse_poll_out {
23357    pub revents: u32,
23358    pub padding: u32,
23359}
23360#[repr(C)]
23361#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23362pub struct fuse_notify_poll_wakeup_out {
23363    pub kh: u64,
23364}
23365#[repr(C)]
23366#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23367pub struct fuse_fallocate_in {
23368    pub fh: u64,
23369    pub offset: u64,
23370    pub length: u64,
23371    pub mode: u32,
23372    pub padding: u32,
23373}
23374#[repr(C)]
23375#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
23376pub struct fuse_in_header {
23377    pub len: u32,
23378    pub opcode: u32,
23379    pub unique: u64,
23380    pub nodeid: u64,
23381    pub uid: u32,
23382    pub gid: u32,
23383    pub pid: u32,
23384    pub __bindgen_anon_1: fuse_in_header__bindgen_ty_1,
23385}
23386#[repr(C)]
23387#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
23388pub union fuse_in_header__bindgen_ty_1 {
23389    pub error_in: u32,
23390    pub __bindgen_anon_1: fuse_in_header__bindgen_ty_1__bindgen_ty_1,
23391}
23392#[repr(C)]
23393#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23394pub struct fuse_in_header__bindgen_ty_1__bindgen_ty_1 {
23395    pub total_extlen: u16,
23396    pub padding: u16,
23397}
23398impl Default for fuse_in_header__bindgen_ty_1 {
23399    fn default() -> Self {
23400        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23401        unsafe {
23402            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23403            s.assume_init()
23404        }
23405    }
23406}
23407impl Default for fuse_in_header {
23408    fn default() -> Self {
23409        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23410        unsafe {
23411            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23412            s.assume_init()
23413        }
23414    }
23415}
23416#[repr(C)]
23417#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23418pub struct fuse_out_header {
23419    pub len: u32,
23420    pub error: i32,
23421    pub unique: u64,
23422}
23423#[repr(C)]
23424#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23425pub struct fuse_dirent {
23426    pub ino: u64,
23427    pub off: u64,
23428    pub namelen: u32,
23429    pub type_: u32,
23430    pub name: __IncompleteArrayField<crate::types::c_char>,
23431}
23432#[repr(C)]
23433#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23434pub struct fuse_direntplus {
23435    pub entry_out: fuse_entry_out,
23436    pub dirent: fuse_dirent,
23437}
23438#[repr(C)]
23439#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23440pub struct fuse_notify_inval_inode_out {
23441    pub ino: u64,
23442    pub off: i64,
23443    pub len: i64,
23444}
23445#[repr(C)]
23446#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23447pub struct fuse_notify_inval_entry_out {
23448    pub parent: u64,
23449    pub namelen: u32,
23450    pub flags: u32,
23451}
23452#[repr(C)]
23453#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23454pub struct fuse_notify_delete_out {
23455    pub parent: u64,
23456    pub child: u64,
23457    pub namelen: u32,
23458    pub padding: u32,
23459}
23460#[repr(C)]
23461#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23462pub struct fuse_notify_store_out {
23463    pub nodeid: u64,
23464    pub offset: u64,
23465    pub size: u32,
23466    pub padding: u32,
23467}
23468#[repr(C)]
23469#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23470pub struct fuse_notify_retrieve_out {
23471    pub notify_unique: u64,
23472    pub nodeid: u64,
23473    pub offset: u64,
23474    pub size: u32,
23475    pub padding: u32,
23476}
23477#[repr(C)]
23478#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23479pub struct fuse_notify_retrieve_in {
23480    pub dummy1: u64,
23481    pub offset: u64,
23482    pub size: u32,
23483    pub dummy2: u32,
23484    pub dummy3: u64,
23485    pub dummy4: u64,
23486}
23487#[repr(C)]
23488#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23489pub struct fuse_backing_map {
23490    pub fd: i32,
23491    pub flags: u32,
23492    pub padding: u64,
23493}
23494#[repr(C)]
23495#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23496pub struct fuse_lseek_in {
23497    pub fh: u64,
23498    pub offset: u64,
23499    pub whence: u32,
23500    pub padding: u32,
23501}
23502#[repr(C)]
23503#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23504pub struct fuse_lseek_out {
23505    pub offset: u64,
23506}
23507#[repr(C)]
23508#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23509pub struct fuse_copy_file_range_in {
23510    pub fh_in: u64,
23511    pub off_in: u64,
23512    pub nodeid_out: u64,
23513    pub fh_out: u64,
23514    pub off_out: u64,
23515    pub len: u64,
23516    pub flags: u64,
23517}
23518#[repr(C)]
23519#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23520pub struct fuse_setupmapping_in {
23521    pub fh: u64,
23522    pub foffset: u64,
23523    pub len: u64,
23524    pub flags: u64,
23525    pub moffset: u64,
23526}
23527#[repr(C)]
23528#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23529pub struct fuse_removemapping_in {
23530    pub count: u32,
23531}
23532#[repr(C)]
23533#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23534pub struct fuse_removemapping_one {
23535    pub moffset: u64,
23536    pub len: u64,
23537}
23538#[repr(C)]
23539#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23540pub struct fuse_syncfs_in {
23541    pub padding: u64,
23542}
23543#[repr(C)]
23544#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23545pub struct fuse_secctx {
23546    pub size: u32,
23547    pub padding: u32,
23548}
23549#[repr(C)]
23550#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23551pub struct fuse_secctx_header {
23552    pub size: u32,
23553    pub nr_secctx: u32,
23554}
23555#[doc = " struct fuse_ext_header - extension header\n @size: total size of this extension including this header\n @type: type of extension\n\n This is made compatible with fuse_secctx_header by using type values >\n FUSE_MAX_NR_SECCTX"]
23556#[repr(C)]
23557#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23558pub struct fuse_ext_header {
23559    pub size: u32,
23560    pub type_: u32,
23561}
23562#[doc = " struct fuse_supp_groups - Supplementary group extension\n @nr_groups: number of supplementary groups\n @groups: flexible array of group IDs"]
23563#[repr(C)]
23564#[derive(Debug, Default)]
23565pub struct fuse_supp_groups {
23566    pub nr_groups: u32,
23567    pub groups: __IncompleteArrayField<u32>,
23568}
23569#[repr(C)]
23570#[derive(Debug)]
23571pub struct fuse_mount {
23572    _unused: [u8; 0],
23573}
23574#[doc = " One input argument of a request"]
23575#[repr(C)]
23576#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23577pub struct fuse_bpf_in_arg {
23578    pub size: u32,
23579    pub __bindgen_padding_0: [u8; 4usize],
23580    pub value: uaddr,
23581    pub end_offset: uaddr,
23582}
23583impl Default for fuse_bpf_in_arg {
23584    fn default() -> Self {
23585        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23586        unsafe {
23587            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23588            s.assume_init()
23589        }
23590    }
23591}
23592#[doc = " One output argument of a request"]
23593#[repr(C)]
23594#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23595pub struct fuse_bpf_arg {
23596    pub size: u32,
23597    pub __bindgen_padding_0: [u8; 4usize],
23598    pub value: uaddr,
23599    pub end_offset: uaddr,
23600}
23601impl Default for fuse_bpf_arg {
23602    fn default() -> Self {
23603        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23604        unsafe {
23605            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23606            s.assume_init()
23607        }
23608    }
23609}
23610#[repr(C)]
23611#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23612pub struct fuse_bpf_args {
23613    pub nodeid: u64,
23614    pub opcode: u32,
23615    pub error_in: u32,
23616    pub in_numargs: u32,
23617    pub out_numargs: u32,
23618    pub flags: u32,
23619    pub __bindgen_padding_0: [u8; 4usize],
23620    pub in_args: [fuse_bpf_in_arg; 5usize],
23621    pub out_args: [fuse_bpf_arg; 3usize],
23622}
23623impl Default for fuse_bpf_args {
23624    fn default() -> Self {
23625        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23626        unsafe {
23627            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23628            s.assume_init()
23629        }
23630    }
23631}
23632pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_PMEM: kgsl_user_mem_type = 0;
23633pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ASHMEM: kgsl_user_mem_type = 1;
23634pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ADDR: kgsl_user_mem_type = 2;
23635pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ION: kgsl_user_mem_type = 3;
23636pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_DMABUF: kgsl_user_mem_type = 3;
23637pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_MAX: kgsl_user_mem_type = 7;
23638pub type kgsl_user_mem_type = crate::types::c_uint;
23639pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_NO_ERROR: kgsl_ctx_reset_stat = 0;
23640pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_GUILTY_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 1;
23641pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_INNOCENT_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 2;
23642pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_UNKNOWN_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 3;
23643pub type kgsl_ctx_reset_stat = crate::types::c_uint;
23644#[repr(C)]
23645#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23646pub struct kgsl_devinfo {
23647    pub device_id: crate::types::c_uint,
23648    pub chip_id: crate::types::c_uint,
23649    pub mmu_enabled: crate::types::c_uint,
23650    pub __bindgen_padding_0: [u8; 4usize],
23651    pub gmem_gpubaseaddr: crate::types::c_ulong,
23652    pub gpu_id: crate::types::c_uint,
23653    pub __bindgen_padding_1: [u8; 4usize],
23654    pub gmem_sizebytes: __kernel_size_t,
23655}
23656#[repr(C)]
23657#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23658pub struct kgsl_devmemstore {
23659    pub soptimestamp: crate::types::c_uint,
23660    pub sbz: crate::types::c_uint,
23661    pub eoptimestamp: crate::types::c_uint,
23662    pub sbz2: crate::types::c_uint,
23663    pub preempted: crate::types::c_uint,
23664    pub sbz3: crate::types::c_uint,
23665    pub ref_wait_ts: crate::types::c_uint,
23666    pub sbz4: crate::types::c_uint,
23667    pub current_context: crate::types::c_uint,
23668    pub sbz5: crate::types::c_uint,
23669}
23670pub const kgsl_timestamp_type_KGSL_TIMESTAMP_CONSUMED: kgsl_timestamp_type = 1;
23671pub const kgsl_timestamp_type_KGSL_TIMESTAMP_RETIRED: kgsl_timestamp_type = 2;
23672pub const kgsl_timestamp_type_KGSL_TIMESTAMP_QUEUED: kgsl_timestamp_type = 3;
23673pub type kgsl_timestamp_type = crate::types::c_uint;
23674#[repr(C)]
23675#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23676pub struct kgsl_capabilities_properties {
23677    pub list: __u64,
23678    pub count: __u32,
23679    pub __bindgen_padding_0: [u8; 4usize],
23680}
23681#[repr(C)]
23682#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23683pub struct kgsl_capabilities {
23684    pub data: __u64,
23685    pub size: __u64,
23686    pub querytype: __u32,
23687    pub __bindgen_padding_0: [u8; 4usize],
23688}
23689#[repr(C)]
23690#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23691pub struct kgsl_shadowprop {
23692    pub gpuaddr: crate::types::c_ulong,
23693    pub size: __kernel_size_t,
23694    pub flags: crate::types::c_uint,
23695    pub __bindgen_padding_0: [u8; 4usize],
23696}
23697#[repr(C)]
23698#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23699pub struct kgsl_qdss_stm_prop {
23700    pub gpuaddr: __u64,
23701    pub size: __u64,
23702}
23703#[repr(C)]
23704#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23705pub struct kgsl_qtimer_prop {
23706    pub gpuaddr: __u64,
23707    pub size: __u64,
23708}
23709#[repr(C)]
23710#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23711pub struct kgsl_version {
23712    pub drv_major: crate::types::c_uint,
23713    pub drv_minor: crate::types::c_uint,
23714    pub dev_major: crate::types::c_uint,
23715    pub dev_minor: crate::types::c_uint,
23716}
23717#[repr(C)]
23718#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23719pub struct kgsl_sp_generic_mem {
23720    pub local: __u64,
23721    pub pvt: __u64,
23722}
23723#[repr(C)]
23724#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23725pub struct kgsl_ucode_version {
23726    pub pfp: crate::types::c_uint,
23727    pub pm4: crate::types::c_uint,
23728}
23729#[repr(C)]
23730#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23731pub struct kgsl_gpmu_version {
23732    pub major: crate::types::c_uint,
23733    pub minor: crate::types::c_uint,
23734    pub features: crate::types::c_uint,
23735}
23736#[repr(C)]
23737#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23738pub struct kgsl_context_property {
23739    pub data: __u64,
23740    pub size: __u32,
23741    pub type_: __u32,
23742    pub contextid: __u32,
23743    pub __bindgen_padding_0: [u8; 4usize],
23744}
23745#[repr(C)]
23746#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23747pub struct kgsl_context_property_fault {
23748    pub faults: __s32,
23749    pub timestamp: __u32,
23750}
23751#[repr(C)]
23752#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23753pub struct kgsl_gpu_model {
23754    pub gpu_model: [crate::types::c_char; 32usize],
23755}
23756#[repr(C)]
23757#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23758pub struct kgsl_ibdesc {
23759    pub gpuaddr: crate::types::c_ulong,
23760    pub __pad: crate::types::c_ulong,
23761    pub sizedwords: __kernel_size_t,
23762    pub ctrl: crate::types::c_uint,
23763    pub __bindgen_padding_0: [u8; 4usize],
23764}
23765#[repr(C)]
23766#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23767pub struct kgsl_cmdbatch_profiling_buffer {
23768    pub wall_clock_s: __u64,
23769    pub wall_clock_ns: __u64,
23770    pub gpu_ticks_queued: __u64,
23771    pub gpu_ticks_submitted: __u64,
23772    pub gpu_ticks_retired: __u64,
23773}
23774#[repr(C)]
23775#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23776pub struct kgsl_device_getproperty {
23777    pub type_: crate::types::c_uint,
23778    pub __bindgen_padding_0: [u8; 4usize],
23779    pub value: uaddr,
23780    pub sizebytes: __kernel_size_t,
23781}
23782impl Default for kgsl_device_getproperty {
23783    fn default() -> Self {
23784        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23785        unsafe {
23786            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23787            s.assume_init()
23788        }
23789    }
23790}
23791#[repr(C)]
23792#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23793pub struct kgsl_device_waittimestamp {
23794    pub timestamp: crate::types::c_uint,
23795    pub timeout: crate::types::c_uint,
23796}
23797#[repr(C)]
23798#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23799pub struct kgsl_device_waittimestamp_ctxtid {
23800    pub context_id: crate::types::c_uint,
23801    pub timestamp: crate::types::c_uint,
23802    pub timeout: crate::types::c_uint,
23803}
23804#[repr(C)]
23805#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23806pub struct kgsl_ringbuffer_issueibcmds {
23807    pub drawctxt_id: crate::types::c_uint,
23808    pub __bindgen_padding_0: [u8; 4usize],
23809    pub ibdesc_addr: crate::types::c_ulong,
23810    pub numibs: crate::types::c_uint,
23811    pub timestamp: crate::types::c_uint,
23812    pub flags: crate::types::c_uint,
23813    pub __bindgen_padding_1: [u8; 4usize],
23814}
23815#[repr(C)]
23816#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23817pub struct kgsl_cmdstream_readtimestamp {
23818    pub type_: crate::types::c_uint,
23819    pub timestamp: crate::types::c_uint,
23820}
23821#[repr(C)]
23822#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23823pub struct kgsl_cmdstream_freememontimestamp {
23824    pub gpuaddr: crate::types::c_ulong,
23825    pub type_: crate::types::c_uint,
23826    pub timestamp: crate::types::c_uint,
23827}
23828#[repr(C)]
23829#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23830pub struct kgsl_drawctxt_create {
23831    pub flags: crate::types::c_uint,
23832    pub drawctxt_id: crate::types::c_uint,
23833}
23834#[repr(C)]
23835#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23836pub struct kgsl_drawctxt_destroy {
23837    pub drawctxt_id: crate::types::c_uint,
23838}
23839#[repr(C)]
23840#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23841pub struct kgsl_map_user_mem {
23842    pub fd: crate::types::c_int,
23843    pub __bindgen_padding_0: [u8; 4usize],
23844    pub gpuaddr: crate::types::c_ulong,
23845    pub len: __kernel_size_t,
23846    pub offset: __kernel_size_t,
23847    pub hostptr: crate::types::c_ulong,
23848    pub memtype: kgsl_user_mem_type,
23849    pub flags: crate::types::c_uint,
23850}
23851impl Default for kgsl_map_user_mem {
23852    fn default() -> Self {
23853        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23854        unsafe {
23855            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23856            s.assume_init()
23857        }
23858    }
23859}
23860#[repr(C)]
23861#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23862pub struct kgsl_cmdstream_readtimestamp_ctxtid {
23863    pub context_id: crate::types::c_uint,
23864    pub type_: crate::types::c_uint,
23865    pub timestamp: crate::types::c_uint,
23866}
23867#[repr(C)]
23868#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23869pub struct kgsl_cmdstream_freememontimestamp_ctxtid {
23870    pub context_id: crate::types::c_uint,
23871    pub __bindgen_padding_0: [u8; 4usize],
23872    pub gpuaddr: crate::types::c_ulong,
23873    pub type_: crate::types::c_uint,
23874    pub timestamp: crate::types::c_uint,
23875}
23876#[repr(C)]
23877#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23878pub struct kgsl_sharedmem_from_pmem {
23879    pub pmem_fd: crate::types::c_int,
23880    pub __bindgen_padding_0: [u8; 4usize],
23881    pub gpuaddr: crate::types::c_ulong,
23882    pub len: crate::types::c_uint,
23883    pub offset: crate::types::c_uint,
23884}
23885#[repr(C)]
23886#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23887pub struct kgsl_sharedmem_free {
23888    pub gpuaddr: crate::types::c_ulong,
23889}
23890#[repr(C)]
23891#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23892pub struct kgsl_cff_user_event {
23893    pub cff_opcode: crate::types::c_uchar,
23894    pub __bindgen_padding_0: [u8; 3usize],
23895    pub op1: crate::types::c_uint,
23896    pub op2: crate::types::c_uint,
23897    pub op3: crate::types::c_uint,
23898    pub op4: crate::types::c_uint,
23899    pub op5: crate::types::c_uint,
23900    pub __pad: [crate::types::c_uint; 2usize],
23901}
23902#[repr(C)]
23903#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23904pub struct kgsl_gmem_desc {
23905    pub x: crate::types::c_uint,
23906    pub y: crate::types::c_uint,
23907    pub width: crate::types::c_uint,
23908    pub height: crate::types::c_uint,
23909    pub pitch: crate::types::c_uint,
23910}
23911#[repr(C)]
23912#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23913pub struct kgsl_buffer_desc {
23914    pub hostptr: uaddr,
23915    pub gpuaddr: crate::types::c_ulong,
23916    pub size: crate::types::c_int,
23917    pub format: crate::types::c_uint,
23918    pub pitch: crate::types::c_uint,
23919    pub enabled: crate::types::c_uint,
23920}
23921impl Default for kgsl_buffer_desc {
23922    fn default() -> Self {
23923        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23924        unsafe {
23925            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23926            s.assume_init()
23927        }
23928    }
23929}
23930#[repr(C)]
23931#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23932pub struct kgsl_bind_gmem_shadow {
23933    pub drawctxt_id: crate::types::c_uint,
23934    pub gmem_desc: kgsl_gmem_desc,
23935    pub shadow_x: crate::types::c_uint,
23936    pub shadow_y: crate::types::c_uint,
23937    pub shadow_buffer: kgsl_buffer_desc,
23938    pub buffer_id: crate::types::c_uint,
23939    pub __bindgen_padding_0: [u8; 4usize],
23940}
23941impl Default for kgsl_bind_gmem_shadow {
23942    fn default() -> Self {
23943        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23944        unsafe {
23945            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23946            s.assume_init()
23947        }
23948    }
23949}
23950#[repr(C)]
23951#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23952pub struct kgsl_sharedmem_from_vmalloc {
23953    pub gpuaddr: crate::types::c_ulong,
23954    pub hostptr: crate::types::c_uint,
23955    pub flags: crate::types::c_uint,
23956}
23957#[repr(C)]
23958#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23959pub struct kgsl_drawctxt_set_bin_base_offset {
23960    pub drawctxt_id: crate::types::c_uint,
23961    pub offset: crate::types::c_uint,
23962}
23963pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MIN: kgsl_cmdwindow_type = 0;
23964pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_2D: kgsl_cmdwindow_type = 0;
23965pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_3D: kgsl_cmdwindow_type = 1;
23966pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MMU: kgsl_cmdwindow_type = 2;
23967pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_ARBITER: kgsl_cmdwindow_type = 255;
23968pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MAX: kgsl_cmdwindow_type = 255;
23969pub type kgsl_cmdwindow_type = crate::types::c_uint;
23970#[repr(C)]
23971#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23972pub struct kgsl_cmdwindow_write {
23973    pub target: kgsl_cmdwindow_type,
23974    pub addr: crate::types::c_uint,
23975    pub data: crate::types::c_uint,
23976}
23977impl Default for kgsl_cmdwindow_write {
23978    fn default() -> Self {
23979        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23980        unsafe {
23981            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23982            s.assume_init()
23983        }
23984    }
23985}
23986#[repr(C)]
23987#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23988pub struct kgsl_gpumem_alloc {
23989    pub gpuaddr: crate::types::c_ulong,
23990    pub size: __kernel_size_t,
23991    pub flags: crate::types::c_uint,
23992    pub __bindgen_padding_0: [u8; 4usize],
23993}
23994#[repr(C)]
23995#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23996pub struct kgsl_cff_syncmem {
23997    pub gpuaddr: crate::types::c_ulong,
23998    pub len: __kernel_size_t,
23999    pub __pad: [crate::types::c_uint; 2usize],
24000}
24001#[repr(C)]
24002#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24003pub struct kgsl_timestamp_event {
24004    pub type_: crate::types::c_int,
24005    pub timestamp: crate::types::c_uint,
24006    pub context_id: crate::types::c_uint,
24007    pub __bindgen_padding_0: [u8; 4usize],
24008    pub priv_: uaddr,
24009    pub len: __kernel_size_t,
24010}
24011impl Default for kgsl_timestamp_event {
24012    fn default() -> Self {
24013        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24014        unsafe {
24015            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24016            s.assume_init()
24017        }
24018    }
24019}
24020#[repr(C)]
24021#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24022pub struct kgsl_timestamp_event_genlock {
24023    pub handle: crate::types::c_int,
24024}
24025#[repr(C)]
24026#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24027pub struct kgsl_timestamp_event_fence {
24028    pub fence_fd: crate::types::c_int,
24029}
24030#[repr(C)]
24031#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24032pub struct kgsl_gpumem_alloc_id {
24033    pub id: crate::types::c_uint,
24034    pub flags: crate::types::c_uint,
24035    pub size: __kernel_size_t,
24036    pub mmapsize: __kernel_size_t,
24037    pub gpuaddr: crate::types::c_ulong,
24038    pub __pad: [crate::types::c_ulong; 2usize],
24039}
24040#[repr(C)]
24041#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24042pub struct kgsl_gpumem_free_id {
24043    pub id: crate::types::c_uint,
24044    pub __pad: crate::types::c_uint,
24045}
24046#[repr(C)]
24047#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24048pub struct kgsl_gpumem_get_info {
24049    pub gpuaddr: crate::types::c_ulong,
24050    pub id: crate::types::c_uint,
24051    pub flags: crate::types::c_uint,
24052    pub size: __kernel_size_t,
24053    pub mmapsize: __kernel_size_t,
24054    pub useraddr: crate::types::c_ulong,
24055    pub __pad: [crate::types::c_ulong; 4usize],
24056}
24057#[repr(C)]
24058#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24059pub struct kgsl_gpumem_sync_cache {
24060    pub gpuaddr: crate::types::c_ulong,
24061    pub id: crate::types::c_uint,
24062    pub op: crate::types::c_uint,
24063    pub offset: __kernel_size_t,
24064    pub length: __kernel_size_t,
24065}
24066#[repr(C)]
24067#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24068pub struct kgsl_perfcounter_get {
24069    pub groupid: crate::types::c_uint,
24070    pub countable: crate::types::c_uint,
24071    pub offset: crate::types::c_uint,
24072    pub offset_hi: crate::types::c_uint,
24073    pub __pad: crate::types::c_uint,
24074}
24075#[repr(C)]
24076#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24077pub struct kgsl_perfcounter_put {
24078    pub groupid: crate::types::c_uint,
24079    pub countable: crate::types::c_uint,
24080    pub __pad: [crate::types::c_uint; 2usize],
24081}
24082#[repr(C)]
24083#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24084pub struct kgsl_perfcounter_query {
24085    pub groupid: crate::types::c_uint,
24086    pub __bindgen_padding_0: [u8; 4usize],
24087    pub countables: uref<crate::types::c_uint>,
24088    pub count: crate::types::c_uint,
24089    pub max_counters: crate::types::c_uint,
24090    pub __pad: [crate::types::c_uint; 2usize],
24091}
24092impl Default for kgsl_perfcounter_query {
24093    fn default() -> Self {
24094        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24095        unsafe {
24096            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24097            s.assume_init()
24098        }
24099    }
24100}
24101#[repr(C)]
24102#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24103pub struct kgsl_perfcounter_read_group {
24104    pub groupid: crate::types::c_uint,
24105    pub countable: crate::types::c_uint,
24106    pub value: crate::types::c_ulonglong,
24107}
24108#[repr(C)]
24109#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24110pub struct kgsl_perfcounter_read {
24111    pub reads: uref<kgsl_perfcounter_read_group>,
24112    pub count: crate::types::c_uint,
24113    pub __pad: [crate::types::c_uint; 2usize],
24114    pub __bindgen_padding_0: [u8; 4usize],
24115}
24116impl Default for kgsl_perfcounter_read {
24117    fn default() -> Self {
24118        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24119        unsafe {
24120            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24121            s.assume_init()
24122        }
24123    }
24124}
24125#[repr(C)]
24126#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24127pub struct kgsl_gpumem_sync_cache_bulk {
24128    pub id_list: uref<crate::types::c_uint>,
24129    pub count: crate::types::c_uint,
24130    pub op: crate::types::c_uint,
24131    pub __pad: [crate::types::c_uint; 2usize],
24132}
24133impl Default for kgsl_gpumem_sync_cache_bulk {
24134    fn default() -> Self {
24135        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24136        unsafe {
24137            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24138            s.assume_init()
24139        }
24140    }
24141}
24142#[repr(C)]
24143#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24144pub struct kgsl_cmd_syncpoint_timestamp {
24145    pub context_id: crate::types::c_uint,
24146    pub timestamp: crate::types::c_uint,
24147}
24148#[repr(C)]
24149#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24150pub struct kgsl_cmd_syncpoint_fence {
24151    pub fd: crate::types::c_int,
24152}
24153#[repr(C)]
24154#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24155pub struct kgsl_cmd_syncpoint_timeline {
24156    pub timelines: __u64,
24157    pub count: __u32,
24158    pub timelines_size: __u32,
24159}
24160#[repr(C)]
24161#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24162pub struct kgsl_cmd_syncpoint {
24163    pub type_: crate::types::c_int,
24164    pub __bindgen_padding_0: [u8; 4usize],
24165    pub priv_: uaddr,
24166    pub size: __kernel_size_t,
24167}
24168impl Default for kgsl_cmd_syncpoint {
24169    fn default() -> Self {
24170        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24171        unsafe {
24172            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24173            s.assume_init()
24174        }
24175    }
24176}
24177#[repr(C)]
24178#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24179pub struct kgsl_submit_commands {
24180    pub context_id: crate::types::c_uint,
24181    pub flags: crate::types::c_uint,
24182    pub cmdlist: uref<kgsl_ibdesc>,
24183    pub numcmds: crate::types::c_uint,
24184    pub __bindgen_padding_0: [u8; 4usize],
24185    pub synclist: uref<kgsl_cmd_syncpoint>,
24186    pub numsyncs: crate::types::c_uint,
24187    pub timestamp: crate::types::c_uint,
24188    pub __pad: [crate::types::c_uint; 4usize],
24189}
24190impl Default for kgsl_submit_commands {
24191    fn default() -> Self {
24192        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24193        unsafe {
24194            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24195            s.assume_init()
24196        }
24197    }
24198}
24199#[repr(C)]
24200#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24201pub struct kgsl_device_constraint {
24202    pub type_: crate::types::c_uint,
24203    pub context_id: crate::types::c_uint,
24204    pub data: uaddr,
24205    pub size: __kernel_size_t,
24206}
24207impl Default for kgsl_device_constraint {
24208    fn default() -> Self {
24209        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24210        unsafe {
24211            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24212            s.assume_init()
24213        }
24214    }
24215}
24216#[repr(C)]
24217#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24218pub struct kgsl_device_constraint_pwrlevel {
24219    pub level: crate::types::c_uint,
24220}
24221#[repr(C)]
24222#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24223pub struct kgsl_syncsource_create {
24224    pub id: crate::types::c_uint,
24225    pub __pad: [crate::types::c_uint; 3usize],
24226}
24227#[repr(C)]
24228#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24229pub struct kgsl_syncsource_destroy {
24230    pub id: crate::types::c_uint,
24231    pub __pad: [crate::types::c_uint; 3usize],
24232}
24233#[repr(C)]
24234#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24235pub struct kgsl_syncsource_create_fence {
24236    pub id: crate::types::c_uint,
24237    pub fence_fd: crate::types::c_int,
24238    pub __pad: [crate::types::c_uint; 4usize],
24239}
24240#[repr(C)]
24241#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24242pub struct kgsl_syncsource_signal_fence {
24243    pub id: crate::types::c_uint,
24244    pub fence_fd: crate::types::c_int,
24245    pub __pad: [crate::types::c_uint; 4usize],
24246}
24247#[repr(C)]
24248#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24249pub struct kgsl_cff_sync_gpuobj {
24250    pub offset: __u64,
24251    pub length: __u64,
24252    pub id: crate::types::c_uint,
24253    pub __bindgen_padding_0: [u8; 4usize],
24254}
24255#[repr(C)]
24256#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24257pub struct kgsl_gpuobj_alloc {
24258    pub size: __u64,
24259    pub flags: __u64,
24260    pub va_len: __u64,
24261    pub mmapsize: __u64,
24262    pub id: crate::types::c_uint,
24263    pub metadata_len: crate::types::c_uint,
24264    pub metadata: __u64,
24265}
24266#[repr(C)]
24267#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24268pub struct kgsl_gpuobj_free {
24269    pub flags: __u64,
24270    pub priv_: __u64,
24271    pub id: crate::types::c_uint,
24272    pub type_: crate::types::c_uint,
24273    pub len: crate::types::c_uint,
24274    pub __bindgen_padding_0: [u8; 4usize],
24275}
24276#[repr(C)]
24277#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24278pub struct kgsl_gpu_event_timestamp {
24279    pub context_id: crate::types::c_uint,
24280    pub timestamp: crate::types::c_uint,
24281}
24282#[repr(C)]
24283#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24284pub struct kgsl_gpu_event_fence {
24285    pub fd: crate::types::c_int,
24286}
24287#[repr(C)]
24288#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24289pub struct kgsl_gpuobj_info {
24290    pub gpuaddr: __u64,
24291    pub flags: __u64,
24292    pub size: __u64,
24293    pub va_len: __u64,
24294    pub va_addr: __u64,
24295    pub id: crate::types::c_uint,
24296    pub __bindgen_padding_0: [u8; 4usize],
24297}
24298#[repr(C)]
24299#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24300pub struct kgsl_gpuobj_import {
24301    pub priv_: __u64,
24302    pub priv_len: __u64,
24303    pub flags: __u64,
24304    pub type_: crate::types::c_uint,
24305    pub id: crate::types::c_uint,
24306}
24307#[repr(C)]
24308#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24309pub struct kgsl_gpuobj_import_dma_buf {
24310    pub fd: crate::types::c_int,
24311}
24312#[repr(C)]
24313#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24314pub struct kgsl_gpuobj_import_useraddr {
24315    pub virtaddr: __u64,
24316}
24317#[repr(C)]
24318#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24319pub struct kgsl_gpuobj_sync_obj {
24320    pub offset: __u64,
24321    pub length: __u64,
24322    pub id: crate::types::c_uint,
24323    pub op: crate::types::c_uint,
24324}
24325#[repr(C)]
24326#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24327pub struct kgsl_gpuobj_sync {
24328    pub objs: __u64,
24329    pub obj_len: crate::types::c_uint,
24330    pub count: crate::types::c_uint,
24331}
24332#[repr(C)]
24333#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24334pub struct kgsl_command_object {
24335    pub offset: __u64,
24336    pub gpuaddr: __u64,
24337    pub size: __u64,
24338    pub flags: crate::types::c_uint,
24339    pub id: crate::types::c_uint,
24340}
24341#[repr(C)]
24342#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24343pub struct kgsl_command_syncpoint {
24344    pub priv_: __u64,
24345    pub size: __u64,
24346    pub type_: crate::types::c_uint,
24347    pub __bindgen_padding_0: [u8; 4usize],
24348}
24349#[repr(C)]
24350#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24351pub struct kgsl_gpu_command {
24352    pub flags: __u64,
24353    pub cmdlist: __u64,
24354    pub cmdsize: crate::types::c_uint,
24355    pub numcmds: crate::types::c_uint,
24356    pub objlist: __u64,
24357    pub objsize: crate::types::c_uint,
24358    pub numobjs: crate::types::c_uint,
24359    pub synclist: __u64,
24360    pub syncsize: crate::types::c_uint,
24361    pub numsyncs: crate::types::c_uint,
24362    pub context_id: crate::types::c_uint,
24363    pub timestamp: crate::types::c_uint,
24364}
24365#[repr(C)]
24366#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24367pub struct kgsl_preemption_counters_query {
24368    pub counters: __u64,
24369    pub size_user: crate::types::c_uint,
24370    pub size_priority_level: crate::types::c_uint,
24371    pub max_priority_level: crate::types::c_uint,
24372    pub __bindgen_padding_0: [u8; 4usize],
24373}
24374#[repr(C)]
24375#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24376pub struct kgsl_gpuobj_set_info {
24377    pub flags: __u64,
24378    pub metadata: __u64,
24379    pub id: crate::types::c_uint,
24380    pub metadata_len: crate::types::c_uint,
24381    pub type_: crate::types::c_uint,
24382    pub __bindgen_padding_0: [u8; 4usize],
24383}
24384#[repr(C)]
24385#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24386pub struct kgsl_sparse_phys_alloc {
24387    pub size: __u64,
24388    pub pagesize: __u64,
24389    pub flags: __u64,
24390    pub id: crate::types::c_uint,
24391    pub __bindgen_padding_0: [u8; 4usize],
24392}
24393#[repr(C)]
24394#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24395pub struct kgsl_sparse_phys_free {
24396    pub id: crate::types::c_uint,
24397}
24398#[repr(C)]
24399#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24400pub struct kgsl_sparse_virt_alloc {
24401    pub size: __u64,
24402    pub pagesize: __u64,
24403    pub flags: __u64,
24404    pub gpuaddr: __u64,
24405    pub id: crate::types::c_uint,
24406    pub __bindgen_padding_0: [u8; 4usize],
24407}
24408#[repr(C)]
24409#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24410pub struct kgsl_sparse_virt_free {
24411    pub id: crate::types::c_uint,
24412}
24413#[repr(C)]
24414#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24415pub struct kgsl_sparse_binding_object {
24416    pub virtoffset: __u64,
24417    pub physoffset: __u64,
24418    pub size: __u64,
24419    pub flags: __u64,
24420    pub id: crate::types::c_uint,
24421    pub __bindgen_padding_0: [u8; 4usize],
24422}
24423#[repr(C)]
24424#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24425pub struct kgsl_sparse_bind {
24426    pub list: __u64,
24427    pub id: crate::types::c_uint,
24428    pub size: crate::types::c_uint,
24429    pub count: crate::types::c_uint,
24430    pub __bindgen_padding_0: [u8; 4usize],
24431}
24432#[repr(C)]
24433#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24434pub struct kgsl_gpu_sparse_command {
24435    pub flags: __u64,
24436    pub sparselist: __u64,
24437    pub synclist: __u64,
24438    pub sparsesize: crate::types::c_uint,
24439    pub numsparse: crate::types::c_uint,
24440    pub syncsize: crate::types::c_uint,
24441    pub numsyncs: crate::types::c_uint,
24442    pub context_id: crate::types::c_uint,
24443    pub timestamp: crate::types::c_uint,
24444    pub id: crate::types::c_uint,
24445    pub __bindgen_padding_0: [u8; 4usize],
24446}
24447#[repr(C)]
24448#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24449pub struct kgsl_gpumem_bind_range {
24450    pub child_offset: __u64,
24451    pub target_offset: __u64,
24452    pub length: __u64,
24453    pub child_id: __u32,
24454    pub op: __u32,
24455}
24456#[repr(C)]
24457#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24458pub struct kgsl_gpumem_bind_ranges {
24459    pub ranges: __u64,
24460    pub ranges_nents: __u32,
24461    pub ranges_size: __u32,
24462    pub id: __u32,
24463    pub flags: __u32,
24464    pub fence_id: crate::types::c_int,
24465    pub padding: __u32,
24466}
24467#[repr(C)]
24468#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24469pub struct kgsl_gpu_aux_command_bind {
24470    pub rangeslist: __u64,
24471    pub numranges: __u64,
24472    pub rangesize: __u64,
24473    pub target: __u32,
24474    pub padding: __u32,
24475}
24476#[repr(C)]
24477#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24478pub struct kgsl_gpu_aux_command_generic {
24479    pub priv_: __u64,
24480    pub size: __u64,
24481    pub type_: __u32,
24482    pub padding: __u32,
24483}
24484#[repr(C)]
24485#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24486pub struct kgsl_gpu_aux_command {
24487    pub flags: __u64,
24488    pub cmdlist: __u64,
24489    pub cmdsize: __u32,
24490    pub numcmds: __u32,
24491    pub synclist: __u64,
24492    pub syncsize: __u32,
24493    pub numsyncs: __u32,
24494    pub context_id: __u32,
24495    pub timestamp: __u32,
24496}
24497#[repr(C)]
24498#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24499pub struct kgsl_timeline_create {
24500    pub seqno: __u64,
24501    pub id: __u32,
24502    pub padding: __u32,
24503}
24504#[repr(C)]
24505#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24506pub struct kgsl_timeline_val {
24507    pub seqno: __u64,
24508    pub timeline: __u32,
24509    pub padding: __u32,
24510}
24511#[repr(C)]
24512#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24513pub struct kgsl_timeline_wait {
24514    pub tv_sec: __s64,
24515    pub tv_nsec: __s64,
24516    pub timelines: __u64,
24517    pub count: __u32,
24518    pub timelines_size: __u32,
24519    pub flags: __u32,
24520    pub padding: __u32,
24521}
24522#[repr(C)]
24523#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24524pub struct kgsl_timeline_signal {
24525    pub timelines: __u64,
24526    pub count: __u32,
24527    pub timelines_size: __u32,
24528}
24529#[repr(C)]
24530#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24531pub struct kgsl_timeline_fence_get {
24532    pub seqno: __u64,
24533    pub timeline: __u32,
24534    pub handle: crate::types::c_int,
24535}
24536#[repr(C)]
24537#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24538pub struct kgsl_gpu_aux_command_timeline {
24539    pub timelines: __u64,
24540    pub count: __u32,
24541    pub timelines_size: __u32,
24542}
24543#[repr(C)]
24544#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24545pub struct kgsl_pagefault_report {
24546    pub fault_addr: __u64,
24547    pub reserved: [__u64; 2usize],
24548    pub fault_type: __u32,
24549    pub __pad: __u32,
24550}
24551#[repr(C)]
24552#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24553pub struct kgsl_fault {
24554    pub fault: __u64,
24555    pub type_: __u32,
24556    pub count: __u32,
24557    pub size: __u32,
24558    pub padding: __u32,
24559}
24560#[repr(C)]
24561#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24562pub struct kgsl_fault_report {
24563    pub faultlist: __u64,
24564    pub faultnents: __u32,
24565    pub faultsize: __u32,
24566    pub context_id: __u32,
24567    pub padding: __u32,
24568}
24569#[repr(C)]
24570#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24571pub struct kgsl_recurring_command {
24572    pub flags: __u64,
24573    pub cmdlist: __u64,
24574    pub cmdsize: __u32,
24575    pub numcmds: __u32,
24576    pub objlist: __u64,
24577    pub objsize: __u32,
24578    pub numobjs: __u32,
24579    pub context_id: __u32,
24580    pub padding: __u32,
24581}
24582pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_DEVICE:
24583    kgsl_calibrated_time_domain = 0;
24584pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MONOTONIC:
24585    kgsl_calibrated_time_domain = 1;
24586pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MONOTONIC_RAW:
24587    kgsl_calibrated_time_domain = 2;
24588pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MAX: kgsl_calibrated_time_domain =
24589    3;
24590pub type kgsl_calibrated_time_domain = crate::types::c_uint;
24591#[repr(C)]
24592#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24593pub struct kgsl_read_calibrated_timestamps {
24594    pub sources: __u64,
24595    pub ts: __u64,
24596    pub deviation: __u64,
24597    pub count: __u32,
24598    pub padding: __u32,
24599}
24600#[repr(C)]
24601#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24602pub struct remote_buf {
24603    pub pv: uaddr,
24604    pub len: size_t,
24605}
24606impl Default for remote_buf {
24607    fn default() -> Self {
24608        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24609        unsafe {
24610            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24611            s.assume_init()
24612        }
24613    }
24614}
24615#[repr(C)]
24616#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24617pub struct fastrpc_ioctl_invoke {
24618    pub handle: u32,
24619    pub sc: u32,
24620    pub pra: uaddr,
24621}
24622impl Default for fastrpc_ioctl_invoke {
24623    fn default() -> Self {
24624        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24625        unsafe {
24626            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24627            s.assume_init()
24628        }
24629    }
24630}
24631#[repr(C)]
24632#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24633pub struct fastrpc_ioctl_invoke_fd {
24634    pub inv: fastrpc_ioctl_invoke,
24635    pub fds: uref<i32>,
24636}
24637impl Default for fastrpc_ioctl_invoke_fd {
24638    fn default() -> Self {
24639        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24640        unsafe {
24641            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24642            s.assume_init()
24643        }
24644    }
24645}
24646#[repr(C)]
24647#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24648pub struct fastrpc_ioctl_invoke2 {
24649    pub req: u32,
24650    pub __bindgen_padding_0: [u8; 4usize],
24651    pub invparam: uaddr,
24652    pub size: u32,
24653    pub err: i32,
24654}
24655impl Default for fastrpc_ioctl_invoke2 {
24656    fn default() -> Self {
24657        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24658        unsafe {
24659            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24660            s.assume_init()
24661        }
24662    }
24663}
24664#[repr(C)]
24665#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24666pub struct fastrpc_ioctl_init {
24667    pub flags: u32,
24668    pub __bindgen_padding_0: [u8; 4usize],
24669    pub file: uaddr,
24670    pub filelen: u32,
24671    pub filefd: i32,
24672    pub mem: uaddr,
24673    pub memlen: u32,
24674    pub memfd: i32,
24675}
24676impl Default for fastrpc_ioctl_init {
24677    fn default() -> Self {
24678        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24679        unsafe {
24680            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24681            s.assume_init()
24682        }
24683    }
24684}
24685#[repr(C)]
24686#[derive(Clone, Copy, Debug, Default, IntoBytes, FromBytes, KnownLayout, Immutable)]
24687pub struct fastrpc_ioctl_capability {
24688    pub domain: u32,
24689    pub attribute_ID: u32,
24690    pub capability: u32,
24691}
24692pub const SECCOMP_IOCTL_NOTIF_RECV: __u32 = 3226476800;
24693pub const SECCOMP_IOCTL_NOTIF_SEND: __u32 = 3222806785;
24694pub const SECCOMP_IOCTL_NOTIF_ID_VALID: __u32 = 1074274562;
24695pub const SECCOMP_IOCTL_NOTIF_ADDFD: __u32 = 1075323139;
24696pub const TIOCSPTLCK: __u32 = 1074025521;
24697pub const TIOCGPTLCK: __u32 = 2147767353;
24698pub const TIOCGPKT: __u32 = 2147767352;
24699pub const TIOCSIG: __u32 = 1074025526;
24700pub const TIOCGPTN: __u32 = 2147767344;
24701pub const BLKFLSBUF: __u32 = 4705;
24702pub const BLKGETSIZE: __u32 = 4704;
24703pub const BLKGETSIZE64: __u32 = 2148012658;
24704pub const BLKRASET: __u32 = 4706;
24705pub const EVIOCGVERSION: __u32 = 2147763457;
24706pub const EVIOCGID: __u32 = 2148025602;
24707pub const RWF_HIPRI: __u32 = 1;
24708pub const RWF_DSYNC: __u32 = 2;
24709pub const RWF_SYNC: __u32 = 4;
24710pub const RWF_NOWAIT: __u32 = 8;
24711pub const RWF_APPEND: __u32 = 16;
24712pub const RWF_SUPPORTED: __u32 = 127;
24713pub const EVIOCGBIT_0: __u32 = 2147763488;
24714pub const EVIOCGBIT_EV_KEY: __u32 = 2153792801;
24715pub const EVIOCGBIT_EV_ABS: __u32 = 2148025635;
24716pub const EVIOCGBIT_EV_REL: __u32 = 2147632418;
24717pub const EVIOCGBIT_EV_SW: __u32 = 2147632421;
24718pub const EVIOCGBIT_EV_LED: __u32 = 2147632433;
24719pub const EVIOCGBIT_EV_FF: __u32 = 2148549941;
24720pub const EVIOCGBIT_EV_MSC: __u32 = 2147566884;
24721pub const EVIOCGPROP: __u32 = 2147763465;
24722pub const EVIOCGABS_X: __u32 = 2149074240;
24723pub const EVIOCGABS_Y: __u32 = 2149074241;
24724pub const EVIOCGABS_MT_SLOT: __u32 = 2149074287;
24725pub const EVIOCGABS_MT_TRACKING_ID: __u32 = 2149074297;
24726pub const EVIOCGABS_MT_POSITION_X: __u32 = 2149074293;
24727pub const EVIOCGABS_MT_POSITION_Y: __u32 = 2149074294;
24728pub const EVIOCGNAME_0: __u32 = 2147501318;
24729#[repr(C)]
24730#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24731pub struct remote_binder_start_command {
24732    pub incoming_service: uref<crate::types::c_char>,
24733}
24734impl Default for remote_binder_start_command {
24735    fn default() -> Self {
24736        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24737        unsafe {
24738            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24739            s.assume_init()
24740        }
24741    }
24742}
24743#[repr(C)]
24744#[derive(Clone, Copy, Debug, Default, IntoBytes, FromBytes, KnownLayout, Immutable)]
24745pub struct remote_binder_wait_command {
24746    pub spawn_thread: crate::types::c_char,
24747}
24748pub const REMOTE_BINDER_START: __u32 = 2148028929;
24749pub const REMOTE_BINDER_WAIT: __u32 = 1073828354;
24750pub const BINDER_CTL_ADD: __u32 = 3238552065;
24751pub const FIBMAP: __u32 = 1;
24752pub const FIGETBSZ: __u32 = 2;
24753pub const FICLONE: __u32 = 1074041865;
24754pub const FICLONERANGE: __u32 = 1075876877;
24755pub const FIDEDUPERANGE: __u32 = 3222836278;
24756pub const FS_IOC_GETVERSION: __u32 = 2148038145;
24757pub const FS_IOC_SETVERSION: __u32 = 1074296322;
24758pub const FS_IOC_FSGETXATTR: __u32 = 2149341215;
24759pub const FS_IOC_FSSETXATTR: __u32 = 1075599392;
24760pub const FS_IOC_GETFLAGS: __u32 = 2148034049;
24761pub const FS_IOC_SETFLAGS: __u32 = 1074292226;
24762pub const FS_IOC_ENABLE_VERITY: __u32 = 1082156677;
24763pub const FS_IOC_MEASURE_VERITY: __u32 = 3221513862;
24764pub const FS_IOC_READ_VERITY_METADATA: __u32 = 3223873159;
24765pub const DM_DEV_STATUS: __u32 = 3241737479;
24766pub const DM_DEV_CREATE: __u32 = 3241737475;
24767pub const DM_DEV_REMOVE: __u32 = 3241737476;
24768pub const DM_DEV_SUSPEND: __u32 = 3241737478;
24769pub const DM_TABLE_LOAD: __u32 = 3241737481;
24770pub const DM_TABLE_STATUS: __u32 = 3241737484;
24771pub const DM_LIST_VERSIONS: __u32 = 3241737485;
24772pub const DM_LIST_DEVICES: __u32 = 3241737474;
24773pub const DM_VERSION: __u32 = 3241737472;
24774pub const DM_REMOVE_ALL: __u32 = 3241737473;
24775pub const DM_DEV_RENAME: __u32 = 3241737477;
24776pub const DM_DEV_WAIT: __u32 = 3241737480;
24777pub const DM_TABLE_CLEAR: __u32 = 3241737482;
24778pub const DM_TABLE_DEPS: __u32 = 3241737483;
24779pub const DM_TARGET_MSG: __u32 = 3241737486;
24780pub const DM_DEV_SET_GEOMETRY: __u32 = 3241737487;
24781pub const DM_DEV_ARM_POLL: __u32 = 3241737488;
24782pub const DM_GET_TARGET_VERSION: __u32 = 3241737489;
24783pub const FS_IOC_ADD_ENCRYPTION_KEY: __u32 = 3226494487;
24784pub const FS_IOC_SET_ENCRYPTION_POLICY: __u32 = 2148296211;
24785pub const FS_IOC_GET_ENCRYPTION_POLICY: __u32 = 1074554389;
24786pub const FS_IOC_REMOVE_ENCRYPTION_KEY: __u32 = 3225445912;
24787pub const KGSL_MEMFLAGS_USERMEM_PMEM: __u32 = 32;
24788pub const KGSL_MEMFLAGS_USERMEM_ASHMEM: __u32 = 64;
24789pub const KGSL_MEMFLAGS_USERMEM_ADDR: __u32 = 96;
24790pub const KGSL_MEMFLAGS_USERMEM_ION: __u32 = 128;
24791pub const IOCTL_KGSL_DEVICE_GETPROPERTY: __u32 = 3222800642;
24792pub const IOCTL_KGSL_DEVICE_WAITTIMESTAMP: __u32 = 1074268422;
24793pub const IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID: __u32 = 1074530567;
24794pub const IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS: __u32 = 3223324944;
24795pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD: __u32 = 2148010257;
24796pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP: __u32 = 3221752081;
24797pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP: __u32 = 1074792722;
24798pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_OLD: __u32 = 2148534546;
24799pub const IOCTL_KGSL_DRAWCTXT_CREATE: __u32 = 3221752083;
24800pub const IOCTL_KGSL_DRAWCTXT_DESTROY: __u32 = 1074006292;
24801pub const IOCTL_KGSL_MAP_USER_MEM: __u32 = 3224373525;
24802pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_CTXTID: __u32 = 3222014230;
24803pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID: __u32 = 1075317015;
24804pub const IOCTL_KGSL_SHAREDMEM_FROM_PMEM: __u32 = 3222800672;
24805pub const IOCTL_KGSL_SHAREDMEM_FREE: __u32 = 1074268449;
24806pub const IOCTL_KGSL_CFF_USER_EVENT: __u32 = 1075841329;
24807pub const IOCTL_KGSL_DRAWCTXT_BIND_GMEM_SHADOW: __u32 = 1078462754;
24808pub const IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC: __u32 = 3222276387;
24809pub const IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE: __u32 = 1074268452;
24810pub const IOCTL_KGSL_DRAWCTXT_SET_BIN_BASE_OFFSET: __u32 = 1074268453;
24811pub const IOCTL_KGSL_CMDWINDOW_WRITE: __u32 = 1074530606;
24812pub const IOCTL_KGSL_GPUMEM_ALLOC: __u32 = 3222800687;
24813pub const IOCTL_KGSL_CFF_SYNCMEM: __u32 = 1075317040;
24814pub const IOCTL_KGSL_TIMESTAMP_EVENT_OLD: __u32 = 1075841329;
24815pub const IOCTL_KGSL_SETPROPERTY: __u32 = 1075317042;
24816pub const IOCTL_KGSL_TIMESTAMP_EVENT: __u32 = 3223324979;
24817pub const IOCTL_KGSL_GPUMEM_ALLOC_ID: __u32 = 3224373556;
24818pub const IOCTL_KGSL_GPUMEM_FREE_ID: __u32 = 3221752117;
24819pub const IOCTL_KGSL_GPUMEM_GET_INFO: __u32 = 3225946422;
24820pub const IOCTL_KGSL_GPUMEM_SYNC_CACHE: __u32 = 1075841335;
24821pub const IOCTL_KGSL_PERFCOUNTER_GET: __u32 = 3222538552;
24822pub const IOCTL_KGSL_PERFCOUNTER_PUT: __u32 = 1074792761;
24823pub const IOCTL_KGSL_PERFCOUNTER_QUERY: __u32 = 3223324986;
24824pub const IOCTL_KGSL_PERFCOUNTER_READ: __u32 = 3222800699;
24825pub const IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK: __u32 = 3222800700;
24826pub const IOCTL_KGSL_SUBMIT_COMMANDS: __u32 = 3224897853;
24827pub const IOCTL_KGSL_SYNCSOURCE_CREATE: __u32 = 3222276416;
24828pub const IOCTL_KGSL_SYNCSOURCE_DESTROY: __u32 = 3222276417;
24829pub const IOCTL_KGSL_SYNCSOURCE_CREATE_FENCE: __u32 = 3222800706;
24830pub const IOCTL_KGSL_SYNCSOURCE_SIGNAL_FENCE: __u32 = 3222800707;
24831pub const IOCTL_KGSL_CFF_SYNC_GPUOBJ: __u32 = 1075317060;
24832pub const IOCTL_KGSL_GPUOBJ_ALLOC: __u32 = 3224373573;
24833pub const IOCTL_KGSL_GPUOBJ_FREE: __u32 = 1075841350;
24834pub const IOCTL_KGSL_GPUOBJ_INFO: __u32 = 3224373575;
24835pub const IOCTL_KGSL_GPUOBJ_IMPORT: __u32 = 3223325000;
24836pub const IOCTL_KGSL_GPUOBJ_SYNC: __u32 = 1074792777;
24837pub const IOCTL_KGSL_GPU_COMMAND: __u32 = 3225422154;
24838pub const IOCTL_KGSL_PREEMPTIONCOUNTER_QUERY: __u32 = 3222800715;
24839pub const IOCTL_KGSL_GPUOBJ_SET_INFO: __u32 = 1075841356;
24840pub const IOCTL_KGSL_SPARSE_PHYS_ALLOC: __u32 = 3223325008;
24841pub const IOCTL_KGSL_SPARSE_PHYS_FREE: __u32 = 1074006353;
24842pub const IOCTL_KGSL_SPARSE_VIRT_ALLOC: __u32 = 3223849298;
24843pub const IOCTL_KGSL_SPARSE_VIRT_FREE: __u32 = 1074006355;
24844pub const IOCTL_KGSL_SPARSE_BIND: __u32 = 1075317076;
24845pub const IOCTL_KGSL_GPU_SPARSE_COMMAND: __u32 = 3224897877;
24846pub const IOCTL_KGSL_GPUMEM_BIND_RANGES: __u32 = 3223325014;
24847pub const IOCTL_KGSL_GPU_AUX_COMMAND: __u32 = 3224373591;
24848pub const IOCTL_KGSL_TIMELINE_CREATE: __u32 = 3222276440;
24849pub const IOCTL_KGSL_TIMELINE_WAIT: __u32 = 1076365657;
24850pub const IOCTL_KGSL_TIMELINE_QUERY: __u32 = 3222276442;
24851pub const IOCTL_KGSL_TIMELINE_SIGNAL: __u32 = 1074792795;
24852pub const IOCTL_KGSL_TIMELINE_FENCE_GET: __u32 = 3222276444;
24853pub const IOCTL_KGSL_TIMELINE_DESTROY: __u32 = 1074006365;
24854pub const IOCTL_KGSL_GET_FAULT_REPORT: __u32 = 3222800734;
24855pub const IOCTL_KGSL_RECURRING_COMMAND: __u32 = 3224373599;
24856pub const IOCTL_KGSL_READ_CALIBRATED_TIMESTAMPS: __u32 = 3223325024;
24857pub const TCGETS2: __u32 = 2150388778;
24858pub const TCSETS2: __u32 = 1076646955;
24859pub const TCSETSW2: __u32 = 1076646956;
24860pub const TCSETSF2: __u32 = 1076646957;
24861pub const RTC_SET_TIME: __u32 = 1076129802;
24862pub const UI_DEV_CREATE: __u32 = 21761;
24863pub const UI_DEV_DESTROY: __u32 = 21762;
24864pub const UI_DEV_SETUP: __u32 = 1079792899;
24865pub const UI_ABS_SETUP: __u32 = 1075598596;
24866pub const UI_SET_EVBIT: __u32 = 1074025828;
24867pub const UI_SET_KEYBIT: __u32 = 1074025829;
24868pub const UI_SET_RELBIT: __u32 = 1074025830;
24869pub const UI_SET_ABSBIT: __u32 = 1074025831;
24870pub const UI_SET_MSCBIT: __u32 = 1074025832;
24871pub const UI_SET_LEDBIT: __u32 = 1074025833;
24872pub const UI_SET_SNDBIT: __u32 = 1074025834;
24873pub const UI_SET_FFBIT: __u32 = 1074025835;
24874pub const UI_SET_PHYS: __u32 = 1074287980;
24875pub const UI_SET_SWBIT: __u32 = 1074025837;
24876pub const UI_SET_PROPBIT: __u32 = 1074025838;
24877pub const UI_BEGIN_FF_UPLOAD: __u32 = 3228063176;
24878pub const UI_END_FF_UPLOAD: __u32 = 1080579529;
24879pub const UI_BEGIN_FF_ERASE: __u32 = 3222033866;
24880pub const UI_END_FF_ERASE: __u32 = 1074550219;
24881pub const UI_GET_VERSION: __u32 = 2147767597;
24882pub const ASHMEM_SET_NAME: __u32 = 1090549505;
24883pub const ASHMEM_GET_NAME: __u32 = 2164291330;
24884pub const ASHMEM_SET_SIZE: __u32 = 1074296579;
24885pub const ASHMEM_GET_SIZE: __u32 = 30468;
24886pub const ASHMEM_SET_PROT_MASK: __u32 = 1074296581;
24887pub const ASHMEM_GET_PROT_MASK: __u32 = 30470;
24888pub const ASHMEM_PIN: __u32 = 1074296583;
24889pub const ASHMEM_UNPIN: __u32 = 1074296584;
24890pub const ASHMEM_GET_PIN_STATUS: __u32 = 30473;
24891pub const ASHMEM_PURGE_ALL_CACHES: __u32 = 30474;
24892pub const ASHMEM_GET_FILE_ID: __u32 = 2148038411;
24893pub const RNDGETENTCNT: __u32 = 2147766784;
24894pub const RNDADDTOENTCNT: __u32 = 1074024961;
24895pub const RNDGETPOOL: __u32 = 2148028930;
24896pub const RNDADDENTROPY: __u32 = 1074287107;
24897pub const RNDZAPENTCNT: __u32 = 20996;
24898pub const RNDCLEARPOOL: __u32 = 20998;
24899pub const RNDRESEEDCRNG: __u32 = 20999;
24900pub const UFFDIO_REGISTER: __u32 = 3223366144;
24901pub const UFFDIO_UNREGISTER: __u32 = 2148575745;
24902pub const UFFDIO_WAKE: __u32 = 2148575746;
24903pub const UFFDIO_COPY: __u32 = 3223890435;
24904pub const UFFDIO_ZEROPAGE: __u32 = 3223366148;
24905pub const UFFDIO_WRITEPROTECT: __u32 = 3222841862;
24906pub const UFFDIO_CONTINUE: __u32 = 3223366151;
24907pub const UFFDIO_POISON: __u32 = 3223366152;
24908pub const UFFDIO_MOVE: __u32 = 3223890437;
24909pub const UFFDIO_API: __u32 = 3222841919;
24910pub const UFFDIO_REGISTER_MODE_MISSING: __u32 = 1;
24911pub const UFFDIO_REGISTER_MODE_WP: __u32 = 2;
24912pub const UFFDIO_REGISTER_MODE_MINOR: __u32 = 4;
24913pub const UFFDIO_COPY_MODE_DONTWAKE: __u32 = 1;
24914pub const UFFDIO_COPY_MODE_WP: __u32 = 2;
24915pub const UFFDIO_ZEROPAGE_MODE_DONTWAKE: __u32 = 1;
24916pub const UFFDIO_CONTINUE_MODE_DONTWAKE: __u32 = 1;
24917pub const PERF_EVENT_IOC_ENABLE: __u32 = 9216;
24918pub const PERF_EVENT_IOC_DISABLE: __u32 = 9217;
24919pub const PERF_EVENT_IOC_REFRESH: __u32 = 9218;
24920pub const PERF_EVENT_IOC_RESET: __u32 = 9219;
24921pub const PERF_EVENT_IOC_PERIOD: __u32 = 1074275332;
24922pub const PERF_EVENT_IOC_SET_OUTPUT: __u32 = 9221;
24923pub const PERF_EVENT_IOC_SET_FILTER: __u32 = 1074275334;
24924pub const PERF_EVENT_IOC_ID: __u32 = 2148017159;
24925pub const PERF_EVENT_IOC_SET_BPF: __u32 = 1074013192;
24926pub const PERF_EVENT_IOC_PAUSE_OUTPUT: __u32 = 1074013193;
24927pub const PERF_EVENT_IOC_QUERY_BPF: __u32 = 3221758986;
24928pub const PERF_EVENT_IOC_MODIFY_ATTRIBUTES: __u32 = 1074275339;
24929pub const FASTRPC_IOCTL_INVOKE: __u32 = 3222295041;
24930pub const FASTRPC_IOCTL_INVOKE_FD: __u32 = 3222819332;
24931pub const FASTRPC_IOCTL_GETINFO: __u32 = 3221508616;
24932pub const FASTRPC_IOCTL_GET_DSP_INFO: __u32 = 3222032913;
24933pub const FASTRPC_IOCTL_INVOKE2: __u32 = 3222819346;
24934pub const FASTRPC_IOCTL_INIT: __u32 = 3223867910;
24935pub const DMA_HEAP_IOCTL_ALLOC: __u32 = 3222816768;
24936pub const DMA_BUF_IOCTL_SYNC: __u32 = 1074291200;
24937pub const DMA_BUF_SET_NAME: __u32 = 1074291201;
24938pub const DMA_BUF_SET_NAME_A: __u32 = 1074029057;
24939pub const DMA_BUF_SET_NAME_B: __u32 = 1074291201;
24940pub const DMA_BUF_IOCTL_EXPORT_SYNC_FILE: __u32 = 3221774850;
24941pub const DMA_BUF_IOCTL_IMPORT_SYNC_FILE: __u32 = 1074291203;
24942pub type utsname = new_utsname;
24943pub type gid_t = __kernel_gid_t;
24944pub type ino_t = __kernel_ino_t;
24945pub type mode_t = __kernel_mode_t;
24946pub type off_t = __kernel_off_t;
24947pub const TUNSETIFF: __u32 = 1074025674;
24948#[repr(C)]
24949#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24950pub struct sched_param {
24951    pub sched_priority: crate::types::c_int,
24952}
24953pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V0: __u32 = 1074849025;
24954pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V1: __u32 = 1074849151;
24955pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V2: __u32 = 1074062718;
24956#[repr(C)]
24957#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24958pub struct xt_match {
24959    pub _address: u8,
24960}
24961#[repr(C)]
24962#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24963pub struct xt_target {
24964    pub _address: u8,
24965}
24966
24967// LINT.ThenChange(
24968//    //src/starnix/lib/linux_uapi/stub/drivers/char/adsprpc_shared.h |
24969//    //src/starnix/lib/linux_uapi/stub/kgsl/msm_kgsl.h |
24970//    //src/starnix/lib/linux_uapi/third_party/libfuse/fuse_kernel.h |
24971//    //src/starnix/lib/linux_uapi/stub/bits/epoll_event.h |
24972//    //src/starnix/lib/linux_uapi/stub/bits/flock.h |
24973//    //src/starnix/lib/linux_uapi/stub/bits/flock64.h |
24974//    //src/starnix/lib/linux_uapi/stub/bits/in_addr.h |
24975//    //src/starnix/lib/linux_uapi/stub/bits/ip_mreq_source.h |
24976//    //src/starnix/lib/linux_uapi/stub/bits/ip_msfilter.h |
24977//    //src/starnix/lib/linux_uapi/stub/bits/sockaddr_storage.h |
24978//    //src/starnix/lib/linux_uapi/stub/bits/timespec.h |
24979//    //src/starnix/lib/linux_uapi/stub/fcntl.h |
24980//    //src/starnix/lib/linux_uapi/stub/missing_includes.h |
24981//    //src/starnix/lib/linux_uapi/stub/sys/ioctl.h |
24982//    //src/starnix/lib/linux_uapi/stub/sys/socket.h |
24983//    //src/starnix/lib/linux_uapi/stub/sys/time.h |
24984//    //src/starnix/lib/linux_uapi/stub/sys/types.h |
24985//    //src/starnix/lib/linux_uapi/stub/typedefs.h |
24986//    //src/starnix/lib/linux_uapi/wrapper.h |
24987//    //third_party/android/platform/bionic/libc/kernel/android/uapi/linux/compiler.h |
24988//    //third_party/android/platform/bionic/libc/kernel/android/uapi/linux/compiler_types.h |
24989//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/bitsperlong.h |
24990//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/bpf_perf_event.h |
24991//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/errno-base.h |
24992//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/errno.h |
24993//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/fcntl.h |
24994//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/hugetlb_encode.h |
24995//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/int-ll64.h |
24996//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ioctl.h |
24997//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ioctls.h |
24998//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/mman-common.h |
24999//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/mman.h |
25000//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/poll.h |
25001//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/posix_types.h |
25002//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/resource.h |
25003//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/siginfo.h |
25004//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/signal-defs.h |
25005//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/socket.h |
25006//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/sockios.h |
25007//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/statfs.h |
25008//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termbits-common.h |
25009//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termbits.h |
25010//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termios.h |
25011//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/types.h |
25012//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ucontext.h |
25013//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/auxvec.h |
25014//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/bitsperlong.h |
25015//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/bpf_perf_event.h |
25016//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/byteorder.h |
25017//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/errno.h |
25018//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/fcntl.h |
25019//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ioctl.h |
25020//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ioctls.h |
25021//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/mman.h |
25022//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/poll.h |
25023//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/posix_types.h |
25024//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/posix_types_64.h |
25025//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/prctl.h |
25026//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/processor-flags.h |
25027//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ptrace-abi.h |
25028//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ptrace.h |
25029//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/resource.h |
25030//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/sigcontext.h |
25031//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/siginfo.h |
25032//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/signal.h |
25033//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/socket.h |
25034//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/sockios.h |
25035//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/stat.h |
25036//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/statfs.h |
25037//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/swab.h |
25038//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/termbits.h |
25039//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/termios.h |
25040//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/types.h |
25041//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ucontext.h |
25042//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/unistd.h |
25043//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/unistd_64.h |
25044//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/aio_abi.h |
25045//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/android/binder.h |
25046//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/android/binderfs.h |
25047//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ashmem.h |
25048//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/audit.h |
25049//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/auxvec.h |
25050//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf.h |
25051//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf_common.h |
25052//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf_perf_event.h |
25053//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/byteorder/little_endian.h |
25054//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/capability.h |
25055//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/close_range.h |
25056//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/const.h |
25057//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dm-ioctl.h |
25058//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dma-buf.h |
25059//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dma-heap.h |
25060//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/elf-em.h |
25061//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/elf.h |
25062//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/errno.h |
25063//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/eventpoll.h |
25064//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fadvise.h |
25065//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/falloc.h |
25066//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fb.h |
25067//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fcntl.h |
25068//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fib_rules.h |
25069//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/filter.h |
25070//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fs.h |
25071//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fscrypt.h |
25072//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fsverity.h |
25073//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/futex.h |
25074//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/hdlc/ioctl.h |
25075//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/i2c.h |
25076//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if.h |
25077//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_addr.h |
25078//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_arp.h |
25079//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_ether.h |
25080//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_link.h |
25081//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_packet.h |
25082//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_tun.h |
25083//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/in.h |
25084//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/in6.h |
25085//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/inotify.h |
25086//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/input-event-codes.h |
25087//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/input.h |
25088//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/io_uring.h |
25089//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ioctl.h |
25090//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ip.h |
25091//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ipv6.h |
25092//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/irqnr.h |
25093//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/kcmp.h |
25094//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/libc-compat.h |
25095//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/limits.h |
25096//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/loop.h |
25097//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/magic.h |
25098//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/membarrier.h |
25099//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/memfd.h |
25100//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mman.h |
25101//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mount.h |
25102//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mqueue.h |
25103//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/neighbour.h |
25104//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netdevice.h |
25105//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter.h |
25106//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_conntrack_common.h |
25107//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_conntrack_tuple_common.h |
25108//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_nat.h |
25109//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/x_tables.h |
25110//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_TPROXY.h |
25111//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_bpf.h |
25112//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_mark.h |
25113//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_tcpudp.h |
25114//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4.h |
25115//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h |
25116//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4/ipt_REJECT.h |
25117//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6.h |
25118//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h |
25119//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6/ip6t_REJECT.h |
25120//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netlink.h |
25121//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/oom.h |
25122//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/openat2.h |
25123//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/perf_event.h |
25124//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/personality.h |
25125//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/pfkeyv2.h |
25126//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/pidfd.h |
25127//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/poll.h |
25128//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/posix_types.h |
25129//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/prctl.h |
25130//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ptrace.h |
25131//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/random.h |
25132//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/reboot.h |
25133//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/resource.h |
25134//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/rtc.h |
25135//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/rtnetlink.h |
25136//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sched.h |
25137//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sched/types.h |
25138//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/seccomp.h |
25139//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/securebits.h |
25140//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/signal.h |
25141//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/signalfd.h |
25142//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sock_diag.h |
25143//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/socket.h |
25144//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sockios.h |
25145//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/stat.h |
25146//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/stddef.h |
25147//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/swab.h |
25148//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sync_file.h |
25149//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sysinfo.h |
25150//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/taskstats.h |
25151//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/termios.h |
25152//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/thermal.h |
25153//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/time.h |
25154//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/time_types.h |
25155//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/timerfd.h |
25156//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/times.h |
25157//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/types.h |
25158//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/uinput.h |
25159//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/uio.h |
25160//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/un.h |
25161//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/unistd.h |
25162//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usb/ch9.h |
25163//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usb/functionfs.h |
25164//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/userfaultfd.h |
25165//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/utsname.h |
25166//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/vesa.h |
25167//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/vm_sockets.h |
25168//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/wait.h |
25169//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/xattr.h |
25170//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/xfrm.h
25171//)