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) + 7) / 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!(
291            (bit_offset + (bit_width as usize) + 7) / 8 <= core::mem::size_of::<Storage>()
292        );
293        if bit_width == 0 {
294            return 0;
295        }
296        let mut val = 0u64;
297        let start_byte = bit_offset / 8;
298        let bit_shift = bit_offset % 8;
299        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
300        let storage_ptr = unsafe { core::ptr::addr_of!((*this).storage) as *const u8 };
301        if cfg!(target_endian = "big") {
302            for i in 0..bytes_needed {
303                let byte = unsafe { *storage_ptr.add(start_byte + i) };
304                val |= (byte.reverse_bits() as u64) << (i * 8);
305            }
306        } else {
307            for i in 0..bytes_needed {
308                let byte = unsafe { *storage_ptr.add(start_byte + i) };
309                val |= (byte as u64) << (i * 8);
310            }
311        }
312        val >>= bit_shift;
313        if bit_width < 64 {
314            val &= (1u64 << bit_width) - 1;
315        }
316        if cfg!(target_endian = "big") {
317            val = val.reverse_bits() >> (64 - bit_width as usize);
318        }
319        val
320    }
321    #[inline]
322    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
323        debug_assert!(bit_width <= 64);
324        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
325        debug_assert!((bit_offset + (bit_width as usize) + 7) / 8 <= self.storage.as_ref().len());
326        if bit_width == 0 {
327            return;
328        }
329        let mut val = val;
330        if bit_width < 64 {
331            val &= (1u64 << bit_width) - 1;
332        }
333        if cfg!(target_endian = "big") {
334            val = val.reverse_bits() >> (64 - bit_width as usize);
335        }
336        let storage = self.storage.as_mut();
337        let start_byte = bit_offset / 8;
338        let bit_shift = bit_offset % 8;
339        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
340        val <<= bit_shift;
341        let field_mask = if bit_width as usize + bit_shift >= 64 {
342            !0u64 << bit_shift
343        } else {
344            ((1u64 << bit_width) - 1) << bit_shift
345        };
346        for i in 0..bytes_needed {
347            let byte_val = (val >> (i * 8)) as u8;
348            let byte_mask = (field_mask >> (i * 8)) as u8;
349            if cfg!(target_endian = "big") {
350                let byte = storage[start_byte + i].reverse_bits();
351                let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
352                storage[start_byte + i] = new_byte.reverse_bits();
353            } else {
354                storage[start_byte + i] =
355                    (storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
356            }
357        }
358    }
359    #[inline]
360    pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
361        debug_assert!(bit_width <= 64);
362        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
363        debug_assert!(
364            (bit_offset + (bit_width as usize) + 7) / 8 <= core::mem::size_of::<Storage>()
365        );
366        if bit_width == 0 {
367            return;
368        }
369        let mut val = val;
370        if bit_width < 64 {
371            val &= (1u64 << bit_width) - 1;
372        }
373        if cfg!(target_endian = "big") {
374            val = val.reverse_bits() >> (64 - bit_width as usize);
375        }
376        let start_byte = bit_offset / 8;
377        let bit_shift = bit_offset % 8;
378        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
379        val <<= bit_shift;
380        let field_mask = if bit_width as usize + bit_shift >= 64 {
381            !0u64 << bit_shift
382        } else {
383            ((1u64 << bit_width) - 1) << bit_shift
384        };
385        let storage_ptr = unsafe { core::ptr::addr_of_mut!((*this).storage) as *mut u8 };
386        for i in 0..bytes_needed {
387            let byte_val = (val >> (i * 8)) as u8;
388            let byte_mask = (field_mask >> (i * 8)) as u8;
389            let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
390            if cfg!(target_endian = "big") {
391                let byte = unsafe { (*byte_ptr).reverse_bits() };
392                let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
393                unsafe { *byte_ptr = new_byte.reverse_bits() };
394            } else {
395                unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
396            }
397        }
398    }
399}
400#[doc = " Const-generic methods for efficient bitfield access when offset and width"]
401#[doc = " are known at compile time."]
402impl<const N: usize> __BindgenBitfieldUnit<[u8; N]> {
403    #[doc = " Get a field using const generics for compile-time optimization."]
404    #[doc = " Uses native word size operations when the field fits in usize."]
405    #[inline]
406    pub const fn get_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(&self) -> u64 {
407        debug_assert!(BIT_WIDTH <= 64);
408        debug_assert!(BIT_OFFSET / 8 < N);
409        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
410        if BIT_WIDTH == 0 {
411            return 0;
412        }
413        let start_byte = BIT_OFFSET / 8;
414        let bit_shift = BIT_OFFSET % 8;
415        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
416        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
417            let mut val = 0usize;
418            if cfg!(target_endian = "big") {
419                let mut i = 0;
420                while i < bytes_needed {
421                    val |= (self.storage[start_byte + i].reverse_bits() as usize) << (i * 8);
422                    i += 1;
423                }
424            } else {
425                let mut i = 0;
426                while i < bytes_needed {
427                    val |= (self.storage[start_byte + i] as usize) << (i * 8);
428                    i += 1;
429                }
430            }
431            val >>= bit_shift;
432            if (BIT_WIDTH as u32) < usize::BITS {
433                val &= (1usize << BIT_WIDTH) - 1;
434            }
435            if cfg!(target_endian = "big") {
436                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
437            }
438            val as u64
439        } else {
440            let mut val = 0u64;
441            if cfg!(target_endian = "big") {
442                let mut i = 0;
443                while i < bytes_needed {
444                    val |= (self.storage[start_byte + i].reverse_bits() as u64) << (i * 8);
445                    i += 1;
446                }
447            } else {
448                let mut i = 0;
449                while i < bytes_needed {
450                    val |= (self.storage[start_byte + i] as u64) << (i * 8);
451                    i += 1;
452                }
453            }
454            val >>= bit_shift;
455            if BIT_WIDTH < 64 {
456                val &= (1u64 << BIT_WIDTH) - 1;
457            }
458            if cfg!(target_endian = "big") {
459                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
460            }
461            val
462        }
463    }
464    #[doc = " Set a field using const generics for compile-time optimization."]
465    #[doc = " Uses native word size operations when the field fits in usize."]
466    #[inline]
467    pub fn set_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(&mut self, val: u64) {
468        debug_assert!(BIT_WIDTH <= 64);
469        debug_assert!(BIT_OFFSET / 8 < N);
470        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
471        if BIT_WIDTH == 0 {
472            return;
473        }
474        let start_byte = BIT_OFFSET / 8;
475        let bit_shift = BIT_OFFSET % 8;
476        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
477        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
478            let mut val = val as usize;
479            if (BIT_WIDTH as u32) < usize::BITS {
480                val &= (1usize << BIT_WIDTH) - 1;
481            }
482            if cfg!(target_endian = "big") {
483                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
484            }
485            val <<= bit_shift;
486            let field_mask = if BIT_WIDTH as usize + bit_shift >= usize::BITS as usize {
487                !0usize << bit_shift
488            } else {
489                ((1usize << BIT_WIDTH) - 1) << bit_shift
490            };
491            let mut i = 0;
492            while i < bytes_needed {
493                let byte_val = (val >> (i * 8)) as u8;
494                let byte_mask = (field_mask >> (i * 8)) as u8;
495                if cfg!(target_endian = "big") {
496                    let byte = self.storage[start_byte + i].reverse_bits();
497                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
498                    self.storage[start_byte + i] = new_byte.reverse_bits();
499                } else {
500                    self.storage[start_byte + i] =
501                        (self.storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
502                }
503                i += 1;
504            }
505        } else {
506            let mut val = val;
507            if BIT_WIDTH < 64 {
508                val &= (1u64 << BIT_WIDTH) - 1;
509            }
510            if cfg!(target_endian = "big") {
511                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
512            }
513            val <<= bit_shift;
514            let field_mask = if BIT_WIDTH as usize + bit_shift >= 64 {
515                !0u64 << bit_shift
516            } else {
517                ((1u64 << BIT_WIDTH) - 1) << bit_shift
518            };
519            let mut i = 0;
520            while i < bytes_needed {
521                let byte_val = (val >> (i * 8)) as u8;
522                let byte_mask = (field_mask >> (i * 8)) as u8;
523                if cfg!(target_endian = "big") {
524                    let byte = self.storage[start_byte + i].reverse_bits();
525                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
526                    self.storage[start_byte + i] = new_byte.reverse_bits();
527                } else {
528                    self.storage[start_byte + i] =
529                        (self.storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
530                }
531                i += 1;
532            }
533        }
534    }
535    #[doc = " Raw pointer get using const generics for compile-time optimization."]
536    #[doc = " Uses native word size operations when the field fits in usize."]
537    #[inline]
538    pub const unsafe fn raw_get_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(
539        this: *const Self,
540    ) -> u64 {
541        debug_assert!(BIT_WIDTH <= 64);
542        debug_assert!(BIT_OFFSET / 8 < N);
543        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
544        if BIT_WIDTH == 0 {
545            return 0;
546        }
547        let start_byte = BIT_OFFSET / 8;
548        let bit_shift = BIT_OFFSET % 8;
549        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
550        let storage_ptr = unsafe { core::ptr::addr_of!((*this).storage) as *const u8 };
551        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
552            let mut val = 0usize;
553            if cfg!(target_endian = "big") {
554                let mut i = 0;
555                while i < bytes_needed {
556                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
557                    val |= (byte.reverse_bits() as usize) << (i * 8);
558                    i += 1;
559                }
560            } else {
561                let mut i = 0;
562                while i < bytes_needed {
563                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
564                    val |= (byte as usize) << (i * 8);
565                    i += 1;
566                }
567            }
568            val >>= bit_shift;
569            if (BIT_WIDTH as u32) < usize::BITS {
570                val &= (1usize << BIT_WIDTH) - 1;
571            }
572            if cfg!(target_endian = "big") {
573                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
574            }
575            val as u64
576        } else {
577            let mut val = 0u64;
578            if cfg!(target_endian = "big") {
579                let mut i = 0;
580                while i < bytes_needed {
581                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
582                    val |= (byte.reverse_bits() as u64) << (i * 8);
583                    i += 1;
584                }
585            } else {
586                let mut i = 0;
587                while i < bytes_needed {
588                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
589                    val |= (byte as u64) << (i * 8);
590                    i += 1;
591                }
592            }
593            val >>= bit_shift;
594            if BIT_WIDTH < 64 {
595                val &= (1u64 << BIT_WIDTH) - 1;
596            }
597            if cfg!(target_endian = "big") {
598                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
599            }
600            val
601        }
602    }
603    #[doc = " Raw pointer set using const generics for compile-time optimization."]
604    #[doc = " Uses native word size operations when the field fits in usize."]
605    #[inline]
606    pub unsafe fn raw_set_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(
607        this: *mut Self,
608        val: u64,
609    ) {
610        debug_assert!(BIT_WIDTH <= 64);
611        debug_assert!(BIT_OFFSET / 8 < N);
612        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
613        if BIT_WIDTH == 0 {
614            return;
615        }
616        let start_byte = BIT_OFFSET / 8;
617        let bit_shift = BIT_OFFSET % 8;
618        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
619        let storage_ptr = this.cast::<[u8; N]>().cast::<u8>();
620        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
621            let mut val = val as usize;
622            if (BIT_WIDTH as u32) < usize::BITS {
623                val &= (1usize << BIT_WIDTH) - 1;
624            }
625            if cfg!(target_endian = "big") {
626                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
627            }
628            val <<= bit_shift;
629            let field_mask = if BIT_WIDTH as usize + bit_shift >= usize::BITS as usize {
630                !0usize << bit_shift
631            } else {
632                ((1usize << BIT_WIDTH) - 1) << bit_shift
633            };
634            let mut i = 0;
635            while i < bytes_needed {
636                let byte_val = (val >> (i * 8)) as u8;
637                let byte_mask = (field_mask >> (i * 8)) as u8;
638                let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
639                if cfg!(target_endian = "big") {
640                    let byte = unsafe { (*byte_ptr).reverse_bits() };
641                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
642                    unsafe { *byte_ptr = new_byte.reverse_bits() };
643                } else {
644                    unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
645                }
646                i += 1;
647            }
648        } else {
649            let mut val = val;
650            if BIT_WIDTH < 64 {
651                val &= (1u64 << BIT_WIDTH) - 1;
652            }
653            if cfg!(target_endian = "big") {
654                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
655            }
656            val <<= bit_shift;
657            let field_mask = if BIT_WIDTH as usize + bit_shift >= 64 {
658                !0u64 << bit_shift
659            } else {
660                ((1u64 << BIT_WIDTH) - 1) << bit_shift
661            };
662            let mut i = 0;
663            while i < bytes_needed {
664                let byte_val = (val >> (i * 8)) as u8;
665                let byte_mask = (field_mask >> (i * 8)) as u8;
666                let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
667                if cfg!(target_endian = "big") {
668                    let byte = unsafe { (*byte_ptr).reverse_bits() };
669                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
670                    unsafe { *byte_ptr = new_byte.reverse_bits() };
671                } else {
672                    unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
673                }
674                i += 1;
675            }
676        }
677    }
678}
679#[derive(PartialEq, Eq, Copy, Clone, Debug, Hash)]
680#[repr(C, align(8))]
681#[derive(FromBytes, Immutable, KnownLayout)]
682pub struct __BindgenOpaqueArray8<T>(pub T);
683impl<T: Copy + Default, const N: usize> Default for __BindgenOpaqueArray8<[T; N]> {
684    fn default() -> Self {
685        Self([<T as Default>::default(); N])
686    }
687}
688#[repr(transparent)]
689#[derive(Clone, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
690pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]);
691impl<T> __IncompleteArrayField<T> {
692    #[inline]
693    pub const fn new() -> Self {
694        __IncompleteArrayField(::std::marker::PhantomData, [])
695    }
696    #[inline]
697    pub fn as_ptr(&self) -> *const T {
698        self as *const _ as *const T
699    }
700    #[inline]
701    pub fn as_mut_ptr(&mut self) -> *mut T {
702        self as *mut _ as *mut T
703    }
704    #[inline]
705    pub unsafe fn as_slice(&self, len: usize) -> &[T] {
706        unsafe { ::std::slice::from_raw_parts(self.as_ptr(), len) }
707    }
708    #[inline]
709    pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
710        unsafe { ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) }
711    }
712}
713impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> {
714    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
715        fmt.write_str("__IncompleteArrayField")
716    }
717}
718#[repr(transparent)]
719#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
720pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>);
721impl<T> __BindgenUnionField<T> {
722    #[inline]
723    pub const fn new() -> Self {
724        __BindgenUnionField(::std::marker::PhantomData)
725    }
726    #[inline]
727    pub const unsafe fn as_ref(&self) -> &T {
728        unsafe { ::std::mem::transmute(self) }
729    }
730    #[inline]
731    pub const unsafe fn as_mut(&mut self) -> &mut T {
732        unsafe { ::std::mem::transmute(self) }
733    }
734}
735impl<T> ::std::default::Default for __BindgenUnionField<T> {
736    #[inline]
737    fn default() -> Self {
738        Self::new()
739    }
740}
741impl<T> ::std::clone::Clone for __BindgenUnionField<T> {
742    #[inline]
743    fn clone(&self) -> Self {
744        *self
745    }
746}
747impl<T> ::std::marker::Copy for __BindgenUnionField<T> {}
748impl<T> ::std::fmt::Debug for __BindgenUnionField<T> {
749    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
750        fmt.write_str("__BindgenUnionField")
751    }
752}
753impl<T> ::std::hash::Hash for __BindgenUnionField<T> {
754    fn hash<H: ::std::hash::Hasher>(&self, _state: &mut H) {}
755}
756impl<T> ::std::cmp::PartialEq for __BindgenUnionField<T> {
757    fn eq(&self, _other: &__BindgenUnionField<T>) -> bool {
758        true
759    }
760}
761impl<T> ::std::cmp::Eq for __BindgenUnionField<T> {}
762pub const __BITS_PER_LONG: u32 = 64;
763pub const __BITS_PER_LONG_LONG: u32 = 64;
764pub const _K_SS_MAXSIZE: u32 = 128;
765pub const SOCK_SNDBUF_LOCK: u32 = 1;
766pub const SOCK_RCVBUF_LOCK: u32 = 2;
767pub const SOCK_BUF_LOCK_MASK: u32 = 3;
768pub const SOCK_TXREHASH_DEFAULT: u32 = 255;
769pub const SOCK_TXREHASH_DISABLED: u32 = 0;
770pub const SOCK_TXREHASH_ENABLED: u32 = 1;
771pub const AF_UNSPEC: u32 = 0;
772pub const AF_INET: u32 = 2;
773pub const AF_INET6: u32 = 10;
774pub const AF_QIPCRTR: u32 = 42;
775pub const __FD_SETSIZE: u32 = 1024;
776pub const _KERNEL_NSIG: u32 = 32;
777pub const SIGHUP: u32 = 1;
778pub const SIGINT: u32 = 2;
779pub const SIGQUIT: u32 = 3;
780pub const SIGILL: u32 = 4;
781pub const SIGTRAP: u32 = 5;
782pub const SIGABRT: u32 = 6;
783pub const SIGIOT: u32 = 6;
784pub const SIGBUS: u32 = 7;
785pub const SIGFPE: u32 = 8;
786pub const SIGKILL: u32 = 9;
787pub const SIGUSR1: u32 = 10;
788pub const SIGSEGV: u32 = 11;
789pub const SIGUSR2: u32 = 12;
790pub const SIGPIPE: u32 = 13;
791pub const SIGALRM: u32 = 14;
792pub const SIGTERM: u32 = 15;
793pub const SIGSTKFLT: u32 = 16;
794pub const SIGCHLD: u32 = 17;
795pub const SIGCONT: u32 = 18;
796pub const SIGSTOP: u32 = 19;
797pub const SIGTSTP: u32 = 20;
798pub const SIGTTIN: u32 = 21;
799pub const SIGTTOU: u32 = 22;
800pub const SIGURG: u32 = 23;
801pub const SIGXCPU: u32 = 24;
802pub const SIGXFSZ: u32 = 25;
803pub const SIGVTALRM: u32 = 26;
804pub const SIGPROF: u32 = 27;
805pub const SIGWINCH: u32 = 28;
806pub const SIGIO: u32 = 29;
807pub const SIGPOLL: u32 = 29;
808pub const SIGPWR: u32 = 30;
809pub const SIGSYS: u32 = 31;
810pub const SIGUNUSED: u32 = 31;
811pub const __SIGRTMIN: u32 = 32;
812pub const SA_RESTORER: u32 = 67108864;
813pub const MINSIGSTKSZ: u32 = 2048;
814pub const SIGSTKSZ: u32 = 8192;
815pub const SA_NOCLDSTOP: u32 = 1;
816pub const SA_NOCLDWAIT: u32 = 2;
817pub const SA_SIGINFO: u32 = 4;
818pub const SA_UNSUPPORTED: u32 = 1024;
819pub const SA_EXPOSE_TAGBITS: u32 = 2048;
820pub const SA_ONSTACK: u32 = 134217728;
821pub const SA_RESTART: u32 = 268435456;
822pub const SA_NODEFER: u32 = 1073741824;
823pub const SA_RESETHAND: u32 = 2147483648;
824pub const SA_NOMASK: u32 = 1073741824;
825pub const SA_ONESHOT: u32 = 2147483648;
826pub const SIG_BLOCK: u32 = 0;
827pub const SIG_UNBLOCK: u32 = 1;
828pub const SIG_SETMASK: u32 = 2;
829pub const _IOC_NRBITS: u32 = 8;
830pub const _IOC_TYPEBITS: u32 = 8;
831pub const _IOC_SIZEBITS: u32 = 14;
832pub const _IOC_DIRBITS: u32 = 2;
833pub const _IOC_NRMASK: u32 = 255;
834pub const _IOC_TYPEMASK: u32 = 255;
835pub const _IOC_SIZEMASK: u32 = 16383;
836pub const _IOC_DIRMASK: u32 = 3;
837pub const _IOC_NRSHIFT: u32 = 0;
838pub const _IOC_TYPESHIFT: u32 = 8;
839pub const _IOC_SIZESHIFT: u32 = 16;
840pub const _IOC_DIRSHIFT: u32 = 30;
841pub const _IOC_NONE: u32 = 0;
842pub const _IOC_WRITE: u32 = 1;
843pub const _IOC_READ: u32 = 2;
844pub const IOC_IN: u32 = 1073741824;
845pub const IOC_OUT: u32 = 2147483648;
846pub const IOC_INOUT: u32 = 3221225472;
847pub const IOCSIZE_MASK: u32 = 1073676288;
848pub const IOCSIZE_SHIFT: u32 = 16;
849pub const TCGETS: u32 = 21505;
850pub const TCSETS: u32 = 21506;
851pub const TCSETSW: u32 = 21507;
852pub const TCSETSF: u32 = 21508;
853pub const TCGETA: u32 = 21509;
854pub const TCSETA: u32 = 21510;
855pub const TCSETAW: u32 = 21511;
856pub const TCSETAF: u32 = 21512;
857pub const TCSBRK: u32 = 21513;
858pub const TCXONC: u32 = 21514;
859pub const TCFLSH: u32 = 21515;
860pub const TIOCEXCL: u32 = 21516;
861pub const TIOCNXCL: u32 = 21517;
862pub const TIOCSCTTY: u32 = 21518;
863pub const TIOCGPGRP: u32 = 21519;
864pub const TIOCSPGRP: u32 = 21520;
865pub const TIOCOUTQ: u32 = 21521;
866pub const TIOCSTI: u32 = 21522;
867pub const TIOCGWINSZ: u32 = 21523;
868pub const TIOCSWINSZ: u32 = 21524;
869pub const TIOCMGET: u32 = 21525;
870pub const TIOCMBIS: u32 = 21526;
871pub const TIOCMBIC: u32 = 21527;
872pub const TIOCMSET: u32 = 21528;
873pub const TIOCGSOFTCAR: u32 = 21529;
874pub const TIOCSSOFTCAR: u32 = 21530;
875pub const FIONREAD: u32 = 21531;
876pub const TIOCINQ: u32 = 21531;
877pub const TIOCLINUX: u32 = 21532;
878pub const TIOCCONS: u32 = 21533;
879pub const TIOCGSERIAL: u32 = 21534;
880pub const TIOCSSERIAL: u32 = 21535;
881pub const TIOCPKT: u32 = 21536;
882pub const FIONBIO: u32 = 21537;
883pub const TIOCNOTTY: u32 = 21538;
884pub const TIOCSETD: u32 = 21539;
885pub const TIOCGETD: u32 = 21540;
886pub const TCSBRKP: u32 = 21541;
887pub const TIOCSBRK: u32 = 21543;
888pub const TIOCCBRK: u32 = 21544;
889pub const TIOCGSID: u32 = 21545;
890pub const TIOCGRS485: u32 = 21550;
891pub const TIOCSRS485: u32 = 21551;
892pub const TCGETX: u32 = 21554;
893pub const TCSETX: u32 = 21555;
894pub const TCSETXF: u32 = 21556;
895pub const TCSETXW: u32 = 21557;
896pub const TIOCVHANGUP: u32 = 21559;
897pub const FIONCLEX: u32 = 21584;
898pub const FIOCLEX: u32 = 21585;
899pub const FIOASYNC: u32 = 21586;
900pub const TIOCSERCONFIG: u32 = 21587;
901pub const TIOCSERGWILD: u32 = 21588;
902pub const TIOCSERSWILD: u32 = 21589;
903pub const TIOCGLCKTRMIOS: u32 = 21590;
904pub const TIOCSLCKTRMIOS: u32 = 21591;
905pub const TIOCSERGSTRUCT: u32 = 21592;
906pub const TIOCSERGETLSR: u32 = 21593;
907pub const TIOCSERGETMULTI: u32 = 21594;
908pub const TIOCSERSETMULTI: u32 = 21595;
909pub const TIOCMIWAIT: u32 = 21596;
910pub const TIOCGICOUNT: u32 = 21597;
911pub const FIOQSIZE: u32 = 21600;
912pub const TIOCPKT_DATA: u32 = 0;
913pub const TIOCPKT_FLUSHREAD: u32 = 1;
914pub const TIOCPKT_FLUSHWRITE: u32 = 2;
915pub const TIOCPKT_STOP: u32 = 4;
916pub const TIOCPKT_START: u32 = 8;
917pub const TIOCPKT_NOSTOP: u32 = 16;
918pub const TIOCPKT_DOSTOP: u32 = 32;
919pub const TIOCPKT_IOCTL: u32 = 64;
920pub const TIOCSER_TEMT: u32 = 1;
921pub const POLLIN: u32 = 1;
922pub const POLLPRI: u32 = 2;
923pub const POLLOUT: u32 = 4;
924pub const POLLERR: u32 = 8;
925pub const POLLHUP: u32 = 16;
926pub const POLLNVAL: u32 = 32;
927pub const POLLRDNORM: u32 = 64;
928pub const POLLRDBAND: u32 = 128;
929pub const POLLWRNORM: u32 = 256;
930pub const POLLWRBAND: u32 = 512;
931pub const POLLMSG: u32 = 1024;
932pub const POLLREMOVE: u32 = 4096;
933pub const POLLRDHUP: u32 = 8192;
934pub const FP_XSTATE_MAGIC1: u32 = 1179670611;
935pub const FP_XSTATE_MAGIC2: u32 = 1179670597;
936pub const X86_FXSR_MAGIC: u32 = 0;
937pub const FIOSETOWN: u32 = 35073;
938pub const SIOCSPGRP: u32 = 35074;
939pub const FIOGETOWN: u32 = 35075;
940pub const SIOCGPGRP: u32 = 35076;
941pub const SIOCATMARK: u32 = 35077;
942pub const SIOCGSTAMP_OLD: u32 = 35078;
943pub const SIOCGSTAMPNS_OLD: u32 = 35079;
944pub const SOL_SOCKET: u32 = 1;
945pub const SO_DEBUG: u32 = 1;
946pub const SO_REUSEADDR: u32 = 2;
947pub const SO_TYPE: u32 = 3;
948pub const SO_ERROR: u32 = 4;
949pub const SO_DONTROUTE: u32 = 5;
950pub const SO_BROADCAST: u32 = 6;
951pub const SO_SNDBUF: u32 = 7;
952pub const SO_RCVBUF: u32 = 8;
953pub const SO_SNDBUFFORCE: u32 = 32;
954pub const SO_RCVBUFFORCE: u32 = 33;
955pub const SO_KEEPALIVE: u32 = 9;
956pub const SO_OOBINLINE: u32 = 10;
957pub const SO_NO_CHECK: u32 = 11;
958pub const SO_PRIORITY: u32 = 12;
959pub const SO_LINGER: u32 = 13;
960pub const SO_BSDCOMPAT: u32 = 14;
961pub const SO_REUSEPORT: u32 = 15;
962pub const SO_PASSCRED: u32 = 16;
963pub const SO_PEERCRED: u32 = 17;
964pub const SO_RCVLOWAT: u32 = 18;
965pub const SO_SNDLOWAT: u32 = 19;
966pub const SO_RCVTIMEO_OLD: u32 = 20;
967pub const SO_SNDTIMEO_OLD: u32 = 21;
968pub const SO_SECURITY_AUTHENTICATION: u32 = 22;
969pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23;
970pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24;
971pub const SO_BINDTODEVICE: u32 = 25;
972pub const SO_ATTACH_FILTER: u32 = 26;
973pub const SO_DETACH_FILTER: u32 = 27;
974pub const SO_GET_FILTER: u32 = 26;
975pub const SO_PEERNAME: u32 = 28;
976pub const SO_ACCEPTCONN: u32 = 30;
977pub const SO_PEERSEC: u32 = 31;
978pub const SO_PASSSEC: u32 = 34;
979pub const SO_MARK: u32 = 36;
980pub const SO_PROTOCOL: u32 = 38;
981pub const SO_DOMAIN: u32 = 39;
982pub const SO_RXQ_OVFL: u32 = 40;
983pub const SO_WIFI_STATUS: u32 = 41;
984pub const SCM_WIFI_STATUS: u32 = 41;
985pub const SO_PEEK_OFF: u32 = 42;
986pub const SO_NOFCS: u32 = 43;
987pub const SO_LOCK_FILTER: u32 = 44;
988pub const SO_SELECT_ERR_QUEUE: u32 = 45;
989pub const SO_BUSY_POLL: u32 = 46;
990pub const SO_MAX_PACING_RATE: u32 = 47;
991pub const SO_BPF_EXTENSIONS: u32 = 48;
992pub const SO_INCOMING_CPU: u32 = 49;
993pub const SO_ATTACH_BPF: u32 = 50;
994pub const SO_DETACH_BPF: u32 = 27;
995pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51;
996pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52;
997pub const SO_CNX_ADVICE: u32 = 53;
998pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54;
999pub const SO_MEMINFO: u32 = 55;
1000pub const SO_INCOMING_NAPI_ID: u32 = 56;
1001pub const SO_COOKIE: u32 = 57;
1002pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58;
1003pub const SO_PEERGROUPS: u32 = 59;
1004pub const SO_ZEROCOPY: u32 = 60;
1005pub const SO_TXTIME: u32 = 61;
1006pub const SCM_TXTIME: u32 = 61;
1007pub const SO_BINDTOIFINDEX: u32 = 62;
1008pub const SO_TIMESTAMP_OLD: u32 = 29;
1009pub const SO_TIMESTAMPNS_OLD: u32 = 35;
1010pub const SO_TIMESTAMPING_OLD: u32 = 37;
1011pub const SO_TIMESTAMP_NEW: u32 = 63;
1012pub const SO_TIMESTAMPNS_NEW: u32 = 64;
1013pub const SO_TIMESTAMPING_NEW: u32 = 65;
1014pub const SO_RCVTIMEO_NEW: u32 = 66;
1015pub const SO_SNDTIMEO_NEW: u32 = 67;
1016pub const SO_DETACH_REUSEPORT_BPF: u32 = 68;
1017pub const SO_PREFER_BUSY_POLL: u32 = 69;
1018pub const SO_BUSY_POLL_BUDGET: u32 = 70;
1019pub const SO_NETNS_COOKIE: u32 = 71;
1020pub const SO_BUF_LOCK: u32 = 72;
1021pub const SO_RESERVE_MEM: u32 = 73;
1022pub const SO_TXREHASH: u32 = 74;
1023pub const SO_RCVMARK: u32 = 75;
1024pub const SO_PASSPIDFD: u32 = 76;
1025pub const SO_PEERPIDFD: u32 = 77;
1026pub const SO_DEVMEM_LINEAR: u32 = 78;
1027pub const SCM_DEVMEM_LINEAR: u32 = 78;
1028pub const SO_DEVMEM_DMABUF: u32 = 79;
1029pub const SCM_DEVMEM_DMABUF: u32 = 79;
1030pub const SO_DEVMEM_DONTNEED: u32 = 80;
1031pub const SO_TIMESTAMP: u32 = 29;
1032pub const SO_TIMESTAMPNS: u32 = 35;
1033pub const SO_TIMESTAMPING: u32 = 37;
1034pub const SO_RCVTIMEO: u32 = 20;
1035pub const SO_SNDTIMEO: u32 = 21;
1036pub const SCM_TIMESTAMP: u32 = 29;
1037pub const SCM_TIMESTAMPNS: u32 = 35;
1038pub const SCM_TIMESTAMPING: u32 = 37;
1039pub const STAT_HAVE_NSEC: u32 = 1;
1040pub const NR_OPEN: u32 = 1024;
1041pub const NGROUPS_MAX: u32 = 65536;
1042pub const ARG_MAX: u32 = 131072;
1043pub const LINK_MAX: u32 = 127;
1044pub const MAX_CANON: u32 = 255;
1045pub const MAX_INPUT: u32 = 255;
1046pub const NAME_MAX: u32 = 255;
1047pub const PATH_MAX: u32 = 4096;
1048pub const PIPE_BUF: u32 = 4096;
1049pub const XATTR_NAME_MAX: u32 = 255;
1050pub const XATTR_SIZE_MAX: u32 = 65536;
1051pub const XATTR_LIST_MAX: u32 = 65536;
1052pub const RTSIG_MAX: u32 = 32;
1053pub const FSCRYPT_POLICY_FLAGS_PAD_4: u32 = 0;
1054pub const FSCRYPT_POLICY_FLAGS_PAD_8: u32 = 1;
1055pub const FSCRYPT_POLICY_FLAGS_PAD_16: u32 = 2;
1056pub const FSCRYPT_POLICY_FLAGS_PAD_32: u32 = 3;
1057pub const FSCRYPT_POLICY_FLAGS_PAD_MASK: u32 = 3;
1058pub const FSCRYPT_POLICY_FLAG_DIRECT_KEY: u32 = 4;
1059pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64: u32 = 8;
1060pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32: u32 = 16;
1061pub const FSCRYPT_MODE_AES_256_XTS: u32 = 1;
1062pub const FSCRYPT_MODE_AES_256_CTS: u32 = 4;
1063pub const FSCRYPT_MODE_AES_128_CBC: u32 = 5;
1064pub const FSCRYPT_MODE_AES_128_CTS: u32 = 6;
1065pub const FSCRYPT_MODE_SM4_XTS: u32 = 7;
1066pub const FSCRYPT_MODE_SM4_CTS: u32 = 8;
1067pub const FSCRYPT_MODE_ADIANTUM: u32 = 9;
1068pub const FSCRYPT_MODE_AES_256_HCTR2: u32 = 10;
1069pub const FSCRYPT_POLICY_V1: u32 = 0;
1070pub const FSCRYPT_KEY_DESCRIPTOR_SIZE: u32 = 8;
1071pub const FSCRYPT_KEY_DESC_PREFIX: &'static std::ffi::CStr = c"fscrypt:";
1072pub const FSCRYPT_KEY_DESC_PREFIX_SIZE: u32 = 8;
1073pub const FSCRYPT_MAX_KEY_SIZE: u32 = 64;
1074pub const FSCRYPT_POLICY_V2: u32 = 2;
1075pub const FSCRYPT_KEY_IDENTIFIER_SIZE: u32 = 16;
1076pub const FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR: u32 = 1;
1077pub const FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER: u32 = 2;
1078pub const __FSCRYPT_ADD_KEY_FLAG_HW_WRAPPED: u32 = 1;
1079pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY: u32 = 1;
1080pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS: u32 = 2;
1081pub const FSCRYPT_KEY_STATUS_ABSENT: u32 = 1;
1082pub const FSCRYPT_KEY_STATUS_PRESENT: u32 = 2;
1083pub const FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED: u32 = 3;
1084pub const FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF: u32 = 1;
1085pub const FS_KEY_DESCRIPTOR_SIZE: u32 = 8;
1086pub const FS_POLICY_FLAGS_PAD_4: u32 = 0;
1087pub const FS_POLICY_FLAGS_PAD_8: u32 = 1;
1088pub const FS_POLICY_FLAGS_PAD_16: u32 = 2;
1089pub const FS_POLICY_FLAGS_PAD_32: u32 = 3;
1090pub const FS_POLICY_FLAGS_PAD_MASK: u32 = 3;
1091pub const FS_POLICY_FLAG_DIRECT_KEY: u32 = 4;
1092pub const FS_POLICY_FLAGS_VALID: u32 = 7;
1093pub const FS_ENCRYPTION_MODE_INVALID: u32 = 0;
1094pub const FS_ENCRYPTION_MODE_AES_256_XTS: u32 = 1;
1095pub const FS_ENCRYPTION_MODE_AES_256_GCM: u32 = 2;
1096pub const FS_ENCRYPTION_MODE_AES_256_CBC: u32 = 3;
1097pub const FS_ENCRYPTION_MODE_AES_256_CTS: u32 = 4;
1098pub const FS_ENCRYPTION_MODE_AES_128_CBC: u32 = 5;
1099pub const FS_ENCRYPTION_MODE_AES_128_CTS: u32 = 6;
1100pub const FS_ENCRYPTION_MODE_ADIANTUM: u32 = 9;
1101pub const FS_KEY_DESC_PREFIX: &'static std::ffi::CStr = c"fscrypt:";
1102pub const FS_KEY_DESC_PREFIX_SIZE: u32 = 8;
1103pub const FS_MAX_KEY_SIZE: u32 = 64;
1104pub const MS_RDONLY: u32 = 1;
1105pub const MS_NOSUID: u32 = 2;
1106pub const MS_NODEV: u32 = 4;
1107pub const MS_NOEXEC: u32 = 8;
1108pub const MS_SYNCHRONOUS: u32 = 16;
1109pub const MS_REMOUNT: u32 = 32;
1110pub const MS_MANDLOCK: u32 = 64;
1111pub const MS_DIRSYNC: u32 = 128;
1112pub const MS_NOSYMFOLLOW: u32 = 256;
1113pub const MS_NOATIME: u32 = 1024;
1114pub const MS_NODIRATIME: u32 = 2048;
1115pub const MS_BIND: u32 = 4096;
1116pub const MS_MOVE: u32 = 8192;
1117pub const MS_REC: u32 = 16384;
1118pub const MS_VERBOSE: u32 = 32768;
1119pub const MS_SILENT: u32 = 32768;
1120pub const MS_POSIXACL: u32 = 65536;
1121pub const MS_UNBINDABLE: u32 = 131072;
1122pub const MS_PRIVATE: u32 = 262144;
1123pub const MS_SLAVE: u32 = 524288;
1124pub const MS_SHARED: u32 = 1048576;
1125pub const MS_RELATIME: u32 = 2097152;
1126pub const MS_KERNMOUNT: u32 = 4194304;
1127pub const MS_I_VERSION: u32 = 8388608;
1128pub const MS_STRICTATIME: u32 = 16777216;
1129pub const MS_LAZYTIME: u32 = 33554432;
1130pub const MS_SUBMOUNT: u32 = 67108864;
1131pub const MS_NOREMOTELOCK: u32 = 134217728;
1132pub const MS_NOSEC: u32 = 268435456;
1133pub const MS_BORN: u32 = 536870912;
1134pub const MS_ACTIVE: u32 = 1073741824;
1135pub const MS_NOUSER: u32 = 2147483648;
1136pub const MS_RMT_MASK: u32 = 41943121;
1137pub const MS_MGC_VAL: u32 = 3236757504;
1138pub const MS_MGC_MSK: u32 = 4294901760;
1139pub const OPEN_TREE_CLONE: u32 = 1;
1140pub const MOVE_MOUNT_F_SYMLINKS: u32 = 1;
1141pub const MOVE_MOUNT_F_AUTOMOUNTS: u32 = 2;
1142pub const MOVE_MOUNT_F_EMPTY_PATH: u32 = 4;
1143pub const MOVE_MOUNT_T_SYMLINKS: u32 = 16;
1144pub const MOVE_MOUNT_T_AUTOMOUNTS: u32 = 32;
1145pub const MOVE_MOUNT_T_EMPTY_PATH: u32 = 64;
1146pub const MOVE_MOUNT_SET_GROUP: u32 = 256;
1147pub const MOVE_MOUNT_BENEATH: u32 = 512;
1148pub const MOVE_MOUNT__MASK: u32 = 887;
1149pub const FSOPEN_CLOEXEC: u32 = 1;
1150pub const FSPICK_CLOEXEC: u32 = 1;
1151pub const FSPICK_SYMLINK_NOFOLLOW: u32 = 2;
1152pub const FSPICK_NO_AUTOMOUNT: u32 = 4;
1153pub const FSPICK_EMPTY_PATH: u32 = 8;
1154pub const FSMOUNT_CLOEXEC: u32 = 1;
1155pub const MOUNT_ATTR_RDONLY: u32 = 1;
1156pub const MOUNT_ATTR_NOSUID: u32 = 2;
1157pub const MOUNT_ATTR_NODEV: u32 = 4;
1158pub const MOUNT_ATTR_NOEXEC: u32 = 8;
1159pub const MOUNT_ATTR__ATIME: u32 = 112;
1160pub const MOUNT_ATTR_RELATIME: u32 = 0;
1161pub const MOUNT_ATTR_NOATIME: u32 = 16;
1162pub const MOUNT_ATTR_STRICTATIME: u32 = 32;
1163pub const MOUNT_ATTR_NODIRATIME: u32 = 128;
1164pub const MOUNT_ATTR_IDMAP: u32 = 1048576;
1165pub const MOUNT_ATTR_NOSYMFOLLOW: u32 = 2097152;
1166pub const MOUNT_ATTR_SIZE_VER0: u32 = 32;
1167pub const MNT_ID_REQ_SIZE_VER0: u32 = 24;
1168pub const MNT_ID_REQ_SIZE_VER1: u32 = 32;
1169pub const STATMOUNT_SB_BASIC: u32 = 1;
1170pub const STATMOUNT_MNT_BASIC: u32 = 2;
1171pub const STATMOUNT_PROPAGATE_FROM: u32 = 4;
1172pub const STATMOUNT_MNT_ROOT: u32 = 8;
1173pub const STATMOUNT_MNT_POINT: u32 = 16;
1174pub const STATMOUNT_FS_TYPE: u32 = 32;
1175pub const STATMOUNT_MNT_NS_ID: u32 = 64;
1176pub const STATMOUNT_MNT_OPTS: u32 = 128;
1177pub const LSMT_ROOT: i32 = -1;
1178pub const LISTMOUNT_REVERSE: u32 = 1;
1179pub const INR_OPEN_CUR: u32 = 1024;
1180pub const INR_OPEN_MAX: u32 = 4096;
1181pub const BLOCK_SIZE_BITS: u32 = 10;
1182pub const BLOCK_SIZE: u32 = 1024;
1183pub const SEEK_SET: u32 = 0;
1184pub const SEEK_CUR: u32 = 1;
1185pub const SEEK_END: u32 = 2;
1186pub const SEEK_DATA: u32 = 3;
1187pub const SEEK_HOLE: u32 = 4;
1188pub const SEEK_MAX: u32 = 4;
1189pub const RENAME_NOREPLACE: u32 = 1;
1190pub const RENAME_EXCHANGE: u32 = 2;
1191pub const RENAME_WHITEOUT: u32 = 4;
1192pub const FILE_DEDUPE_RANGE_SAME: u32 = 0;
1193pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1;
1194pub const NR_FILE: u32 = 8192;
1195pub const FS_XFLAG_REALTIME: u32 = 1;
1196pub const FS_XFLAG_PREALLOC: u32 = 2;
1197pub const FS_XFLAG_IMMUTABLE: u32 = 8;
1198pub const FS_XFLAG_APPEND: u32 = 16;
1199pub const FS_XFLAG_SYNC: u32 = 32;
1200pub const FS_XFLAG_NOATIME: u32 = 64;
1201pub const FS_XFLAG_NODUMP: u32 = 128;
1202pub const FS_XFLAG_RTINHERIT: u32 = 256;
1203pub const FS_XFLAG_PROJINHERIT: u32 = 512;
1204pub const FS_XFLAG_NOSYMLINKS: u32 = 1024;
1205pub const FS_XFLAG_EXTSIZE: u32 = 2048;
1206pub const FS_XFLAG_EXTSZINHERIT: u32 = 4096;
1207pub const FS_XFLAG_NODEFRAG: u32 = 8192;
1208pub const FS_XFLAG_FILESTREAM: u32 = 16384;
1209pub const FS_XFLAG_DAX: u32 = 32768;
1210pub const FS_XFLAG_COWEXTSIZE: u32 = 65536;
1211pub const FS_XFLAG_HASATTR: u32 = 2147483648;
1212pub const BMAP_IOCTL: u32 = 1;
1213pub const FSLABEL_MAX: u32 = 256;
1214pub const FS_SECRM_FL: u32 = 1;
1215pub const FS_UNRM_FL: u32 = 2;
1216pub const FS_COMPR_FL: u32 = 4;
1217pub const FS_SYNC_FL: u32 = 8;
1218pub const FS_IMMUTABLE_FL: u32 = 16;
1219pub const FS_APPEND_FL: u32 = 32;
1220pub const FS_NODUMP_FL: u32 = 64;
1221pub const FS_NOATIME_FL: u32 = 128;
1222pub const FS_DIRTY_FL: u32 = 256;
1223pub const FS_COMPRBLK_FL: u32 = 512;
1224pub const FS_NOCOMP_FL: u32 = 1024;
1225pub const FS_ENCRYPT_FL: u32 = 2048;
1226pub const FS_BTREE_FL: u32 = 4096;
1227pub const FS_INDEX_FL: u32 = 4096;
1228pub const FS_IMAGIC_FL: u32 = 8192;
1229pub const FS_JOURNAL_DATA_FL: u32 = 16384;
1230pub const FS_NOTAIL_FL: u32 = 32768;
1231pub const FS_DIRSYNC_FL: u32 = 65536;
1232pub const FS_TOPDIR_FL: u32 = 131072;
1233pub const FS_HUGE_FILE_FL: u32 = 262144;
1234pub const FS_EXTENT_FL: u32 = 524288;
1235pub const FS_VERITY_FL: u32 = 1048576;
1236pub const FS_EA_INODE_FL: u32 = 2097152;
1237pub const FS_EOFBLOCKS_FL: u32 = 4194304;
1238pub const FS_NOCOW_FL: u32 = 8388608;
1239pub const FS_DAX_FL: u32 = 33554432;
1240pub const FS_INLINE_DATA_FL: u32 = 268435456;
1241pub const FS_PROJINHERIT_FL: u32 = 536870912;
1242pub const FS_CASEFOLD_FL: u32 = 1073741824;
1243pub const FS_RESERVED_FL: u32 = 2147483648;
1244pub const FS_FL_USER_VISIBLE: u32 = 253951;
1245pub const FS_FL_USER_MODIFIABLE: u32 = 229631;
1246pub const SYNC_FILE_RANGE_WAIT_BEFORE: u32 = 1;
1247pub const SYNC_FILE_RANGE_WRITE: u32 = 2;
1248pub const SYNC_FILE_RANGE_WAIT_AFTER: u32 = 4;
1249pub const SYNC_FILE_RANGE_WRITE_AND_WAIT: u32 = 7;
1250pub const PROCFS_IOCTL_MAGIC: u8 = 102u8;
1251pub const PAGE_IS_WPALLOWED: u32 = 1;
1252pub const PAGE_IS_WRITTEN: u32 = 2;
1253pub const PAGE_IS_FILE: u32 = 4;
1254pub const PAGE_IS_PRESENT: u32 = 8;
1255pub const PAGE_IS_SWAPPED: u32 = 16;
1256pub const PAGE_IS_PFNZERO: u32 = 32;
1257pub const PAGE_IS_HUGE: u32 = 64;
1258pub const PAGE_IS_SOFT_DIRTY: u32 = 128;
1259pub const PM_SCAN_WP_MATCHING: u32 = 1;
1260pub const PM_SCAN_CHECK_WPASYNC: u32 = 2;
1261pub const __LITTLE_ENDIAN: u32 = 1234;
1262pub const IOCB_FLAG_RESFD: u32 = 1;
1263pub const IOCB_FLAG_IOPRIO: u32 = 2;
1264pub const B_TYPE_LARGE: u32 = 133;
1265pub const BINDER_CURRENT_PROTOCOL_VERSION: u32 = 8;
1266pub const BINDERFS_MAX_NAME: u32 = 255;
1267pub const ASHMEM_NAME_LEN: u32 = 256;
1268pub const ASHMEM_NAME_DEF: &'static std::ffi::CStr = c"dev/ashmem";
1269pub const ASHMEM_NOT_PURGED: u32 = 0;
1270pub const ASHMEM_WAS_PURGED: u32 = 1;
1271pub const ASHMEM_IS_UNPINNED: u32 = 0;
1272pub const ASHMEM_IS_PINNED: u32 = 1;
1273pub const __ASHMEMIOC: u32 = 119;
1274pub const EM_NONE: u32 = 0;
1275pub const EM_M32: u32 = 1;
1276pub const EM_SPARC: u32 = 2;
1277pub const EM_386: u32 = 3;
1278pub const EM_68K: u32 = 4;
1279pub const EM_88K: u32 = 5;
1280pub const EM_486: u32 = 6;
1281pub const EM_860: u32 = 7;
1282pub const EM_MIPS: u32 = 8;
1283pub const EM_MIPS_RS3_LE: u32 = 10;
1284pub const EM_MIPS_RS4_BE: u32 = 10;
1285pub const EM_PARISC: u32 = 15;
1286pub const EM_SPARC32PLUS: u32 = 18;
1287pub const EM_PPC: u32 = 20;
1288pub const EM_PPC64: u32 = 21;
1289pub const EM_SPU: u32 = 23;
1290pub const EM_ARM: u32 = 40;
1291pub const EM_SH: u32 = 42;
1292pub const EM_SPARCV9: u32 = 43;
1293pub const EM_H8_300: u32 = 46;
1294pub const EM_IA_64: u32 = 50;
1295pub const EM_X86_64: u32 = 62;
1296pub const EM_S390: u32 = 22;
1297pub const EM_CRIS: u32 = 76;
1298pub const EM_M32R: u32 = 88;
1299pub const EM_MN10300: u32 = 89;
1300pub const EM_OPENRISC: u32 = 92;
1301pub const EM_ARCOMPACT: u32 = 93;
1302pub const EM_XTENSA: u32 = 94;
1303pub const EM_BLACKFIN: u32 = 106;
1304pub const EM_UNICORE: u32 = 110;
1305pub const EM_ALTERA_NIOS2: u32 = 113;
1306pub const EM_TI_C6000: u32 = 140;
1307pub const EM_HEXAGON: u32 = 164;
1308pub const EM_NDS32: u32 = 167;
1309pub const EM_AARCH64: u32 = 183;
1310pub const EM_TILEPRO: u32 = 188;
1311pub const EM_MICROBLAZE: u32 = 189;
1312pub const EM_TILEGX: u32 = 191;
1313pub const EM_ARCV2: u32 = 195;
1314pub const EM_RISCV: u32 = 243;
1315pub const EM_BPF: u32 = 247;
1316pub const EM_CSKY: u32 = 252;
1317pub const EM_LOONGARCH: u32 = 258;
1318pub const EM_FRV: u32 = 21569;
1319pub const EM_ALPHA: u32 = 36902;
1320pub const EM_CYGNUS_M32R: u32 = 36929;
1321pub const EM_S390_OLD: u32 = 41872;
1322pub const EM_CYGNUS_MN10300: u32 = 48879;
1323pub const AUDIT_GET: u32 = 1000;
1324pub const AUDIT_SET: u32 = 1001;
1325pub const AUDIT_LIST: u32 = 1002;
1326pub const AUDIT_ADD: u32 = 1003;
1327pub const AUDIT_DEL: u32 = 1004;
1328pub const AUDIT_USER: u32 = 1005;
1329pub const AUDIT_LOGIN: u32 = 1006;
1330pub const AUDIT_WATCH_INS: u32 = 1007;
1331pub const AUDIT_WATCH_REM: u32 = 1008;
1332pub const AUDIT_WATCH_LIST: u32 = 1009;
1333pub const AUDIT_SIGNAL_INFO: u32 = 1010;
1334pub const AUDIT_ADD_RULE: u32 = 1011;
1335pub const AUDIT_DEL_RULE: u32 = 1012;
1336pub const AUDIT_LIST_RULES: u32 = 1013;
1337pub const AUDIT_TRIM: u32 = 1014;
1338pub const AUDIT_MAKE_EQUIV: u32 = 1015;
1339pub const AUDIT_TTY_GET: u32 = 1016;
1340pub const AUDIT_TTY_SET: u32 = 1017;
1341pub const AUDIT_SET_FEATURE: u32 = 1018;
1342pub const AUDIT_GET_FEATURE: u32 = 1019;
1343pub const AUDIT_FIRST_USER_MSG: u32 = 1100;
1344pub const AUDIT_USER_AVC: u32 = 1107;
1345pub const AUDIT_USER_TTY: u32 = 1124;
1346pub const AUDIT_LAST_USER_MSG: u32 = 1199;
1347pub const AUDIT_FIRST_USER_MSG2: u32 = 2100;
1348pub const AUDIT_LAST_USER_MSG2: u32 = 2999;
1349pub const AUDIT_DAEMON_START: u32 = 1200;
1350pub const AUDIT_DAEMON_END: u32 = 1201;
1351pub const AUDIT_DAEMON_ABORT: u32 = 1202;
1352pub const AUDIT_DAEMON_CONFIG: u32 = 1203;
1353pub const AUDIT_SYSCALL: u32 = 1300;
1354pub const AUDIT_PATH: u32 = 1302;
1355pub const AUDIT_IPC: u32 = 1303;
1356pub const AUDIT_SOCKETCALL: u32 = 1304;
1357pub const AUDIT_CONFIG_CHANGE: u32 = 1305;
1358pub const AUDIT_SOCKADDR: u32 = 1306;
1359pub const AUDIT_CWD: u32 = 1307;
1360pub const AUDIT_EXECVE: u32 = 1309;
1361pub const AUDIT_IPC_SET_PERM: u32 = 1311;
1362pub const AUDIT_MQ_OPEN: u32 = 1312;
1363pub const AUDIT_MQ_SENDRECV: u32 = 1313;
1364pub const AUDIT_MQ_NOTIFY: u32 = 1314;
1365pub const AUDIT_MQ_GETSETATTR: u32 = 1315;
1366pub const AUDIT_KERNEL_OTHER: u32 = 1316;
1367pub const AUDIT_FD_PAIR: u32 = 1317;
1368pub const AUDIT_OBJ_PID: u32 = 1318;
1369pub const AUDIT_TTY: u32 = 1319;
1370pub const AUDIT_EOE: u32 = 1320;
1371pub const AUDIT_BPRM_FCAPS: u32 = 1321;
1372pub const AUDIT_CAPSET: u32 = 1322;
1373pub const AUDIT_MMAP: u32 = 1323;
1374pub const AUDIT_NETFILTER_PKT: u32 = 1324;
1375pub const AUDIT_NETFILTER_CFG: u32 = 1325;
1376pub const AUDIT_SECCOMP: u32 = 1326;
1377pub const AUDIT_PROCTITLE: u32 = 1327;
1378pub const AUDIT_FEATURE_CHANGE: u32 = 1328;
1379pub const AUDIT_REPLACE: u32 = 1329;
1380pub const AUDIT_KERN_MODULE: u32 = 1330;
1381pub const AUDIT_FANOTIFY: u32 = 1331;
1382pub const AUDIT_TIME_INJOFFSET: u32 = 1332;
1383pub const AUDIT_TIME_ADJNTPVAL: u32 = 1333;
1384pub const AUDIT_BPF: u32 = 1334;
1385pub const AUDIT_EVENT_LISTENER: u32 = 1335;
1386pub const AUDIT_URINGOP: u32 = 1336;
1387pub const AUDIT_OPENAT2: u32 = 1337;
1388pub const AUDIT_DM_CTRL: u32 = 1338;
1389pub const AUDIT_DM_EVENT: u32 = 1339;
1390pub const AUDIT_AVC: u32 = 1400;
1391pub const AUDIT_SELINUX_ERR: u32 = 1401;
1392pub const AUDIT_AVC_PATH: u32 = 1402;
1393pub const AUDIT_MAC_POLICY_LOAD: u32 = 1403;
1394pub const AUDIT_MAC_STATUS: u32 = 1404;
1395pub const AUDIT_MAC_CONFIG_CHANGE: u32 = 1405;
1396pub const AUDIT_MAC_UNLBL_ALLOW: u32 = 1406;
1397pub const AUDIT_MAC_CIPSOV4_ADD: u32 = 1407;
1398pub const AUDIT_MAC_CIPSOV4_DEL: u32 = 1408;
1399pub const AUDIT_MAC_MAP_ADD: u32 = 1409;
1400pub const AUDIT_MAC_MAP_DEL: u32 = 1410;
1401pub const AUDIT_MAC_IPSEC_ADDSA: u32 = 1411;
1402pub const AUDIT_MAC_IPSEC_DELSA: u32 = 1412;
1403pub const AUDIT_MAC_IPSEC_ADDSPD: u32 = 1413;
1404pub const AUDIT_MAC_IPSEC_DELSPD: u32 = 1414;
1405pub const AUDIT_MAC_IPSEC_EVENT: u32 = 1415;
1406pub const AUDIT_MAC_UNLBL_STCADD: u32 = 1416;
1407pub const AUDIT_MAC_UNLBL_STCDEL: u32 = 1417;
1408pub const AUDIT_MAC_CALIPSO_ADD: u32 = 1418;
1409pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419;
1410pub const AUDIT_IPE_ACCESS: u32 = 1420;
1411pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421;
1412pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422;
1413pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700;
1414pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799;
1415pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700;
1416pub const AUDIT_ANOM_ABEND: u32 = 1701;
1417pub const AUDIT_ANOM_LINK: u32 = 1702;
1418pub const AUDIT_ANOM_CREAT: u32 = 1703;
1419pub const AUDIT_INTEGRITY_DATA: u32 = 1800;
1420pub const AUDIT_INTEGRITY_METADATA: u32 = 1801;
1421pub const AUDIT_INTEGRITY_STATUS: u32 = 1802;
1422pub const AUDIT_INTEGRITY_HASH: u32 = 1803;
1423pub const AUDIT_INTEGRITY_PCR: u32 = 1804;
1424pub const AUDIT_INTEGRITY_RULE: u32 = 1805;
1425pub const AUDIT_INTEGRITY_EVM_XATTR: u32 = 1806;
1426pub const AUDIT_INTEGRITY_POLICY_RULE: u32 = 1807;
1427pub const AUDIT_KERNEL: u32 = 2000;
1428pub const AUDIT_FILTER_USER: u32 = 0;
1429pub const AUDIT_FILTER_TASK: u32 = 1;
1430pub const AUDIT_FILTER_ENTRY: u32 = 2;
1431pub const AUDIT_FILTER_WATCH: u32 = 3;
1432pub const AUDIT_FILTER_EXIT: u32 = 4;
1433pub const AUDIT_FILTER_EXCLUDE: u32 = 5;
1434pub const AUDIT_FILTER_TYPE: u32 = 5;
1435pub const AUDIT_FILTER_FS: u32 = 6;
1436pub const AUDIT_FILTER_URING_EXIT: u32 = 7;
1437pub const AUDIT_NR_FILTERS: u32 = 8;
1438pub const AUDIT_FILTER_PREPEND: u32 = 16;
1439pub const AUDIT_NEVER: u32 = 0;
1440pub const AUDIT_POSSIBLE: u32 = 1;
1441pub const AUDIT_ALWAYS: u32 = 2;
1442pub const AUDIT_MAX_FIELDS: u32 = 64;
1443pub const AUDIT_MAX_KEY_LEN: u32 = 256;
1444pub const AUDIT_BITMASK_SIZE: u32 = 64;
1445pub const AUDIT_SYSCALL_CLASSES: u32 = 16;
1446pub const AUDIT_CLASS_DIR_WRITE: u32 = 0;
1447pub const AUDIT_CLASS_DIR_WRITE_32: u32 = 1;
1448pub const AUDIT_CLASS_CHATTR: u32 = 2;
1449pub const AUDIT_CLASS_CHATTR_32: u32 = 3;
1450pub const AUDIT_CLASS_READ: u32 = 4;
1451pub const AUDIT_CLASS_READ_32: u32 = 5;
1452pub const AUDIT_CLASS_WRITE: u32 = 6;
1453pub const AUDIT_CLASS_WRITE_32: u32 = 7;
1454pub const AUDIT_CLASS_SIGNAL: u32 = 8;
1455pub const AUDIT_CLASS_SIGNAL_32: u32 = 9;
1456pub const AUDIT_UNUSED_BITS: u32 = 134216704;
1457pub const AUDIT_COMPARE_UID_TO_OBJ_UID: u32 = 1;
1458pub const AUDIT_COMPARE_GID_TO_OBJ_GID: u32 = 2;
1459pub const AUDIT_COMPARE_EUID_TO_OBJ_UID: u32 = 3;
1460pub const AUDIT_COMPARE_EGID_TO_OBJ_GID: u32 = 4;
1461pub const AUDIT_COMPARE_AUID_TO_OBJ_UID: u32 = 5;
1462pub const AUDIT_COMPARE_SUID_TO_OBJ_UID: u32 = 6;
1463pub const AUDIT_COMPARE_SGID_TO_OBJ_GID: u32 = 7;
1464pub const AUDIT_COMPARE_FSUID_TO_OBJ_UID: u32 = 8;
1465pub const AUDIT_COMPARE_FSGID_TO_OBJ_GID: u32 = 9;
1466pub const AUDIT_COMPARE_UID_TO_AUID: u32 = 10;
1467pub const AUDIT_COMPARE_UID_TO_EUID: u32 = 11;
1468pub const AUDIT_COMPARE_UID_TO_FSUID: u32 = 12;
1469pub const AUDIT_COMPARE_UID_TO_SUID: u32 = 13;
1470pub const AUDIT_COMPARE_AUID_TO_FSUID: u32 = 14;
1471pub const AUDIT_COMPARE_AUID_TO_SUID: u32 = 15;
1472pub const AUDIT_COMPARE_AUID_TO_EUID: u32 = 16;
1473pub const AUDIT_COMPARE_EUID_TO_SUID: u32 = 17;
1474pub const AUDIT_COMPARE_EUID_TO_FSUID: u32 = 18;
1475pub const AUDIT_COMPARE_SUID_TO_FSUID: u32 = 19;
1476pub const AUDIT_COMPARE_GID_TO_EGID: u32 = 20;
1477pub const AUDIT_COMPARE_GID_TO_FSGID: u32 = 21;
1478pub const AUDIT_COMPARE_GID_TO_SGID: u32 = 22;
1479pub const AUDIT_COMPARE_EGID_TO_FSGID: u32 = 23;
1480pub const AUDIT_COMPARE_EGID_TO_SGID: u32 = 24;
1481pub const AUDIT_COMPARE_SGID_TO_FSGID: u32 = 25;
1482pub const AUDIT_MAX_FIELD_COMPARE: u32 = 25;
1483pub const AUDIT_PID: u32 = 0;
1484pub const AUDIT_UID: u32 = 1;
1485pub const AUDIT_EUID: u32 = 2;
1486pub const AUDIT_SUID: u32 = 3;
1487pub const AUDIT_FSUID: u32 = 4;
1488pub const AUDIT_GID: u32 = 5;
1489pub const AUDIT_EGID: u32 = 6;
1490pub const AUDIT_SGID: u32 = 7;
1491pub const AUDIT_FSGID: u32 = 8;
1492pub const AUDIT_LOGINUID: u32 = 9;
1493pub const AUDIT_PERS: u32 = 10;
1494pub const AUDIT_ARCH: u32 = 11;
1495pub const AUDIT_MSGTYPE: u32 = 12;
1496pub const AUDIT_SUBJ_USER: u32 = 13;
1497pub const AUDIT_SUBJ_ROLE: u32 = 14;
1498pub const AUDIT_SUBJ_TYPE: u32 = 15;
1499pub const AUDIT_SUBJ_SEN: u32 = 16;
1500pub const AUDIT_SUBJ_CLR: u32 = 17;
1501pub const AUDIT_PPID: u32 = 18;
1502pub const AUDIT_OBJ_USER: u32 = 19;
1503pub const AUDIT_OBJ_ROLE: u32 = 20;
1504pub const AUDIT_OBJ_TYPE: u32 = 21;
1505pub const AUDIT_OBJ_LEV_LOW: u32 = 22;
1506pub const AUDIT_OBJ_LEV_HIGH: u32 = 23;
1507pub const AUDIT_LOGINUID_SET: u32 = 24;
1508pub const AUDIT_SESSIONID: u32 = 25;
1509pub const AUDIT_FSTYPE: u32 = 26;
1510pub const AUDIT_DEVMAJOR: u32 = 100;
1511pub const AUDIT_DEVMINOR: u32 = 101;
1512pub const AUDIT_INODE: u32 = 102;
1513pub const AUDIT_EXIT: u32 = 103;
1514pub const AUDIT_SUCCESS: u32 = 104;
1515pub const AUDIT_WATCH: u32 = 105;
1516pub const AUDIT_PERM: u32 = 106;
1517pub const AUDIT_DIR: u32 = 107;
1518pub const AUDIT_FILETYPE: u32 = 108;
1519pub const AUDIT_OBJ_UID: u32 = 109;
1520pub const AUDIT_OBJ_GID: u32 = 110;
1521pub const AUDIT_FIELD_COMPARE: u32 = 111;
1522pub const AUDIT_EXE: u32 = 112;
1523pub const AUDIT_SADDR_FAM: u32 = 113;
1524pub const AUDIT_ARG0: u32 = 200;
1525pub const AUDIT_ARG1: u32 = 201;
1526pub const AUDIT_ARG2: u32 = 202;
1527pub const AUDIT_ARG3: u32 = 203;
1528pub const AUDIT_FILTERKEY: u32 = 210;
1529pub const AUDIT_NEGATE: u32 = 2147483648;
1530pub const AUDIT_BIT_MASK: u32 = 134217728;
1531pub const AUDIT_LESS_THAN: u32 = 268435456;
1532pub const AUDIT_GREATER_THAN: u32 = 536870912;
1533pub const AUDIT_NOT_EQUAL: u32 = 805306368;
1534pub const AUDIT_EQUAL: u32 = 1073741824;
1535pub const AUDIT_BIT_TEST: u32 = 1207959552;
1536pub const AUDIT_LESS_THAN_OR_EQUAL: u32 = 1342177280;
1537pub const AUDIT_GREATER_THAN_OR_EQUAL: u32 = 1610612736;
1538pub const AUDIT_OPERATORS: u32 = 2013265920;
1539pub const AUDIT_STATUS_ENABLED: u32 = 1;
1540pub const AUDIT_STATUS_FAILURE: u32 = 2;
1541pub const AUDIT_STATUS_PID: u32 = 4;
1542pub const AUDIT_STATUS_RATE_LIMIT: u32 = 8;
1543pub const AUDIT_STATUS_BACKLOG_LIMIT: u32 = 16;
1544pub const AUDIT_STATUS_BACKLOG_WAIT_TIME: u32 = 32;
1545pub const AUDIT_STATUS_LOST: u32 = 64;
1546pub const AUDIT_STATUS_BACKLOG_WAIT_TIME_ACTUAL: u32 = 128;
1547pub const AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT: u32 = 1;
1548pub const AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME: u32 = 2;
1549pub const AUDIT_FEATURE_BITMAP_EXECUTABLE_PATH: u32 = 4;
1550pub const AUDIT_FEATURE_BITMAP_EXCLUDE_EXTEND: u32 = 8;
1551pub const AUDIT_FEATURE_BITMAP_SESSIONID_FILTER: u32 = 16;
1552pub const AUDIT_FEATURE_BITMAP_LOST_RESET: u32 = 32;
1553pub const AUDIT_FEATURE_BITMAP_FILTER_FS: u32 = 64;
1554pub const AUDIT_FEATURE_BITMAP_ALL: u32 = 127;
1555pub const AUDIT_VERSION_LATEST: u32 = 127;
1556pub const AUDIT_VERSION_BACKLOG_LIMIT: u32 = 1;
1557pub const AUDIT_VERSION_BACKLOG_WAIT_TIME: u32 = 2;
1558pub const AUDIT_FAIL_SILENT: u32 = 0;
1559pub const AUDIT_FAIL_PRINTK: u32 = 1;
1560pub const AUDIT_FAIL_PANIC: u32 = 2;
1561pub const __AUDIT_ARCH_CONVENTION_MASK: u32 = 805306368;
1562pub const __AUDIT_ARCH_CONVENTION_MIPS64_N32: u32 = 536870912;
1563pub const __AUDIT_ARCH_64BIT: u32 = 2147483648;
1564pub const __AUDIT_ARCH_LE: u32 = 1073741824;
1565pub const AUDIT_ARCH_AARCH64: u32 = 3221225655;
1566pub const AUDIT_ARCH_ALPHA: u32 = 3221262374;
1567pub const AUDIT_ARCH_ARCOMPACT: u32 = 1073741917;
1568pub const AUDIT_ARCH_ARCOMPACTBE: u32 = 93;
1569pub const AUDIT_ARCH_ARCV2: u32 = 1073742019;
1570pub const AUDIT_ARCH_ARCV2BE: u32 = 195;
1571pub const AUDIT_ARCH_ARM: u32 = 1073741864;
1572pub const AUDIT_ARCH_ARMEB: u32 = 40;
1573pub const AUDIT_ARCH_C6X: u32 = 1073741964;
1574pub const AUDIT_ARCH_C6XBE: u32 = 140;
1575pub const AUDIT_ARCH_CRIS: u32 = 1073741900;
1576pub const AUDIT_ARCH_CSKY: u32 = 1073742076;
1577pub const AUDIT_ARCH_FRV: u32 = 21569;
1578pub const AUDIT_ARCH_H8300: u32 = 46;
1579pub const AUDIT_ARCH_HEXAGON: u32 = 164;
1580pub const AUDIT_ARCH_I386: u32 = 1073741827;
1581pub const AUDIT_ARCH_IA64: u32 = 3221225522;
1582pub const AUDIT_ARCH_M32R: u32 = 88;
1583pub const AUDIT_ARCH_M68K: u32 = 4;
1584pub const AUDIT_ARCH_MICROBLAZE: u32 = 189;
1585pub const AUDIT_ARCH_MIPS: u32 = 8;
1586pub const AUDIT_ARCH_MIPSEL: u32 = 1073741832;
1587pub const AUDIT_ARCH_MIPS64: u32 = 2147483656;
1588pub const AUDIT_ARCH_MIPS64N32: u32 = 2684354568;
1589pub const AUDIT_ARCH_MIPSEL64: u32 = 3221225480;
1590pub const AUDIT_ARCH_MIPSEL64N32: u32 = 3758096392;
1591pub const AUDIT_ARCH_NDS32: u32 = 1073741991;
1592pub const AUDIT_ARCH_NDS32BE: u32 = 167;
1593pub const AUDIT_ARCH_NIOS2: u32 = 1073741937;
1594pub const AUDIT_ARCH_OPENRISC: u32 = 92;
1595pub const AUDIT_ARCH_PARISC: u32 = 15;
1596pub const AUDIT_ARCH_PARISC64: u32 = 2147483663;
1597pub const AUDIT_ARCH_PPC: u32 = 20;
1598pub const AUDIT_ARCH_PPC64: u32 = 2147483669;
1599pub const AUDIT_ARCH_PPC64LE: u32 = 3221225493;
1600pub const AUDIT_ARCH_RISCV32: u32 = 1073742067;
1601pub const AUDIT_ARCH_RISCV64: u32 = 3221225715;
1602pub const AUDIT_ARCH_S390: u32 = 22;
1603pub const AUDIT_ARCH_S390X: u32 = 2147483670;
1604pub const AUDIT_ARCH_SH: u32 = 42;
1605pub const AUDIT_ARCH_SHEL: u32 = 1073741866;
1606pub const AUDIT_ARCH_SH64: u32 = 2147483690;
1607pub const AUDIT_ARCH_SHEL64: u32 = 3221225514;
1608pub const AUDIT_ARCH_SPARC: u32 = 2;
1609pub const AUDIT_ARCH_SPARC64: u32 = 2147483691;
1610pub const AUDIT_ARCH_TILEGX: u32 = 3221225663;
1611pub const AUDIT_ARCH_TILEGX32: u32 = 1073742015;
1612pub const AUDIT_ARCH_TILEPRO: u32 = 1073742012;
1613pub const AUDIT_ARCH_UNICORE: u32 = 1073741934;
1614pub const AUDIT_ARCH_X86_64: u32 = 3221225534;
1615pub const AUDIT_ARCH_XTENSA: u32 = 94;
1616pub const AUDIT_ARCH_LOONGARCH32: u32 = 1073742082;
1617pub const AUDIT_ARCH_LOONGARCH64: u32 = 3221225730;
1618pub const AUDIT_PERM_EXEC: u32 = 1;
1619pub const AUDIT_PERM_WRITE: u32 = 2;
1620pub const AUDIT_PERM_READ: u32 = 4;
1621pub const AUDIT_PERM_ATTR: u32 = 8;
1622pub const AUDIT_MESSAGE_TEXT_MAX: u32 = 8560;
1623pub const AUDIT_FEATURE_VERSION: u32 = 1;
1624pub const AUDIT_FEATURE_ONLY_UNSET_LOGINUID: u32 = 0;
1625pub const AUDIT_FEATURE_LOGINUID_IMMUTABLE: u32 = 1;
1626pub const AUDIT_LAST_FEATURE: u32 = 1;
1627pub const AT_SYSINFO_EHDR: u32 = 33;
1628pub const AT_VECTOR_SIZE_ARCH: u32 = 3;
1629pub const AT_NULL: u32 = 0;
1630pub const AT_IGNORE: u32 = 1;
1631pub const AT_EXECFD: u32 = 2;
1632pub const AT_PHDR: u32 = 3;
1633pub const AT_PHENT: u32 = 4;
1634pub const AT_PHNUM: u32 = 5;
1635pub const AT_PAGESZ: u32 = 6;
1636pub const AT_BASE: u32 = 7;
1637pub const AT_FLAGS: u32 = 8;
1638pub const AT_ENTRY: u32 = 9;
1639pub const AT_NOTELF: u32 = 10;
1640pub const AT_UID: u32 = 11;
1641pub const AT_EUID: u32 = 12;
1642pub const AT_GID: u32 = 13;
1643pub const AT_EGID: u32 = 14;
1644pub const AT_PLATFORM: u32 = 15;
1645pub const AT_HWCAP: u32 = 16;
1646pub const AT_CLKTCK: u32 = 17;
1647pub const AT_SECURE: u32 = 23;
1648pub const AT_BASE_PLATFORM: u32 = 24;
1649pub const AT_RANDOM: u32 = 25;
1650pub const AT_HWCAP2: u32 = 26;
1651pub const AT_RSEQ_FEATURE_SIZE: u32 = 27;
1652pub const AT_RSEQ_ALIGN: u32 = 28;
1653pub const AT_HWCAP3: u32 = 29;
1654pub const AT_HWCAP4: u32 = 30;
1655pub const AT_EXECFN: u32 = 31;
1656pub const AT_MINSIGSTKSZ: u32 = 51;
1657pub const _LINUX_CAPABILITY_VERSION_1: u32 = 429392688;
1658pub const _LINUX_CAPABILITY_U32S_1: u32 = 1;
1659pub const _LINUX_CAPABILITY_VERSION_2: u32 = 537333798;
1660pub const _LINUX_CAPABILITY_U32S_2: u32 = 2;
1661pub const _LINUX_CAPABILITY_VERSION_3: u32 = 537396514;
1662pub const _LINUX_CAPABILITY_U32S_3: u32 = 2;
1663pub const VFS_CAP_REVISION_MASK: u32 = 4278190080;
1664pub const VFS_CAP_REVISION_SHIFT: u32 = 24;
1665pub const VFS_CAP_FLAGS_MASK: i64 = -4278190081;
1666pub const VFS_CAP_FLAGS_EFFECTIVE: u32 = 1;
1667pub const VFS_CAP_REVISION_1: u32 = 16777216;
1668pub const VFS_CAP_U32_1: u32 = 1;
1669pub const VFS_CAP_REVISION_2: u32 = 33554432;
1670pub const VFS_CAP_U32_2: u32 = 2;
1671pub const VFS_CAP_REVISION_3: u32 = 50331648;
1672pub const VFS_CAP_U32_3: u32 = 2;
1673pub const VFS_CAP_U32: u32 = 2;
1674pub const VFS_CAP_REVISION: u32 = 50331648;
1675pub const _LINUX_CAPABILITY_VERSION: u32 = 429392688;
1676pub const _LINUX_CAPABILITY_U32S: u32 = 1;
1677pub const CAP_CHOWN: u32 = 0;
1678pub const CAP_DAC_OVERRIDE: u32 = 1;
1679pub const CAP_DAC_READ_SEARCH: u32 = 2;
1680pub const CAP_FOWNER: u32 = 3;
1681pub const CAP_FSETID: u32 = 4;
1682pub const CAP_KILL: u32 = 5;
1683pub const CAP_SETGID: u32 = 6;
1684pub const CAP_SETUID: u32 = 7;
1685pub const CAP_SETPCAP: u32 = 8;
1686pub const CAP_LINUX_IMMUTABLE: u32 = 9;
1687pub const CAP_NET_BIND_SERVICE: u32 = 10;
1688pub const CAP_NET_BROADCAST: u32 = 11;
1689pub const CAP_NET_ADMIN: u32 = 12;
1690pub const CAP_NET_RAW: u32 = 13;
1691pub const CAP_IPC_LOCK: u32 = 14;
1692pub const CAP_IPC_OWNER: u32 = 15;
1693pub const CAP_SYS_MODULE: u32 = 16;
1694pub const CAP_SYS_RAWIO: u32 = 17;
1695pub const CAP_SYS_CHROOT: u32 = 18;
1696pub const CAP_SYS_PTRACE: u32 = 19;
1697pub const CAP_SYS_PACCT: u32 = 20;
1698pub const CAP_SYS_ADMIN: u32 = 21;
1699pub const CAP_SYS_BOOT: u32 = 22;
1700pub const CAP_SYS_NICE: u32 = 23;
1701pub const CAP_SYS_RESOURCE: u32 = 24;
1702pub const CAP_SYS_TIME: u32 = 25;
1703pub const CAP_SYS_TTY_CONFIG: u32 = 26;
1704pub const CAP_MKNOD: u32 = 27;
1705pub const CAP_LEASE: u32 = 28;
1706pub const CAP_AUDIT_WRITE: u32 = 29;
1707pub const CAP_AUDIT_CONTROL: u32 = 30;
1708pub const CAP_SETFCAP: u32 = 31;
1709pub const CAP_MAC_OVERRIDE: u32 = 32;
1710pub const CAP_MAC_ADMIN: u32 = 33;
1711pub const CAP_SYSLOG: u32 = 34;
1712pub const CAP_WAKE_ALARM: u32 = 35;
1713pub const CAP_BLOCK_SUSPEND: u32 = 36;
1714pub const CAP_AUDIT_READ: u32 = 37;
1715pub const CAP_PERFMON: u32 = 38;
1716pub const CAP_BPF: u32 = 39;
1717pub const CAP_CHECKPOINT_RESTORE: u32 = 40;
1718pub const CAP_LAST_CAP: u32 = 40;
1719pub const CLOSE_RANGE_UNSHARE: u32 = 2;
1720pub const CLOSE_RANGE_CLOEXEC: u32 = 4;
1721pub const DM_DIR: &'static std::ffi::CStr = c"mapper";
1722pub const DM_CONTROL_NODE: &'static std::ffi::CStr = c"control";
1723pub const DM_MAX_TYPE_NAME: u32 = 16;
1724pub const DM_NAME_LEN: u32 = 128;
1725pub const DM_UUID_LEN: u32 = 129;
1726pub const DM_NAME_LIST_FLAG_HAS_UUID: u32 = 1;
1727pub const DM_NAME_LIST_FLAG_DOESNT_HAVE_UUID: u32 = 2;
1728pub const DM_IOCTL: u32 = 253;
1729pub const DM_VERSION_MAJOR: u32 = 4;
1730pub const DM_VERSION_MINOR: u32 = 48;
1731pub const DM_VERSION_PATCHLEVEL: u32 = 0;
1732pub const DM_VERSION_EXTRA: &'static std::ffi::CStr = c"-ioctl(2023-03-01)";
1733pub const DM_READONLY_FLAG: u32 = 1;
1734pub const DM_SUSPEND_FLAG: u32 = 2;
1735pub const DM_PERSISTENT_DEV_FLAG: u32 = 8;
1736pub const DM_STATUS_TABLE_FLAG: u32 = 16;
1737pub const DM_ACTIVE_PRESENT_FLAG: u32 = 32;
1738pub const DM_INACTIVE_PRESENT_FLAG: u32 = 64;
1739pub const DM_BUFFER_FULL_FLAG: u32 = 256;
1740pub const DM_SKIP_BDGET_FLAG: u32 = 512;
1741pub const DM_SKIP_LOCKFS_FLAG: u32 = 1024;
1742pub const DM_NOFLUSH_FLAG: u32 = 2048;
1743pub const DM_QUERY_INACTIVE_TABLE_FLAG: u32 = 4096;
1744pub const DM_UEVENT_GENERATED_FLAG: u32 = 8192;
1745pub const DM_UUID_FLAG: u32 = 16384;
1746pub const DM_SECURE_DATA_FLAG: u32 = 32768;
1747pub const DM_DATA_OUT_FLAG: u32 = 65536;
1748pub const DM_DEFERRED_REMOVE: u32 = 131072;
1749pub const DM_INTERNAL_SUSPEND_FLAG: u32 = 262144;
1750pub const DM_IMA_MEASUREMENT_FLAG: u32 = 524288;
1751pub const DMA_BUF_SYNC_READ: u32 = 1;
1752pub const DMA_BUF_SYNC_WRITE: u32 = 2;
1753pub const DMA_BUF_SYNC_RW: u32 = 3;
1754pub const DMA_BUF_SYNC_START: u32 = 0;
1755pub const DMA_BUF_SYNC_END: u32 = 4;
1756pub const DMA_BUF_SYNC_VALID_FLAGS_MASK: u32 = 7;
1757pub const DMA_BUF_NAME_LEN: u32 = 32;
1758pub const DMA_BUF_BASE: u8 = 98u8;
1759pub const DMA_HEAP_VALID_HEAP_FLAGS: u32 = 0;
1760pub const DMA_HEAP_IOC_MAGIC: u8 = 72u8;
1761pub const PT_NULL: u32 = 0;
1762pub const PT_LOAD: u32 = 1;
1763pub const PT_DYNAMIC: u32 = 2;
1764pub const PT_INTERP: u32 = 3;
1765pub const PT_NOTE: u32 = 4;
1766pub const PT_SHLIB: u32 = 5;
1767pub const PT_PHDR: u32 = 6;
1768pub const PT_TLS: u32 = 7;
1769pub const PT_LOOS: u32 = 1610612736;
1770pub const PT_HIOS: u32 = 1879048191;
1771pub const PT_LOPROC: u32 = 1879048192;
1772pub const PT_HIPROC: u32 = 2147483647;
1773pub const PT_GNU_EH_FRAME: u32 = 1685382480;
1774pub const PT_GNU_STACK: u32 = 1685382481;
1775pub const PT_GNU_RELRO: u32 = 1685382482;
1776pub const PT_GNU_PROPERTY: u32 = 1685382483;
1777pub const PT_AARCH64_MEMTAG_MTE: u32 = 1879048194;
1778pub const PN_XNUM: u32 = 65535;
1779pub const ET_NONE: u32 = 0;
1780pub const ET_REL: u32 = 1;
1781pub const ET_EXEC: u32 = 2;
1782pub const ET_DYN: u32 = 3;
1783pub const ET_CORE: u32 = 4;
1784pub const ET_LOPROC: u32 = 65280;
1785pub const ET_HIPROC: u32 = 65535;
1786pub const DT_NULL: u32 = 0;
1787pub const DT_NEEDED: u32 = 1;
1788pub const DT_PLTRELSZ: u32 = 2;
1789pub const DT_PLTGOT: u32 = 3;
1790pub const DT_HASH: u32 = 4;
1791pub const DT_STRTAB: u32 = 5;
1792pub const DT_SYMTAB: u32 = 6;
1793pub const DT_RELA: u32 = 7;
1794pub const DT_RELASZ: u32 = 8;
1795pub const DT_RELAENT: u32 = 9;
1796pub const DT_STRSZ: u32 = 10;
1797pub const DT_SYMENT: u32 = 11;
1798pub const DT_INIT: u32 = 12;
1799pub const DT_FINI: u32 = 13;
1800pub const DT_SONAME: u32 = 14;
1801pub const DT_RPATH: u32 = 15;
1802pub const DT_SYMBOLIC: u32 = 16;
1803pub const DT_REL: u32 = 17;
1804pub const DT_RELSZ: u32 = 18;
1805pub const DT_RELENT: u32 = 19;
1806pub const DT_PLTREL: u32 = 20;
1807pub const DT_DEBUG: u32 = 21;
1808pub const DT_TEXTREL: u32 = 22;
1809pub const DT_JMPREL: u32 = 23;
1810pub const DT_ENCODING: u32 = 32;
1811pub const OLD_DT_LOOS: u32 = 1610612736;
1812pub const DT_LOOS: u32 = 1610612749;
1813pub const DT_HIOS: u32 = 1879044096;
1814pub const DT_VALRNGLO: u32 = 1879047424;
1815pub const DT_VALRNGHI: u32 = 1879047679;
1816pub const DT_ADDRRNGLO: u32 = 1879047680;
1817pub const DT_ADDRRNGHI: u32 = 1879047935;
1818pub const DT_VERSYM: u32 = 1879048176;
1819pub const DT_RELACOUNT: u32 = 1879048185;
1820pub const DT_RELCOUNT: u32 = 1879048186;
1821pub const DT_FLAGS_1: u32 = 1879048187;
1822pub const DT_VERDEF: u32 = 1879048188;
1823pub const DT_VERDEFNUM: u32 = 1879048189;
1824pub const DT_VERNEED: u32 = 1879048190;
1825pub const DT_VERNEEDNUM: u32 = 1879048191;
1826pub const OLD_DT_HIOS: u32 = 1879048191;
1827pub const DT_LOPROC: u32 = 1879048192;
1828pub const DT_HIPROC: u32 = 2147483647;
1829pub const STB_LOCAL: u32 = 0;
1830pub const STB_GLOBAL: u32 = 1;
1831pub const STB_WEAK: u32 = 2;
1832pub const STT_NOTYPE: u32 = 0;
1833pub const STT_OBJECT: u32 = 1;
1834pub const STT_FUNC: u32 = 2;
1835pub const STT_SECTION: u32 = 3;
1836pub const STT_FILE: u32 = 4;
1837pub const STT_COMMON: u32 = 5;
1838pub const STT_TLS: u32 = 6;
1839pub const EI_NIDENT: u32 = 16;
1840pub const PF_R: u32 = 4;
1841pub const PF_W: u32 = 2;
1842pub const PF_X: u32 = 1;
1843pub const SHT_NULL: u32 = 0;
1844pub const SHT_PROGBITS: u32 = 1;
1845pub const SHT_SYMTAB: u32 = 2;
1846pub const SHT_STRTAB: u32 = 3;
1847pub const SHT_RELA: u32 = 4;
1848pub const SHT_HASH: u32 = 5;
1849pub const SHT_DYNAMIC: u32 = 6;
1850pub const SHT_NOTE: u32 = 7;
1851pub const SHT_NOBITS: u32 = 8;
1852pub const SHT_REL: u32 = 9;
1853pub const SHT_SHLIB: u32 = 10;
1854pub const SHT_DYNSYM: u32 = 11;
1855pub const SHT_NUM: u32 = 12;
1856pub const SHT_LOPROC: u32 = 1879048192;
1857pub const SHT_HIPROC: u32 = 2147483647;
1858pub const SHT_LOUSER: u32 = 2147483648;
1859pub const SHT_HIUSER: u32 = 4294967295;
1860pub const SHF_WRITE: u32 = 1;
1861pub const SHF_ALLOC: u32 = 2;
1862pub const SHF_EXECINSTR: u32 = 4;
1863pub const SHF_RELA_LIVEPATCH: u32 = 1048576;
1864pub const SHF_RO_AFTER_INIT: u32 = 2097152;
1865pub const SHF_MASKPROC: u32 = 4026531840;
1866pub const SHN_UNDEF: u32 = 0;
1867pub const SHN_LORESERVE: u32 = 65280;
1868pub const SHN_LOPROC: u32 = 65280;
1869pub const SHN_HIPROC: u32 = 65311;
1870pub const SHN_LIVEPATCH: u32 = 65312;
1871pub const SHN_ABS: u32 = 65521;
1872pub const SHN_COMMON: u32 = 65522;
1873pub const SHN_HIRESERVE: u32 = 65535;
1874pub const EI_MAG0: u32 = 0;
1875pub const EI_MAG1: u32 = 1;
1876pub const EI_MAG2: u32 = 2;
1877pub const EI_MAG3: u32 = 3;
1878pub const EI_CLASS: u32 = 4;
1879pub const EI_DATA: u32 = 5;
1880pub const EI_VERSION: u32 = 6;
1881pub const EI_OSABI: u32 = 7;
1882pub const EI_PAD: u32 = 8;
1883pub const ELFMAG0: u32 = 127;
1884pub const ELFMAG1: u8 = 69u8;
1885pub const ELFMAG2: u8 = 76u8;
1886pub const ELFMAG3: u8 = 70u8;
1887pub const ELFMAG: &'static std::ffi::CStr = c"\x7FELF";
1888pub const SELFMAG: u32 = 4;
1889pub const ELFCLASSNONE: u32 = 0;
1890pub const ELFCLASS32: u32 = 1;
1891pub const ELFCLASS64: u32 = 2;
1892pub const ELFCLASSNUM: u32 = 3;
1893pub const ELFDATANONE: u32 = 0;
1894pub const ELFDATA2LSB: u32 = 1;
1895pub const ELFDATA2MSB: u32 = 2;
1896pub const EV_NONE: u32 = 0;
1897pub const EV_CURRENT: u32 = 1;
1898pub const EV_NUM: u32 = 2;
1899pub const ELFOSABI_NONE: u32 = 0;
1900pub const ELFOSABI_LINUX: u32 = 3;
1901pub const ELF_OSABI: u32 = 0;
1902pub const NT_PRSTATUS: u32 = 1;
1903pub const NT_PRFPREG: u32 = 2;
1904pub const NT_PRPSINFO: u32 = 3;
1905pub const NT_TASKSTRUCT: u32 = 4;
1906pub const NT_AUXV: u32 = 6;
1907pub const NT_SIGINFO: u32 = 1397311305;
1908pub const NT_FILE: u32 = 1179208773;
1909pub const NT_PRXFPREG: u32 = 1189489535;
1910pub const NT_PPC_VMX: u32 = 256;
1911pub const NT_PPC_SPE: u32 = 257;
1912pub const NT_PPC_VSX: u32 = 258;
1913pub const NT_PPC_TAR: u32 = 259;
1914pub const NT_PPC_PPR: u32 = 260;
1915pub const NT_PPC_DSCR: u32 = 261;
1916pub const NT_PPC_EBB: u32 = 262;
1917pub const NT_PPC_PMU: u32 = 263;
1918pub const NT_PPC_TM_CGPR: u32 = 264;
1919pub const NT_PPC_TM_CFPR: u32 = 265;
1920pub const NT_PPC_TM_CVMX: u32 = 266;
1921pub const NT_PPC_TM_CVSX: u32 = 267;
1922pub const NT_PPC_TM_SPR: u32 = 268;
1923pub const NT_PPC_TM_CTAR: u32 = 269;
1924pub const NT_PPC_TM_CPPR: u32 = 270;
1925pub const NT_PPC_TM_CDSCR: u32 = 271;
1926pub const NT_PPC_PKEY: u32 = 272;
1927pub const NT_PPC_DEXCR: u32 = 273;
1928pub const NT_PPC_HASHKEYR: u32 = 274;
1929pub const NT_386_TLS: u32 = 512;
1930pub const NT_386_IOPERM: u32 = 513;
1931pub const NT_X86_XSTATE: u32 = 514;
1932pub const NT_X86_SHSTK: u32 = 516;
1933pub const NT_X86_XSAVE_LAYOUT: u32 = 517;
1934pub const NT_S390_HIGH_GPRS: u32 = 768;
1935pub const NT_S390_TIMER: u32 = 769;
1936pub const NT_S390_TODCMP: u32 = 770;
1937pub const NT_S390_TODPREG: u32 = 771;
1938pub const NT_S390_CTRS: u32 = 772;
1939pub const NT_S390_PREFIX: u32 = 773;
1940pub const NT_S390_LAST_BREAK: u32 = 774;
1941pub const NT_S390_SYSTEM_CALL: u32 = 775;
1942pub const NT_S390_TDB: u32 = 776;
1943pub const NT_S390_VXRS_LOW: u32 = 777;
1944pub const NT_S390_VXRS_HIGH: u32 = 778;
1945pub const NT_S390_GS_CB: u32 = 779;
1946pub const NT_S390_GS_BC: u32 = 780;
1947pub const NT_S390_RI_CB: u32 = 781;
1948pub const NT_S390_PV_CPU_DATA: u32 = 782;
1949pub const NT_ARM_VFP: u32 = 1024;
1950pub const NT_ARM_TLS: u32 = 1025;
1951pub const NT_ARM_HW_BREAK: u32 = 1026;
1952pub const NT_ARM_HW_WATCH: u32 = 1027;
1953pub const NT_ARM_SYSTEM_CALL: u32 = 1028;
1954pub const NT_ARM_SVE: u32 = 1029;
1955pub const NT_ARM_PAC_MASK: u32 = 1030;
1956pub const NT_ARM_PACA_KEYS: u32 = 1031;
1957pub const NT_ARM_PACG_KEYS: u32 = 1032;
1958pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033;
1959pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034;
1960pub const NT_ARM_SSVE: u32 = 1035;
1961pub const NT_ARM_ZA: u32 = 1036;
1962pub const NT_ARM_ZT: u32 = 1037;
1963pub const NT_ARM_FPMR: u32 = 1038;
1964pub const NT_ARM_POE: u32 = 1039;
1965pub const NT_ARC_V2: u32 = 1536;
1966pub const NT_VMCOREDD: u32 = 1792;
1967pub const NT_MIPS_DSP: u32 = 2048;
1968pub const NT_MIPS_FP_MODE: u32 = 2049;
1969pub const NT_MIPS_MSA: u32 = 2050;
1970pub const NT_RISCV_CSR: u32 = 2304;
1971pub const NT_RISCV_VECTOR: u32 = 2305;
1972pub const NT_LOONGARCH_CPUCFG: u32 = 2560;
1973pub const NT_LOONGARCH_CSR: u32 = 2561;
1974pub const NT_LOONGARCH_LSX: u32 = 2562;
1975pub const NT_LOONGARCH_LASX: u32 = 2563;
1976pub const NT_LOONGARCH_LBT: u32 = 2564;
1977pub const NT_LOONGARCH_HW_BREAK: u32 = 2565;
1978pub const NT_LOONGARCH_HW_WATCH: u32 = 2566;
1979pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5;
1980pub const GNU_PROPERTY_AARCH64_FEATURE_1_AND: u32 = 3221225472;
1981pub const GNU_PROPERTY_AARCH64_FEATURE_1_BTI: u32 = 1;
1982pub const EPERM: u32 = 1;
1983pub const ENOENT: u32 = 2;
1984pub const ESRCH: u32 = 3;
1985pub const EINTR: u32 = 4;
1986pub const EIO: u32 = 5;
1987pub const ENXIO: u32 = 6;
1988pub const E2BIG: u32 = 7;
1989pub const ENOEXEC: u32 = 8;
1990pub const EBADF: u32 = 9;
1991pub const ECHILD: u32 = 10;
1992pub const EAGAIN: u32 = 11;
1993pub const ENOMEM: u32 = 12;
1994pub const EACCES: u32 = 13;
1995pub const EFAULT: u32 = 14;
1996pub const ENOTBLK: u32 = 15;
1997pub const EBUSY: u32 = 16;
1998pub const EEXIST: u32 = 17;
1999pub const EXDEV: u32 = 18;
2000pub const ENODEV: u32 = 19;
2001pub const ENOTDIR: u32 = 20;
2002pub const EISDIR: u32 = 21;
2003pub const EINVAL: u32 = 22;
2004pub const ENFILE: u32 = 23;
2005pub const EMFILE: u32 = 24;
2006pub const ENOTTY: u32 = 25;
2007pub const ETXTBSY: u32 = 26;
2008pub const EFBIG: u32 = 27;
2009pub const ENOSPC: u32 = 28;
2010pub const ESPIPE: u32 = 29;
2011pub const EROFS: u32 = 30;
2012pub const EMLINK: u32 = 31;
2013pub const EPIPE: u32 = 32;
2014pub const EDOM: u32 = 33;
2015pub const ERANGE: u32 = 34;
2016pub const EDEADLK: u32 = 35;
2017pub const ENAMETOOLONG: u32 = 36;
2018pub const ENOLCK: u32 = 37;
2019pub const ENOSYS: u32 = 38;
2020pub const ENOTEMPTY: u32 = 39;
2021pub const ELOOP: u32 = 40;
2022pub const EWOULDBLOCK: u32 = 11;
2023pub const ENOMSG: u32 = 42;
2024pub const EIDRM: u32 = 43;
2025pub const ECHRNG: u32 = 44;
2026pub const EL2NSYNC: u32 = 45;
2027pub const EL3HLT: u32 = 46;
2028pub const EL3RST: u32 = 47;
2029pub const ELNRNG: u32 = 48;
2030pub const EUNATCH: u32 = 49;
2031pub const ENOCSI: u32 = 50;
2032pub const EL2HLT: u32 = 51;
2033pub const EBADE: u32 = 52;
2034pub const EBADR: u32 = 53;
2035pub const EXFULL: u32 = 54;
2036pub const ENOANO: u32 = 55;
2037pub const EBADRQC: u32 = 56;
2038pub const EBADSLT: u32 = 57;
2039pub const EDEADLOCK: u32 = 35;
2040pub const EBFONT: u32 = 59;
2041pub const ENOSTR: u32 = 60;
2042pub const ENODATA: u32 = 61;
2043pub const ETIME: u32 = 62;
2044pub const ENOSR: u32 = 63;
2045pub const ENONET: u32 = 64;
2046pub const ENOPKG: u32 = 65;
2047pub const EREMOTE: u32 = 66;
2048pub const ENOLINK: u32 = 67;
2049pub const EADV: u32 = 68;
2050pub const ESRMNT: u32 = 69;
2051pub const ECOMM: u32 = 70;
2052pub const EPROTO: u32 = 71;
2053pub const EMULTIHOP: u32 = 72;
2054pub const EDOTDOT: u32 = 73;
2055pub const EBADMSG: u32 = 74;
2056pub const EOVERFLOW: u32 = 75;
2057pub const ENOTUNIQ: u32 = 76;
2058pub const EBADFD: u32 = 77;
2059pub const EREMCHG: u32 = 78;
2060pub const ELIBACC: u32 = 79;
2061pub const ELIBBAD: u32 = 80;
2062pub const ELIBSCN: u32 = 81;
2063pub const ELIBMAX: u32 = 82;
2064pub const ELIBEXEC: u32 = 83;
2065pub const EILSEQ: u32 = 84;
2066pub const ERESTART: u32 = 85;
2067pub const ESTRPIPE: u32 = 86;
2068pub const EUSERS: u32 = 87;
2069pub const ENOTSOCK: u32 = 88;
2070pub const EDESTADDRREQ: u32 = 89;
2071pub const EMSGSIZE: u32 = 90;
2072pub const EPROTOTYPE: u32 = 91;
2073pub const ENOPROTOOPT: u32 = 92;
2074pub const EPROTONOSUPPORT: u32 = 93;
2075pub const ESOCKTNOSUPPORT: u32 = 94;
2076pub const EOPNOTSUPP: u32 = 95;
2077pub const EPFNOSUPPORT: u32 = 96;
2078pub const EAFNOSUPPORT: u32 = 97;
2079pub const EADDRINUSE: u32 = 98;
2080pub const EADDRNOTAVAIL: u32 = 99;
2081pub const ENETDOWN: u32 = 100;
2082pub const ENETUNREACH: u32 = 101;
2083pub const ENETRESET: u32 = 102;
2084pub const ECONNABORTED: u32 = 103;
2085pub const ECONNRESET: u32 = 104;
2086pub const ENOBUFS: u32 = 105;
2087pub const EISCONN: u32 = 106;
2088pub const ENOTCONN: u32 = 107;
2089pub const ESHUTDOWN: u32 = 108;
2090pub const ETOOMANYREFS: u32 = 109;
2091pub const ETIMEDOUT: u32 = 110;
2092pub const ECONNREFUSED: u32 = 111;
2093pub const EHOSTDOWN: u32 = 112;
2094pub const EHOSTUNREACH: u32 = 113;
2095pub const EALREADY: u32 = 114;
2096pub const EINPROGRESS: u32 = 115;
2097pub const ESTALE: u32 = 116;
2098pub const EUCLEAN: u32 = 117;
2099pub const ENOTNAM: u32 = 118;
2100pub const ENAVAIL: u32 = 119;
2101pub const EISNAM: u32 = 120;
2102pub const EREMOTEIO: u32 = 121;
2103pub const EDQUOT: u32 = 122;
2104pub const ENOMEDIUM: u32 = 123;
2105pub const EMEDIUMTYPE: u32 = 124;
2106pub const ECANCELED: u32 = 125;
2107pub const ENOKEY: u32 = 126;
2108pub const EKEYEXPIRED: u32 = 127;
2109pub const EKEYREVOKED: u32 = 128;
2110pub const EKEYREJECTED: u32 = 129;
2111pub const EOWNERDEAD: u32 = 130;
2112pub const ENOTRECOVERABLE: u32 = 131;
2113pub const ERFKILL: u32 = 132;
2114pub const EHWPOISON: u32 = 133;
2115pub const F_GETLK64: u32 = 12;
2116pub const F_SETLK64: u32 = 13;
2117pub const F_SETLKW64: u32 = 14;
2118pub const O_ACCMODE: u32 = 3;
2119pub const O_RDONLY: u32 = 0;
2120pub const O_WRONLY: u32 = 1;
2121pub const O_RDWR: u32 = 2;
2122pub const O_CREAT: u32 = 64;
2123pub const O_EXCL: u32 = 128;
2124pub const O_NOCTTY: u32 = 256;
2125pub const O_TRUNC: u32 = 512;
2126pub const O_APPEND: u32 = 1024;
2127pub const O_NONBLOCK: u32 = 2048;
2128pub const O_DSYNC: u32 = 4096;
2129pub const FASYNC: u32 = 8192;
2130pub const O_DIRECT: u32 = 16384;
2131pub const O_LARGEFILE: u32 = 32768;
2132pub const O_DIRECTORY: u32 = 65536;
2133pub const O_NOFOLLOW: u32 = 131072;
2134pub const O_NOATIME: u32 = 262144;
2135pub const O_CLOEXEC: u32 = 524288;
2136pub const __O_SYNC: u32 = 1048576;
2137pub const O_SYNC: u32 = 1052672;
2138pub const O_PATH: u32 = 2097152;
2139pub const __O_TMPFILE: u32 = 4194304;
2140pub const O_TMPFILE: u32 = 4259840;
2141pub const O_NDELAY: u32 = 2048;
2142pub const F_DUPFD: u32 = 0;
2143pub const F_GETFD: u32 = 1;
2144pub const F_SETFD: u32 = 2;
2145pub const F_GETFL: u32 = 3;
2146pub const F_SETFL: u32 = 4;
2147pub const F_GETLK: u32 = 5;
2148pub const F_SETLK: u32 = 6;
2149pub const F_SETLKW: u32 = 7;
2150pub const F_SETOWN: u32 = 8;
2151pub const F_GETOWN: u32 = 9;
2152pub const F_SETSIG: u32 = 10;
2153pub const F_GETSIG: u32 = 11;
2154pub const F_SETOWN_EX: u32 = 15;
2155pub const F_GETOWN_EX: u32 = 16;
2156pub const F_GETOWNER_UIDS: u32 = 17;
2157pub const F_OFD_GETLK: u32 = 36;
2158pub const F_OFD_SETLK: u32 = 37;
2159pub const F_OFD_SETLKW: u32 = 38;
2160pub const F_OWNER_TID: u32 = 0;
2161pub const F_OWNER_PID: u32 = 1;
2162pub const F_OWNER_PGRP: u32 = 2;
2163pub const FD_CLOEXEC: u32 = 1;
2164pub const F_RDLCK: u32 = 0;
2165pub const F_WRLCK: u32 = 1;
2166pub const F_UNLCK: u32 = 2;
2167pub const F_EXLCK: u32 = 4;
2168pub const F_SHLCK: u32 = 8;
2169pub const LOCK_SH: u32 = 1;
2170pub const LOCK_EX: u32 = 2;
2171pub const LOCK_NB: u32 = 4;
2172pub const LOCK_UN: u32 = 8;
2173pub const LOCK_MAND: u32 = 32;
2174pub const LOCK_READ: u32 = 64;
2175pub const LOCK_WRITE: u32 = 128;
2176pub const LOCK_RW: u32 = 192;
2177pub const F_LINUX_SPECIFIC_BASE: u32 = 1024;
2178pub const RESOLVE_NO_XDEV: u32 = 1;
2179pub const RESOLVE_NO_MAGICLINKS: u32 = 2;
2180pub const RESOLVE_NO_SYMLINKS: u32 = 4;
2181pub const RESOLVE_BENEATH: u32 = 8;
2182pub const RESOLVE_IN_ROOT: u32 = 16;
2183pub const RESOLVE_CACHED: u32 = 32;
2184pub const F_SETLEASE: u32 = 1024;
2185pub const F_GETLEASE: u32 = 1025;
2186pub const F_NOTIFY: u32 = 1026;
2187pub const F_DUPFD_QUERY: u32 = 1027;
2188pub const F_CREATED_QUERY: u32 = 1028;
2189pub const F_CANCELLK: u32 = 1029;
2190pub const F_DUPFD_CLOEXEC: u32 = 1030;
2191pub const F_SETPIPE_SZ: u32 = 1031;
2192pub const F_GETPIPE_SZ: u32 = 1032;
2193pub const F_ADD_SEALS: u32 = 1033;
2194pub const F_GET_SEALS: u32 = 1034;
2195pub const F_SEAL_SEAL: u32 = 1;
2196pub const F_SEAL_SHRINK: u32 = 2;
2197pub const F_SEAL_GROW: u32 = 4;
2198pub const F_SEAL_WRITE: u32 = 8;
2199pub const F_SEAL_FUTURE_WRITE: u32 = 16;
2200pub const F_SEAL_EXEC: u32 = 32;
2201pub const F_GET_RW_HINT: u32 = 1035;
2202pub const F_SET_RW_HINT: u32 = 1036;
2203pub const F_GET_FILE_RW_HINT: u32 = 1037;
2204pub const F_SET_FILE_RW_HINT: u32 = 1038;
2205pub const RWH_WRITE_LIFE_NOT_SET: u32 = 0;
2206pub const RWH_WRITE_LIFE_NONE: u32 = 1;
2207pub const RWH_WRITE_LIFE_SHORT: u32 = 2;
2208pub const RWH_WRITE_LIFE_MEDIUM: u32 = 3;
2209pub const RWH_WRITE_LIFE_LONG: u32 = 4;
2210pub const RWH_WRITE_LIFE_EXTREME: u32 = 5;
2211pub const RWF_WRITE_LIFE_NOT_SET: u32 = 0;
2212pub const DN_ACCESS: u32 = 1;
2213pub const DN_MODIFY: u32 = 2;
2214pub const DN_CREATE: u32 = 4;
2215pub const DN_DELETE: u32 = 8;
2216pub const DN_RENAME: u32 = 16;
2217pub const DN_ATTRIB: u32 = 32;
2218pub const DN_MULTISHOT: u32 = 2147483648;
2219pub const AT_FDCWD: i32 = -100;
2220pub const AT_SYMLINK_NOFOLLOW: u32 = 256;
2221pub const AT_SYMLINK_FOLLOW: u32 = 1024;
2222pub const AT_NO_AUTOMOUNT: u32 = 2048;
2223pub const AT_EMPTY_PATH: u32 = 4096;
2224pub const AT_STATX_SYNC_TYPE: u32 = 24576;
2225pub const AT_STATX_SYNC_AS_STAT: u32 = 0;
2226pub const AT_STATX_FORCE_SYNC: u32 = 8192;
2227pub const AT_STATX_DONT_SYNC: u32 = 16384;
2228pub const AT_RECURSIVE: u32 = 32768;
2229pub const AT_RENAME_NOREPLACE: u32 = 1;
2230pub const AT_RENAME_EXCHANGE: u32 = 2;
2231pub const AT_RENAME_WHITEOUT: u32 = 4;
2232pub const AT_EACCESS: u32 = 512;
2233pub const AT_REMOVEDIR: u32 = 512;
2234pub const AT_HANDLE_FID: u32 = 512;
2235pub const AT_HANDLE_MNT_ID_UNIQUE: u32 = 1;
2236pub const EPOLL_CLOEXEC: u32 = 524288;
2237pub const EPOLL_CTL_ADD: u32 = 1;
2238pub const EPOLL_CTL_DEL: u32 = 2;
2239pub const EPOLL_CTL_MOD: u32 = 3;
2240pub const EPOLL_IOC_TYPE: u32 = 138;
2241pub const POSIX_FADV_NORMAL: u32 = 0;
2242pub const POSIX_FADV_RANDOM: u32 = 1;
2243pub const POSIX_FADV_SEQUENTIAL: u32 = 2;
2244pub const POSIX_FADV_WILLNEED: u32 = 3;
2245pub const POSIX_FADV_DONTNEED: u32 = 4;
2246pub const POSIX_FADV_NOREUSE: u32 = 5;
2247pub const FALLOC_FL_ALLOCATE_RANGE: u32 = 0;
2248pub const FALLOC_FL_KEEP_SIZE: u32 = 1;
2249pub const FALLOC_FL_PUNCH_HOLE: u32 = 2;
2250pub const FALLOC_FL_NO_HIDE_STALE: u32 = 4;
2251pub const FALLOC_FL_COLLAPSE_RANGE: u32 = 8;
2252pub const FALLOC_FL_ZERO_RANGE: u32 = 16;
2253pub const FALLOC_FL_INSERT_RANGE: u32 = 32;
2254pub const FALLOC_FL_UNSHARE_RANGE: u32 = 64;
2255pub const I2C_M_RD: u32 = 1;
2256pub const I2C_M_TEN: u32 = 16;
2257pub const I2C_M_DMA_SAFE: u32 = 512;
2258pub const I2C_M_RECV_LEN: u32 = 1024;
2259pub const I2C_M_NO_RD_ACK: u32 = 2048;
2260pub const I2C_M_IGNORE_NAK: u32 = 4096;
2261pub const I2C_M_REV_DIR_ADDR: u32 = 8192;
2262pub const I2C_M_NOSTART: u32 = 16384;
2263pub const I2C_M_STOP: u32 = 32768;
2264pub const I2C_FUNC_I2C: u32 = 1;
2265pub const I2C_FUNC_10BIT_ADDR: u32 = 2;
2266pub const I2C_FUNC_PROTOCOL_MANGLING: u32 = 4;
2267pub const I2C_FUNC_SMBUS_PEC: u32 = 8;
2268pub const I2C_FUNC_NOSTART: u32 = 16;
2269pub const I2C_FUNC_SLAVE: u32 = 32;
2270pub const I2C_FUNC_SMBUS_BLOCK_PROC_CALL: u32 = 32768;
2271pub const I2C_FUNC_SMBUS_QUICK: u32 = 65536;
2272pub const I2C_FUNC_SMBUS_READ_BYTE: u32 = 131072;
2273pub const I2C_FUNC_SMBUS_WRITE_BYTE: u32 = 262144;
2274pub const I2C_FUNC_SMBUS_READ_BYTE_DATA: u32 = 524288;
2275pub const I2C_FUNC_SMBUS_WRITE_BYTE_DATA: u32 = 1048576;
2276pub const I2C_FUNC_SMBUS_READ_WORD_DATA: u32 = 2097152;
2277pub const I2C_FUNC_SMBUS_WRITE_WORD_DATA: u32 = 4194304;
2278pub const I2C_FUNC_SMBUS_PROC_CALL: u32 = 8388608;
2279pub const I2C_FUNC_SMBUS_READ_BLOCK_DATA: u32 = 16777216;
2280pub const I2C_FUNC_SMBUS_WRITE_BLOCK_DATA: u32 = 33554432;
2281pub const I2C_FUNC_SMBUS_READ_I2C_BLOCK: u32 = 67108864;
2282pub const I2C_FUNC_SMBUS_WRITE_I2C_BLOCK: u32 = 134217728;
2283pub const I2C_FUNC_SMBUS_HOST_NOTIFY: u32 = 268435456;
2284pub const I2C_FUNC_SMBUS_BYTE: u32 = 393216;
2285pub const I2C_FUNC_SMBUS_BYTE_DATA: u32 = 1572864;
2286pub const I2C_FUNC_SMBUS_WORD_DATA: u32 = 6291456;
2287pub const I2C_FUNC_SMBUS_BLOCK_DATA: u32 = 50331648;
2288pub const I2C_FUNC_SMBUS_I2C_BLOCK: u32 = 201326592;
2289pub const I2C_FUNC_SMBUS_EMUL: u32 = 251592712;
2290pub const I2C_FUNC_SMBUS_EMUL_ALL: u32 = 268402696;
2291pub const I2C_SMBUS_BLOCK_MAX: u32 = 32;
2292pub const I2C_SMBUS_READ: u32 = 1;
2293pub const I2C_SMBUS_WRITE: u32 = 0;
2294pub const I2C_SMBUS_QUICK: u32 = 0;
2295pub const I2C_SMBUS_BYTE: u32 = 1;
2296pub const I2C_SMBUS_BYTE_DATA: u32 = 2;
2297pub const I2C_SMBUS_WORD_DATA: u32 = 3;
2298pub const I2C_SMBUS_PROC_CALL: u32 = 4;
2299pub const I2C_SMBUS_BLOCK_DATA: u32 = 5;
2300pub const I2C_SMBUS_I2C_BLOCK_BROKEN: u32 = 6;
2301pub const I2C_SMBUS_BLOCK_PROC_CALL: u32 = 7;
2302pub const I2C_SMBUS_I2C_BLOCK_DATA: u32 = 8;
2303pub const FB_MAX: u32 = 32;
2304pub const FBIOGET_VSCREENINFO: u32 = 17920;
2305pub const FBIOPUT_VSCREENINFO: u32 = 17921;
2306pub const FBIOGET_FSCREENINFO: u32 = 17922;
2307pub const FBIOGETCMAP: u32 = 17924;
2308pub const FBIOPUTCMAP: u32 = 17925;
2309pub const FBIOPAN_DISPLAY: u32 = 17926;
2310pub const FBIOGET_CON2FBMAP: u32 = 17935;
2311pub const FBIOPUT_CON2FBMAP: u32 = 17936;
2312pub const FBIOBLANK: u32 = 17937;
2313pub const FBIO_ALLOC: u32 = 17939;
2314pub const FBIO_FREE: u32 = 17940;
2315pub const FBIOGET_GLYPH: u32 = 17941;
2316pub const FBIOGET_HWCINFO: u32 = 17942;
2317pub const FBIOPUT_MODEINFO: u32 = 17943;
2318pub const FBIOGET_DISPINFO: u32 = 17944;
2319pub const FB_TYPE_PACKED_PIXELS: u32 = 0;
2320pub const FB_TYPE_PLANES: u32 = 1;
2321pub const FB_TYPE_INTERLEAVED_PLANES: u32 = 2;
2322pub const FB_TYPE_TEXT: u32 = 3;
2323pub const FB_TYPE_VGA_PLANES: u32 = 4;
2324pub const FB_TYPE_FOURCC: u32 = 5;
2325pub const FB_AUX_TEXT_MDA: u32 = 0;
2326pub const FB_AUX_TEXT_CGA: u32 = 1;
2327pub const FB_AUX_TEXT_S3_MMIO: u32 = 2;
2328pub const FB_AUX_TEXT_MGA_STEP16: u32 = 3;
2329pub const FB_AUX_TEXT_MGA_STEP8: u32 = 4;
2330pub const FB_AUX_TEXT_SVGA_GROUP: u32 = 8;
2331pub const FB_AUX_TEXT_SVGA_MASK: u32 = 7;
2332pub const FB_AUX_TEXT_SVGA_STEP2: u32 = 8;
2333pub const FB_AUX_TEXT_SVGA_STEP4: u32 = 9;
2334pub const FB_AUX_TEXT_SVGA_STEP8: u32 = 10;
2335pub const FB_AUX_TEXT_SVGA_STEP16: u32 = 11;
2336pub const FB_AUX_TEXT_SVGA_LAST: u32 = 15;
2337pub const FB_AUX_VGA_PLANES_VGA4: u32 = 0;
2338pub const FB_AUX_VGA_PLANES_CFB4: u32 = 1;
2339pub const FB_AUX_VGA_PLANES_CFB8: u32 = 2;
2340pub const FB_VISUAL_MONO01: u32 = 0;
2341pub const FB_VISUAL_MONO10: u32 = 1;
2342pub const FB_VISUAL_TRUECOLOR: u32 = 2;
2343pub const FB_VISUAL_PSEUDOCOLOR: u32 = 3;
2344pub const FB_VISUAL_DIRECTCOLOR: u32 = 4;
2345pub const FB_VISUAL_STATIC_PSEUDOCOLOR: u32 = 5;
2346pub const FB_VISUAL_FOURCC: u32 = 6;
2347pub const FB_ACCEL_NONE: u32 = 0;
2348pub const FB_ACCEL_ATARIBLITT: u32 = 1;
2349pub const FB_ACCEL_AMIGABLITT: u32 = 2;
2350pub const FB_ACCEL_S3_TRIO64: u32 = 3;
2351pub const FB_ACCEL_NCR_77C32BLT: u32 = 4;
2352pub const FB_ACCEL_S3_VIRGE: u32 = 5;
2353pub const FB_ACCEL_ATI_MACH64GX: u32 = 6;
2354pub const FB_ACCEL_DEC_TGA: u32 = 7;
2355pub const FB_ACCEL_ATI_MACH64CT: u32 = 8;
2356pub const FB_ACCEL_ATI_MACH64VT: u32 = 9;
2357pub const FB_ACCEL_ATI_MACH64GT: u32 = 10;
2358pub const FB_ACCEL_SUN_CREATOR: u32 = 11;
2359pub const FB_ACCEL_SUN_CGSIX: u32 = 12;
2360pub const FB_ACCEL_SUN_LEO: u32 = 13;
2361pub const FB_ACCEL_IMS_TWINTURBO: u32 = 14;
2362pub const FB_ACCEL_3DLABS_PERMEDIA2: u32 = 15;
2363pub const FB_ACCEL_MATROX_MGA2064W: u32 = 16;
2364pub const FB_ACCEL_MATROX_MGA1064SG: u32 = 17;
2365pub const FB_ACCEL_MATROX_MGA2164W: u32 = 18;
2366pub const FB_ACCEL_MATROX_MGA2164W_AGP: u32 = 19;
2367pub const FB_ACCEL_MATROX_MGAG100: u32 = 20;
2368pub const FB_ACCEL_MATROX_MGAG200: u32 = 21;
2369pub const FB_ACCEL_SUN_CG14: u32 = 22;
2370pub const FB_ACCEL_SUN_BWTWO: u32 = 23;
2371pub const FB_ACCEL_SUN_CGTHREE: u32 = 24;
2372pub const FB_ACCEL_SUN_TCX: u32 = 25;
2373pub const FB_ACCEL_MATROX_MGAG400: u32 = 26;
2374pub const FB_ACCEL_NV3: u32 = 27;
2375pub const FB_ACCEL_NV4: u32 = 28;
2376pub const FB_ACCEL_NV5: u32 = 29;
2377pub const FB_ACCEL_CT_6555x: u32 = 30;
2378pub const FB_ACCEL_3DFX_BANSHEE: u32 = 31;
2379pub const FB_ACCEL_ATI_RAGE128: u32 = 32;
2380pub const FB_ACCEL_IGS_CYBER2000: u32 = 33;
2381pub const FB_ACCEL_IGS_CYBER2010: u32 = 34;
2382pub const FB_ACCEL_IGS_CYBER5000: u32 = 35;
2383pub const FB_ACCEL_SIS_GLAMOUR: u32 = 36;
2384pub const FB_ACCEL_3DLABS_PERMEDIA3: u32 = 37;
2385pub const FB_ACCEL_ATI_RADEON: u32 = 38;
2386pub const FB_ACCEL_I810: u32 = 39;
2387pub const FB_ACCEL_SIS_GLAMOUR_2: u32 = 40;
2388pub const FB_ACCEL_SIS_XABRE: u32 = 41;
2389pub const FB_ACCEL_I830: u32 = 42;
2390pub const FB_ACCEL_NV_10: u32 = 43;
2391pub const FB_ACCEL_NV_20: u32 = 44;
2392pub const FB_ACCEL_NV_30: u32 = 45;
2393pub const FB_ACCEL_NV_40: u32 = 46;
2394pub const FB_ACCEL_XGI_VOLARI_V: u32 = 47;
2395pub const FB_ACCEL_XGI_VOLARI_Z: u32 = 48;
2396pub const FB_ACCEL_OMAP1610: u32 = 49;
2397pub const FB_ACCEL_TRIDENT_TGUI: u32 = 50;
2398pub const FB_ACCEL_TRIDENT_3DIMAGE: u32 = 51;
2399pub const FB_ACCEL_TRIDENT_BLADE3D: u32 = 52;
2400pub const FB_ACCEL_TRIDENT_BLADEXP: u32 = 53;
2401pub const FB_ACCEL_CIRRUS_ALPINE: u32 = 53;
2402pub const FB_ACCEL_NEOMAGIC_NM2070: u32 = 90;
2403pub const FB_ACCEL_NEOMAGIC_NM2090: u32 = 91;
2404pub const FB_ACCEL_NEOMAGIC_NM2093: u32 = 92;
2405pub const FB_ACCEL_NEOMAGIC_NM2097: u32 = 93;
2406pub const FB_ACCEL_NEOMAGIC_NM2160: u32 = 94;
2407pub const FB_ACCEL_NEOMAGIC_NM2200: u32 = 95;
2408pub const FB_ACCEL_NEOMAGIC_NM2230: u32 = 96;
2409pub const FB_ACCEL_NEOMAGIC_NM2360: u32 = 97;
2410pub const FB_ACCEL_NEOMAGIC_NM2380: u32 = 98;
2411pub const FB_ACCEL_PXA3XX: u32 = 99;
2412pub const FB_ACCEL_SAVAGE4: u32 = 128;
2413pub const FB_ACCEL_SAVAGE3D: u32 = 129;
2414pub const FB_ACCEL_SAVAGE3D_MV: u32 = 130;
2415pub const FB_ACCEL_SAVAGE2000: u32 = 131;
2416pub const FB_ACCEL_SAVAGE_MX_MV: u32 = 132;
2417pub const FB_ACCEL_SAVAGE_MX: u32 = 133;
2418pub const FB_ACCEL_SAVAGE_IX_MV: u32 = 134;
2419pub const FB_ACCEL_SAVAGE_IX: u32 = 135;
2420pub const FB_ACCEL_PROSAVAGE_PM: u32 = 136;
2421pub const FB_ACCEL_PROSAVAGE_KM: u32 = 137;
2422pub const FB_ACCEL_S3TWISTER_P: u32 = 138;
2423pub const FB_ACCEL_S3TWISTER_K: u32 = 139;
2424pub const FB_ACCEL_SUPERSAVAGE: u32 = 140;
2425pub const FB_ACCEL_PROSAVAGE_DDR: u32 = 141;
2426pub const FB_ACCEL_PROSAVAGE_DDRK: u32 = 142;
2427pub const FB_ACCEL_PUV3_UNIGFX: u32 = 160;
2428pub const FB_CAP_FOURCC: u32 = 1;
2429pub const FB_NONSTD_HAM: u32 = 1;
2430pub const FB_NONSTD_REV_PIX_IN_B: u32 = 2;
2431pub const FB_ACTIVATE_NOW: u32 = 0;
2432pub const FB_ACTIVATE_NXTOPEN: u32 = 1;
2433pub const FB_ACTIVATE_TEST: u32 = 2;
2434pub const FB_ACTIVATE_MASK: u32 = 15;
2435pub const FB_ACTIVATE_VBL: u32 = 16;
2436pub const FB_CHANGE_CMAP_VBL: u32 = 32;
2437pub const FB_ACTIVATE_ALL: u32 = 64;
2438pub const FB_ACTIVATE_FORCE: u32 = 128;
2439pub const FB_ACTIVATE_INV_MODE: u32 = 256;
2440pub const FB_ACTIVATE_KD_TEXT: u32 = 512;
2441pub const FB_ACCELF_TEXT: u32 = 1;
2442pub const FB_SYNC_HOR_HIGH_ACT: u32 = 1;
2443pub const FB_SYNC_VERT_HIGH_ACT: u32 = 2;
2444pub const FB_SYNC_EXT: u32 = 4;
2445pub const FB_SYNC_COMP_HIGH_ACT: u32 = 8;
2446pub const FB_SYNC_BROADCAST: u32 = 16;
2447pub const FB_SYNC_ON_GREEN: u32 = 32;
2448pub const FB_VMODE_NONINTERLACED: u32 = 0;
2449pub const FB_VMODE_INTERLACED: u32 = 1;
2450pub const FB_VMODE_DOUBLE: u32 = 2;
2451pub const FB_VMODE_ODD_FLD_FIRST: u32 = 4;
2452pub const FB_VMODE_MASK: u32 = 255;
2453pub const FB_VMODE_YWRAP: u32 = 256;
2454pub const FB_VMODE_SMOOTH_XPAN: u32 = 512;
2455pub const FB_VMODE_CONUPDATE: u32 = 512;
2456pub const FB_ROTATE_UR: u32 = 0;
2457pub const FB_ROTATE_CW: u32 = 1;
2458pub const FB_ROTATE_UD: u32 = 2;
2459pub const FB_ROTATE_CCW: u32 = 3;
2460pub const FB_VBLANK_VBLANKING: u32 = 1;
2461pub const FB_VBLANK_HBLANKING: u32 = 2;
2462pub const FB_VBLANK_HAVE_VBLANK: u32 = 4;
2463pub const FB_VBLANK_HAVE_HBLANK: u32 = 8;
2464pub const FB_VBLANK_HAVE_COUNT: u32 = 16;
2465pub const FB_VBLANK_HAVE_VCOUNT: u32 = 32;
2466pub const FB_VBLANK_HAVE_HCOUNT: u32 = 64;
2467pub const FB_VBLANK_VSYNCING: u32 = 128;
2468pub const FB_VBLANK_HAVE_VSYNC: u32 = 256;
2469pub const ROP_COPY: u32 = 0;
2470pub const ROP_XOR: u32 = 1;
2471pub const FB_CUR_SETIMAGE: u32 = 1;
2472pub const FB_CUR_SETPOS: u32 = 2;
2473pub const FB_CUR_SETHOT: u32 = 4;
2474pub const FB_CUR_SETCMAP: u32 = 8;
2475pub const FB_CUR_SETSHAPE: u32 = 16;
2476pub const FB_CUR_SETSIZE: u32 = 32;
2477pub const FB_CUR_SETALL: u32 = 255;
2478pub const FB_BACKLIGHT_LEVELS: u32 = 128;
2479pub const FB_BACKLIGHT_MAX: u32 = 255;
2480pub const NETLINK_ROUTE: u32 = 0;
2481pub const NETLINK_UNUSED: u32 = 1;
2482pub const NETLINK_USERSOCK: u32 = 2;
2483pub const NETLINK_FIREWALL: u32 = 3;
2484pub const NETLINK_SOCK_DIAG: u32 = 4;
2485pub const NETLINK_NFLOG: u32 = 5;
2486pub const NETLINK_XFRM: u32 = 6;
2487pub const NETLINK_SELINUX: u32 = 7;
2488pub const NETLINK_ISCSI: u32 = 8;
2489pub const NETLINK_AUDIT: u32 = 9;
2490pub const NETLINK_FIB_LOOKUP: u32 = 10;
2491pub const NETLINK_CONNECTOR: u32 = 11;
2492pub const NETLINK_NETFILTER: u32 = 12;
2493pub const NETLINK_IP6_FW: u32 = 13;
2494pub const NETLINK_DNRTMSG: u32 = 14;
2495pub const NETLINK_KOBJECT_UEVENT: u32 = 15;
2496pub const NETLINK_GENERIC: u32 = 16;
2497pub const NETLINK_SCSITRANSPORT: u32 = 18;
2498pub const NETLINK_ECRYPTFS: u32 = 19;
2499pub const NETLINK_RDMA: u32 = 20;
2500pub const NETLINK_CRYPTO: u32 = 21;
2501pub const NETLINK_SMC: u32 = 22;
2502pub const NETLINK_INET_DIAG: u32 = 4;
2503pub const MAX_LINKS: u32 = 32;
2504pub const NLM_F_REQUEST: u32 = 1;
2505pub const NLM_F_MULTI: u32 = 2;
2506pub const NLM_F_ACK: u32 = 4;
2507pub const NLM_F_ECHO: u32 = 8;
2508pub const NLM_F_DUMP_INTR: u32 = 16;
2509pub const NLM_F_DUMP_FILTERED: u32 = 32;
2510pub const NLM_F_ROOT: u32 = 256;
2511pub const NLM_F_MATCH: u32 = 512;
2512pub const NLM_F_ATOMIC: u32 = 1024;
2513pub const NLM_F_DUMP: u32 = 768;
2514pub const NLM_F_REPLACE: u32 = 256;
2515pub const NLM_F_EXCL: u32 = 512;
2516pub const NLM_F_CREATE: u32 = 1024;
2517pub const NLM_F_APPEND: u32 = 2048;
2518pub const NLM_F_NONREC: u32 = 256;
2519pub const NLM_F_BULK: u32 = 512;
2520pub const NLM_F_CAPPED: u32 = 256;
2521pub const NLM_F_ACK_TLVS: u32 = 512;
2522pub const NLMSG_ALIGNTO: u32 = 4;
2523pub const NLMSG_NOOP: u32 = 1;
2524pub const NLMSG_ERROR: u32 = 2;
2525pub const NLMSG_DONE: u32 = 3;
2526pub const NLMSG_OVERRUN: u32 = 4;
2527pub const NLMSG_MIN_TYPE: u32 = 16;
2528pub const NETLINK_ADD_MEMBERSHIP: u32 = 1;
2529pub const NETLINK_DROP_MEMBERSHIP: u32 = 2;
2530pub const NETLINK_PKTINFO: u32 = 3;
2531pub const NETLINK_BROADCAST_ERROR: u32 = 4;
2532pub const NETLINK_NO_ENOBUFS: u32 = 5;
2533pub const NETLINK_RX_RING: u32 = 6;
2534pub const NETLINK_TX_RING: u32 = 7;
2535pub const NETLINK_LISTEN_ALL_NSID: u32 = 8;
2536pub const NETLINK_LIST_MEMBERSHIPS: u32 = 9;
2537pub const NETLINK_CAP_ACK: u32 = 10;
2538pub const NETLINK_EXT_ACK: u32 = 11;
2539pub const NETLINK_GET_STRICT_CHK: u32 = 12;
2540pub const NL_MMAP_MSG_ALIGNMENT: u32 = 4;
2541pub const NET_MAJOR: u32 = 36;
2542pub const NLA_F_NESTED: u32 = 32768;
2543pub const NLA_F_NET_BYTEORDER: u32 = 16384;
2544pub const NLA_TYPE_MASK: i32 = -49153;
2545pub const NLA_ALIGNTO: u32 = 4;
2546pub const MACVLAN_FLAG_NOPROMISC: u32 = 1;
2547pub const MACVLAN_FLAG_NODST: u32 = 2;
2548pub const IPVLAN_F_PRIVATE: u32 = 1;
2549pub const IPVLAN_F_VEPA: u32 = 2;
2550pub const TUNNEL_MSG_FLAG_STATS: u32 = 1;
2551pub const TUNNEL_MSG_VALID_USER_FLAGS: u32 = 1;
2552pub const MAX_VLAN_LIST_LEN: u32 = 1;
2553pub const PORT_PROFILE_MAX: u32 = 40;
2554pub const PORT_UUID_MAX: u32 = 16;
2555pub const PORT_SELF_VF: i32 = -1;
2556pub const XDP_FLAGS_UPDATE_IF_NOEXIST: u32 = 1;
2557pub const XDP_FLAGS_SKB_MODE: u32 = 2;
2558pub const XDP_FLAGS_DRV_MODE: u32 = 4;
2559pub const XDP_FLAGS_HW_MODE: u32 = 8;
2560pub const XDP_FLAGS_REPLACE: u32 = 16;
2561pub const XDP_FLAGS_MODES: u32 = 14;
2562pub const XDP_FLAGS_MASK: u32 = 31;
2563pub const RMNET_FLAGS_INGRESS_DEAGGREGATION: u32 = 1;
2564pub const RMNET_FLAGS_INGRESS_MAP_COMMANDS: u32 = 2;
2565pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV4: u32 = 4;
2566pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV4: u32 = 8;
2567pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV5: u32 = 16;
2568pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV5: u32 = 32;
2569pub const IFA_F_SECONDARY: u32 = 1;
2570pub const IFA_F_TEMPORARY: u32 = 1;
2571pub const IFA_F_NODAD: u32 = 2;
2572pub const IFA_F_OPTIMISTIC: u32 = 4;
2573pub const IFA_F_DADFAILED: u32 = 8;
2574pub const IFA_F_HOMEADDRESS: u32 = 16;
2575pub const IFA_F_DEPRECATED: u32 = 32;
2576pub const IFA_F_TENTATIVE: u32 = 64;
2577pub const IFA_F_PERMANENT: u32 = 128;
2578pub const IFA_F_MANAGETEMPADDR: u32 = 256;
2579pub const IFA_F_NOPREFIXROUTE: u32 = 512;
2580pub const IFA_F_MCAUTOJOIN: u32 = 1024;
2581pub const IFA_F_STABLE_PRIVACY: u32 = 2048;
2582pub const IFAPROT_UNSPEC: u32 = 0;
2583pub const IFAPROT_KERNEL_LO: u32 = 1;
2584pub const IFAPROT_KERNEL_RA: u32 = 2;
2585pub const IFAPROT_KERNEL_LL: u32 = 3;
2586pub const NTF_USE: u32 = 1;
2587pub const NTF_SELF: u32 = 2;
2588pub const NTF_MASTER: u32 = 4;
2589pub const NTF_PROXY: u32 = 8;
2590pub const NTF_EXT_LEARNED: u32 = 16;
2591pub const NTF_OFFLOADED: u32 = 32;
2592pub const NTF_STICKY: u32 = 64;
2593pub const NTF_ROUTER: u32 = 128;
2594pub const NTF_EXT_MANAGED: u32 = 1;
2595pub const NTF_EXT_LOCKED: u32 = 2;
2596pub const NUD_INCOMPLETE: u32 = 1;
2597pub const NUD_REACHABLE: u32 = 2;
2598pub const NUD_STALE: u32 = 4;
2599pub const NUD_DELAY: u32 = 8;
2600pub const NUD_PROBE: u32 = 16;
2601pub const NUD_FAILED: u32 = 32;
2602pub const NUD_NOARP: u32 = 64;
2603pub const NUD_PERMANENT: u32 = 128;
2604pub const NUD_NONE: u32 = 0;
2605pub const RTNL_FAMILY_IPMR: u32 = 128;
2606pub const RTNL_FAMILY_IP6MR: u32 = 129;
2607pub const RTNL_FAMILY_MAX: u32 = 129;
2608pub const RTA_ALIGNTO: u32 = 4;
2609pub const RTPROT_UNSPEC: u32 = 0;
2610pub const RTPROT_REDIRECT: u32 = 1;
2611pub const RTPROT_KERNEL: u32 = 2;
2612pub const RTPROT_BOOT: u32 = 3;
2613pub const RTPROT_STATIC: u32 = 4;
2614pub const RTPROT_GATED: u32 = 8;
2615pub const RTPROT_RA: u32 = 9;
2616pub const RTPROT_MRT: u32 = 10;
2617pub const RTPROT_ZEBRA: u32 = 11;
2618pub const RTPROT_BIRD: u32 = 12;
2619pub const RTPROT_DNROUTED: u32 = 13;
2620pub const RTPROT_XORP: u32 = 14;
2621pub const RTPROT_NTK: u32 = 15;
2622pub const RTPROT_DHCP: u32 = 16;
2623pub const RTPROT_MROUTED: u32 = 17;
2624pub const RTPROT_KEEPALIVED: u32 = 18;
2625pub const RTPROT_BABEL: u32 = 42;
2626pub const RTPROT_OPENR: u32 = 99;
2627pub const RTPROT_BGP: u32 = 186;
2628pub const RTPROT_ISIS: u32 = 187;
2629pub const RTPROT_OSPF: u32 = 188;
2630pub const RTPROT_RIP: u32 = 189;
2631pub const RTPROT_EIGRP: u32 = 192;
2632pub const RTM_F_NOTIFY: u32 = 256;
2633pub const RTM_F_CLONED: u32 = 512;
2634pub const RTM_F_EQUALIZE: u32 = 1024;
2635pub const RTM_F_PREFIX: u32 = 2048;
2636pub const RTM_F_LOOKUP_TABLE: u32 = 4096;
2637pub const RTM_F_FIB_MATCH: u32 = 8192;
2638pub const RTM_F_OFFLOAD: u32 = 16384;
2639pub const RTM_F_TRAP: u32 = 32768;
2640pub const RTM_F_OFFLOAD_FAILED: u32 = 536870912;
2641pub const RTNH_F_DEAD: u32 = 1;
2642pub const RTNH_F_PERVASIVE: u32 = 2;
2643pub const RTNH_F_ONLINK: u32 = 4;
2644pub const RTNH_F_OFFLOAD: u32 = 8;
2645pub const RTNH_F_LINKDOWN: u32 = 16;
2646pub const RTNH_F_UNRESOLVED: u32 = 32;
2647pub const RTNH_F_TRAP: u32 = 64;
2648pub const RTNH_COMPARE_MASK: u32 = 89;
2649pub const RTNH_ALIGNTO: u32 = 4;
2650pub const RTNETLINK_HAVE_PEERINFO: u32 = 1;
2651pub const RTAX_FEATURE_ECN: u32 = 1;
2652pub const RTAX_FEATURE_SACK: u32 = 2;
2653pub const RTAX_FEATURE_TIMESTAMP: u32 = 4;
2654pub const RTAX_FEATURE_ALLFRAG: u32 = 8;
2655pub const RTAX_FEATURE_TCP_USEC_TS: u32 = 16;
2656pub const RTAX_FEATURE_MASK: u32 = 31;
2657pub const TCM_IFINDEX_MAGIC_BLOCK: u32 = 4294967295;
2658pub const TCA_DUMP_FLAGS_TERSE: u32 = 1;
2659pub const RTMGRP_LINK: u32 = 1;
2660pub const RTMGRP_NOTIFY: u32 = 2;
2661pub const RTMGRP_NEIGH: u32 = 4;
2662pub const RTMGRP_TC: u32 = 8;
2663pub const RTMGRP_IPV4_IFADDR: u32 = 16;
2664pub const RTMGRP_IPV4_MROUTE: u32 = 32;
2665pub const RTMGRP_IPV4_ROUTE: u32 = 64;
2666pub const RTMGRP_IPV4_RULE: u32 = 128;
2667pub const RTMGRP_IPV6_IFADDR: u32 = 256;
2668pub const RTMGRP_IPV6_MROUTE: u32 = 512;
2669pub const RTMGRP_IPV6_ROUTE: u32 = 1024;
2670pub const RTMGRP_IPV6_IFINFO: u32 = 2048;
2671pub const RTMGRP_DECnet_IFADDR: u32 = 4096;
2672pub const RTMGRP_DECnet_ROUTE: u32 = 16384;
2673pub const RTMGRP_IPV6_PREFIX: u32 = 131072;
2674pub const TCA_FLAG_LARGE_DUMP_ON: u32 = 1;
2675pub const TCA_ACT_FLAG_LARGE_DUMP_ON: u32 = 1;
2676pub const TCA_ACT_FLAG_TERSE_DUMP: u32 = 2;
2677pub const RTEXT_FILTER_VF: u32 = 1;
2678pub const RTEXT_FILTER_BRVLAN: u32 = 2;
2679pub const RTEXT_FILTER_BRVLAN_COMPRESSED: u32 = 4;
2680pub const RTEXT_FILTER_SKIP_STATS: u32 = 8;
2681pub const RTEXT_FILTER_MRP: u32 = 16;
2682pub const RTEXT_FILTER_CFM_CONFIG: u32 = 32;
2683pub const RTEXT_FILTER_CFM_STATUS: u32 = 64;
2684pub const RTEXT_FILTER_MST: u32 = 128;
2685pub const FIB_RULE_PERMANENT: u32 = 1;
2686pub const FIB_RULE_INVERT: u32 = 2;
2687pub const FIB_RULE_UNRESOLVED: u32 = 4;
2688pub const FIB_RULE_IIF_DETACHED: u32 = 8;
2689pub const FIB_RULE_DEV_DETACHED: u32 = 8;
2690pub const FIB_RULE_OIF_DETACHED: u32 = 16;
2691pub const FIB_RULE_FIND_SADDR: u32 = 65536;
2692pub const BPF_LD: u32 = 0;
2693pub const BPF_LDX: u32 = 1;
2694pub const BPF_ST: u32 = 2;
2695pub const BPF_STX: u32 = 3;
2696pub const BPF_ALU: u32 = 4;
2697pub const BPF_JMP: u32 = 5;
2698pub const BPF_RET: u32 = 6;
2699pub const BPF_MISC: u32 = 7;
2700pub const BPF_W: u32 = 0;
2701pub const BPF_H: u32 = 8;
2702pub const BPF_B: u32 = 16;
2703pub const BPF_IMM: u32 = 0;
2704pub const BPF_ABS: u32 = 32;
2705pub const BPF_IND: u32 = 64;
2706pub const BPF_MEM: u32 = 96;
2707pub const BPF_LEN: u32 = 128;
2708pub const BPF_MSH: u32 = 160;
2709pub const BPF_ADD: u32 = 0;
2710pub const BPF_SUB: u32 = 16;
2711pub const BPF_MUL: u32 = 32;
2712pub const BPF_DIV: u32 = 48;
2713pub const BPF_OR: u32 = 64;
2714pub const BPF_AND: u32 = 80;
2715pub const BPF_LSH: u32 = 96;
2716pub const BPF_RSH: u32 = 112;
2717pub const BPF_NEG: u32 = 128;
2718pub const BPF_MOD: u32 = 144;
2719pub const BPF_XOR: u32 = 160;
2720pub const BPF_JA: u32 = 0;
2721pub const BPF_JEQ: u32 = 16;
2722pub const BPF_JGT: u32 = 32;
2723pub const BPF_JGE: u32 = 48;
2724pub const BPF_JSET: u32 = 64;
2725pub const BPF_K: u32 = 0;
2726pub const BPF_X: u32 = 8;
2727pub const BPF_MAXINSNS: u32 = 4096;
2728pub const BPF_MAJOR_VERSION: u32 = 1;
2729pub const BPF_MINOR_VERSION: u32 = 1;
2730pub const BPF_A: u32 = 16;
2731pub const BPF_TAX: u32 = 0;
2732pub const BPF_TXA: u32 = 128;
2733pub const BPF_MEMWORDS: u32 = 16;
2734pub const SKF_AD_OFF: i32 = -4096;
2735pub const SKF_AD_PROTOCOL: u32 = 0;
2736pub const SKF_AD_PKTTYPE: u32 = 4;
2737pub const SKF_AD_IFINDEX: u32 = 8;
2738pub const SKF_AD_NLATTR: u32 = 12;
2739pub const SKF_AD_NLATTR_NEST: u32 = 16;
2740pub const SKF_AD_MARK: u32 = 20;
2741pub const SKF_AD_QUEUE: u32 = 24;
2742pub const SKF_AD_HATYPE: u32 = 28;
2743pub const SKF_AD_RXHASH: u32 = 32;
2744pub const SKF_AD_CPU: u32 = 36;
2745pub const SKF_AD_ALU_XOR_X: u32 = 40;
2746pub const SKF_AD_VLAN_TAG: u32 = 44;
2747pub const SKF_AD_VLAN_TAG_PRESENT: u32 = 48;
2748pub const SKF_AD_PAY_OFFSET: u32 = 52;
2749pub const SKF_AD_RANDOM: u32 = 56;
2750pub const SKF_AD_VLAN_TPID: u32 = 60;
2751pub const SKF_AD_MAX: u32 = 64;
2752pub const SKF_NET_OFF: i32 = -1048576;
2753pub const SKF_LL_OFF: i32 = -2097152;
2754pub const BPF_NET_OFF: i32 = -1048576;
2755pub const BPF_LL_OFF: i32 = -2097152;
2756pub const FS_VERITY_HASH_ALG_SHA256: u32 = 1;
2757pub const FS_VERITY_HASH_ALG_SHA512: u32 = 2;
2758pub const FS_VERITY_METADATA_TYPE_MERKLE_TREE: u32 = 1;
2759pub const FS_VERITY_METADATA_TYPE_DESCRIPTOR: u32 = 2;
2760pub const FS_VERITY_METADATA_TYPE_SIGNATURE: u32 = 3;
2761pub const FUTEX_WAIT: u32 = 0;
2762pub const FUTEX_WAKE: u32 = 1;
2763pub const FUTEX_FD: u32 = 2;
2764pub const FUTEX_REQUEUE: u32 = 3;
2765pub const FUTEX_CMP_REQUEUE: u32 = 4;
2766pub const FUTEX_WAKE_OP: u32 = 5;
2767pub const FUTEX_LOCK_PI: u32 = 6;
2768pub const FUTEX_UNLOCK_PI: u32 = 7;
2769pub const FUTEX_TRYLOCK_PI: u32 = 8;
2770pub const FUTEX_WAIT_BITSET: u32 = 9;
2771pub const FUTEX_WAKE_BITSET: u32 = 10;
2772pub const FUTEX_WAIT_REQUEUE_PI: u32 = 11;
2773pub const FUTEX_CMP_REQUEUE_PI: u32 = 12;
2774pub const FUTEX_LOCK_PI2: u32 = 13;
2775pub const FUTEX_PRIVATE_FLAG: u32 = 128;
2776pub const FUTEX_CLOCK_REALTIME: u32 = 256;
2777pub const FUTEX_CMD_MASK: i32 = -385;
2778pub const FUTEX_WAIT_PRIVATE: u32 = 128;
2779pub const FUTEX_WAKE_PRIVATE: u32 = 129;
2780pub const FUTEX_REQUEUE_PRIVATE: u32 = 131;
2781pub const FUTEX_CMP_REQUEUE_PRIVATE: u32 = 132;
2782pub const FUTEX_WAKE_OP_PRIVATE: u32 = 133;
2783pub const FUTEX_LOCK_PI_PRIVATE: u32 = 134;
2784pub const FUTEX_LOCK_PI2_PRIVATE: u32 = 141;
2785pub const FUTEX_UNLOCK_PI_PRIVATE: u32 = 135;
2786pub const FUTEX_TRYLOCK_PI_PRIVATE: u32 = 136;
2787pub const FUTEX_WAIT_BITSET_PRIVATE: u32 = 137;
2788pub const FUTEX_WAKE_BITSET_PRIVATE: u32 = 138;
2789pub const FUTEX_WAIT_REQUEUE_PI_PRIVATE: u32 = 139;
2790pub const FUTEX_CMP_REQUEUE_PI_PRIVATE: u32 = 140;
2791pub const FUTEX2_SIZE_U8: u32 = 0;
2792pub const FUTEX2_SIZE_U16: u32 = 1;
2793pub const FUTEX2_SIZE_U32: u32 = 2;
2794pub const FUTEX2_SIZE_U64: u32 = 3;
2795pub const FUTEX2_NUMA: u32 = 4;
2796pub const FUTEX2_PRIVATE: u32 = 128;
2797pub const FUTEX2_SIZE_MASK: u32 = 3;
2798pub const FUTEX_32: u32 = 2;
2799pub const FUTEX_WAITV_MAX: u32 = 128;
2800pub const FUTEX_WAITERS: u32 = 2147483648;
2801pub const FUTEX_OWNER_DIED: u32 = 1073741824;
2802pub const FUTEX_TID_MASK: u32 = 1073741823;
2803pub const ROBUST_LIST_LIMIT: u32 = 2048;
2804pub const FUTEX_BITSET_MATCH_ANY: u32 = 4294967295;
2805pub const FUTEX_OP_SET: u32 = 0;
2806pub const FUTEX_OP_ADD: u32 = 1;
2807pub const FUTEX_OP_OR: u32 = 2;
2808pub const FUTEX_OP_ANDN: u32 = 3;
2809pub const FUTEX_OP_XOR: u32 = 4;
2810pub const FUTEX_OP_OPARG_SHIFT: u32 = 8;
2811pub const FUTEX_OP_CMP_EQ: u32 = 0;
2812pub const FUTEX_OP_CMP_NE: u32 = 1;
2813pub const FUTEX_OP_CMP_LT: u32 = 2;
2814pub const FUTEX_OP_CMP_LE: u32 = 3;
2815pub const FUTEX_OP_CMP_GT: u32 = 4;
2816pub const FUTEX_OP_CMP_GE: u32 = 5;
2817pub const __UAPI_DEF_IF_IFCONF: u32 = 1;
2818pub const __UAPI_DEF_IF_IFMAP: u32 = 1;
2819pub const __UAPI_DEF_IF_IFNAMSIZ: u32 = 1;
2820pub const __UAPI_DEF_IF_IFREQ: u32 = 1;
2821pub const __UAPI_DEF_IF_NET_DEVICE_FLAGS: u32 = 1;
2822pub const __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO: u32 = 1;
2823pub const __UAPI_DEF_IN_ADDR: u32 = 1;
2824pub const __UAPI_DEF_IN_IPPROTO: u32 = 1;
2825pub const __UAPI_DEF_IN_PKTINFO: u32 = 1;
2826pub const __UAPI_DEF_IP_MREQ: u32 = 1;
2827pub const __UAPI_DEF_SOCKADDR_IN: u32 = 1;
2828pub const __UAPI_DEF_IN_CLASS: u32 = 1;
2829pub const __UAPI_DEF_IN6_ADDR: u32 = 1;
2830pub const __UAPI_DEF_IN6_ADDR_ALT: u32 = 1;
2831pub const __UAPI_DEF_SOCKADDR_IN6: u32 = 1;
2832pub const __UAPI_DEF_IPV6_MREQ: u32 = 1;
2833pub const __UAPI_DEF_IPPROTO_V6: u32 = 1;
2834pub const __UAPI_DEF_IPV6_OPTIONS: u32 = 1;
2835pub const __UAPI_DEF_IN6_PKTINFO: u32 = 1;
2836pub const __UAPI_DEF_IP6_MTUINFO: u32 = 1;
2837pub const __UAPI_DEF_XATTR: u32 = 1;
2838pub const IFNAMSIZ: u32 = 16;
2839pub const IFALIASZ: u32 = 256;
2840pub const ALTIFNAMSIZ: u32 = 128;
2841pub const GENERIC_HDLC_VERSION: u32 = 4;
2842pub const CLOCK_DEFAULT: u32 = 0;
2843pub const CLOCK_EXT: u32 = 1;
2844pub const CLOCK_INT: u32 = 2;
2845pub const CLOCK_TXINT: u32 = 3;
2846pub const CLOCK_TXFROMRX: u32 = 4;
2847pub const ENCODING_DEFAULT: u32 = 0;
2848pub const ENCODING_NRZ: u32 = 1;
2849pub const ENCODING_NRZI: u32 = 2;
2850pub const ENCODING_FM_MARK: u32 = 3;
2851pub const ENCODING_FM_SPACE: u32 = 4;
2852pub const ENCODING_MANCHESTER: u32 = 5;
2853pub const PARITY_DEFAULT: u32 = 0;
2854pub const PARITY_NONE: u32 = 1;
2855pub const PARITY_CRC16_PR0: u32 = 2;
2856pub const PARITY_CRC16_PR1: u32 = 3;
2857pub const PARITY_CRC16_PR0_CCITT: u32 = 4;
2858pub const PARITY_CRC16_PR1_CCITT: u32 = 5;
2859pub const PARITY_CRC32_PR0_CCITT: u32 = 6;
2860pub const PARITY_CRC32_PR1_CCITT: u32 = 7;
2861pub const LMI_DEFAULT: u32 = 0;
2862pub const LMI_NONE: u32 = 1;
2863pub const LMI_ANSI: u32 = 2;
2864pub const LMI_CCITT: u32 = 3;
2865pub const LMI_CISCO: u32 = 4;
2866pub const IF_GET_IFACE: u32 = 1;
2867pub const IF_GET_PROTO: u32 = 2;
2868pub const IF_IFACE_V35: u32 = 4096;
2869pub const IF_IFACE_V24: u32 = 4097;
2870pub const IF_IFACE_X21: u32 = 4098;
2871pub const IF_IFACE_T1: u32 = 4099;
2872pub const IF_IFACE_E1: u32 = 4100;
2873pub const IF_IFACE_SYNC_SERIAL: u32 = 4101;
2874pub const IF_IFACE_X21D: u32 = 4102;
2875pub const IF_PROTO_HDLC: u32 = 8192;
2876pub const IF_PROTO_PPP: u32 = 8193;
2877pub const IF_PROTO_CISCO: u32 = 8194;
2878pub const IF_PROTO_FR: u32 = 8195;
2879pub const IF_PROTO_FR_ADD_PVC: u32 = 8196;
2880pub const IF_PROTO_FR_DEL_PVC: u32 = 8197;
2881pub const IF_PROTO_X25: u32 = 8198;
2882pub const IF_PROTO_HDLC_ETH: u32 = 8199;
2883pub const IF_PROTO_FR_ADD_ETH_PVC: u32 = 8200;
2884pub const IF_PROTO_FR_DEL_ETH_PVC: u32 = 8201;
2885pub const IF_PROTO_FR_PVC: u32 = 8202;
2886pub const IF_PROTO_FR_ETH_PVC: u32 = 8203;
2887pub const IF_PROTO_RAW: u32 = 8204;
2888pub const IFHWADDRLEN: u32 = 6;
2889pub const ETH_ALEN: u32 = 6;
2890pub const ETH_TLEN: u32 = 2;
2891pub const ETH_HLEN: u32 = 14;
2892pub const ETH_ZLEN: u32 = 60;
2893pub const ETH_DATA_LEN: u32 = 1500;
2894pub const ETH_FRAME_LEN: u32 = 1514;
2895pub const ETH_FCS_LEN: u32 = 4;
2896pub const ETH_MIN_MTU: u32 = 68;
2897pub const ETH_MAX_MTU: u32 = 65535;
2898pub const ETH_P_LOOP: u32 = 96;
2899pub const ETH_P_PUP: u32 = 512;
2900pub const ETH_P_PUPAT: u32 = 513;
2901pub const ETH_P_TSN: u32 = 8944;
2902pub const ETH_P_ERSPAN2: u32 = 8939;
2903pub const ETH_P_IP: u32 = 2048;
2904pub const ETH_P_X25: u32 = 2053;
2905pub const ETH_P_ARP: u32 = 2054;
2906pub const ETH_P_BPQ: u32 = 2303;
2907pub const ETH_P_IEEEPUP: u32 = 2560;
2908pub const ETH_P_IEEEPUPAT: u32 = 2561;
2909pub const ETH_P_BATMAN: u32 = 17157;
2910pub const ETH_P_DEC: u32 = 24576;
2911pub const ETH_P_DNA_DL: u32 = 24577;
2912pub const ETH_P_DNA_RC: u32 = 24578;
2913pub const ETH_P_DNA_RT: u32 = 24579;
2914pub const ETH_P_LAT: u32 = 24580;
2915pub const ETH_P_DIAG: u32 = 24581;
2916pub const ETH_P_CUST: u32 = 24582;
2917pub const ETH_P_SCA: u32 = 24583;
2918pub const ETH_P_TEB: u32 = 25944;
2919pub const ETH_P_RARP: u32 = 32821;
2920pub const ETH_P_ATALK: u32 = 32923;
2921pub const ETH_P_AARP: u32 = 33011;
2922pub const ETH_P_8021Q: u32 = 33024;
2923pub const ETH_P_ERSPAN: u32 = 35006;
2924pub const ETH_P_IPX: u32 = 33079;
2925pub const ETH_P_IPV6: u32 = 34525;
2926pub const ETH_P_PAUSE: u32 = 34824;
2927pub const ETH_P_SLOW: u32 = 34825;
2928pub const ETH_P_WCCP: u32 = 34878;
2929pub const ETH_P_MPLS_UC: u32 = 34887;
2930pub const ETH_P_MPLS_MC: u32 = 34888;
2931pub const ETH_P_ATMMPOA: u32 = 34892;
2932pub const ETH_P_PPP_DISC: u32 = 34915;
2933pub const ETH_P_PPP_SES: u32 = 34916;
2934pub const ETH_P_LINK_CTL: u32 = 34924;
2935pub const ETH_P_ATMFATE: u32 = 34948;
2936pub const ETH_P_PAE: u32 = 34958;
2937pub const ETH_P_PROFINET: u32 = 34962;
2938pub const ETH_P_REALTEK: u32 = 34969;
2939pub const ETH_P_AOE: u32 = 34978;
2940pub const ETH_P_ETHERCAT: u32 = 34980;
2941pub const ETH_P_8021AD: u32 = 34984;
2942pub const ETH_P_802_EX1: u32 = 34997;
2943pub const ETH_P_PREAUTH: u32 = 35015;
2944pub const ETH_P_TIPC: u32 = 35018;
2945pub const ETH_P_LLDP: u32 = 35020;
2946pub const ETH_P_MRP: u32 = 35043;
2947pub const ETH_P_MACSEC: u32 = 35045;
2948pub const ETH_P_8021AH: u32 = 35047;
2949pub const ETH_P_MVRP: u32 = 35061;
2950pub const ETH_P_1588: u32 = 35063;
2951pub const ETH_P_NCSI: u32 = 35064;
2952pub const ETH_P_PRP: u32 = 35067;
2953pub const ETH_P_CFM: u32 = 35074;
2954pub const ETH_P_FCOE: u32 = 35078;
2955pub const ETH_P_IBOE: u32 = 35093;
2956pub const ETH_P_TDLS: u32 = 35085;
2957pub const ETH_P_FIP: u32 = 35092;
2958pub const ETH_P_80221: u32 = 35095;
2959pub const ETH_P_HSR: u32 = 35119;
2960pub const ETH_P_NSH: u32 = 35151;
2961pub const ETH_P_LOOPBACK: u32 = 36864;
2962pub const ETH_P_QINQ1: u32 = 37120;
2963pub const ETH_P_QINQ2: u32 = 37376;
2964pub const ETH_P_QINQ3: u32 = 37632;
2965pub const ETH_P_EDSA: u32 = 56026;
2966pub const ETH_P_DSA_8021Q: u32 = 56027;
2967pub const ETH_P_DSA_A5PSW: u32 = 57345;
2968pub const ETH_P_IFE: u32 = 60734;
2969pub const ETH_P_AF_IUCV: u32 = 64507;
2970pub const ETH_P_802_3_MIN: u32 = 1536;
2971pub const ETH_P_802_3: u32 = 1;
2972pub const ETH_P_AX25: u32 = 2;
2973pub const ETH_P_ALL: u32 = 3;
2974pub const ETH_P_802_2: u32 = 4;
2975pub const ETH_P_SNAP: u32 = 5;
2976pub const ETH_P_DDCMP: u32 = 6;
2977pub const ETH_P_WAN_PPP: u32 = 7;
2978pub const ETH_P_PPP_MP: u32 = 8;
2979pub const ETH_P_LOCALTALK: u32 = 9;
2980pub const ETH_P_CAN: u32 = 12;
2981pub const ETH_P_CANFD: u32 = 13;
2982pub const ETH_P_CANXL: u32 = 14;
2983pub const ETH_P_PPPTALK: u32 = 16;
2984pub const ETH_P_TR_802_2: u32 = 17;
2985pub const ETH_P_MOBITEX: u32 = 21;
2986pub const ETH_P_CONTROL: u32 = 22;
2987pub const ETH_P_IRDA: u32 = 23;
2988pub const ETH_P_ECONET: u32 = 24;
2989pub const ETH_P_HDLC: u32 = 25;
2990pub const ETH_P_ARCNET: u32 = 26;
2991pub const ETH_P_DSA: u32 = 27;
2992pub const ETH_P_TRAILER: u32 = 28;
2993pub const ETH_P_PHONET: u32 = 245;
2994pub const ETH_P_IEEE802154: u32 = 246;
2995pub const ETH_P_CAIF: u32 = 247;
2996pub const ETH_P_XDSA: u32 = 248;
2997pub const ETH_P_MAP: u32 = 249;
2998pub const ETH_P_MCTP: u32 = 250;
2999pub const __UAPI_DEF_ETHHDR: u32 = 1;
3000pub const PACKET_HOST: u32 = 0;
3001pub const PACKET_BROADCAST: u32 = 1;
3002pub const PACKET_MULTICAST: u32 = 2;
3003pub const PACKET_OTHERHOST: u32 = 3;
3004pub const PACKET_OUTGOING: u32 = 4;
3005pub const PACKET_LOOPBACK: u32 = 5;
3006pub const PACKET_USER: u32 = 6;
3007pub const PACKET_KERNEL: u32 = 7;
3008pub const PACKET_FASTROUTE: u32 = 6;
3009pub const PACKET_ADD_MEMBERSHIP: u32 = 1;
3010pub const PACKET_DROP_MEMBERSHIP: u32 = 2;
3011pub const PACKET_RECV_OUTPUT: u32 = 3;
3012pub const PACKET_RX_RING: u32 = 5;
3013pub const PACKET_STATISTICS: u32 = 6;
3014pub const PACKET_COPY_THRESH: u32 = 7;
3015pub const PACKET_AUXDATA: u32 = 8;
3016pub const PACKET_ORIGDEV: u32 = 9;
3017pub const PACKET_VERSION: u32 = 10;
3018pub const PACKET_HDRLEN: u32 = 11;
3019pub const PACKET_RESERVE: u32 = 12;
3020pub const PACKET_TX_RING: u32 = 13;
3021pub const PACKET_LOSS: u32 = 14;
3022pub const PACKET_VNET_HDR: u32 = 15;
3023pub const PACKET_TX_TIMESTAMP: u32 = 16;
3024pub const PACKET_TIMESTAMP: u32 = 17;
3025pub const PACKET_FANOUT: u32 = 18;
3026pub const PACKET_TX_HAS_OFF: u32 = 19;
3027pub const PACKET_QDISC_BYPASS: u32 = 20;
3028pub const PACKET_ROLLOVER_STATS: u32 = 21;
3029pub const PACKET_FANOUT_DATA: u32 = 22;
3030pub const PACKET_IGNORE_OUTGOING: u32 = 23;
3031pub const PACKET_VNET_HDR_SZ: u32 = 24;
3032pub const PACKET_FANOUT_HASH: u32 = 0;
3033pub const PACKET_FANOUT_LB: u32 = 1;
3034pub const PACKET_FANOUT_CPU: u32 = 2;
3035pub const PACKET_FANOUT_ROLLOVER: u32 = 3;
3036pub const PACKET_FANOUT_RND: u32 = 4;
3037pub const PACKET_FANOUT_QM: u32 = 5;
3038pub const PACKET_FANOUT_CBPF: u32 = 6;
3039pub const PACKET_FANOUT_EBPF: u32 = 7;
3040pub const PACKET_FANOUT_FLAG_ROLLOVER: u32 = 4096;
3041pub const PACKET_FANOUT_FLAG_UNIQUEID: u32 = 8192;
3042pub const PACKET_FANOUT_FLAG_IGNORE_OUTGOING: u32 = 16384;
3043pub const PACKET_FANOUT_FLAG_DEFRAG: u32 = 32768;
3044pub const TP_STATUS_KERNEL: u32 = 0;
3045pub const TP_STATUS_USER: u32 = 1;
3046pub const TP_STATUS_COPY: u32 = 2;
3047pub const TP_STATUS_LOSING: u32 = 4;
3048pub const TP_STATUS_CSUMNOTREADY: u32 = 8;
3049pub const TP_STATUS_VLAN_VALID: u32 = 16;
3050pub const TP_STATUS_BLK_TMO: u32 = 32;
3051pub const TP_STATUS_VLAN_TPID_VALID: u32 = 64;
3052pub const TP_STATUS_CSUM_VALID: u32 = 128;
3053pub const TP_STATUS_GSO_TCP: u32 = 256;
3054pub const TP_STATUS_AVAILABLE: u32 = 0;
3055pub const TP_STATUS_SEND_REQUEST: u32 = 1;
3056pub const TP_STATUS_SENDING: u32 = 2;
3057pub const TP_STATUS_WRONG_FORMAT: u32 = 4;
3058pub const TP_STATUS_TS_SOFTWARE: u32 = 536870912;
3059pub const TP_STATUS_TS_SYS_HARDWARE: u32 = 1073741824;
3060pub const TP_STATUS_TS_RAW_HARDWARE: u32 = 2147483648;
3061pub const TP_FT_REQ_FILL_RXHASH: u32 = 1;
3062pub const TPACKET_ALIGNMENT: u32 = 16;
3063pub const PACKET_MR_MULTICAST: u32 = 0;
3064pub const PACKET_MR_PROMISC: u32 = 1;
3065pub const PACKET_MR_ALLMULTI: u32 = 2;
3066pub const PACKET_MR_UNICAST: u32 = 3;
3067pub const MAX_ADDR_LEN: u32 = 32;
3068pub const INIT_NETDEV_GROUP: u32 = 0;
3069pub const NET_NAME_UNKNOWN: u32 = 0;
3070pub const NET_NAME_ENUM: u32 = 1;
3071pub const NET_NAME_PREDICTABLE: u32 = 2;
3072pub const NET_NAME_USER: u32 = 3;
3073pub const NET_NAME_RENAMED: u32 = 4;
3074pub const NET_ADDR_PERM: u32 = 0;
3075pub const NET_ADDR_RANDOM: u32 = 1;
3076pub const NET_ADDR_STOLEN: u32 = 2;
3077pub const NET_ADDR_SET: u32 = 3;
3078pub const ARPHRD_NETROM: u32 = 0;
3079pub const ARPHRD_ETHER: u32 = 1;
3080pub const ARPHRD_EETHER: u32 = 2;
3081pub const ARPHRD_AX25: u32 = 3;
3082pub const ARPHRD_PRONET: u32 = 4;
3083pub const ARPHRD_CHAOS: u32 = 5;
3084pub const ARPHRD_IEEE802: u32 = 6;
3085pub const ARPHRD_ARCNET: u32 = 7;
3086pub const ARPHRD_APPLETLK: u32 = 8;
3087pub const ARPHRD_DLCI: u32 = 15;
3088pub const ARPHRD_ATM: u32 = 19;
3089pub const ARPHRD_METRICOM: u32 = 23;
3090pub const ARPHRD_IEEE1394: u32 = 24;
3091pub const ARPHRD_EUI64: u32 = 27;
3092pub const ARPHRD_INFINIBAND: u32 = 32;
3093pub const ARPHRD_SLIP: u32 = 256;
3094pub const ARPHRD_CSLIP: u32 = 257;
3095pub const ARPHRD_SLIP6: u32 = 258;
3096pub const ARPHRD_CSLIP6: u32 = 259;
3097pub const ARPHRD_RSRVD: u32 = 260;
3098pub const ARPHRD_ADAPT: u32 = 264;
3099pub const ARPHRD_ROSE: u32 = 270;
3100pub const ARPHRD_X25: u32 = 271;
3101pub const ARPHRD_HWX25: u32 = 272;
3102pub const ARPHRD_CAN: u32 = 280;
3103pub const ARPHRD_MCTP: u32 = 290;
3104pub const ARPHRD_PPP: u32 = 512;
3105pub const ARPHRD_CISCO: u32 = 513;
3106pub const ARPHRD_HDLC: u32 = 513;
3107pub const ARPHRD_LAPB: u32 = 516;
3108pub const ARPHRD_DDCMP: u32 = 517;
3109pub const ARPHRD_RAWHDLC: u32 = 518;
3110pub const ARPHRD_RAWIP: u32 = 519;
3111pub const ARPHRD_TUNNEL: u32 = 768;
3112pub const ARPHRD_TUNNEL6: u32 = 769;
3113pub const ARPHRD_FRAD: u32 = 770;
3114pub const ARPHRD_SKIP: u32 = 771;
3115pub const ARPHRD_LOOPBACK: u32 = 772;
3116pub const ARPHRD_LOCALTLK: u32 = 773;
3117pub const ARPHRD_FDDI: u32 = 774;
3118pub const ARPHRD_BIF: u32 = 775;
3119pub const ARPHRD_SIT: u32 = 776;
3120pub const ARPHRD_IPDDP: u32 = 777;
3121pub const ARPHRD_IPGRE: u32 = 778;
3122pub const ARPHRD_PIMREG: u32 = 779;
3123pub const ARPHRD_HIPPI: u32 = 780;
3124pub const ARPHRD_ASH: u32 = 781;
3125pub const ARPHRD_ECONET: u32 = 782;
3126pub const ARPHRD_IRDA: u32 = 783;
3127pub const ARPHRD_FCPP: u32 = 784;
3128pub const ARPHRD_FCAL: u32 = 785;
3129pub const ARPHRD_FCPL: u32 = 786;
3130pub const ARPHRD_FCFABRIC: u32 = 787;
3131pub const ARPHRD_IEEE802_TR: u32 = 800;
3132pub const ARPHRD_IEEE80211: u32 = 801;
3133pub const ARPHRD_IEEE80211_PRISM: u32 = 802;
3134pub const ARPHRD_IEEE80211_RADIOTAP: u32 = 803;
3135pub const ARPHRD_IEEE802154: u32 = 804;
3136pub const ARPHRD_IEEE802154_MONITOR: u32 = 805;
3137pub const ARPHRD_PHONET: u32 = 820;
3138pub const ARPHRD_PHONET_PIPE: u32 = 821;
3139pub const ARPHRD_CAIF: u32 = 822;
3140pub const ARPHRD_IP6GRE: u32 = 823;
3141pub const ARPHRD_NETLINK: u32 = 824;
3142pub const ARPHRD_6LOWPAN: u32 = 825;
3143pub const ARPHRD_VSOCKMON: u32 = 826;
3144pub const ARPHRD_VOID: u32 = 65535;
3145pub const ARPHRD_NONE: u32 = 65534;
3146pub const ARPOP_REQUEST: u32 = 1;
3147pub const ARPOP_REPLY: u32 = 2;
3148pub const ARPOP_RREQUEST: u32 = 3;
3149pub const ARPOP_RREPLY: u32 = 4;
3150pub const ARPOP_InREQUEST: u32 = 8;
3151pub const ARPOP_InREPLY: u32 = 9;
3152pub const ARPOP_NAK: u32 = 10;
3153pub const ATF_COM: u32 = 2;
3154pub const ATF_PERM: u32 = 4;
3155pub const ATF_PUBL: u32 = 8;
3156pub const ATF_USETRAILERS: u32 = 16;
3157pub const ATF_NETMASK: u32 = 32;
3158pub const ATF_DONTPUB: u32 = 64;
3159pub const TUN_READQ_SIZE: u32 = 500;
3160pub const TUN_TYPE_MASK: u32 = 15;
3161pub const IFF_TUN: u32 = 1;
3162pub const IFF_TAP: u32 = 2;
3163pub const IFF_NAPI: u32 = 16;
3164pub const IFF_NAPI_FRAGS: u32 = 32;
3165pub const IFF_NO_CARRIER: u32 = 64;
3166pub const IFF_NO_PI: u32 = 4096;
3167pub const IFF_ONE_QUEUE: u32 = 8192;
3168pub const IFF_VNET_HDR: u32 = 16384;
3169pub const IFF_TUN_EXCL: u32 = 32768;
3170pub const IFF_MULTI_QUEUE: u32 = 256;
3171pub const IFF_ATTACH_QUEUE: u32 = 512;
3172pub const IFF_DETACH_QUEUE: u32 = 1024;
3173pub const IFF_PERSIST: u32 = 2048;
3174pub const IFF_NOFILTER: u32 = 4096;
3175pub const TUN_TX_TIMESTAMP: u32 = 1;
3176pub const TUN_F_CSUM: u32 = 1;
3177pub const TUN_F_TSO4: u32 = 2;
3178pub const TUN_F_TSO6: u32 = 4;
3179pub const TUN_F_TSO_ECN: u32 = 8;
3180pub const TUN_F_UFO: u32 = 16;
3181pub const TUN_F_USO4: u32 = 32;
3182pub const TUN_F_USO6: u32 = 64;
3183pub const TUN_PKT_STRIP: u32 = 1;
3184pub const TUN_FLT_ALLMULTI: u32 = 1;
3185pub const IN_ACCESS: u32 = 1;
3186pub const IN_MODIFY: u32 = 2;
3187pub const IN_ATTRIB: u32 = 4;
3188pub const IN_CLOSE_WRITE: u32 = 8;
3189pub const IN_CLOSE_NOWRITE: u32 = 16;
3190pub const IN_OPEN: u32 = 32;
3191pub const IN_MOVED_FROM: u32 = 64;
3192pub const IN_MOVED_TO: u32 = 128;
3193pub const IN_CREATE: u32 = 256;
3194pub const IN_DELETE: u32 = 512;
3195pub const IN_DELETE_SELF: u32 = 1024;
3196pub const IN_MOVE_SELF: u32 = 2048;
3197pub const IN_UNMOUNT: u32 = 8192;
3198pub const IN_Q_OVERFLOW: u32 = 16384;
3199pub const IN_IGNORED: u32 = 32768;
3200pub const IN_CLOSE: u32 = 24;
3201pub const IN_MOVE: u32 = 192;
3202pub const IN_ONLYDIR: u32 = 16777216;
3203pub const IN_DONT_FOLLOW: u32 = 33554432;
3204pub const IN_EXCL_UNLINK: u32 = 67108864;
3205pub const IN_MASK_CREATE: u32 = 268435456;
3206pub const IN_MASK_ADD: u32 = 536870912;
3207pub const IN_ISDIR: u32 = 1073741824;
3208pub const IN_ONESHOT: u32 = 2147483648;
3209pub const IN_ALL_EVENTS: u32 = 4095;
3210pub const IN_CLOEXEC: u32 = 524288;
3211pub const IN_NONBLOCK: u32 = 2048;
3212pub const ITIMER_REAL: u32 = 0;
3213pub const ITIMER_VIRTUAL: u32 = 1;
3214pub const ITIMER_PROF: u32 = 2;
3215pub const CLOCK_REALTIME: u32 = 0;
3216pub const CLOCK_MONOTONIC: u32 = 1;
3217pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2;
3218pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3;
3219pub const CLOCK_MONOTONIC_RAW: u32 = 4;
3220pub const CLOCK_REALTIME_COARSE: u32 = 5;
3221pub const CLOCK_MONOTONIC_COARSE: u32 = 6;
3222pub const CLOCK_BOOTTIME: u32 = 7;
3223pub const CLOCK_REALTIME_ALARM: u32 = 8;
3224pub const CLOCK_BOOTTIME_ALARM: u32 = 9;
3225pub const CLOCK_SGI_CYCLE: u32 = 10;
3226pub const CLOCK_TAI: u32 = 11;
3227pub const MAX_CLOCKS: u32 = 16;
3228pub const CLOCKS_MASK: u32 = 1;
3229pub const CLOCKS_MONO: u32 = 1;
3230pub const TIMER_ABSTIME: u32 = 1;
3231pub const INPUT_PROP_POINTER: u32 = 0;
3232pub const INPUT_PROP_DIRECT: u32 = 1;
3233pub const INPUT_PROP_BUTTONPAD: u32 = 2;
3234pub const INPUT_PROP_SEMI_MT: u32 = 3;
3235pub const INPUT_PROP_TOPBUTTONPAD: u32 = 4;
3236pub const INPUT_PROP_POINTING_STICK: u32 = 5;
3237pub const INPUT_PROP_ACCELEROMETER: u32 = 6;
3238pub const INPUT_PROP_MAX: u32 = 31;
3239pub const INPUT_PROP_CNT: u32 = 32;
3240pub const EV_SYN: u32 = 0;
3241pub const EV_KEY: u32 = 1;
3242pub const EV_REL: u32 = 2;
3243pub const EV_ABS: u32 = 3;
3244pub const EV_MSC: u32 = 4;
3245pub const EV_SW: u32 = 5;
3246pub const EV_LED: u32 = 17;
3247pub const EV_SND: u32 = 18;
3248pub const EV_REP: u32 = 20;
3249pub const EV_FF: u32 = 21;
3250pub const EV_PWR: u32 = 22;
3251pub const EV_FF_STATUS: u32 = 23;
3252pub const EV_MAX: u32 = 31;
3253pub const EV_CNT: u32 = 32;
3254pub const SYN_REPORT: u32 = 0;
3255pub const SYN_CONFIG: u32 = 1;
3256pub const SYN_MT_REPORT: u32 = 2;
3257pub const SYN_DROPPED: u32 = 3;
3258pub const SYN_MAX: u32 = 15;
3259pub const SYN_CNT: u32 = 16;
3260pub const KEY_RESERVED: u32 = 0;
3261pub const KEY_ESC: u32 = 1;
3262pub const KEY_1: u32 = 2;
3263pub const KEY_2: u32 = 3;
3264pub const KEY_3: u32 = 4;
3265pub const KEY_4: u32 = 5;
3266pub const KEY_5: u32 = 6;
3267pub const KEY_6: u32 = 7;
3268pub const KEY_7: u32 = 8;
3269pub const KEY_8: u32 = 9;
3270pub const KEY_9: u32 = 10;
3271pub const KEY_0: u32 = 11;
3272pub const KEY_MINUS: u32 = 12;
3273pub const KEY_EQUAL: u32 = 13;
3274pub const KEY_BACKSPACE: u32 = 14;
3275pub const KEY_TAB: u32 = 15;
3276pub const KEY_Q: u32 = 16;
3277pub const KEY_W: u32 = 17;
3278pub const KEY_E: u32 = 18;
3279pub const KEY_R: u32 = 19;
3280pub const KEY_T: u32 = 20;
3281pub const KEY_Y: u32 = 21;
3282pub const KEY_U: u32 = 22;
3283pub const KEY_I: u32 = 23;
3284pub const KEY_O: u32 = 24;
3285pub const KEY_P: u32 = 25;
3286pub const KEY_LEFTBRACE: u32 = 26;
3287pub const KEY_RIGHTBRACE: u32 = 27;
3288pub const KEY_ENTER: u32 = 28;
3289pub const KEY_LEFTCTRL: u32 = 29;
3290pub const KEY_A: u32 = 30;
3291pub const KEY_S: u32 = 31;
3292pub const KEY_D: u32 = 32;
3293pub const KEY_F: u32 = 33;
3294pub const KEY_G: u32 = 34;
3295pub const KEY_H: u32 = 35;
3296pub const KEY_J: u32 = 36;
3297pub const KEY_K: u32 = 37;
3298pub const KEY_L: u32 = 38;
3299pub const KEY_SEMICOLON: u32 = 39;
3300pub const KEY_APOSTROPHE: u32 = 40;
3301pub const KEY_GRAVE: u32 = 41;
3302pub const KEY_LEFTSHIFT: u32 = 42;
3303pub const KEY_BACKSLASH: u32 = 43;
3304pub const KEY_Z: u32 = 44;
3305pub const KEY_X: u32 = 45;
3306pub const KEY_C: u32 = 46;
3307pub const KEY_V: u32 = 47;
3308pub const KEY_B: u32 = 48;
3309pub const KEY_N: u32 = 49;
3310pub const KEY_M: u32 = 50;
3311pub const KEY_COMMA: u32 = 51;
3312pub const KEY_DOT: u32 = 52;
3313pub const KEY_SLASH: u32 = 53;
3314pub const KEY_RIGHTSHIFT: u32 = 54;
3315pub const KEY_KPASTERISK: u32 = 55;
3316pub const KEY_LEFTALT: u32 = 56;
3317pub const KEY_SPACE: u32 = 57;
3318pub const KEY_CAPSLOCK: u32 = 58;
3319pub const KEY_F1: u32 = 59;
3320pub const KEY_F2: u32 = 60;
3321pub const KEY_F3: u32 = 61;
3322pub const KEY_F4: u32 = 62;
3323pub const KEY_F5: u32 = 63;
3324pub const KEY_F6: u32 = 64;
3325pub const KEY_F7: u32 = 65;
3326pub const KEY_F8: u32 = 66;
3327pub const KEY_F9: u32 = 67;
3328pub const KEY_F10: u32 = 68;
3329pub const KEY_NUMLOCK: u32 = 69;
3330pub const KEY_SCROLLLOCK: u32 = 70;
3331pub const KEY_KP7: u32 = 71;
3332pub const KEY_KP8: u32 = 72;
3333pub const KEY_KP9: u32 = 73;
3334pub const KEY_KPMINUS: u32 = 74;
3335pub const KEY_KP4: u32 = 75;
3336pub const KEY_KP5: u32 = 76;
3337pub const KEY_KP6: u32 = 77;
3338pub const KEY_KPPLUS: u32 = 78;
3339pub const KEY_KP1: u32 = 79;
3340pub const KEY_KP2: u32 = 80;
3341pub const KEY_KP3: u32 = 81;
3342pub const KEY_KP0: u32 = 82;
3343pub const KEY_KPDOT: u32 = 83;
3344pub const KEY_ZENKAKUHANKAKU: u32 = 85;
3345pub const KEY_102ND: u32 = 86;
3346pub const KEY_F11: u32 = 87;
3347pub const KEY_F12: u32 = 88;
3348pub const KEY_RO: u32 = 89;
3349pub const KEY_KATAKANA: u32 = 90;
3350pub const KEY_HIRAGANA: u32 = 91;
3351pub const KEY_HENKAN: u32 = 92;
3352pub const KEY_KATAKANAHIRAGANA: u32 = 93;
3353pub const KEY_MUHENKAN: u32 = 94;
3354pub const KEY_KPJPCOMMA: u32 = 95;
3355pub const KEY_KPENTER: u32 = 96;
3356pub const KEY_RIGHTCTRL: u32 = 97;
3357pub const KEY_KPSLASH: u32 = 98;
3358pub const KEY_SYSRQ: u32 = 99;
3359pub const KEY_RIGHTALT: u32 = 100;
3360pub const KEY_LINEFEED: u32 = 101;
3361pub const KEY_HOME: u32 = 102;
3362pub const KEY_UP: u32 = 103;
3363pub const KEY_PAGEUP: u32 = 104;
3364pub const KEY_LEFT: u32 = 105;
3365pub const KEY_RIGHT: u32 = 106;
3366pub const KEY_END: u32 = 107;
3367pub const KEY_DOWN: u32 = 108;
3368pub const KEY_PAGEDOWN: u32 = 109;
3369pub const KEY_INSERT: u32 = 110;
3370pub const KEY_DELETE: u32 = 111;
3371pub const KEY_MACRO: u32 = 112;
3372pub const KEY_MUTE: u32 = 113;
3373pub const KEY_VOLUMEDOWN: u32 = 114;
3374pub const KEY_VOLUMEUP: u32 = 115;
3375pub const KEY_POWER: u32 = 116;
3376pub const KEY_KPEQUAL: u32 = 117;
3377pub const KEY_KPPLUSMINUS: u32 = 118;
3378pub const KEY_PAUSE: u32 = 119;
3379pub const KEY_SCALE: u32 = 120;
3380pub const KEY_KPCOMMA: u32 = 121;
3381pub const KEY_HANGEUL: u32 = 122;
3382pub const KEY_HANGUEL: u32 = 122;
3383pub const KEY_HANJA: u32 = 123;
3384pub const KEY_YEN: u32 = 124;
3385pub const KEY_LEFTMETA: u32 = 125;
3386pub const KEY_RIGHTMETA: u32 = 126;
3387pub const KEY_COMPOSE: u32 = 127;
3388pub const KEY_STOP: u32 = 128;
3389pub const KEY_AGAIN: u32 = 129;
3390pub const KEY_PROPS: u32 = 130;
3391pub const KEY_UNDO: u32 = 131;
3392pub const KEY_FRONT: u32 = 132;
3393pub const KEY_COPY: u32 = 133;
3394pub const KEY_OPEN: u32 = 134;
3395pub const KEY_PASTE: u32 = 135;
3396pub const KEY_FIND: u32 = 136;
3397pub const KEY_CUT: u32 = 137;
3398pub const KEY_HELP: u32 = 138;
3399pub const KEY_MENU: u32 = 139;
3400pub const KEY_CALC: u32 = 140;
3401pub const KEY_SETUP: u32 = 141;
3402pub const KEY_SLEEP: u32 = 142;
3403pub const KEY_WAKEUP: u32 = 143;
3404pub const KEY_FILE: u32 = 144;
3405pub const KEY_SENDFILE: u32 = 145;
3406pub const KEY_DELETEFILE: u32 = 146;
3407pub const KEY_XFER: u32 = 147;
3408pub const KEY_PROG1: u32 = 148;
3409pub const KEY_PROG2: u32 = 149;
3410pub const KEY_WWW: u32 = 150;
3411pub const KEY_MSDOS: u32 = 151;
3412pub const KEY_COFFEE: u32 = 152;
3413pub const KEY_SCREENLOCK: u32 = 152;
3414pub const KEY_ROTATE_DISPLAY: u32 = 153;
3415pub const KEY_DIRECTION: u32 = 153;
3416pub const KEY_CYCLEWINDOWS: u32 = 154;
3417pub const KEY_MAIL: u32 = 155;
3418pub const KEY_BOOKMARKS: u32 = 156;
3419pub const KEY_COMPUTER: u32 = 157;
3420pub const KEY_BACK: u32 = 158;
3421pub const KEY_FORWARD: u32 = 159;
3422pub const KEY_CLOSECD: u32 = 160;
3423pub const KEY_EJECTCD: u32 = 161;
3424pub const KEY_EJECTCLOSECD: u32 = 162;
3425pub const KEY_NEXTSONG: u32 = 163;
3426pub const KEY_PLAYPAUSE: u32 = 164;
3427pub const KEY_PREVIOUSSONG: u32 = 165;
3428pub const KEY_STOPCD: u32 = 166;
3429pub const KEY_RECORD: u32 = 167;
3430pub const KEY_REWIND: u32 = 168;
3431pub const KEY_PHONE: u32 = 169;
3432pub const KEY_ISO: u32 = 170;
3433pub const KEY_CONFIG: u32 = 171;
3434pub const KEY_HOMEPAGE: u32 = 172;
3435pub const KEY_REFRESH: u32 = 173;
3436pub const KEY_EXIT: u32 = 174;
3437pub const KEY_MOVE: u32 = 175;
3438pub const KEY_EDIT: u32 = 176;
3439pub const KEY_SCROLLUP: u32 = 177;
3440pub const KEY_SCROLLDOWN: u32 = 178;
3441pub const KEY_KPLEFTPAREN: u32 = 179;
3442pub const KEY_KPRIGHTPAREN: u32 = 180;
3443pub const KEY_NEW: u32 = 181;
3444pub const KEY_REDO: u32 = 182;
3445pub const KEY_F13: u32 = 183;
3446pub const KEY_F14: u32 = 184;
3447pub const KEY_F15: u32 = 185;
3448pub const KEY_F16: u32 = 186;
3449pub const KEY_F17: u32 = 187;
3450pub const KEY_F18: u32 = 188;
3451pub const KEY_F19: u32 = 189;
3452pub const KEY_F20: u32 = 190;
3453pub const KEY_F21: u32 = 191;
3454pub const KEY_F22: u32 = 192;
3455pub const KEY_F23: u32 = 193;
3456pub const KEY_F24: u32 = 194;
3457pub const KEY_PLAYCD: u32 = 200;
3458pub const KEY_PAUSECD: u32 = 201;
3459pub const KEY_PROG3: u32 = 202;
3460pub const KEY_PROG4: u32 = 203;
3461pub const KEY_ALL_APPLICATIONS: u32 = 204;
3462pub const KEY_DASHBOARD: u32 = 204;
3463pub const KEY_SUSPEND: u32 = 205;
3464pub const KEY_CLOSE: u32 = 206;
3465pub const KEY_PLAY: u32 = 207;
3466pub const KEY_FASTFORWARD: u32 = 208;
3467pub const KEY_BASSBOOST: u32 = 209;
3468pub const KEY_PRINT: u32 = 210;
3469pub const KEY_HP: u32 = 211;
3470pub const KEY_CAMERA: u32 = 212;
3471pub const KEY_SOUND: u32 = 213;
3472pub const KEY_QUESTION: u32 = 214;
3473pub const KEY_EMAIL: u32 = 215;
3474pub const KEY_CHAT: u32 = 216;
3475pub const KEY_SEARCH: u32 = 217;
3476pub const KEY_CONNECT: u32 = 218;
3477pub const KEY_FINANCE: u32 = 219;
3478pub const KEY_SPORT: u32 = 220;
3479pub const KEY_SHOP: u32 = 221;
3480pub const KEY_ALTERASE: u32 = 222;
3481pub const KEY_CANCEL: u32 = 223;
3482pub const KEY_BRIGHTNESSDOWN: u32 = 224;
3483pub const KEY_BRIGHTNESSUP: u32 = 225;
3484pub const KEY_MEDIA: u32 = 226;
3485pub const KEY_SWITCHVIDEOMODE: u32 = 227;
3486pub const KEY_KBDILLUMTOGGLE: u32 = 228;
3487pub const KEY_KBDILLUMDOWN: u32 = 229;
3488pub const KEY_KBDILLUMUP: u32 = 230;
3489pub const KEY_SEND: u32 = 231;
3490pub const KEY_REPLY: u32 = 232;
3491pub const KEY_FORWARDMAIL: u32 = 233;
3492pub const KEY_SAVE: u32 = 234;
3493pub const KEY_DOCUMENTS: u32 = 235;
3494pub const KEY_BATTERY: u32 = 236;
3495pub const KEY_BLUETOOTH: u32 = 237;
3496pub const KEY_WLAN: u32 = 238;
3497pub const KEY_UWB: u32 = 239;
3498pub const KEY_UNKNOWN: u32 = 240;
3499pub const KEY_VIDEO_NEXT: u32 = 241;
3500pub const KEY_VIDEO_PREV: u32 = 242;
3501pub const KEY_BRIGHTNESS_CYCLE: u32 = 243;
3502pub const KEY_BRIGHTNESS_AUTO: u32 = 244;
3503pub const KEY_BRIGHTNESS_ZERO: u32 = 244;
3504pub const KEY_DISPLAY_OFF: u32 = 245;
3505pub const KEY_WWAN: u32 = 246;
3506pub const KEY_WIMAX: u32 = 246;
3507pub const KEY_RFKILL: u32 = 247;
3508pub const KEY_MICMUTE: u32 = 248;
3509pub const BTN_MISC: u32 = 256;
3510pub const BTN_0: u32 = 256;
3511pub const BTN_1: u32 = 257;
3512pub const BTN_2: u32 = 258;
3513pub const BTN_3: u32 = 259;
3514pub const BTN_4: u32 = 260;
3515pub const BTN_5: u32 = 261;
3516pub const BTN_6: u32 = 262;
3517pub const BTN_7: u32 = 263;
3518pub const BTN_8: u32 = 264;
3519pub const BTN_9: u32 = 265;
3520pub const BTN_MOUSE: u32 = 272;
3521pub const BTN_LEFT: u32 = 272;
3522pub const BTN_RIGHT: u32 = 273;
3523pub const BTN_MIDDLE: u32 = 274;
3524pub const BTN_SIDE: u32 = 275;
3525pub const BTN_EXTRA: u32 = 276;
3526pub const BTN_FORWARD: u32 = 277;
3527pub const BTN_BACK: u32 = 278;
3528pub const BTN_TASK: u32 = 279;
3529pub const BTN_JOYSTICK: u32 = 288;
3530pub const BTN_TRIGGER: u32 = 288;
3531pub const BTN_THUMB: u32 = 289;
3532pub const BTN_THUMB2: u32 = 290;
3533pub const BTN_TOP: u32 = 291;
3534pub const BTN_TOP2: u32 = 292;
3535pub const BTN_PINKIE: u32 = 293;
3536pub const BTN_BASE: u32 = 294;
3537pub const BTN_BASE2: u32 = 295;
3538pub const BTN_BASE3: u32 = 296;
3539pub const BTN_BASE4: u32 = 297;
3540pub const BTN_BASE5: u32 = 298;
3541pub const BTN_BASE6: u32 = 299;
3542pub const BTN_DEAD: u32 = 303;
3543pub const BTN_GAMEPAD: u32 = 304;
3544pub const BTN_SOUTH: u32 = 304;
3545pub const BTN_A: u32 = 304;
3546pub const BTN_EAST: u32 = 305;
3547pub const BTN_B: u32 = 305;
3548pub const BTN_C: u32 = 306;
3549pub const BTN_NORTH: u32 = 307;
3550pub const BTN_X: u32 = 307;
3551pub const BTN_WEST: u32 = 308;
3552pub const BTN_Y: u32 = 308;
3553pub const BTN_Z: u32 = 309;
3554pub const BTN_TL: u32 = 310;
3555pub const BTN_TR: u32 = 311;
3556pub const BTN_TL2: u32 = 312;
3557pub const BTN_TR2: u32 = 313;
3558pub const BTN_SELECT: u32 = 314;
3559pub const BTN_START: u32 = 315;
3560pub const BTN_MODE: u32 = 316;
3561pub const BTN_THUMBL: u32 = 317;
3562pub const BTN_THUMBR: u32 = 318;
3563pub const BTN_DIGI: u32 = 320;
3564pub const BTN_TOOL_PEN: u32 = 320;
3565pub const BTN_TOOL_RUBBER: u32 = 321;
3566pub const BTN_TOOL_BRUSH: u32 = 322;
3567pub const BTN_TOOL_PENCIL: u32 = 323;
3568pub const BTN_TOOL_AIRBRUSH: u32 = 324;
3569pub const BTN_TOOL_FINGER: u32 = 325;
3570pub const BTN_TOOL_MOUSE: u32 = 326;
3571pub const BTN_TOOL_LENS: u32 = 327;
3572pub const BTN_TOOL_QUINTTAP: u32 = 328;
3573pub const BTN_STYLUS3: u32 = 329;
3574pub const BTN_TOUCH: u32 = 330;
3575pub const BTN_STYLUS: u32 = 331;
3576pub const BTN_STYLUS2: u32 = 332;
3577pub const BTN_TOOL_DOUBLETAP: u32 = 333;
3578pub const BTN_TOOL_TRIPLETAP: u32 = 334;
3579pub const BTN_TOOL_QUADTAP: u32 = 335;
3580pub const BTN_WHEEL: u32 = 336;
3581pub const BTN_GEAR_DOWN: u32 = 336;
3582pub const BTN_GEAR_UP: u32 = 337;
3583pub const KEY_OK: u32 = 352;
3584pub const KEY_SELECT: u32 = 353;
3585pub const KEY_GOTO: u32 = 354;
3586pub const KEY_CLEAR: u32 = 355;
3587pub const KEY_POWER2: u32 = 356;
3588pub const KEY_OPTION: u32 = 357;
3589pub const KEY_INFO: u32 = 358;
3590pub const KEY_TIME: u32 = 359;
3591pub const KEY_VENDOR: u32 = 360;
3592pub const KEY_ARCHIVE: u32 = 361;
3593pub const KEY_PROGRAM: u32 = 362;
3594pub const KEY_CHANNEL: u32 = 363;
3595pub const KEY_FAVORITES: u32 = 364;
3596pub const KEY_EPG: u32 = 365;
3597pub const KEY_PVR: u32 = 366;
3598pub const KEY_MHP: u32 = 367;
3599pub const KEY_LANGUAGE: u32 = 368;
3600pub const KEY_TITLE: u32 = 369;
3601pub const KEY_SUBTITLE: u32 = 370;
3602pub const KEY_ANGLE: u32 = 371;
3603pub const KEY_FULL_SCREEN: u32 = 372;
3604pub const KEY_ZOOM: u32 = 372;
3605pub const KEY_MODE: u32 = 373;
3606pub const KEY_KEYBOARD: u32 = 374;
3607pub const KEY_ASPECT_RATIO: u32 = 375;
3608pub const KEY_SCREEN: u32 = 375;
3609pub const KEY_PC: u32 = 376;
3610pub const KEY_TV: u32 = 377;
3611pub const KEY_TV2: u32 = 378;
3612pub const KEY_VCR: u32 = 379;
3613pub const KEY_VCR2: u32 = 380;
3614pub const KEY_SAT: u32 = 381;
3615pub const KEY_SAT2: u32 = 382;
3616pub const KEY_CD: u32 = 383;
3617pub const KEY_TAPE: u32 = 384;
3618pub const KEY_RADIO: u32 = 385;
3619pub const KEY_TUNER: u32 = 386;
3620pub const KEY_PLAYER: u32 = 387;
3621pub const KEY_TEXT: u32 = 388;
3622pub const KEY_DVD: u32 = 389;
3623pub const KEY_AUX: u32 = 390;
3624pub const KEY_MP3: u32 = 391;
3625pub const KEY_AUDIO: u32 = 392;
3626pub const KEY_VIDEO: u32 = 393;
3627pub const KEY_DIRECTORY: u32 = 394;
3628pub const KEY_LIST: u32 = 395;
3629pub const KEY_MEMO: u32 = 396;
3630pub const KEY_CALENDAR: u32 = 397;
3631pub const KEY_RED: u32 = 398;
3632pub const KEY_GREEN: u32 = 399;
3633pub const KEY_YELLOW: u32 = 400;
3634pub const KEY_BLUE: u32 = 401;
3635pub const KEY_CHANNELUP: u32 = 402;
3636pub const KEY_CHANNELDOWN: u32 = 403;
3637pub const KEY_FIRST: u32 = 404;
3638pub const KEY_LAST: u32 = 405;
3639pub const KEY_AB: u32 = 406;
3640pub const KEY_NEXT: u32 = 407;
3641pub const KEY_RESTART: u32 = 408;
3642pub const KEY_SLOW: u32 = 409;
3643pub const KEY_SHUFFLE: u32 = 410;
3644pub const KEY_BREAK: u32 = 411;
3645pub const KEY_PREVIOUS: u32 = 412;
3646pub const KEY_DIGITS: u32 = 413;
3647pub const KEY_TEEN: u32 = 414;
3648pub const KEY_TWEN: u32 = 415;
3649pub const KEY_VIDEOPHONE: u32 = 416;
3650pub const KEY_GAMES: u32 = 417;
3651pub const KEY_ZOOMIN: u32 = 418;
3652pub const KEY_ZOOMOUT: u32 = 419;
3653pub const KEY_ZOOMRESET: u32 = 420;
3654pub const KEY_WORDPROCESSOR: u32 = 421;
3655pub const KEY_EDITOR: u32 = 422;
3656pub const KEY_SPREADSHEET: u32 = 423;
3657pub const KEY_GRAPHICSEDITOR: u32 = 424;
3658pub const KEY_PRESENTATION: u32 = 425;
3659pub const KEY_DATABASE: u32 = 426;
3660pub const KEY_NEWS: u32 = 427;
3661pub const KEY_VOICEMAIL: u32 = 428;
3662pub const KEY_ADDRESSBOOK: u32 = 429;
3663pub const KEY_MESSENGER: u32 = 430;
3664pub const KEY_DISPLAYTOGGLE: u32 = 431;
3665pub const KEY_BRIGHTNESS_TOGGLE: u32 = 431;
3666pub const KEY_SPELLCHECK: u32 = 432;
3667pub const KEY_LOGOFF: u32 = 433;
3668pub const KEY_DOLLAR: u32 = 434;
3669pub const KEY_EURO: u32 = 435;
3670pub const KEY_FRAMEBACK: u32 = 436;
3671pub const KEY_FRAMEFORWARD: u32 = 437;
3672pub const KEY_CONTEXT_MENU: u32 = 438;
3673pub const KEY_MEDIA_REPEAT: u32 = 439;
3674pub const KEY_10CHANNELSUP: u32 = 440;
3675pub const KEY_10CHANNELSDOWN: u32 = 441;
3676pub const KEY_IMAGES: u32 = 442;
3677pub const KEY_NOTIFICATION_CENTER: u32 = 444;
3678pub const KEY_PICKUP_PHONE: u32 = 445;
3679pub const KEY_HANGUP_PHONE: u32 = 446;
3680pub const KEY_DEL_EOL: u32 = 448;
3681pub const KEY_DEL_EOS: u32 = 449;
3682pub const KEY_INS_LINE: u32 = 450;
3683pub const KEY_DEL_LINE: u32 = 451;
3684pub const KEY_FN: u32 = 464;
3685pub const KEY_FN_ESC: u32 = 465;
3686pub const KEY_FN_F1: u32 = 466;
3687pub const KEY_FN_F2: u32 = 467;
3688pub const KEY_FN_F3: u32 = 468;
3689pub const KEY_FN_F4: u32 = 469;
3690pub const KEY_FN_F5: u32 = 470;
3691pub const KEY_FN_F6: u32 = 471;
3692pub const KEY_FN_F7: u32 = 472;
3693pub const KEY_FN_F8: u32 = 473;
3694pub const KEY_FN_F9: u32 = 474;
3695pub const KEY_FN_F10: u32 = 475;
3696pub const KEY_FN_F11: u32 = 476;
3697pub const KEY_FN_F12: u32 = 477;
3698pub const KEY_FN_1: u32 = 478;
3699pub const KEY_FN_2: u32 = 479;
3700pub const KEY_FN_D: u32 = 480;
3701pub const KEY_FN_E: u32 = 481;
3702pub const KEY_FN_F: u32 = 482;
3703pub const KEY_FN_S: u32 = 483;
3704pub const KEY_FN_B: u32 = 484;
3705pub const KEY_FN_RIGHT_SHIFT: u32 = 485;
3706pub const KEY_BRL_DOT1: u32 = 497;
3707pub const KEY_BRL_DOT2: u32 = 498;
3708pub const KEY_BRL_DOT3: u32 = 499;
3709pub const KEY_BRL_DOT4: u32 = 500;
3710pub const KEY_BRL_DOT5: u32 = 501;
3711pub const KEY_BRL_DOT6: u32 = 502;
3712pub const KEY_BRL_DOT7: u32 = 503;
3713pub const KEY_BRL_DOT8: u32 = 504;
3714pub const KEY_BRL_DOT9: u32 = 505;
3715pub const KEY_BRL_DOT10: u32 = 506;
3716pub const KEY_NUMERIC_0: u32 = 512;
3717pub const KEY_NUMERIC_1: u32 = 513;
3718pub const KEY_NUMERIC_2: u32 = 514;
3719pub const KEY_NUMERIC_3: u32 = 515;
3720pub const KEY_NUMERIC_4: u32 = 516;
3721pub const KEY_NUMERIC_5: u32 = 517;
3722pub const KEY_NUMERIC_6: u32 = 518;
3723pub const KEY_NUMERIC_7: u32 = 519;
3724pub const KEY_NUMERIC_8: u32 = 520;
3725pub const KEY_NUMERIC_9: u32 = 521;
3726pub const KEY_NUMERIC_STAR: u32 = 522;
3727pub const KEY_NUMERIC_POUND: u32 = 523;
3728pub const KEY_NUMERIC_A: u32 = 524;
3729pub const KEY_NUMERIC_B: u32 = 525;
3730pub const KEY_NUMERIC_C: u32 = 526;
3731pub const KEY_NUMERIC_D: u32 = 527;
3732pub const KEY_CAMERA_FOCUS: u32 = 528;
3733pub const KEY_WPS_BUTTON: u32 = 529;
3734pub const KEY_TOUCHPAD_TOGGLE: u32 = 530;
3735pub const KEY_TOUCHPAD_ON: u32 = 531;
3736pub const KEY_TOUCHPAD_OFF: u32 = 532;
3737pub const KEY_CAMERA_ZOOMIN: u32 = 533;
3738pub const KEY_CAMERA_ZOOMOUT: u32 = 534;
3739pub const KEY_CAMERA_UP: u32 = 535;
3740pub const KEY_CAMERA_DOWN: u32 = 536;
3741pub const KEY_CAMERA_LEFT: u32 = 537;
3742pub const KEY_CAMERA_RIGHT: u32 = 538;
3743pub const KEY_ATTENDANT_ON: u32 = 539;
3744pub const KEY_ATTENDANT_OFF: u32 = 540;
3745pub const KEY_ATTENDANT_TOGGLE: u32 = 541;
3746pub const KEY_LIGHTS_TOGGLE: u32 = 542;
3747pub const BTN_DPAD_UP: u32 = 544;
3748pub const BTN_DPAD_DOWN: u32 = 545;
3749pub const BTN_DPAD_LEFT: u32 = 546;
3750pub const BTN_DPAD_RIGHT: u32 = 547;
3751pub const KEY_ALS_TOGGLE: u32 = 560;
3752pub const KEY_ROTATE_LOCK_TOGGLE: u32 = 561;
3753pub const KEY_REFRESH_RATE_TOGGLE: u32 = 562;
3754pub const KEY_BUTTONCONFIG: u32 = 576;
3755pub const KEY_TASKMANAGER: u32 = 577;
3756pub const KEY_JOURNAL: u32 = 578;
3757pub const KEY_CONTROLPANEL: u32 = 579;
3758pub const KEY_APPSELECT: u32 = 580;
3759pub const KEY_SCREENSAVER: u32 = 581;
3760pub const KEY_VOICECOMMAND: u32 = 582;
3761pub const KEY_ASSISTANT: u32 = 583;
3762pub const KEY_KBD_LAYOUT_NEXT: u32 = 584;
3763pub const KEY_EMOJI_PICKER: u32 = 585;
3764pub const KEY_DICTATE: u32 = 586;
3765pub const KEY_CAMERA_ACCESS_ENABLE: u32 = 587;
3766pub const KEY_CAMERA_ACCESS_DISABLE: u32 = 588;
3767pub const KEY_CAMERA_ACCESS_TOGGLE: u32 = 589;
3768pub const KEY_ACCESSIBILITY: u32 = 590;
3769pub const KEY_DO_NOT_DISTURB: u32 = 591;
3770pub const KEY_BRIGHTNESS_MIN: u32 = 592;
3771pub const KEY_BRIGHTNESS_MAX: u32 = 593;
3772pub const KEY_KBDINPUTASSIST_PREV: u32 = 608;
3773pub const KEY_KBDINPUTASSIST_NEXT: u32 = 609;
3774pub const KEY_KBDINPUTASSIST_PREVGROUP: u32 = 610;
3775pub const KEY_KBDINPUTASSIST_NEXTGROUP: u32 = 611;
3776pub const KEY_KBDINPUTASSIST_ACCEPT: u32 = 612;
3777pub const KEY_KBDINPUTASSIST_CANCEL: u32 = 613;
3778pub const KEY_RIGHT_UP: u32 = 614;
3779pub const KEY_RIGHT_DOWN: u32 = 615;
3780pub const KEY_LEFT_UP: u32 = 616;
3781pub const KEY_LEFT_DOWN: u32 = 617;
3782pub const KEY_ROOT_MENU: u32 = 618;
3783pub const KEY_MEDIA_TOP_MENU: u32 = 619;
3784pub const KEY_NUMERIC_11: u32 = 620;
3785pub const KEY_NUMERIC_12: u32 = 621;
3786pub const KEY_AUDIO_DESC: u32 = 622;
3787pub const KEY_3D_MODE: u32 = 623;
3788pub const KEY_NEXT_FAVORITE: u32 = 624;
3789pub const KEY_STOP_RECORD: u32 = 625;
3790pub const KEY_PAUSE_RECORD: u32 = 626;
3791pub const KEY_VOD: u32 = 627;
3792pub const KEY_UNMUTE: u32 = 628;
3793pub const KEY_FASTREVERSE: u32 = 629;
3794pub const KEY_SLOWREVERSE: u32 = 630;
3795pub const KEY_DATA: u32 = 631;
3796pub const KEY_ONSCREEN_KEYBOARD: u32 = 632;
3797pub const KEY_PRIVACY_SCREEN_TOGGLE: u32 = 633;
3798pub const KEY_SELECTIVE_SCREENSHOT: u32 = 634;
3799pub const KEY_NEXT_ELEMENT: u32 = 635;
3800pub const KEY_PREVIOUS_ELEMENT: u32 = 636;
3801pub const KEY_AUTOPILOT_ENGAGE_TOGGLE: u32 = 637;
3802pub const KEY_MARK_WAYPOINT: u32 = 638;
3803pub const KEY_SOS: u32 = 639;
3804pub const KEY_NAV_CHART: u32 = 640;
3805pub const KEY_FISHING_CHART: u32 = 641;
3806pub const KEY_SINGLE_RANGE_RADAR: u32 = 642;
3807pub const KEY_DUAL_RANGE_RADAR: u32 = 643;
3808pub const KEY_RADAR_OVERLAY: u32 = 644;
3809pub const KEY_TRADITIONAL_SONAR: u32 = 645;
3810pub const KEY_CLEARVU_SONAR: u32 = 646;
3811pub const KEY_SIDEVU_SONAR: u32 = 647;
3812pub const KEY_NAV_INFO: u32 = 648;
3813pub const KEY_BRIGHTNESS_MENU: u32 = 649;
3814pub const KEY_MACRO1: u32 = 656;
3815pub const KEY_MACRO2: u32 = 657;
3816pub const KEY_MACRO3: u32 = 658;
3817pub const KEY_MACRO4: u32 = 659;
3818pub const KEY_MACRO5: u32 = 660;
3819pub const KEY_MACRO6: u32 = 661;
3820pub const KEY_MACRO7: u32 = 662;
3821pub const KEY_MACRO8: u32 = 663;
3822pub const KEY_MACRO9: u32 = 664;
3823pub const KEY_MACRO10: u32 = 665;
3824pub const KEY_MACRO11: u32 = 666;
3825pub const KEY_MACRO12: u32 = 667;
3826pub const KEY_MACRO13: u32 = 668;
3827pub const KEY_MACRO14: u32 = 669;
3828pub const KEY_MACRO15: u32 = 670;
3829pub const KEY_MACRO16: u32 = 671;
3830pub const KEY_MACRO17: u32 = 672;
3831pub const KEY_MACRO18: u32 = 673;
3832pub const KEY_MACRO19: u32 = 674;
3833pub const KEY_MACRO20: u32 = 675;
3834pub const KEY_MACRO21: u32 = 676;
3835pub const KEY_MACRO22: u32 = 677;
3836pub const KEY_MACRO23: u32 = 678;
3837pub const KEY_MACRO24: u32 = 679;
3838pub const KEY_MACRO25: u32 = 680;
3839pub const KEY_MACRO26: u32 = 681;
3840pub const KEY_MACRO27: u32 = 682;
3841pub const KEY_MACRO28: u32 = 683;
3842pub const KEY_MACRO29: u32 = 684;
3843pub const KEY_MACRO30: u32 = 685;
3844pub const KEY_MACRO_RECORD_START: u32 = 688;
3845pub const KEY_MACRO_RECORD_STOP: u32 = 689;
3846pub const KEY_MACRO_PRESET_CYCLE: u32 = 690;
3847pub const KEY_MACRO_PRESET1: u32 = 691;
3848pub const KEY_MACRO_PRESET2: u32 = 692;
3849pub const KEY_MACRO_PRESET3: u32 = 693;
3850pub const KEY_KBD_LCD_MENU1: u32 = 696;
3851pub const KEY_KBD_LCD_MENU2: u32 = 697;
3852pub const KEY_KBD_LCD_MENU3: u32 = 698;
3853pub const KEY_KBD_LCD_MENU4: u32 = 699;
3854pub const KEY_KBD_LCD_MENU5: u32 = 700;
3855pub const BTN_TRIGGER_HAPPY: u32 = 704;
3856pub const BTN_TRIGGER_HAPPY1: u32 = 704;
3857pub const BTN_TRIGGER_HAPPY2: u32 = 705;
3858pub const BTN_TRIGGER_HAPPY3: u32 = 706;
3859pub const BTN_TRIGGER_HAPPY4: u32 = 707;
3860pub const BTN_TRIGGER_HAPPY5: u32 = 708;
3861pub const BTN_TRIGGER_HAPPY6: u32 = 709;
3862pub const BTN_TRIGGER_HAPPY7: u32 = 710;
3863pub const BTN_TRIGGER_HAPPY8: u32 = 711;
3864pub const BTN_TRIGGER_HAPPY9: u32 = 712;
3865pub const BTN_TRIGGER_HAPPY10: u32 = 713;
3866pub const BTN_TRIGGER_HAPPY11: u32 = 714;
3867pub const BTN_TRIGGER_HAPPY12: u32 = 715;
3868pub const BTN_TRIGGER_HAPPY13: u32 = 716;
3869pub const BTN_TRIGGER_HAPPY14: u32 = 717;
3870pub const BTN_TRIGGER_HAPPY15: u32 = 718;
3871pub const BTN_TRIGGER_HAPPY16: u32 = 719;
3872pub const BTN_TRIGGER_HAPPY17: u32 = 720;
3873pub const BTN_TRIGGER_HAPPY18: u32 = 721;
3874pub const BTN_TRIGGER_HAPPY19: u32 = 722;
3875pub const BTN_TRIGGER_HAPPY20: u32 = 723;
3876pub const BTN_TRIGGER_HAPPY21: u32 = 724;
3877pub const BTN_TRIGGER_HAPPY22: u32 = 725;
3878pub const BTN_TRIGGER_HAPPY23: u32 = 726;
3879pub const BTN_TRIGGER_HAPPY24: u32 = 727;
3880pub const BTN_TRIGGER_HAPPY25: u32 = 728;
3881pub const BTN_TRIGGER_HAPPY26: u32 = 729;
3882pub const BTN_TRIGGER_HAPPY27: u32 = 730;
3883pub const BTN_TRIGGER_HAPPY28: u32 = 731;
3884pub const BTN_TRIGGER_HAPPY29: u32 = 732;
3885pub const BTN_TRIGGER_HAPPY30: u32 = 733;
3886pub const BTN_TRIGGER_HAPPY31: u32 = 734;
3887pub const BTN_TRIGGER_HAPPY32: u32 = 735;
3888pub const BTN_TRIGGER_HAPPY33: u32 = 736;
3889pub const BTN_TRIGGER_HAPPY34: u32 = 737;
3890pub const BTN_TRIGGER_HAPPY35: u32 = 738;
3891pub const BTN_TRIGGER_HAPPY36: u32 = 739;
3892pub const BTN_TRIGGER_HAPPY37: u32 = 740;
3893pub const BTN_TRIGGER_HAPPY38: u32 = 741;
3894pub const BTN_TRIGGER_HAPPY39: u32 = 742;
3895pub const BTN_TRIGGER_HAPPY40: u32 = 743;
3896pub const KEY_MIN_INTERESTING: u32 = 113;
3897pub const KEY_MAX: u32 = 767;
3898pub const KEY_CNT: u32 = 768;
3899pub const REL_X: u32 = 0;
3900pub const REL_Y: u32 = 1;
3901pub const REL_Z: u32 = 2;
3902pub const REL_RX: u32 = 3;
3903pub const REL_RY: u32 = 4;
3904pub const REL_RZ: u32 = 5;
3905pub const REL_HWHEEL: u32 = 6;
3906pub const REL_DIAL: u32 = 7;
3907pub const REL_WHEEL: u32 = 8;
3908pub const REL_MISC: u32 = 9;
3909pub const REL_RESERVED: u32 = 10;
3910pub const REL_WHEEL_HI_RES: u32 = 11;
3911pub const REL_HWHEEL_HI_RES: u32 = 12;
3912pub const REL_MAX: u32 = 15;
3913pub const REL_CNT: u32 = 16;
3914pub const ABS_X: u32 = 0;
3915pub const ABS_Y: u32 = 1;
3916pub const ABS_Z: u32 = 2;
3917pub const ABS_RX: u32 = 3;
3918pub const ABS_RY: u32 = 4;
3919pub const ABS_RZ: u32 = 5;
3920pub const ABS_THROTTLE: u32 = 6;
3921pub const ABS_RUDDER: u32 = 7;
3922pub const ABS_WHEEL: u32 = 8;
3923pub const ABS_GAS: u32 = 9;
3924pub const ABS_BRAKE: u32 = 10;
3925pub const ABS_HAT0X: u32 = 16;
3926pub const ABS_HAT0Y: u32 = 17;
3927pub const ABS_HAT1X: u32 = 18;
3928pub const ABS_HAT1Y: u32 = 19;
3929pub const ABS_HAT2X: u32 = 20;
3930pub const ABS_HAT2Y: u32 = 21;
3931pub const ABS_HAT3X: u32 = 22;
3932pub const ABS_HAT3Y: u32 = 23;
3933pub const ABS_PRESSURE: u32 = 24;
3934pub const ABS_DISTANCE: u32 = 25;
3935pub const ABS_TILT_X: u32 = 26;
3936pub const ABS_TILT_Y: u32 = 27;
3937pub const ABS_TOOL_WIDTH: u32 = 28;
3938pub const ABS_VOLUME: u32 = 32;
3939pub const ABS_PROFILE: u32 = 33;
3940pub const ABS_MISC: u32 = 40;
3941pub const ABS_RESERVED: u32 = 46;
3942pub const ABS_MT_SLOT: u32 = 47;
3943pub const ABS_MT_TOUCH_MAJOR: u32 = 48;
3944pub const ABS_MT_TOUCH_MINOR: u32 = 49;
3945pub const ABS_MT_WIDTH_MAJOR: u32 = 50;
3946pub const ABS_MT_WIDTH_MINOR: u32 = 51;
3947pub const ABS_MT_ORIENTATION: u32 = 52;
3948pub const ABS_MT_POSITION_X: u32 = 53;
3949pub const ABS_MT_POSITION_Y: u32 = 54;
3950pub const ABS_MT_TOOL_TYPE: u32 = 55;
3951pub const ABS_MT_BLOB_ID: u32 = 56;
3952pub const ABS_MT_TRACKING_ID: u32 = 57;
3953pub const ABS_MT_PRESSURE: u32 = 58;
3954pub const ABS_MT_DISTANCE: u32 = 59;
3955pub const ABS_MT_TOOL_X: u32 = 60;
3956pub const ABS_MT_TOOL_Y: u32 = 61;
3957pub const ABS_MAX: u32 = 63;
3958pub const ABS_CNT: u32 = 64;
3959pub const SW_LID: u32 = 0;
3960pub const SW_TABLET_MODE: u32 = 1;
3961pub const SW_HEADPHONE_INSERT: u32 = 2;
3962pub const SW_RFKILL_ALL: u32 = 3;
3963pub const SW_RADIO: u32 = 3;
3964pub const SW_MICROPHONE_INSERT: u32 = 4;
3965pub const SW_DOCK: u32 = 5;
3966pub const SW_LINEOUT_INSERT: u32 = 6;
3967pub const SW_JACK_PHYSICAL_INSERT: u32 = 7;
3968pub const SW_VIDEOOUT_INSERT: u32 = 8;
3969pub const SW_CAMERA_LENS_COVER: u32 = 9;
3970pub const SW_KEYPAD_SLIDE: u32 = 10;
3971pub const SW_FRONT_PROXIMITY: u32 = 11;
3972pub const SW_ROTATE_LOCK: u32 = 12;
3973pub const SW_LINEIN_INSERT: u32 = 13;
3974pub const SW_MUTE_DEVICE: u32 = 14;
3975pub const SW_PEN_INSERTED: u32 = 15;
3976pub const SW_MACHINE_COVER: u32 = 16;
3977pub const SW_MAX: u32 = 16;
3978pub const SW_CNT: u32 = 17;
3979pub const MSC_SERIAL: u32 = 0;
3980pub const MSC_PULSELED: u32 = 1;
3981pub const MSC_GESTURE: u32 = 2;
3982pub const MSC_RAW: u32 = 3;
3983pub const MSC_SCAN: u32 = 4;
3984pub const MSC_TIMESTAMP: u32 = 5;
3985pub const MSC_MAX: u32 = 7;
3986pub const MSC_CNT: u32 = 8;
3987pub const LED_NUML: u32 = 0;
3988pub const LED_CAPSL: u32 = 1;
3989pub const LED_SCROLLL: u32 = 2;
3990pub const LED_COMPOSE: u32 = 3;
3991pub const LED_KANA: u32 = 4;
3992pub const LED_SLEEP: u32 = 5;
3993pub const LED_SUSPEND: u32 = 6;
3994pub const LED_MUTE: u32 = 7;
3995pub const LED_MISC: u32 = 8;
3996pub const LED_MAIL: u32 = 9;
3997pub const LED_CHARGING: u32 = 10;
3998pub const LED_MAX: u32 = 15;
3999pub const LED_CNT: u32 = 16;
4000pub const REP_DELAY: u32 = 0;
4001pub const REP_PERIOD: u32 = 1;
4002pub const REP_MAX: u32 = 1;
4003pub const REP_CNT: u32 = 2;
4004pub const SND_CLICK: u32 = 0;
4005pub const SND_BELL: u32 = 1;
4006pub const SND_TONE: u32 = 2;
4007pub const SND_MAX: u32 = 7;
4008pub const SND_CNT: u32 = 8;
4009pub const EV_VERSION: u32 = 65537;
4010pub const INPUT_KEYMAP_BY_INDEX: u32 = 1;
4011pub const ID_BUS: u32 = 0;
4012pub const ID_VENDOR: u32 = 1;
4013pub const ID_PRODUCT: u32 = 2;
4014pub const ID_VERSION: u32 = 3;
4015pub const BUS_PCI: u32 = 1;
4016pub const BUS_ISAPNP: u32 = 2;
4017pub const BUS_USB: u32 = 3;
4018pub const BUS_HIL: u32 = 4;
4019pub const BUS_BLUETOOTH: u32 = 5;
4020pub const BUS_VIRTUAL: u32 = 6;
4021pub const BUS_ISA: u32 = 16;
4022pub const BUS_I8042: u32 = 17;
4023pub const BUS_XTKBD: u32 = 18;
4024pub const BUS_RS232: u32 = 19;
4025pub const BUS_GAMEPORT: u32 = 20;
4026pub const BUS_PARPORT: u32 = 21;
4027pub const BUS_AMIGA: u32 = 22;
4028pub const BUS_ADB: u32 = 23;
4029pub const BUS_I2C: u32 = 24;
4030pub const BUS_HOST: u32 = 25;
4031pub const BUS_GSC: u32 = 26;
4032pub const BUS_ATARI: u32 = 27;
4033pub const BUS_SPI: u32 = 28;
4034pub const BUS_RMI: u32 = 29;
4035pub const BUS_CEC: u32 = 30;
4036pub const BUS_INTEL_ISHTP: u32 = 31;
4037pub const BUS_AMD_SFH: u32 = 32;
4038pub const MT_TOOL_FINGER: u32 = 0;
4039pub const MT_TOOL_PEN: u32 = 1;
4040pub const MT_TOOL_PALM: u32 = 2;
4041pub const MT_TOOL_DIAL: u32 = 10;
4042pub const MT_TOOL_MAX: u32 = 15;
4043pub const FF_STATUS_STOPPED: u32 = 0;
4044pub const FF_STATUS_PLAYING: u32 = 1;
4045pub const FF_STATUS_MAX: u32 = 1;
4046pub const FF_RUMBLE: u32 = 80;
4047pub const FF_PERIODIC: u32 = 81;
4048pub const FF_CONSTANT: u32 = 82;
4049pub const FF_SPRING: u32 = 83;
4050pub const FF_FRICTION: u32 = 84;
4051pub const FF_DAMPER: u32 = 85;
4052pub const FF_INERTIA: u32 = 86;
4053pub const FF_RAMP: u32 = 87;
4054pub const FF_EFFECT_MIN: u32 = 80;
4055pub const FF_EFFECT_MAX: u32 = 87;
4056pub const FF_SQUARE: u32 = 88;
4057pub const FF_TRIANGLE: u32 = 89;
4058pub const FF_SINE: u32 = 90;
4059pub const FF_SAW_UP: u32 = 91;
4060pub const FF_SAW_DOWN: u32 = 92;
4061pub const FF_CUSTOM: u32 = 93;
4062pub const FF_WAVEFORM_MIN: u32 = 88;
4063pub const FF_WAVEFORM_MAX: u32 = 93;
4064pub const FF_GAIN: u32 = 96;
4065pub const FF_AUTOCENTER: u32 = 97;
4066pub const FF_MAX_EFFECTS: u32 = 96;
4067pub const FF_MAX: u32 = 127;
4068pub const FF_CNT: u32 = 128;
4069pub const IORING_FILE_INDEX_ALLOC: i32 = -1;
4070pub const IORING_SETUP_IOPOLL: u32 = 1;
4071pub const IORING_SETUP_SQPOLL: u32 = 2;
4072pub const IORING_SETUP_SQ_AFF: u32 = 4;
4073pub const IORING_SETUP_CQSIZE: u32 = 8;
4074pub const IORING_SETUP_CLAMP: u32 = 16;
4075pub const IORING_SETUP_ATTACH_WQ: u32 = 32;
4076pub const IORING_SETUP_R_DISABLED: u32 = 64;
4077pub const IORING_SETUP_SUBMIT_ALL: u32 = 128;
4078pub const IORING_SETUP_COOP_TASKRUN: u32 = 256;
4079pub const IORING_SETUP_TASKRUN_FLAG: u32 = 512;
4080pub const IORING_SETUP_SQE128: u32 = 1024;
4081pub const IORING_SETUP_CQE32: u32 = 2048;
4082pub const IORING_SETUP_SINGLE_ISSUER: u32 = 4096;
4083pub const IORING_SETUP_DEFER_TASKRUN: u32 = 8192;
4084pub const IORING_SETUP_NO_MMAP: u32 = 16384;
4085pub const IORING_SETUP_REGISTERED_FD_ONLY: u32 = 32768;
4086pub const IORING_SETUP_NO_SQARRAY: u32 = 65536;
4087pub const IORING_URING_CMD_FIXED: u32 = 1;
4088pub const IORING_URING_CMD_MASK: u32 = 1;
4089pub const IORING_FSYNC_DATASYNC: u32 = 1;
4090pub const IORING_TIMEOUT_ABS: u32 = 1;
4091pub const IORING_TIMEOUT_UPDATE: u32 = 2;
4092pub const IORING_TIMEOUT_BOOTTIME: u32 = 4;
4093pub const IORING_TIMEOUT_REALTIME: u32 = 8;
4094pub const IORING_LINK_TIMEOUT_UPDATE: u32 = 16;
4095pub const IORING_TIMEOUT_ETIME_SUCCESS: u32 = 32;
4096pub const IORING_TIMEOUT_MULTISHOT: u32 = 64;
4097pub const IORING_TIMEOUT_CLOCK_MASK: u32 = 12;
4098pub const IORING_TIMEOUT_UPDATE_MASK: u32 = 18;
4099pub const SPLICE_F_FD_IN_FIXED: u32 = 2147483648;
4100pub const IORING_POLL_ADD_MULTI: u32 = 1;
4101pub const IORING_POLL_UPDATE_EVENTS: u32 = 2;
4102pub const IORING_POLL_UPDATE_USER_DATA: u32 = 4;
4103pub const IORING_POLL_ADD_LEVEL: u32 = 8;
4104pub const IORING_ASYNC_CANCEL_ALL: u32 = 1;
4105pub const IORING_ASYNC_CANCEL_FD: u32 = 2;
4106pub const IORING_ASYNC_CANCEL_ANY: u32 = 4;
4107pub const IORING_ASYNC_CANCEL_FD_FIXED: u32 = 8;
4108pub const IORING_ASYNC_CANCEL_USERDATA: u32 = 16;
4109pub const IORING_ASYNC_CANCEL_OP: u32 = 32;
4110pub const IORING_RECVSEND_POLL_FIRST: u32 = 1;
4111pub const IORING_RECV_MULTISHOT: u32 = 2;
4112pub const IORING_RECVSEND_FIXED_BUF: u32 = 4;
4113pub const IORING_SEND_ZC_REPORT_USAGE: u32 = 8;
4114pub const IORING_RECVSEND_BUNDLE: u32 = 16;
4115pub const IORING_NOTIF_USAGE_ZC_COPIED: u32 = 2147483648;
4116pub const IORING_ACCEPT_MULTISHOT: u32 = 1;
4117pub const IORING_ACCEPT_DONTWAIT: u32 = 2;
4118pub const IORING_ACCEPT_POLL_FIRST: u32 = 4;
4119pub const IORING_MSG_RING_CQE_SKIP: u32 = 1;
4120pub const IORING_MSG_RING_FLAGS_PASS: u32 = 2;
4121pub const IORING_FIXED_FD_NO_CLOEXEC: u32 = 1;
4122pub const IORING_NOP_INJECT_RESULT: u32 = 1;
4123pub const IORING_CQE_F_BUFFER: u32 = 1;
4124pub const IORING_CQE_F_MORE: u32 = 2;
4125pub const IORING_CQE_F_SOCK_NONEMPTY: u32 = 4;
4126pub const IORING_CQE_F_NOTIF: u32 = 8;
4127pub const IORING_CQE_F_BUF_MORE: u32 = 16;
4128pub const IORING_CQE_BUFFER_SHIFT: u32 = 16;
4129pub const IORING_OFF_SQ_RING: u32 = 0;
4130pub const IORING_OFF_CQ_RING: u32 = 134217728;
4131pub const IORING_OFF_SQES: u32 = 268435456;
4132pub const IORING_OFF_PBUF_RING: u32 = 2147483648;
4133pub const IORING_OFF_PBUF_SHIFT: u32 = 16;
4134pub const IORING_OFF_MMAP_MASK: u32 = 4160749568;
4135pub const IORING_SQ_NEED_WAKEUP: u32 = 1;
4136pub const IORING_SQ_CQ_OVERFLOW: u32 = 2;
4137pub const IORING_SQ_TASKRUN: u32 = 4;
4138pub const IORING_CQ_EVENTFD_DISABLED: u32 = 1;
4139pub const IORING_ENTER_GETEVENTS: u32 = 1;
4140pub const IORING_ENTER_SQ_WAKEUP: u32 = 2;
4141pub const IORING_ENTER_SQ_WAIT: u32 = 4;
4142pub const IORING_ENTER_EXT_ARG: u32 = 8;
4143pub const IORING_ENTER_REGISTERED_RING: u32 = 16;
4144pub const IORING_ENTER_ABS_TIMER: u32 = 32;
4145pub const IORING_FEAT_SINGLE_MMAP: u32 = 1;
4146pub const IORING_FEAT_NODROP: u32 = 2;
4147pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4;
4148pub const IORING_FEAT_RW_CUR_POS: u32 = 8;
4149pub const IORING_FEAT_CUR_PERSONALITY: u32 = 16;
4150pub const IORING_FEAT_FAST_POLL: u32 = 32;
4151pub const IORING_FEAT_POLL_32BITS: u32 = 64;
4152pub const IORING_FEAT_SQPOLL_NONFIXED: u32 = 128;
4153pub const IORING_FEAT_EXT_ARG: u32 = 256;
4154pub const IORING_FEAT_NATIVE_WORKERS: u32 = 512;
4155pub const IORING_FEAT_RSRC_TAGS: u32 = 1024;
4156pub const IORING_FEAT_CQE_SKIP: u32 = 2048;
4157pub const IORING_FEAT_LINKED_FILE: u32 = 4096;
4158pub const IORING_FEAT_REG_REG_RING: u32 = 8192;
4159pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384;
4160pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768;
4161pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1;
4162pub const IORING_REGISTER_FILES_SKIP: i32 = -2;
4163pub const IO_URING_OP_SUPPORTED: u32 = 1;
4164pub const IPTOS_TOS_MASK: u32 = 30;
4165pub const IPTOS_LOWDELAY: u32 = 16;
4166pub const IPTOS_THROUGHPUT: u32 = 8;
4167pub const IPTOS_RELIABILITY: u32 = 4;
4168pub const IPTOS_MINCOST: u32 = 2;
4169pub const IPTOS_PREC_MASK: u32 = 224;
4170pub const IPTOS_PREC_NETCONTROL: u32 = 224;
4171pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192;
4172pub const IPTOS_PREC_CRITIC_ECP: u32 = 160;
4173pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128;
4174pub const IPTOS_PREC_FLASH: u32 = 96;
4175pub const IPTOS_PREC_IMMEDIATE: u32 = 64;
4176pub const IPTOS_PREC_PRIORITY: u32 = 32;
4177pub const IPTOS_PREC_ROUTINE: u32 = 0;
4178pub const IPOPT_COPY: u32 = 128;
4179pub const IPOPT_CLASS_MASK: u32 = 96;
4180pub const IPOPT_NUMBER_MASK: u32 = 31;
4181pub const IPOPT_CONTROL: u32 = 0;
4182pub const IPOPT_RESERVED1: u32 = 32;
4183pub const IPOPT_MEASUREMENT: u32 = 64;
4184pub const IPOPT_RESERVED2: u32 = 96;
4185pub const IPOPT_END: u32 = 0;
4186pub const IPOPT_NOOP: u32 = 1;
4187pub const IPOPT_SEC: u32 = 130;
4188pub const IPOPT_LSRR: u32 = 131;
4189pub const IPOPT_TIMESTAMP: u32 = 68;
4190pub const IPOPT_CIPSO: u32 = 134;
4191pub const IPOPT_RR: u32 = 7;
4192pub const IPOPT_SID: u32 = 136;
4193pub const IPOPT_SSRR: u32 = 137;
4194pub const IPOPT_RA: u32 = 148;
4195pub const IPVERSION: u32 = 4;
4196pub const MAXTTL: u32 = 255;
4197pub const IPDEFTTL: u32 = 64;
4198pub const IPOPT_OPTVAL: u32 = 0;
4199pub const IPOPT_OLEN: u32 = 1;
4200pub const IPOPT_OFFSET: u32 = 2;
4201pub const IPOPT_MINOFF: u32 = 4;
4202pub const MAX_IPOPTLEN: u32 = 40;
4203pub const IPOPT_NOP: u32 = 1;
4204pub const IPOPT_EOL: u32 = 0;
4205pub const IPOPT_TS: u32 = 68;
4206pub const IPOPT_TS_TSONLY: u32 = 0;
4207pub const IPOPT_TS_TSANDADDR: u32 = 1;
4208pub const IPOPT_TS_PRESPEC: u32 = 3;
4209pub const IPV4_BEET_PHMAXLEN: u32 = 8;
4210pub const IPV6_FL_A_GET: u32 = 0;
4211pub const IPV6_FL_A_PUT: u32 = 1;
4212pub const IPV6_FL_A_RENEW: u32 = 2;
4213pub const IPV6_FL_F_CREATE: u32 = 1;
4214pub const IPV6_FL_F_EXCL: u32 = 2;
4215pub const IPV6_FL_F_REFLECT: u32 = 4;
4216pub const IPV6_FL_F_REMOTE: u32 = 8;
4217pub const IPV6_FL_S_NONE: u32 = 0;
4218pub const IPV6_FL_S_EXCL: u32 = 1;
4219pub const IPV6_FL_S_PROCESS: u32 = 2;
4220pub const IPV6_FL_S_USER: u32 = 3;
4221pub const IPV6_FL_S_ANY: u32 = 255;
4222pub const IPV6_FLOWINFO_FLOWLABEL: u32 = 1048575;
4223pub const IPV6_FLOWINFO_PRIORITY: u32 = 267386880;
4224pub const IPV6_PRIORITY_UNCHARACTERIZED: u32 = 0;
4225pub const IPV6_PRIORITY_FILLER: u32 = 256;
4226pub const IPV6_PRIORITY_UNATTENDED: u32 = 512;
4227pub const IPV6_PRIORITY_RESERVED1: u32 = 768;
4228pub const IPV6_PRIORITY_BULK: u32 = 1024;
4229pub const IPV6_PRIORITY_RESERVED2: u32 = 1280;
4230pub const IPV6_PRIORITY_INTERACTIVE: u32 = 1536;
4231pub const IPV6_PRIORITY_CONTROL: u32 = 1792;
4232pub const IPV6_PRIORITY_8: u32 = 2048;
4233pub const IPV6_PRIORITY_9: u32 = 2304;
4234pub const IPV6_PRIORITY_10: u32 = 2560;
4235pub const IPV6_PRIORITY_11: u32 = 2816;
4236pub const IPV6_PRIORITY_12: u32 = 3072;
4237pub const IPV6_PRIORITY_13: u32 = 3328;
4238pub const IPV6_PRIORITY_14: u32 = 3584;
4239pub const IPV6_PRIORITY_15: u32 = 3840;
4240pub const IPPROTO_HOPOPTS: u32 = 0;
4241pub const IPPROTO_ROUTING: u32 = 43;
4242pub const IPPROTO_FRAGMENT: u32 = 44;
4243pub const IPPROTO_ICMPV6: u32 = 58;
4244pub const IPPROTO_NONE: u32 = 59;
4245pub const IPPROTO_DSTOPTS: u32 = 60;
4246pub const IPPROTO_MH: u32 = 135;
4247pub const IPV6_TLV_PAD1: u32 = 0;
4248pub const IPV6_TLV_PADN: u32 = 1;
4249pub const IPV6_TLV_ROUTERALERT: u32 = 5;
4250pub const IPV6_TLV_CALIPSO: u32 = 7;
4251pub const IPV6_TLV_IOAM: u32 = 49;
4252pub const IPV6_TLV_JUMBO: u32 = 194;
4253pub const IPV6_TLV_HAO: u32 = 201;
4254pub const IPV6_ADDRFORM: u32 = 1;
4255pub const IPV6_2292PKTINFO: u32 = 2;
4256pub const IPV6_2292HOPOPTS: u32 = 3;
4257pub const IPV6_2292DSTOPTS: u32 = 4;
4258pub const IPV6_2292RTHDR: u32 = 5;
4259pub const IPV6_2292PKTOPTIONS: u32 = 6;
4260pub const IPV6_CHECKSUM: u32 = 7;
4261pub const IPV6_2292HOPLIMIT: u32 = 8;
4262pub const IPV6_NEXTHOP: u32 = 9;
4263pub const IPV6_AUTHHDR: u32 = 10;
4264pub const IPV6_FLOWINFO: u32 = 11;
4265pub const IPV6_UNICAST_HOPS: u32 = 16;
4266pub const IPV6_MULTICAST_IF: u32 = 17;
4267pub const IPV6_MULTICAST_HOPS: u32 = 18;
4268pub const IPV6_MULTICAST_LOOP: u32 = 19;
4269pub const IPV6_ADD_MEMBERSHIP: u32 = 20;
4270pub const IPV6_DROP_MEMBERSHIP: u32 = 21;
4271pub const IPV6_ROUTER_ALERT: u32 = 22;
4272pub const IPV6_MTU_DISCOVER: u32 = 23;
4273pub const IPV6_MTU: u32 = 24;
4274pub const IPV6_RECVERR: u32 = 25;
4275pub const IPV6_V6ONLY: u32 = 26;
4276pub const IPV6_JOIN_ANYCAST: u32 = 27;
4277pub const IPV6_LEAVE_ANYCAST: u32 = 28;
4278pub const IPV6_MULTICAST_ALL: u32 = 29;
4279pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30;
4280pub const IPV6_RECVERR_RFC4884: u32 = 31;
4281pub const IPV6_PMTUDISC_DONT: u32 = 0;
4282pub const IPV6_PMTUDISC_WANT: u32 = 1;
4283pub const IPV6_PMTUDISC_DO: u32 = 2;
4284pub const IPV6_PMTUDISC_PROBE: u32 = 3;
4285pub const IPV6_PMTUDISC_INTERFACE: u32 = 4;
4286pub const IPV6_PMTUDISC_OMIT: u32 = 5;
4287pub const IPV6_FLOWLABEL_MGR: u32 = 32;
4288pub const IPV6_FLOWINFO_SEND: u32 = 33;
4289pub const IPV6_IPSEC_POLICY: u32 = 34;
4290pub const IPV6_XFRM_POLICY: u32 = 35;
4291pub const IPV6_HDRINCL: u32 = 36;
4292pub const IPV6_RECVPKTINFO: u32 = 49;
4293pub const IPV6_PKTINFO: u32 = 50;
4294pub const IPV6_RECVHOPLIMIT: u32 = 51;
4295pub const IPV6_HOPLIMIT: u32 = 52;
4296pub const IPV6_RECVHOPOPTS: u32 = 53;
4297pub const IPV6_HOPOPTS: u32 = 54;
4298pub const IPV6_RTHDRDSTOPTS: u32 = 55;
4299pub const IPV6_RECVRTHDR: u32 = 56;
4300pub const IPV6_RTHDR: u32 = 57;
4301pub const IPV6_RECVDSTOPTS: u32 = 58;
4302pub const IPV6_DSTOPTS: u32 = 59;
4303pub const IPV6_RECVPATHMTU: u32 = 60;
4304pub const IPV6_PATHMTU: u32 = 61;
4305pub const IPV6_DONTFRAG: u32 = 62;
4306pub const IPV6_RECVTCLASS: u32 = 66;
4307pub const IPV6_TCLASS: u32 = 67;
4308pub const IPV6_AUTOFLOWLABEL: u32 = 70;
4309pub const IPV6_ADDR_PREFERENCES: u32 = 72;
4310pub const IPV6_PREFER_SRC_TMP: u32 = 1;
4311pub const IPV6_PREFER_SRC_PUBLIC: u32 = 2;
4312pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT: u32 = 256;
4313pub const IPV6_PREFER_SRC_COA: u32 = 4;
4314pub const IPV6_PREFER_SRC_HOME: u32 = 1024;
4315pub const IPV6_PREFER_SRC_CGA: u32 = 8;
4316pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048;
4317pub const IPV6_MINHOPCOUNT: u32 = 73;
4318pub const IPV6_ORIGDSTADDR: u32 = 74;
4319pub const IPV6_RECVORIGDSTADDR: u32 = 74;
4320pub const IPV6_TRANSPARENT: u32 = 75;
4321pub const IPV6_UNICAST_IF: u32 = 76;
4322pub const IPV6_RECVFRAGSIZE: u32 = 77;
4323pub const IPV6_FREEBIND: u32 = 78;
4324pub const IPV6_MIN_MTU: u32 = 1280;
4325pub const IPV6_SRCRT_STRICT: u32 = 1;
4326pub const IPV6_SRCRT_TYPE_0: u32 = 0;
4327pub const IPV6_SRCRT_TYPE_2: u32 = 2;
4328pub const IPV6_SRCRT_TYPE_3: u32 = 3;
4329pub const IPV6_SRCRT_TYPE_4: u32 = 4;
4330pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0;
4331pub const LO_NAME_SIZE: u32 = 64;
4332pub const LO_KEY_SIZE: u32 = 32;
4333pub const LO_CRYPT_NONE: u32 = 0;
4334pub const LO_CRYPT_XOR: u32 = 1;
4335pub const LO_CRYPT_DES: u32 = 2;
4336pub const LO_CRYPT_FISH2: u32 = 3;
4337pub const LO_CRYPT_BLOW: u32 = 4;
4338pub const LO_CRYPT_CAST128: u32 = 5;
4339pub const LO_CRYPT_IDEA: u32 = 6;
4340pub const LO_CRYPT_DUMMY: u32 = 9;
4341pub const LO_CRYPT_SKIPJACK: u32 = 10;
4342pub const LO_CRYPT_CRYPTOAPI: u32 = 18;
4343pub const MAX_LO_CRYPT: u32 = 20;
4344pub const LOOP_SET_FD: u32 = 19456;
4345pub const LOOP_CLR_FD: u32 = 19457;
4346pub const LOOP_SET_STATUS: u32 = 19458;
4347pub const LOOP_GET_STATUS: u32 = 19459;
4348pub const LOOP_SET_STATUS64: u32 = 19460;
4349pub const LOOP_GET_STATUS64: u32 = 19461;
4350pub const LOOP_CHANGE_FD: u32 = 19462;
4351pub const LOOP_SET_CAPACITY: u32 = 19463;
4352pub const LOOP_SET_DIRECT_IO: u32 = 19464;
4353pub const LOOP_SET_BLOCK_SIZE: u32 = 19465;
4354pub const LOOP_CONFIGURE: u32 = 19466;
4355pub const LOOP_CTL_ADD: u32 = 19584;
4356pub const LOOP_CTL_REMOVE: u32 = 19585;
4357pub const LOOP_CTL_GET_FREE: u32 = 19586;
4358pub const ADFS_SUPER_MAGIC: u32 = 44533;
4359pub const AFFS_SUPER_MAGIC: u32 = 44543;
4360pub const AFS_SUPER_MAGIC: u32 = 1397113167;
4361pub const AUTOFS_SUPER_MAGIC: u32 = 391;
4362pub const CEPH_SUPER_MAGIC: u32 = 12805120;
4363pub const CODA_SUPER_MAGIC: u32 = 1937076805;
4364pub const CRAMFS_MAGIC: u32 = 684539205;
4365pub const CRAMFS_MAGIC_WEND: u32 = 1161678120;
4366pub const DEBUGFS_MAGIC: u32 = 1684170528;
4367pub const SECURITYFS_MAGIC: u32 = 1935894131;
4368pub const SELINUX_MAGIC: u32 = 4185718668;
4369pub const SMACK_MAGIC: u32 = 1128357203;
4370pub const RAMFS_MAGIC: u32 = 2240043254;
4371pub const TMPFS_MAGIC: u32 = 16914836;
4372pub const HUGETLBFS_MAGIC: u32 = 2508478710;
4373pub const SQUASHFS_MAGIC: u32 = 1936814952;
4374pub const ECRYPTFS_SUPER_MAGIC: u32 = 61791;
4375pub const EFS_SUPER_MAGIC: u32 = 4278867;
4376pub const EROFS_SUPER_MAGIC_V1: u32 = 3774210530;
4377pub const EXT2_SUPER_MAGIC: u32 = 61267;
4378pub const EXT3_SUPER_MAGIC: u32 = 61267;
4379pub const XENFS_SUPER_MAGIC: u32 = 2881100148;
4380pub const EXT4_SUPER_MAGIC: u32 = 61267;
4381pub const BTRFS_SUPER_MAGIC: u32 = 2435016766;
4382pub const NILFS_SUPER_MAGIC: u32 = 13364;
4383pub const F2FS_SUPER_MAGIC: u32 = 4076150800;
4384pub const HPFS_SUPER_MAGIC: u32 = 4187351113;
4385pub const ISOFS_SUPER_MAGIC: u32 = 38496;
4386pub const JFFS2_SUPER_MAGIC: u32 = 29366;
4387pub const XFS_SUPER_MAGIC: u32 = 1481003842;
4388pub const PSTOREFS_MAGIC: u32 = 1634035564;
4389pub const EFIVARFS_MAGIC: u32 = 3730735588;
4390pub const HOSTFS_SUPER_MAGIC: u32 = 12648430;
4391pub const OVERLAYFS_SUPER_MAGIC: u32 = 2035054128;
4392pub const FUSE_SUPER_MAGIC: u32 = 1702057286;
4393pub const BCACHEFS_SUPER_MAGIC: u32 = 3393526350;
4394pub const MINIX_SUPER_MAGIC: u32 = 4991;
4395pub const MINIX_SUPER_MAGIC2: u32 = 5007;
4396pub const MINIX2_SUPER_MAGIC: u32 = 9320;
4397pub const MINIX2_SUPER_MAGIC2: u32 = 9336;
4398pub const MINIX3_SUPER_MAGIC: u32 = 19802;
4399pub const MSDOS_SUPER_MAGIC: u32 = 19780;
4400pub const EXFAT_SUPER_MAGIC: u32 = 538032816;
4401pub const NCP_SUPER_MAGIC: u32 = 22092;
4402pub const NFS_SUPER_MAGIC: u32 = 26985;
4403pub const OCFS2_SUPER_MAGIC: u32 = 1952539503;
4404pub const OPENPROM_SUPER_MAGIC: u32 = 40865;
4405pub const QNX4_SUPER_MAGIC: u32 = 47;
4406pub const QNX6_SUPER_MAGIC: u32 = 1746473250;
4407pub const AFS_FS_MAGIC: u32 = 1799439955;
4408pub const REISERFS_SUPER_MAGIC: u32 = 1382369651;
4409pub const REISERFS_SUPER_MAGIC_STRING: &'static std::ffi::CStr = c"ReIsErFs";
4410pub const REISER2FS_SUPER_MAGIC_STRING: &'static std::ffi::CStr = c"ReIsEr2Fs";
4411pub const REISER2FS_JR_SUPER_MAGIC_STRING: &'static std::ffi::CStr = c"ReIsEr3Fs";
4412pub const SMB_SUPER_MAGIC: u32 = 20859;
4413pub const CIFS_SUPER_MAGIC: u32 = 4283649346;
4414pub const SMB2_SUPER_MAGIC: u32 = 4266872130;
4415pub const CGROUP_SUPER_MAGIC: u32 = 2613483;
4416pub const CGROUP2_SUPER_MAGIC: u32 = 1667723888;
4417pub const RDTGROUP_SUPER_MAGIC: u32 = 124082209;
4418pub const STACK_END_MAGIC: u32 = 1470918301;
4419pub const TRACEFS_MAGIC: u32 = 1953653091;
4420pub const V9FS_MAGIC: u32 = 16914839;
4421pub const BDEVFS_MAGIC: u32 = 1650746742;
4422pub const DAXFS_MAGIC: u32 = 1684300152;
4423pub const BINFMTFS_MAGIC: u32 = 1112100429;
4424pub const DEVPTS_SUPER_MAGIC: u32 = 7377;
4425pub const BINDERFS_SUPER_MAGIC: u32 = 1819242352;
4426pub const FUTEXFS_SUPER_MAGIC: u32 = 195894762;
4427pub const PIPEFS_MAGIC: u32 = 1346981957;
4428pub const PROC_SUPER_MAGIC: u32 = 40864;
4429pub const SOCKFS_MAGIC: u32 = 1397703499;
4430pub const SYSFS_MAGIC: u32 = 1650812274;
4431pub const USBDEVICE_SUPER_MAGIC: u32 = 40866;
4432pub const MTD_INODE_FS_MAGIC: u32 = 288389204;
4433pub const ANON_INODE_FS_MAGIC: u32 = 151263540;
4434pub const BTRFS_TEST_MAGIC: u32 = 1936880249;
4435pub const NSFS_MAGIC: u32 = 1853056627;
4436pub const BPF_FS_MAGIC: u32 = 3405662737;
4437pub const AAFS_MAGIC: u32 = 1513908720;
4438pub const ZONEFS_MAGIC: u32 = 1515144787;
4439pub const UDF_SUPER_MAGIC: u32 = 352400198;
4440pub const DMA_BUF_MAGIC: u32 = 1145913666;
4441pub const DEVMEM_MAGIC: u32 = 1162691661;
4442pub const SECRETMEM_MAGIC: u32 = 1397048141;
4443pub const PID_FS_MAGIC: u32 = 1346978886;
4444pub const HUGETLB_FLAG_ENCODE_SHIFT: u32 = 26;
4445pub const HUGETLB_FLAG_ENCODE_MASK: u32 = 63;
4446pub const HUGETLB_FLAG_ENCODE_16KB: u32 = 939524096;
4447pub const HUGETLB_FLAG_ENCODE_64KB: u32 = 1073741824;
4448pub const HUGETLB_FLAG_ENCODE_512KB: u32 = 1275068416;
4449pub const HUGETLB_FLAG_ENCODE_1MB: u32 = 1342177280;
4450pub const HUGETLB_FLAG_ENCODE_2MB: u32 = 1409286144;
4451pub const HUGETLB_FLAG_ENCODE_8MB: u32 = 1543503872;
4452pub const HUGETLB_FLAG_ENCODE_16MB: u32 = 1610612736;
4453pub const HUGETLB_FLAG_ENCODE_32MB: u32 = 1677721600;
4454pub const HUGETLB_FLAG_ENCODE_256MB: u32 = 1879048192;
4455pub const HUGETLB_FLAG_ENCODE_512MB: u32 = 1946157056;
4456pub const HUGETLB_FLAG_ENCODE_1GB: u32 = 2013265920;
4457pub const HUGETLB_FLAG_ENCODE_2GB: u32 = 2080374784;
4458pub const HUGETLB_FLAG_ENCODE_16GB: u32 = 2281701376;
4459pub const MFD_CLOEXEC: u32 = 1;
4460pub const MFD_ALLOW_SEALING: u32 = 2;
4461pub const MFD_HUGETLB: u32 = 4;
4462pub const MFD_NOEXEC_SEAL: u32 = 8;
4463pub const MFD_EXEC: u32 = 16;
4464pub const MFD_HUGE_SHIFT: u32 = 26;
4465pub const MFD_HUGE_MASK: u32 = 63;
4466pub const MFD_HUGE_64KB: u32 = 1073741824;
4467pub const MFD_HUGE_512KB: u32 = 1275068416;
4468pub const MFD_HUGE_1MB: u32 = 1342177280;
4469pub const MFD_HUGE_2MB: u32 = 1409286144;
4470pub const MFD_HUGE_8MB: u32 = 1543503872;
4471pub const MFD_HUGE_16MB: u32 = 1610612736;
4472pub const MFD_HUGE_32MB: u32 = 1677721600;
4473pub const MFD_HUGE_256MB: u32 = 1879048192;
4474pub const MFD_HUGE_512MB: u32 = 1946157056;
4475pub const MFD_HUGE_1GB: u32 = 2013265920;
4476pub const MFD_HUGE_2GB: u32 = 2080374784;
4477pub const MFD_HUGE_16GB: u32 = 2281701376;
4478pub const MAP_32BIT: u32 = 64;
4479pub const MAP_ABOVE4G: u32 = 128;
4480pub const SHADOW_STACK_SET_TOKEN: u32 = 1;
4481pub const PROT_READ: u32 = 1;
4482pub const PROT_WRITE: u32 = 2;
4483pub const PROT_EXEC: u32 = 4;
4484pub const PROT_SEM: u32 = 8;
4485pub const PROT_NONE: u32 = 0;
4486pub const PROT_GROWSDOWN: u32 = 16777216;
4487pub const PROT_GROWSUP: u32 = 33554432;
4488pub const MAP_TYPE: u32 = 15;
4489pub const MAP_FIXED: u32 = 16;
4490pub const MAP_ANONYMOUS: u32 = 32;
4491pub const MAP_POPULATE: u32 = 32768;
4492pub const MAP_NONBLOCK: u32 = 65536;
4493pub const MAP_STACK: u32 = 131072;
4494pub const MAP_HUGETLB: u32 = 262144;
4495pub const MAP_SYNC: u32 = 524288;
4496pub const MAP_FIXED_NOREPLACE: u32 = 1048576;
4497pub const MAP_UNINITIALIZED: u32 = 67108864;
4498pub const MLOCK_ONFAULT: u32 = 1;
4499pub const MS_ASYNC: u32 = 1;
4500pub const MS_INVALIDATE: u32 = 2;
4501pub const MS_SYNC: u32 = 4;
4502pub const MADV_NORMAL: u32 = 0;
4503pub const MADV_RANDOM: u32 = 1;
4504pub const MADV_SEQUENTIAL: u32 = 2;
4505pub const MADV_WILLNEED: u32 = 3;
4506pub const MADV_DONTNEED: u32 = 4;
4507pub const MADV_FREE: u32 = 8;
4508pub const MADV_REMOVE: u32 = 9;
4509pub const MADV_DONTFORK: u32 = 10;
4510pub const MADV_DOFORK: u32 = 11;
4511pub const MADV_HWPOISON: u32 = 100;
4512pub const MADV_SOFT_OFFLINE: u32 = 101;
4513pub const MADV_MERGEABLE: u32 = 12;
4514pub const MADV_UNMERGEABLE: u32 = 13;
4515pub const MADV_HUGEPAGE: u32 = 14;
4516pub const MADV_NOHUGEPAGE: u32 = 15;
4517pub const MADV_DONTDUMP: u32 = 16;
4518pub const MADV_DODUMP: u32 = 17;
4519pub const MADV_WIPEONFORK: u32 = 18;
4520pub const MADV_KEEPONFORK: u32 = 19;
4521pub const MADV_COLD: u32 = 20;
4522pub const MADV_PAGEOUT: u32 = 21;
4523pub const MADV_POPULATE_READ: u32 = 22;
4524pub const MADV_POPULATE_WRITE: u32 = 23;
4525pub const MADV_DONTNEED_LOCKED: u32 = 24;
4526pub const MADV_COLLAPSE: u32 = 25;
4527pub const MAP_FILE: u32 = 0;
4528pub const PKEY_DISABLE_ACCESS: u32 = 1;
4529pub const PKEY_DISABLE_WRITE: u32 = 2;
4530pub const PKEY_ACCESS_MASK: u32 = 3;
4531pub const MAP_GROWSDOWN: u32 = 256;
4532pub const MAP_DENYWRITE: u32 = 2048;
4533pub const MAP_EXECUTABLE: u32 = 4096;
4534pub const MAP_LOCKED: u32 = 8192;
4535pub const MAP_NORESERVE: u32 = 16384;
4536pub const MCL_CURRENT: u32 = 1;
4537pub const MCL_FUTURE: u32 = 2;
4538pub const MCL_ONFAULT: u32 = 4;
4539pub const MREMAP_MAYMOVE: u32 = 1;
4540pub const MREMAP_FIXED: u32 = 2;
4541pub const MREMAP_DONTUNMAP: u32 = 4;
4542pub const OVERCOMMIT_GUESS: u32 = 0;
4543pub const OVERCOMMIT_ALWAYS: u32 = 1;
4544pub const OVERCOMMIT_NEVER: u32 = 2;
4545pub const MAP_SHARED: u32 = 1;
4546pub const MAP_PRIVATE: u32 = 2;
4547pub const MAP_SHARED_VALIDATE: u32 = 3;
4548pub const MAP_DROPPABLE: u32 = 8;
4549pub const MAP_HUGE_SHIFT: u32 = 26;
4550pub const MAP_HUGE_MASK: u32 = 63;
4551pub const MAP_HUGE_16KB: u32 = 939524096;
4552pub const MAP_HUGE_64KB: u32 = 1073741824;
4553pub const MAP_HUGE_512KB: u32 = 1275068416;
4554pub const MAP_HUGE_1MB: u32 = 1342177280;
4555pub const MAP_HUGE_2MB: u32 = 1409286144;
4556pub const MAP_HUGE_8MB: u32 = 1543503872;
4557pub const MAP_HUGE_16MB: u32 = 1610612736;
4558pub const MAP_HUGE_32MB: u32 = 1677721600;
4559pub const MAP_HUGE_256MB: u32 = 1879048192;
4560pub const MAP_HUGE_512MB: u32 = 1946157056;
4561pub const MAP_HUGE_1GB: u32 = 2013265920;
4562pub const MAP_HUGE_2GB: u32 = 2080374784;
4563pub const MAP_HUGE_16GB: u32 = 2281701376;
4564pub const MQ_PRIO_MAX: u32 = 32768;
4565pub const MQ_BYTES_MAX: u32 = 819200;
4566pub const NOTIFY_NONE: u32 = 0;
4567pub const NOTIFY_WOKENUP: u32 = 1;
4568pub const NOTIFY_REMOVED: u32 = 2;
4569pub const NOTIFY_COOKIE_LEN: u32 = 32;
4570pub const IP_TOS: u32 = 1;
4571pub const IP_TTL: u32 = 2;
4572pub const IP_HDRINCL: u32 = 3;
4573pub const IP_OPTIONS: u32 = 4;
4574pub const IP_ROUTER_ALERT: u32 = 5;
4575pub const IP_RECVOPTS: u32 = 6;
4576pub const IP_RETOPTS: u32 = 7;
4577pub const IP_PKTINFO: u32 = 8;
4578pub const IP_PKTOPTIONS: u32 = 9;
4579pub const IP_MTU_DISCOVER: u32 = 10;
4580pub const IP_RECVERR: u32 = 11;
4581pub const IP_RECVTTL: u32 = 12;
4582pub const IP_RECVTOS: u32 = 13;
4583pub const IP_MTU: u32 = 14;
4584pub const IP_FREEBIND: u32 = 15;
4585pub const IP_IPSEC_POLICY: u32 = 16;
4586pub const IP_XFRM_POLICY: u32 = 17;
4587pub const IP_PASSSEC: u32 = 18;
4588pub const IP_TRANSPARENT: u32 = 19;
4589pub const IP_RECVRETOPTS: u32 = 7;
4590pub const IP_ORIGDSTADDR: u32 = 20;
4591pub const IP_RECVORIGDSTADDR: u32 = 20;
4592pub const IP_MINTTL: u32 = 21;
4593pub const IP_NODEFRAG: u32 = 22;
4594pub const IP_CHECKSUM: u32 = 23;
4595pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24;
4596pub const IP_RECVFRAGSIZE: u32 = 25;
4597pub const IP_RECVERR_RFC4884: u32 = 26;
4598pub const IP_PMTUDISC_DONT: u32 = 0;
4599pub const IP_PMTUDISC_WANT: u32 = 1;
4600pub const IP_PMTUDISC_DO: u32 = 2;
4601pub const IP_PMTUDISC_PROBE: u32 = 3;
4602pub const IP_PMTUDISC_INTERFACE: u32 = 4;
4603pub const IP_PMTUDISC_OMIT: u32 = 5;
4604pub const IP_MULTICAST_IF: u32 = 32;
4605pub const IP_MULTICAST_TTL: u32 = 33;
4606pub const IP_MULTICAST_LOOP: u32 = 34;
4607pub const IP_ADD_MEMBERSHIP: u32 = 35;
4608pub const IP_DROP_MEMBERSHIP: u32 = 36;
4609pub const IP_UNBLOCK_SOURCE: u32 = 37;
4610pub const IP_BLOCK_SOURCE: u32 = 38;
4611pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39;
4612pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40;
4613pub const IP_MSFILTER: u32 = 41;
4614pub const MCAST_JOIN_GROUP: u32 = 42;
4615pub const MCAST_BLOCK_SOURCE: u32 = 43;
4616pub const MCAST_UNBLOCK_SOURCE: u32 = 44;
4617pub const MCAST_LEAVE_GROUP: u32 = 45;
4618pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46;
4619pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47;
4620pub const MCAST_MSFILTER: u32 = 48;
4621pub const IP_MULTICAST_ALL: u32 = 49;
4622pub const IP_UNICAST_IF: u32 = 50;
4623pub const IP_LOCAL_PORT_RANGE: u32 = 51;
4624pub const IP_PROTOCOL: u32 = 52;
4625pub const MCAST_EXCLUDE: u32 = 0;
4626pub const MCAST_INCLUDE: u32 = 1;
4627pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1;
4628pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1;
4629pub const __SOCK_SIZE__: u32 = 16;
4630pub const IN_CLASSA_NET: u32 = 4278190080;
4631pub const IN_CLASSA_NSHIFT: u32 = 24;
4632pub const IN_CLASSA_HOST: u32 = 16777215;
4633pub const IN_CLASSA_MAX: u32 = 128;
4634pub const IN_CLASSB_NET: u32 = 4294901760;
4635pub const IN_CLASSB_NSHIFT: u32 = 16;
4636pub const IN_CLASSB_HOST: u32 = 65535;
4637pub const IN_CLASSB_MAX: u32 = 65536;
4638pub const IN_CLASSC_NET: u32 = 4294967040;
4639pub const IN_CLASSC_NSHIFT: u32 = 8;
4640pub const IN_CLASSC_HOST: u32 = 255;
4641pub const IN_MULTICAST_NET: u32 = 3758096384;
4642pub const IN_CLASSE_NET: u32 = 4294967295;
4643pub const IN_CLASSE_NSHIFT: u32 = 0;
4644pub const IN_LOOPBACKNET: u32 = 127;
4645pub const INADDR_LOOPBACK: u32 = 2130706433;
4646pub const INADDR_UNSPEC_GROUP: u32 = 3758096384;
4647pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385;
4648pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386;
4649pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490;
4650pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639;
4651pub const NF_DROP: u32 = 0;
4652pub const NF_ACCEPT: u32 = 1;
4653pub const NF_STOLEN: u32 = 2;
4654pub const NF_QUEUE: u32 = 3;
4655pub const NF_REPEAT: u32 = 4;
4656pub const NF_STOP: u32 = 5;
4657pub const NF_MAX_VERDICT: u32 = 5;
4658pub const NF_VERDICT_MASK: u32 = 255;
4659pub const NF_VERDICT_FLAG_QUEUE_BYPASS: u32 = 32768;
4660pub const NF_VERDICT_QMASK: u32 = 4294901760;
4661pub const NF_VERDICT_QBITS: u32 = 16;
4662pub const NF_VERDICT_BITS: u32 = 16;
4663pub const NF_CT_STATE_INVALID_BIT: u32 = 1;
4664pub const NF_CT_STATE_UNTRACKED_BIT: u32 = 64;
4665pub const NF_CT_EXPECT_PERMANENT: u32 = 1;
4666pub const NF_CT_EXPECT_INACTIVE: u32 = 2;
4667pub const NF_CT_EXPECT_USERSPACE: u32 = 4;
4668pub const NF_NAT_RANGE_MAP_IPS: u32 = 1;
4669pub const NF_NAT_RANGE_PROTO_SPECIFIED: u32 = 2;
4670pub const NF_NAT_RANGE_PROTO_RANDOM: u32 = 4;
4671pub const NF_NAT_RANGE_PERSISTENT: u32 = 8;
4672pub const NF_NAT_RANGE_PROTO_RANDOM_FULLY: u32 = 16;
4673pub const NF_NAT_RANGE_PROTO_OFFSET: u32 = 32;
4674pub const NF_NAT_RANGE_NETMAP: u32 = 64;
4675pub const NF_NAT_RANGE_PROTO_RANDOM_ALL: u32 = 20;
4676pub const NF_NAT_RANGE_MASK: u32 = 127;
4677pub const XT_BPF_MAX_NUM_INSTR: u32 = 64;
4678pub const MB_LEN_MAX: u32 = 1;
4679pub const NF_IP_PRE_ROUTING: u32 = 0;
4680pub const NF_IP_LOCAL_IN: u32 = 1;
4681pub const NF_IP_FORWARD: u32 = 2;
4682pub const NF_IP_LOCAL_OUT: u32 = 3;
4683pub const NF_IP_POST_ROUTING: u32 = 4;
4684pub const NF_IP_NUMHOOKS: u32 = 5;
4685pub const SO_ORIGINAL_DST: u32 = 80;
4686pub const XT_FUNCTION_MAXNAMELEN: u32 = 30;
4687pub const XT_EXTENSION_MAXNAMELEN: u32 = 29;
4688pub const XT_TABLE_MAXNAMELEN: u32 = 32;
4689pub const XT_CONTINUE: u32 = 4294967295;
4690pub const XT_RETURN: i32 = -5;
4691pub const XT_STANDARD_TARGET: &'static std::ffi::CStr = c"";
4692pub const XT_ERROR_TARGET: &'static std::ffi::CStr = c"ERROR";
4693pub const XT_INV_PROTO: u32 = 64;
4694pub const IPT_FUNCTION_MAXNAMELEN: u32 = 30;
4695pub const IPT_TABLE_MAXNAMELEN: u32 = 32;
4696pub const IPT_CONTINUE: u32 = 4294967295;
4697pub const IPT_RETURN: i32 = -5;
4698pub const XT_TCP_INV_SRCPT: u32 = 1;
4699pub const XT_TCP_INV_DSTPT: u32 = 2;
4700pub const XT_TCP_INV_FLAGS: u32 = 4;
4701pub const XT_TCP_INV_OPTION: u32 = 8;
4702pub const XT_TCP_INV_MASK: u32 = 15;
4703pub const XT_UDP_INV_SRCPT: u32 = 1;
4704pub const XT_UDP_INV_DSTPT: u32 = 2;
4705pub const XT_UDP_INV_MASK: u32 = 3;
4706pub const IPT_TCP_INV_SRCPT: u32 = 1;
4707pub const IPT_TCP_INV_DSTPT: u32 = 2;
4708pub const IPT_TCP_INV_FLAGS: u32 = 4;
4709pub const IPT_TCP_INV_OPTION: u32 = 8;
4710pub const IPT_TCP_INV_MASK: u32 = 15;
4711pub const IPT_UDP_INV_SRCPT: u32 = 1;
4712pub const IPT_UDP_INV_DSTPT: u32 = 2;
4713pub const IPT_UDP_INV_MASK: u32 = 3;
4714pub const IPT_STANDARD_TARGET: &'static std::ffi::CStr = c"";
4715pub const IPT_ERROR_TARGET: &'static std::ffi::CStr = c"ERROR";
4716pub const IPT_F_FRAG: u32 = 1;
4717pub const IPT_F_GOTO: u32 = 2;
4718pub const IPT_F_MASK: u32 = 3;
4719pub const IPT_INV_VIA_IN: u32 = 1;
4720pub const IPT_INV_VIA_OUT: u32 = 2;
4721pub const IPT_INV_TOS: u32 = 4;
4722pub const IPT_INV_SRCIP: u32 = 8;
4723pub const IPT_INV_DSTIP: u32 = 16;
4724pub const IPT_INV_FRAG: u32 = 32;
4725pub const IPT_INV_PROTO: u32 = 64;
4726pub const IPT_INV_MASK: u32 = 127;
4727pub const IPT_BASE_CTL: u32 = 64;
4728pub const IPT_SO_SET_REPLACE: u32 = 64;
4729pub const IPT_SO_SET_ADD_COUNTERS: u32 = 65;
4730pub const IPT_SO_SET_MAX: u32 = 65;
4731pub const IPT_SO_GET_INFO: u32 = 64;
4732pub const IPT_SO_GET_ENTRIES: u32 = 65;
4733pub const IPT_SO_GET_REVISION_MATCH: u32 = 66;
4734pub const IPT_SO_GET_REVISION_TARGET: u32 = 67;
4735pub const IPT_SO_GET_MAX: u32 = 67;
4736pub const IPT_ICMP_INV: u32 = 1;
4737pub const NF_IP6_PRE_ROUTING: u32 = 0;
4738pub const NF_IP6_LOCAL_IN: u32 = 1;
4739pub const NF_IP6_FORWARD: u32 = 2;
4740pub const NF_IP6_LOCAL_OUT: u32 = 3;
4741pub const NF_IP6_POST_ROUTING: u32 = 4;
4742pub const NF_IP6_NUMHOOKS: u32 = 5;
4743pub const IP6T_FUNCTION_MAXNAMELEN: u32 = 30;
4744pub const IP6T_TABLE_MAXNAMELEN: u32 = 32;
4745pub const IP6T_CONTINUE: u32 = 4294967295;
4746pub const IP6T_RETURN: i32 = -5;
4747pub const IP6T_TCP_INV_SRCPT: u32 = 1;
4748pub const IP6T_TCP_INV_DSTPT: u32 = 2;
4749pub const IP6T_TCP_INV_FLAGS: u32 = 4;
4750pub const IP6T_TCP_INV_OPTION: u32 = 8;
4751pub const IP6T_TCP_INV_MASK: u32 = 15;
4752pub const IP6T_UDP_INV_SRCPT: u32 = 1;
4753pub const IP6T_UDP_INV_DSTPT: u32 = 2;
4754pub const IP6T_UDP_INV_MASK: u32 = 3;
4755pub const IP6T_STANDARD_TARGET: &'static std::ffi::CStr = c"";
4756pub const IP6T_ERROR_TARGET: &'static std::ffi::CStr = c"ERROR";
4757pub const IP6T_F_PROTO: u32 = 1;
4758pub const IP6T_F_TOS: u32 = 2;
4759pub const IP6T_F_GOTO: u32 = 4;
4760pub const IP6T_F_MASK: u32 = 7;
4761pub const IP6T_INV_VIA_IN: u32 = 1;
4762pub const IP6T_INV_VIA_OUT: u32 = 2;
4763pub const IP6T_INV_TOS: u32 = 4;
4764pub const IP6T_INV_SRCIP: u32 = 8;
4765pub const IP6T_INV_DSTIP: u32 = 16;
4766pub const IP6T_INV_FRAG: u32 = 32;
4767pub const IP6T_INV_PROTO: u32 = 64;
4768pub const IP6T_INV_MASK: u32 = 127;
4769pub const IP6T_BASE_CTL: u32 = 64;
4770pub const IP6T_SO_SET_REPLACE: u32 = 64;
4771pub const IP6T_SO_SET_ADD_COUNTERS: u32 = 65;
4772pub const IP6T_SO_SET_MAX: u32 = 65;
4773pub const IP6T_SO_GET_INFO: u32 = 64;
4774pub const IP6T_SO_GET_ENTRIES: u32 = 65;
4775pub const IP6T_SO_GET_REVISION_MATCH: u32 = 68;
4776pub const IP6T_SO_GET_REVISION_TARGET: u32 = 69;
4777pub const IP6T_SO_GET_MAX: u32 = 69;
4778pub const IP6T_SO_ORIGINAL_DST: u32 = 80;
4779pub const IP6T_ICMP_INV: u32 = 1;
4780pub const OOM_SCORE_ADJ_MIN: i32 = -1000;
4781pub const OOM_SCORE_ADJ_MAX: u32 = 1000;
4782pub const OOM_DISABLE: i32 = -17;
4783pub const OOM_ADJUST_MIN: i32 = -16;
4784pub const OOM_ADJUST_MAX: u32 = 15;
4785pub const PERF_PMU_TYPE_SHIFT: u32 = 32;
4786pub const PERF_HW_EVENT_MASK: u32 = 4294967295;
4787pub const PERF_ATTR_SIZE_VER0: u32 = 64;
4788pub const PERF_ATTR_SIZE_VER1: u32 = 72;
4789pub const PERF_ATTR_SIZE_VER2: u32 = 80;
4790pub const PERF_ATTR_SIZE_VER3: u32 = 96;
4791pub const PERF_ATTR_SIZE_VER4: u32 = 104;
4792pub const PERF_ATTR_SIZE_VER5: u32 = 112;
4793pub const PERF_ATTR_SIZE_VER6: u32 = 120;
4794pub const PERF_ATTR_SIZE_VER7: u32 = 128;
4795pub const PERF_ATTR_SIZE_VER8: u32 = 136;
4796pub const PERF_RECORD_MISC_CPUMODE_MASK: u32 = 7;
4797pub const PERF_RECORD_MISC_CPUMODE_UNKNOWN: u32 = 0;
4798pub const PERF_RECORD_MISC_KERNEL: u32 = 1;
4799pub const PERF_RECORD_MISC_USER: u32 = 2;
4800pub const PERF_RECORD_MISC_HYPERVISOR: u32 = 3;
4801pub const PERF_RECORD_MISC_GUEST_KERNEL: u32 = 4;
4802pub const PERF_RECORD_MISC_GUEST_USER: u32 = 5;
4803pub const PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT: u32 = 4096;
4804pub const PERF_RECORD_MISC_MMAP_DATA: u32 = 8192;
4805pub const PERF_RECORD_MISC_COMM_EXEC: u32 = 8192;
4806pub const PERF_RECORD_MISC_FORK_EXEC: u32 = 8192;
4807pub const PERF_RECORD_MISC_SWITCH_OUT: u32 = 8192;
4808pub const PERF_RECORD_MISC_EXACT_IP: u32 = 16384;
4809pub const PERF_RECORD_MISC_SWITCH_OUT_PREEMPT: u32 = 16384;
4810pub const PERF_RECORD_MISC_MMAP_BUILD_ID: u32 = 16384;
4811pub const PERF_RECORD_MISC_EXT_RESERVED: u32 = 32768;
4812pub const PERF_RECORD_KSYMBOL_FLAGS_UNREGISTER: u32 = 1;
4813pub const PERF_MAX_STACK_DEPTH: u32 = 127;
4814pub const PERF_MAX_CONTEXTS_PER_STACK: u32 = 8;
4815pub const PERF_AUX_FLAG_TRUNCATED: u32 = 1;
4816pub const PERF_AUX_FLAG_OVERWRITE: u32 = 2;
4817pub const PERF_AUX_FLAG_PARTIAL: u32 = 4;
4818pub const PERF_AUX_FLAG_COLLISION: u32 = 8;
4819pub const PERF_AUX_FLAG_PMU_FORMAT_TYPE_MASK: u32 = 65280;
4820pub const PERF_AUX_FLAG_CORESIGHT_FORMAT_CORESIGHT: u32 = 0;
4821pub const PERF_AUX_FLAG_CORESIGHT_FORMAT_RAW: u32 = 256;
4822pub const PERF_FLAG_FD_NO_GROUP: u32 = 1;
4823pub const PERF_FLAG_FD_OUTPUT: u32 = 2;
4824pub const PERF_FLAG_PID_CGROUP: u32 = 4;
4825pub const PERF_FLAG_FD_CLOEXEC: u32 = 8;
4826pub const PERF_MEM_OP_NA: u32 = 1;
4827pub const PERF_MEM_OP_LOAD: u32 = 2;
4828pub const PERF_MEM_OP_STORE: u32 = 4;
4829pub const PERF_MEM_OP_PFETCH: u32 = 8;
4830pub const PERF_MEM_OP_EXEC: u32 = 16;
4831pub const PERF_MEM_OP_SHIFT: u32 = 0;
4832pub const PERF_MEM_LVL_NA: u32 = 1;
4833pub const PERF_MEM_LVL_HIT: u32 = 2;
4834pub const PERF_MEM_LVL_MISS: u32 = 4;
4835pub const PERF_MEM_LVL_L1: u32 = 8;
4836pub const PERF_MEM_LVL_LFB: u32 = 16;
4837pub const PERF_MEM_LVL_L2: u32 = 32;
4838pub const PERF_MEM_LVL_L3: u32 = 64;
4839pub const PERF_MEM_LVL_LOC_RAM: u32 = 128;
4840pub const PERF_MEM_LVL_REM_RAM1: u32 = 256;
4841pub const PERF_MEM_LVL_REM_RAM2: u32 = 512;
4842pub const PERF_MEM_LVL_REM_CCE1: u32 = 1024;
4843pub const PERF_MEM_LVL_REM_CCE2: u32 = 2048;
4844pub const PERF_MEM_LVL_IO: u32 = 4096;
4845pub const PERF_MEM_LVL_UNC: u32 = 8192;
4846pub const PERF_MEM_LVL_SHIFT: u32 = 5;
4847pub const PERF_MEM_REMOTE_REMOTE: u32 = 1;
4848pub const PERF_MEM_REMOTE_SHIFT: u32 = 37;
4849pub const PERF_MEM_LVLNUM_L1: u32 = 1;
4850pub const PERF_MEM_LVLNUM_L2: u32 = 2;
4851pub const PERF_MEM_LVLNUM_L3: u32 = 3;
4852pub const PERF_MEM_LVLNUM_L4: u32 = 4;
4853pub const PERF_MEM_LVLNUM_L2_MHB: u32 = 5;
4854pub const PERF_MEM_LVLNUM_MSC: u32 = 6;
4855pub const PERF_MEM_LVLNUM_UNC: u32 = 8;
4856pub const PERF_MEM_LVLNUM_CXL: u32 = 9;
4857pub const PERF_MEM_LVLNUM_IO: u32 = 10;
4858pub const PERF_MEM_LVLNUM_ANY_CACHE: u32 = 11;
4859pub const PERF_MEM_LVLNUM_LFB: u32 = 12;
4860pub const PERF_MEM_LVLNUM_RAM: u32 = 13;
4861pub const PERF_MEM_LVLNUM_PMEM: u32 = 14;
4862pub const PERF_MEM_LVLNUM_NA: u32 = 15;
4863pub const PERF_MEM_LVLNUM_SHIFT: u32 = 33;
4864pub const PERF_MEM_SNOOP_NA: u32 = 1;
4865pub const PERF_MEM_SNOOP_NONE: u32 = 2;
4866pub const PERF_MEM_SNOOP_HIT: u32 = 4;
4867pub const PERF_MEM_SNOOP_MISS: u32 = 8;
4868pub const PERF_MEM_SNOOP_HITM: u32 = 16;
4869pub const PERF_MEM_SNOOP_SHIFT: u32 = 19;
4870pub const PERF_MEM_SNOOPX_FWD: u32 = 1;
4871pub const PERF_MEM_SNOOPX_PEER: u32 = 2;
4872pub const PERF_MEM_SNOOPX_SHIFT: u32 = 38;
4873pub const PERF_MEM_LOCK_NA: u32 = 1;
4874pub const PERF_MEM_LOCK_LOCKED: u32 = 2;
4875pub const PERF_MEM_LOCK_SHIFT: u32 = 24;
4876pub const PERF_MEM_TLB_NA: u32 = 1;
4877pub const PERF_MEM_TLB_HIT: u32 = 2;
4878pub const PERF_MEM_TLB_MISS: u32 = 4;
4879pub const PERF_MEM_TLB_L1: u32 = 8;
4880pub const PERF_MEM_TLB_L2: u32 = 16;
4881pub const PERF_MEM_TLB_WK: u32 = 32;
4882pub const PERF_MEM_TLB_OS: u32 = 64;
4883pub const PERF_MEM_TLB_SHIFT: u32 = 26;
4884pub const PERF_MEM_BLK_NA: u32 = 1;
4885pub const PERF_MEM_BLK_DATA: u32 = 2;
4886pub const PERF_MEM_BLK_ADDR: u32 = 4;
4887pub const PERF_MEM_BLK_SHIFT: u32 = 40;
4888pub const PERF_MEM_HOPS_0: u32 = 1;
4889pub const PERF_MEM_HOPS_1: u32 = 2;
4890pub const PERF_MEM_HOPS_2: u32 = 3;
4891pub const PERF_MEM_HOPS_3: u32 = 4;
4892pub const PERF_MEM_HOPS_SHIFT: u32 = 43;
4893pub const PERF_BRANCH_ENTRY_INFO_BITS_MAX: u32 = 33;
4894pub const PF_KEY_V2: u32 = 2;
4895pub const PFKEYV2_REVISION: u32 = 199806;
4896pub const SADB_RESERVED: u32 = 0;
4897pub const SADB_GETSPI: u32 = 1;
4898pub const SADB_UPDATE: u32 = 2;
4899pub const SADB_ADD: u32 = 3;
4900pub const SADB_DELETE: u32 = 4;
4901pub const SADB_GET: u32 = 5;
4902pub const SADB_ACQUIRE: u32 = 6;
4903pub const SADB_REGISTER: u32 = 7;
4904pub const SADB_EXPIRE: u32 = 8;
4905pub const SADB_FLUSH: u32 = 9;
4906pub const SADB_DUMP: u32 = 10;
4907pub const SADB_X_PROMISC: u32 = 11;
4908pub const SADB_X_PCHANGE: u32 = 12;
4909pub const SADB_X_SPDUPDATE: u32 = 13;
4910pub const SADB_X_SPDADD: u32 = 14;
4911pub const SADB_X_SPDDELETE: u32 = 15;
4912pub const SADB_X_SPDGET: u32 = 16;
4913pub const SADB_X_SPDACQUIRE: u32 = 17;
4914pub const SADB_X_SPDDUMP: u32 = 18;
4915pub const SADB_X_SPDFLUSH: u32 = 19;
4916pub const SADB_X_SPDSETIDX: u32 = 20;
4917pub const SADB_X_SPDEXPIRE: u32 = 21;
4918pub const SADB_X_SPDDELETE2: u32 = 22;
4919pub const SADB_X_NAT_T_NEW_MAPPING: u32 = 23;
4920pub const SADB_X_MIGRATE: u32 = 24;
4921pub const SADB_MAX: u32 = 24;
4922pub const SADB_SAFLAGS_PFS: u32 = 1;
4923pub const SADB_SAFLAGS_NOPMTUDISC: u32 = 536870912;
4924pub const SADB_SAFLAGS_DECAP_DSCP: u32 = 1073741824;
4925pub const SADB_SAFLAGS_NOECN: u32 = 2147483648;
4926pub const SADB_SASTATE_LARVAL: u32 = 0;
4927pub const SADB_SASTATE_MATURE: u32 = 1;
4928pub const SADB_SASTATE_DYING: u32 = 2;
4929pub const SADB_SASTATE_DEAD: u32 = 3;
4930pub const SADB_SASTATE_MAX: u32 = 3;
4931pub const SADB_SATYPE_UNSPEC: u32 = 0;
4932pub const SADB_SATYPE_AH: u32 = 2;
4933pub const SADB_SATYPE_ESP: u32 = 3;
4934pub const SADB_SATYPE_RSVP: u32 = 5;
4935pub const SADB_SATYPE_OSPFV2: u32 = 6;
4936pub const SADB_SATYPE_RIPV2: u32 = 7;
4937pub const SADB_SATYPE_MIP: u32 = 8;
4938pub const SADB_X_SATYPE_IPCOMP: u32 = 9;
4939pub const SADB_SATYPE_MAX: u32 = 9;
4940pub const SADB_AALG_NONE: u32 = 0;
4941pub const SADB_AALG_MD5HMAC: u32 = 2;
4942pub const SADB_AALG_SHA1HMAC: u32 = 3;
4943pub const SADB_X_AALG_SHA2_256HMAC: u32 = 5;
4944pub const SADB_X_AALG_SHA2_384HMAC: u32 = 6;
4945pub const SADB_X_AALG_SHA2_512HMAC: u32 = 7;
4946pub const SADB_X_AALG_RIPEMD160HMAC: u32 = 8;
4947pub const SADB_X_AALG_AES_XCBC_MAC: u32 = 9;
4948pub const SADB_X_AALG_SM3_256HMAC: u32 = 10;
4949pub const SADB_X_AALG_NULL: u32 = 251;
4950pub const SADB_AALG_MAX: u32 = 251;
4951pub const SADB_EALG_NONE: u32 = 0;
4952pub const SADB_EALG_DESCBC: u32 = 2;
4953pub const SADB_EALG_3DESCBC: u32 = 3;
4954pub const SADB_X_EALG_CASTCBC: u32 = 6;
4955pub const SADB_X_EALG_BLOWFISHCBC: u32 = 7;
4956pub const SADB_EALG_NULL: u32 = 11;
4957pub const SADB_X_EALG_AESCBC: u32 = 12;
4958pub const SADB_X_EALG_AESCTR: u32 = 13;
4959pub const SADB_X_EALG_AES_CCM_ICV8: u32 = 14;
4960pub const SADB_X_EALG_AES_CCM_ICV12: u32 = 15;
4961pub const SADB_X_EALG_AES_CCM_ICV16: u32 = 16;
4962pub const SADB_X_EALG_AES_GCM_ICV8: u32 = 18;
4963pub const SADB_X_EALG_AES_GCM_ICV12: u32 = 19;
4964pub const SADB_X_EALG_AES_GCM_ICV16: u32 = 20;
4965pub const SADB_X_EALG_CAMELLIACBC: u32 = 22;
4966pub const SADB_X_EALG_NULL_AES_GMAC: u32 = 23;
4967pub const SADB_X_EALG_SM4CBC: u32 = 24;
4968pub const SADB_EALG_MAX: u32 = 253;
4969pub const SADB_X_EALG_SERPENTCBC: u32 = 252;
4970pub const SADB_X_EALG_TWOFISHCBC: u32 = 253;
4971pub const SADB_X_CALG_NONE: u32 = 0;
4972pub const SADB_X_CALG_OUI: u32 = 1;
4973pub const SADB_X_CALG_DEFLATE: u32 = 2;
4974pub const SADB_X_CALG_LZS: u32 = 3;
4975pub const SADB_X_CALG_LZJH: u32 = 4;
4976pub const SADB_X_CALG_MAX: u32 = 4;
4977pub const SADB_EXT_RESERVED: u32 = 0;
4978pub const SADB_EXT_SA: u32 = 1;
4979pub const SADB_EXT_LIFETIME_CURRENT: u32 = 2;
4980pub const SADB_EXT_LIFETIME_HARD: u32 = 3;
4981pub const SADB_EXT_LIFETIME_SOFT: u32 = 4;
4982pub const SADB_EXT_ADDRESS_SRC: u32 = 5;
4983pub const SADB_EXT_ADDRESS_DST: u32 = 6;
4984pub const SADB_EXT_ADDRESS_PROXY: u32 = 7;
4985pub const SADB_EXT_KEY_AUTH: u32 = 8;
4986pub const SADB_EXT_KEY_ENCRYPT: u32 = 9;
4987pub const SADB_EXT_IDENTITY_SRC: u32 = 10;
4988pub const SADB_EXT_IDENTITY_DST: u32 = 11;
4989pub const SADB_EXT_SENSITIVITY: u32 = 12;
4990pub const SADB_EXT_PROPOSAL: u32 = 13;
4991pub const SADB_EXT_SUPPORTED_AUTH: u32 = 14;
4992pub const SADB_EXT_SUPPORTED_ENCRYPT: u32 = 15;
4993pub const SADB_EXT_SPIRANGE: u32 = 16;
4994pub const SADB_X_EXT_KMPRIVATE: u32 = 17;
4995pub const SADB_X_EXT_POLICY: u32 = 18;
4996pub const SADB_X_EXT_SA2: u32 = 19;
4997pub const SADB_X_EXT_NAT_T_TYPE: u32 = 20;
4998pub const SADB_X_EXT_NAT_T_SPORT: u32 = 21;
4999pub const SADB_X_EXT_NAT_T_DPORT: u32 = 22;
5000pub const SADB_X_EXT_NAT_T_OA: u32 = 23;
5001pub const SADB_X_EXT_SEC_CTX: u32 = 24;
5002pub const SADB_X_EXT_KMADDRESS: u32 = 25;
5003pub const SADB_X_EXT_FILTER: u32 = 26;
5004pub const SADB_EXT_MAX: u32 = 26;
5005pub const SADB_IDENTTYPE_RESERVED: u32 = 0;
5006pub const SADB_IDENTTYPE_PREFIX: u32 = 1;
5007pub const SADB_IDENTTYPE_FQDN: u32 = 2;
5008pub const SADB_IDENTTYPE_USERFQDN: u32 = 3;
5009pub const SADB_IDENTTYPE_MAX: u32 = 3;
5010pub const PIDFD_NONBLOCK: u32 = 2048;
5011pub const PIDFD_THREAD: u32 = 128;
5012pub const PIDFD_SIGNAL_THREAD: u32 = 1;
5013pub const PIDFD_SIGNAL_THREAD_GROUP: u32 = 2;
5014pub const PIDFD_SIGNAL_PROCESS_GROUP: u32 = 4;
5015pub const PIDFS_IOCTL_MAGIC: u32 = 255;
5016pub const PR_SET_PDEATHSIG: u32 = 1;
5017pub const PR_GET_PDEATHSIG: u32 = 2;
5018pub const PR_GET_DUMPABLE: u32 = 3;
5019pub const PR_SET_DUMPABLE: u32 = 4;
5020pub const PR_GET_UNALIGN: u32 = 5;
5021pub const PR_SET_UNALIGN: u32 = 6;
5022pub const PR_UNALIGN_NOPRINT: u32 = 1;
5023pub const PR_UNALIGN_SIGBUS: u32 = 2;
5024pub const PR_GET_KEEPCAPS: u32 = 7;
5025pub const PR_SET_KEEPCAPS: u32 = 8;
5026pub const PR_GET_FPEMU: u32 = 9;
5027pub const PR_SET_FPEMU: u32 = 10;
5028pub const PR_FPEMU_NOPRINT: u32 = 1;
5029pub const PR_FPEMU_SIGFPE: u32 = 2;
5030pub const PR_GET_FPEXC: u32 = 11;
5031pub const PR_SET_FPEXC: u32 = 12;
5032pub const PR_FP_EXC_SW_ENABLE: u32 = 128;
5033pub const PR_FP_EXC_DIV: u32 = 65536;
5034pub const PR_FP_EXC_OVF: u32 = 131072;
5035pub const PR_FP_EXC_UND: u32 = 262144;
5036pub const PR_FP_EXC_RES: u32 = 524288;
5037pub const PR_FP_EXC_INV: u32 = 1048576;
5038pub const PR_FP_EXC_DISABLED: u32 = 0;
5039pub const PR_FP_EXC_NONRECOV: u32 = 1;
5040pub const PR_FP_EXC_ASYNC: u32 = 2;
5041pub const PR_FP_EXC_PRECISE: u32 = 3;
5042pub const PR_GET_TIMING: u32 = 13;
5043pub const PR_SET_TIMING: u32 = 14;
5044pub const PR_TIMING_STATISTICAL: u32 = 0;
5045pub const PR_TIMING_TIMESTAMP: u32 = 1;
5046pub const PR_SET_NAME: u32 = 15;
5047pub const PR_GET_NAME: u32 = 16;
5048pub const PR_GET_ENDIAN: u32 = 19;
5049pub const PR_SET_ENDIAN: u32 = 20;
5050pub const PR_ENDIAN_BIG: u32 = 0;
5051pub const PR_ENDIAN_LITTLE: u32 = 1;
5052pub const PR_ENDIAN_PPC_LITTLE: u32 = 2;
5053pub const PR_GET_SECCOMP: u32 = 21;
5054pub const PR_SET_SECCOMP: u32 = 22;
5055pub const PR_CAPBSET_READ: u32 = 23;
5056pub const PR_CAPBSET_DROP: u32 = 24;
5057pub const PR_GET_TSC: u32 = 25;
5058pub const PR_SET_TSC: u32 = 26;
5059pub const PR_TSC_ENABLE: u32 = 1;
5060pub const PR_TSC_SIGSEGV: u32 = 2;
5061pub const PR_GET_SECUREBITS: u32 = 27;
5062pub const PR_SET_SECUREBITS: u32 = 28;
5063pub const PR_SET_TIMERSLACK: u32 = 29;
5064pub const PR_GET_TIMERSLACK: u32 = 30;
5065pub const PR_TASK_PERF_EVENTS_DISABLE: u32 = 31;
5066pub const PR_TASK_PERF_EVENTS_ENABLE: u32 = 32;
5067pub const PR_MCE_KILL: u32 = 33;
5068pub const PR_MCE_KILL_CLEAR: u32 = 0;
5069pub const PR_MCE_KILL_SET: u32 = 1;
5070pub const PR_MCE_KILL_LATE: u32 = 0;
5071pub const PR_MCE_KILL_EARLY: u32 = 1;
5072pub const PR_MCE_KILL_DEFAULT: u32 = 2;
5073pub const PR_MCE_KILL_GET: u32 = 34;
5074pub const PR_SET_MM: u32 = 35;
5075pub const PR_SET_MM_START_CODE: u32 = 1;
5076pub const PR_SET_MM_END_CODE: u32 = 2;
5077pub const PR_SET_MM_START_DATA: u32 = 3;
5078pub const PR_SET_MM_END_DATA: u32 = 4;
5079pub const PR_SET_MM_START_STACK: u32 = 5;
5080pub const PR_SET_MM_START_BRK: u32 = 6;
5081pub const PR_SET_MM_BRK: u32 = 7;
5082pub const PR_SET_MM_ARG_START: u32 = 8;
5083pub const PR_SET_MM_ARG_END: u32 = 9;
5084pub const PR_SET_MM_ENV_START: u32 = 10;
5085pub const PR_SET_MM_ENV_END: u32 = 11;
5086pub const PR_SET_MM_AUXV: u32 = 12;
5087pub const PR_SET_MM_EXE_FILE: u32 = 13;
5088pub const PR_SET_MM_MAP: u32 = 14;
5089pub const PR_SET_MM_MAP_SIZE: u32 = 15;
5090pub const PR_SET_PTRACER: u32 = 1499557217;
5091pub const PR_SET_CHILD_SUBREAPER: u32 = 36;
5092pub const PR_GET_CHILD_SUBREAPER: u32 = 37;
5093pub const PR_SET_NO_NEW_PRIVS: u32 = 38;
5094pub const PR_GET_NO_NEW_PRIVS: u32 = 39;
5095pub const PR_GET_TID_ADDRESS: u32 = 40;
5096pub const PR_SET_THP_DISABLE: u32 = 41;
5097pub const PR_GET_THP_DISABLE: u32 = 42;
5098pub const PR_MPX_ENABLE_MANAGEMENT: u32 = 43;
5099pub const PR_MPX_DISABLE_MANAGEMENT: u32 = 44;
5100pub const PR_SET_FP_MODE: u32 = 45;
5101pub const PR_GET_FP_MODE: u32 = 46;
5102pub const PR_FP_MODE_FR: u32 = 1;
5103pub const PR_FP_MODE_FRE: u32 = 2;
5104pub const PR_CAP_AMBIENT: u32 = 47;
5105pub const PR_CAP_AMBIENT_IS_SET: u32 = 1;
5106pub const PR_CAP_AMBIENT_RAISE: u32 = 2;
5107pub const PR_CAP_AMBIENT_LOWER: u32 = 3;
5108pub const PR_CAP_AMBIENT_CLEAR_ALL: u32 = 4;
5109pub const PR_SVE_SET_VL: u32 = 50;
5110pub const PR_SVE_SET_VL_ONEXEC: u32 = 262144;
5111pub const PR_SVE_GET_VL: u32 = 51;
5112pub const PR_SVE_VL_LEN_MASK: u32 = 65535;
5113pub const PR_SVE_VL_INHERIT: u32 = 131072;
5114pub const PR_GET_SPECULATION_CTRL: u32 = 52;
5115pub const PR_SET_SPECULATION_CTRL: u32 = 53;
5116pub const PR_SPEC_STORE_BYPASS: u32 = 0;
5117pub const PR_SPEC_INDIRECT_BRANCH: u32 = 1;
5118pub const PR_SPEC_L1D_FLUSH: u32 = 2;
5119pub const PR_SPEC_NOT_AFFECTED: u32 = 0;
5120pub const PR_SPEC_PRCTL: u32 = 1;
5121pub const PR_SPEC_ENABLE: u32 = 2;
5122pub const PR_SPEC_DISABLE: u32 = 4;
5123pub const PR_SPEC_FORCE_DISABLE: u32 = 8;
5124pub const PR_SPEC_DISABLE_NOEXEC: u32 = 16;
5125pub const PR_PAC_RESET_KEYS: u32 = 54;
5126pub const PR_PAC_APIAKEY: u32 = 1;
5127pub const PR_PAC_APIBKEY: u32 = 2;
5128pub const PR_PAC_APDAKEY: u32 = 4;
5129pub const PR_PAC_APDBKEY: u32 = 8;
5130pub const PR_PAC_APGAKEY: u32 = 16;
5131pub const PR_SET_TAGGED_ADDR_CTRL: u32 = 55;
5132pub const PR_GET_TAGGED_ADDR_CTRL: u32 = 56;
5133pub const PR_TAGGED_ADDR_ENABLE: u32 = 1;
5134pub const PR_MTE_TCF_NONE: u32 = 0;
5135pub const PR_MTE_TCF_SYNC: u32 = 2;
5136pub const PR_MTE_TCF_ASYNC: u32 = 4;
5137pub const PR_MTE_TCF_MASK: u32 = 6;
5138pub const PR_MTE_TAG_SHIFT: u32 = 3;
5139pub const PR_MTE_TAG_MASK: u32 = 524280;
5140pub const PR_MTE_TCF_SHIFT: u32 = 1;
5141pub const PR_SET_IO_FLUSHER: u32 = 57;
5142pub const PR_GET_IO_FLUSHER: u32 = 58;
5143pub const PR_SET_SYSCALL_USER_DISPATCH: u32 = 59;
5144pub const PR_SYS_DISPATCH_OFF: u32 = 0;
5145pub const PR_SYS_DISPATCH_ON: u32 = 1;
5146pub const SYSCALL_DISPATCH_FILTER_ALLOW: u32 = 0;
5147pub const SYSCALL_DISPATCH_FILTER_BLOCK: u32 = 1;
5148pub const PR_PAC_SET_ENABLED_KEYS: u32 = 60;
5149pub const PR_PAC_GET_ENABLED_KEYS: u32 = 61;
5150pub const PR_SCHED_CORE: u32 = 62;
5151pub const PR_SCHED_CORE_GET: u32 = 0;
5152pub const PR_SCHED_CORE_CREATE: u32 = 1;
5153pub const PR_SCHED_CORE_SHARE_TO: u32 = 2;
5154pub const PR_SCHED_CORE_SHARE_FROM: u32 = 3;
5155pub const PR_SCHED_CORE_MAX: u32 = 4;
5156pub const PR_SCHED_CORE_SCOPE_THREAD: u32 = 0;
5157pub const PR_SCHED_CORE_SCOPE_THREAD_GROUP: u32 = 1;
5158pub const PR_SCHED_CORE_SCOPE_PROCESS_GROUP: u32 = 2;
5159pub const PR_SME_SET_VL: u32 = 63;
5160pub const PR_SME_SET_VL_ONEXEC: u32 = 262144;
5161pub const PR_SME_GET_VL: u32 = 64;
5162pub const PR_SME_VL_LEN_MASK: u32 = 65535;
5163pub const PR_SME_VL_INHERIT: u32 = 131072;
5164pub const PR_SET_MDWE: u32 = 65;
5165pub const PR_MDWE_REFUSE_EXEC_GAIN: u32 = 1;
5166pub const PR_MDWE_NO_INHERIT: u32 = 2;
5167pub const PR_GET_MDWE: u32 = 66;
5168pub const PR_SET_VMA: u32 = 1398164801;
5169pub const PR_SET_VMA_ANON_NAME: u32 = 0;
5170pub const PR_GET_AUXV: u32 = 1096112214;
5171pub const PR_SET_MEMORY_MERGE: u32 = 67;
5172pub const PR_GET_MEMORY_MERGE: u32 = 68;
5173pub const PR_RISCV_V_SET_CONTROL: u32 = 69;
5174pub const PR_RISCV_V_GET_CONTROL: u32 = 70;
5175pub const PR_RISCV_V_VSTATE_CTRL_DEFAULT: u32 = 0;
5176pub const PR_RISCV_V_VSTATE_CTRL_OFF: u32 = 1;
5177pub const PR_RISCV_V_VSTATE_CTRL_ON: u32 = 2;
5178pub const PR_RISCV_V_VSTATE_CTRL_INHERIT: u32 = 16;
5179pub const PR_RISCV_V_VSTATE_CTRL_CUR_MASK: u32 = 3;
5180pub const PR_RISCV_V_VSTATE_CTRL_NEXT_MASK: u32 = 12;
5181pub const PR_RISCV_V_VSTATE_CTRL_MASK: u32 = 31;
5182pub const PR_RISCV_SET_ICACHE_FLUSH_CTX: u32 = 71;
5183pub const PR_RISCV_CTX_SW_FENCEI_ON: u32 = 0;
5184pub const PR_RISCV_CTX_SW_FENCEI_OFF: u32 = 1;
5185pub const PR_RISCV_SCOPE_PER_PROCESS: u32 = 0;
5186pub const PR_RISCV_SCOPE_PER_THREAD: u32 = 1;
5187pub const PR_PPC_GET_DEXCR: u32 = 72;
5188pub const PR_PPC_SET_DEXCR: u32 = 73;
5189pub const PR_PPC_DEXCR_SBHE: u32 = 0;
5190pub const PR_PPC_DEXCR_IBRTPD: u32 = 1;
5191pub const PR_PPC_DEXCR_SRAPD: u32 = 2;
5192pub const PR_PPC_DEXCR_NPHIE: u32 = 3;
5193pub const PR_PPC_DEXCR_CTRL_EDITABLE: u32 = 1;
5194pub const PR_PPC_DEXCR_CTRL_SET: u32 = 2;
5195pub const PR_PPC_DEXCR_CTRL_CLEAR: u32 = 4;
5196pub const PR_PPC_DEXCR_CTRL_SET_ONEXEC: u32 = 8;
5197pub const PR_PPC_DEXCR_CTRL_CLEAR_ONEXEC: u32 = 16;
5198pub const PR_PPC_DEXCR_CTRL_MASK: u32 = 31;
5199pub const PTRACE_TRACEME: u32 = 0;
5200pub const PTRACE_PEEKTEXT: u32 = 1;
5201pub const PTRACE_PEEKDATA: u32 = 2;
5202pub const PTRACE_PEEKUSR: u32 = 3;
5203pub const PTRACE_POKETEXT: u32 = 4;
5204pub const PTRACE_POKEDATA: u32 = 5;
5205pub const PTRACE_POKEUSR: u32 = 6;
5206pub const PTRACE_CONT: u32 = 7;
5207pub const PTRACE_KILL: u32 = 8;
5208pub const PTRACE_SINGLESTEP: u32 = 9;
5209pub const PTRACE_ATTACH: u32 = 16;
5210pub const PTRACE_DETACH: u32 = 17;
5211pub const PTRACE_SYSCALL: u32 = 24;
5212pub const PTRACE_SETOPTIONS: u32 = 16896;
5213pub const PTRACE_GETEVENTMSG: u32 = 16897;
5214pub const PTRACE_GETSIGINFO: u32 = 16898;
5215pub const PTRACE_SETSIGINFO: u32 = 16899;
5216pub const PTRACE_GETREGSET: u32 = 16900;
5217pub const PTRACE_SETREGSET: u32 = 16901;
5218pub const PTRACE_SEIZE: u32 = 16902;
5219pub const PTRACE_INTERRUPT: u32 = 16903;
5220pub const PTRACE_LISTEN: u32 = 16904;
5221pub const PTRACE_PEEKSIGINFO: u32 = 16905;
5222pub const PTRACE_GETSIGMASK: u32 = 16906;
5223pub const PTRACE_SETSIGMASK: u32 = 16907;
5224pub const PTRACE_SECCOMP_GET_FILTER: u32 = 16908;
5225pub const PTRACE_SECCOMP_GET_METADATA: u32 = 16909;
5226pub const PTRACE_GET_SYSCALL_INFO: u32 = 16910;
5227pub const PTRACE_SYSCALL_INFO_NONE: u32 = 0;
5228pub const PTRACE_SYSCALL_INFO_ENTRY: u32 = 1;
5229pub const PTRACE_SYSCALL_INFO_EXIT: u32 = 2;
5230pub const PTRACE_SYSCALL_INFO_SECCOMP: u32 = 3;
5231pub const PTRACE_GET_RSEQ_CONFIGURATION: u32 = 16911;
5232pub const PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG: u32 = 16912;
5233pub const PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG: u32 = 16913;
5234pub const PTRACE_EVENTMSG_SYSCALL_ENTRY: u32 = 1;
5235pub const PTRACE_EVENTMSG_SYSCALL_EXIT: u32 = 2;
5236pub const PTRACE_PEEKSIGINFO_SHARED: u32 = 1;
5237pub const PTRACE_EVENT_FORK: u32 = 1;
5238pub const PTRACE_EVENT_VFORK: u32 = 2;
5239pub const PTRACE_EVENT_CLONE: u32 = 3;
5240pub const PTRACE_EVENT_EXEC: u32 = 4;
5241pub const PTRACE_EVENT_VFORK_DONE: u32 = 5;
5242pub const PTRACE_EVENT_EXIT: u32 = 6;
5243pub const PTRACE_EVENT_SECCOMP: u32 = 7;
5244pub const PTRACE_EVENT_STOP: u32 = 128;
5245pub const PTRACE_O_TRACESYSGOOD: u32 = 1;
5246pub const PTRACE_O_TRACEFORK: u32 = 2;
5247pub const PTRACE_O_TRACEVFORK: u32 = 4;
5248pub const PTRACE_O_TRACECLONE: u32 = 8;
5249pub const PTRACE_O_TRACEEXEC: u32 = 16;
5250pub const PTRACE_O_TRACEVFORKDONE: u32 = 32;
5251pub const PTRACE_O_TRACEEXIT: u32 = 64;
5252pub const PTRACE_O_TRACESECCOMP: u32 = 128;
5253pub const PTRACE_O_EXITKILL: u32 = 1048576;
5254pub const PTRACE_O_SUSPEND_SECCOMP: u32 = 2097152;
5255pub const PTRACE_O_MASK: u32 = 3145983;
5256pub const FRAME_SIZE: u32 = 168;
5257pub const PTRACE_GETREGS: u32 = 12;
5258pub const PTRACE_SETREGS: u32 = 13;
5259pub const PTRACE_GETFPREGS: u32 = 14;
5260pub const PTRACE_SETFPREGS: u32 = 15;
5261pub const PTRACE_GETFPXREGS: u32 = 18;
5262pub const PTRACE_SETFPXREGS: u32 = 19;
5263pub const PTRACE_OLDSETOPTIONS: u32 = 21;
5264pub const PTRACE_GET_THREAD_AREA: u32 = 25;
5265pub const PTRACE_SET_THREAD_AREA: u32 = 26;
5266pub const PTRACE_ARCH_PRCTL: u32 = 30;
5267pub const PTRACE_SYSEMU: u32 = 31;
5268pub const PTRACE_SYSEMU_SINGLESTEP: u32 = 32;
5269pub const PTRACE_SINGLEBLOCK: u32 = 33;
5270pub const X86_EFLAGS_CF_BIT: u32 = 0;
5271pub const X86_EFLAGS_FIXED_BIT: u32 = 1;
5272pub const X86_EFLAGS_PF_BIT: u32 = 2;
5273pub const X86_EFLAGS_AF_BIT: u32 = 4;
5274pub const X86_EFLAGS_ZF_BIT: u32 = 6;
5275pub const X86_EFLAGS_SF_BIT: u32 = 7;
5276pub const X86_EFLAGS_TF_BIT: u32 = 8;
5277pub const X86_EFLAGS_IF_BIT: u32 = 9;
5278pub const X86_EFLAGS_DF_BIT: u32 = 10;
5279pub const X86_EFLAGS_OF_BIT: u32 = 11;
5280pub const X86_EFLAGS_IOPL_BIT: u32 = 12;
5281pub const X86_EFLAGS_NT_BIT: u32 = 14;
5282pub const X86_EFLAGS_RF_BIT: u32 = 16;
5283pub const X86_EFLAGS_VM_BIT: u32 = 17;
5284pub const X86_EFLAGS_AC_BIT: u32 = 18;
5285pub const X86_EFLAGS_VIF_BIT: u32 = 19;
5286pub const X86_EFLAGS_VIP_BIT: u32 = 20;
5287pub const X86_EFLAGS_ID_BIT: u32 = 21;
5288pub const X86_CR0_PE_BIT: u32 = 0;
5289pub const X86_CR0_MP_BIT: u32 = 1;
5290pub const X86_CR0_EM_BIT: u32 = 2;
5291pub const X86_CR0_TS_BIT: u32 = 3;
5292pub const X86_CR0_ET_BIT: u32 = 4;
5293pub const X86_CR0_NE_BIT: u32 = 5;
5294pub const X86_CR0_WP_BIT: u32 = 16;
5295pub const X86_CR0_AM_BIT: u32 = 18;
5296pub const X86_CR0_NW_BIT: u32 = 29;
5297pub const X86_CR0_CD_BIT: u32 = 30;
5298pub const X86_CR0_PG_BIT: u32 = 31;
5299pub const X86_CR3_PWT_BIT: u32 = 3;
5300pub const X86_CR3_PCD_BIT: u32 = 4;
5301pub const X86_CR3_PCID_BITS: u32 = 12;
5302pub const X86_CR3_LAM_U57_BIT: u32 = 61;
5303pub const X86_CR3_LAM_U48_BIT: u32 = 62;
5304pub const X86_CR3_PCID_NOFLUSH_BIT: u32 = 63;
5305pub const X86_CR4_VME_BIT: u32 = 0;
5306pub const X86_CR4_PVI_BIT: u32 = 1;
5307pub const X86_CR4_TSD_BIT: u32 = 2;
5308pub const X86_CR4_DE_BIT: u32 = 3;
5309pub const X86_CR4_PSE_BIT: u32 = 4;
5310pub const X86_CR4_PAE_BIT: u32 = 5;
5311pub const X86_CR4_MCE_BIT: u32 = 6;
5312pub const X86_CR4_PGE_BIT: u32 = 7;
5313pub const X86_CR4_PCE_BIT: u32 = 8;
5314pub const X86_CR4_OSFXSR_BIT: u32 = 9;
5315pub const X86_CR4_OSXMMEXCPT_BIT: u32 = 10;
5316pub const X86_CR4_UMIP_BIT: u32 = 11;
5317pub const X86_CR4_LA57_BIT: u32 = 12;
5318pub const X86_CR4_VMXE_BIT: u32 = 13;
5319pub const X86_CR4_SMXE_BIT: u32 = 14;
5320pub const X86_CR4_FSGSBASE_BIT: u32 = 16;
5321pub const X86_CR4_PCIDE_BIT: u32 = 17;
5322pub const X86_CR4_OSXSAVE_BIT: u32 = 18;
5323pub const X86_CR4_SMEP_BIT: u32 = 20;
5324pub const X86_CR4_SMAP_BIT: u32 = 21;
5325pub const X86_CR4_PKE_BIT: u32 = 22;
5326pub const X86_CR4_CET_BIT: u32 = 23;
5327pub const X86_CR4_LAM_SUP_BIT: u32 = 28;
5328pub const X86_CR4_FRED_BIT: u32 = 32;
5329pub const CX86_PCR0: u32 = 32;
5330pub const CX86_GCR: u32 = 184;
5331pub const CX86_CCR0: u32 = 192;
5332pub const CX86_CCR1: u32 = 193;
5333pub const CX86_CCR2: u32 = 194;
5334pub const CX86_CCR3: u32 = 195;
5335pub const CX86_CCR4: u32 = 232;
5336pub const CX86_CCR5: u32 = 233;
5337pub const CX86_CCR6: u32 = 234;
5338pub const CX86_CCR7: u32 = 235;
5339pub const CX86_PCR1: u32 = 240;
5340pub const CX86_DIR0: u32 = 254;
5341pub const CX86_DIR1: u32 = 255;
5342pub const CX86_ARR_BASE: u32 = 196;
5343pub const CX86_RCR_BASE: u32 = 220;
5344pub const GRND_NONBLOCK: u32 = 1;
5345pub const GRND_RANDOM: u32 = 2;
5346pub const GRND_INSECURE: u32 = 4;
5347pub const LINUX_REBOOT_MAGIC1: u32 = 4276215469;
5348pub const LINUX_REBOOT_MAGIC2: u32 = 672274793;
5349pub const LINUX_REBOOT_MAGIC2A: u32 = 85072278;
5350pub const LINUX_REBOOT_MAGIC2B: u32 = 369367448;
5351pub const LINUX_REBOOT_MAGIC2C: u32 = 537993216;
5352pub const LINUX_REBOOT_CMD_RESTART: u32 = 19088743;
5353pub const LINUX_REBOOT_CMD_HALT: u32 = 3454992675;
5354pub const LINUX_REBOOT_CMD_CAD_ON: u32 = 2309737967;
5355pub const LINUX_REBOOT_CMD_CAD_OFF: u32 = 0;
5356pub const LINUX_REBOOT_CMD_POWER_OFF: u32 = 1126301404;
5357pub const LINUX_REBOOT_CMD_RESTART2: u32 = 2712847316;
5358pub const LINUX_REBOOT_CMD_SW_SUSPEND: u32 = 3489725666;
5359pub const LINUX_REBOOT_CMD_KEXEC: u32 = 1163412803;
5360pub const RUSAGE_SELF: u32 = 0;
5361pub const RUSAGE_CHILDREN: i32 = -1;
5362pub const RUSAGE_BOTH: i32 = -2;
5363pub const RUSAGE_THREAD: u32 = 1;
5364pub const RLIM64_INFINITY: i32 = -1;
5365pub const PRIO_MIN: i32 = -20;
5366pub const PRIO_MAX: u32 = 20;
5367pub const PRIO_PROCESS: u32 = 0;
5368pub const PRIO_PGRP: u32 = 1;
5369pub const PRIO_USER: u32 = 2;
5370pub const _STK_LIM: u32 = 8388608;
5371pub const MLOCK_LIMIT: u32 = 8388608;
5372pub const RLIMIT_CPU: u32 = 0;
5373pub const RLIMIT_FSIZE: u32 = 1;
5374pub const RLIMIT_DATA: u32 = 2;
5375pub const RLIMIT_STACK: u32 = 3;
5376pub const RLIMIT_CORE: u32 = 4;
5377pub const RLIMIT_RSS: u32 = 5;
5378pub const RLIMIT_NPROC: u32 = 6;
5379pub const RLIMIT_NOFILE: u32 = 7;
5380pub const RLIMIT_MEMLOCK: u32 = 8;
5381pub const RLIMIT_AS: u32 = 9;
5382pub const RLIMIT_LOCKS: u32 = 10;
5383pub const RLIMIT_SIGPENDING: u32 = 11;
5384pub const RLIMIT_MSGQUEUE: u32 = 12;
5385pub const RLIMIT_NICE: u32 = 13;
5386pub const RLIMIT_RTPRIO: u32 = 14;
5387pub const RLIMIT_RTTIME: u32 = 15;
5388pub const RLIM_NLIMITS: u32 = 16;
5389pub const RLIM_INFINITY: i32 = -1;
5390pub const RTC_IRQF: u32 = 128;
5391pub const RTC_PF: u32 = 64;
5392pub const RTC_AF: u32 = 32;
5393pub const RTC_UF: u32 = 16;
5394pub const RTC_FEATURE_ALARM: u32 = 0;
5395pub const RTC_FEATURE_ALARM_RES_MINUTE: u32 = 1;
5396pub const RTC_FEATURE_NEED_WEEK_DAY: u32 = 2;
5397pub const RTC_FEATURE_ALARM_RES_2S: u32 = 3;
5398pub const RTC_FEATURE_UPDATE_INTERRUPT: u32 = 4;
5399pub const RTC_FEATURE_CORRECTION: u32 = 5;
5400pub const RTC_FEATURE_BACKUP_SWITCH_MODE: u32 = 6;
5401pub const RTC_FEATURE_ALARM_WAKEUP_ONLY: u32 = 7;
5402pub const RTC_FEATURE_CNT: u32 = 8;
5403pub const RTC_PARAM_FEATURES: u32 = 0;
5404pub const RTC_PARAM_CORRECTION: u32 = 1;
5405pub const RTC_PARAM_BACKUP_SWITCH_MODE: u32 = 2;
5406pub const RTC_BSM_DISABLED: u32 = 0;
5407pub const RTC_BSM_DIRECT: u32 = 1;
5408pub const RTC_BSM_LEVEL: u32 = 2;
5409pub const RTC_BSM_STANDBY: u32 = 3;
5410pub const RTC_MAX_FREQ: u32 = 8192;
5411pub const CSIGNAL: u32 = 255;
5412pub const CLONE_VM: u32 = 256;
5413pub const CLONE_FS: u32 = 512;
5414pub const CLONE_FILES: u32 = 1024;
5415pub const CLONE_SIGHAND: u32 = 2048;
5416pub const CLONE_PIDFD: u32 = 4096;
5417pub const CLONE_PTRACE: u32 = 8192;
5418pub const CLONE_VFORK: u32 = 16384;
5419pub const CLONE_PARENT: u32 = 32768;
5420pub const CLONE_THREAD: u32 = 65536;
5421pub const CLONE_NEWNS: u32 = 131072;
5422pub const CLONE_SYSVSEM: u32 = 262144;
5423pub const CLONE_SETTLS: u32 = 524288;
5424pub const CLONE_PARENT_SETTID: u32 = 1048576;
5425pub const CLONE_CHILD_CLEARTID: u32 = 2097152;
5426pub const CLONE_DETACHED: u32 = 4194304;
5427pub const CLONE_UNTRACED: u32 = 8388608;
5428pub const CLONE_CHILD_SETTID: u32 = 16777216;
5429pub const CLONE_NEWCGROUP: u32 = 33554432;
5430pub const CLONE_NEWUTS: u32 = 67108864;
5431pub const CLONE_NEWIPC: u32 = 134217728;
5432pub const CLONE_NEWUSER: u32 = 268435456;
5433pub const CLONE_NEWPID: u32 = 536870912;
5434pub const CLONE_NEWNET: u32 = 1073741824;
5435pub const CLONE_IO: u32 = 2147483648;
5436pub const CLONE_CLEAR_SIGHAND: u64 = 4294967296;
5437pub const CLONE_INTO_CGROUP: u64 = 8589934592;
5438pub const CLONE_NEWTIME: u32 = 128;
5439pub const CLONE_ARGS_SIZE_VER0: u32 = 64;
5440pub const CLONE_ARGS_SIZE_VER1: u32 = 80;
5441pub const CLONE_ARGS_SIZE_VER2: u32 = 88;
5442pub const SCHED_NORMAL: u32 = 0;
5443pub const SCHED_FIFO: u32 = 1;
5444pub const SCHED_RR: u32 = 2;
5445pub const SCHED_BATCH: u32 = 3;
5446pub const SCHED_IDLE: u32 = 5;
5447pub const SCHED_DEADLINE: u32 = 6;
5448pub const SCHED_EXT: u32 = 7;
5449pub const SCHED_RESET_ON_FORK: u32 = 1073741824;
5450pub const SCHED_FLAG_RESET_ON_FORK: u32 = 1;
5451pub const SCHED_FLAG_RECLAIM: u32 = 2;
5452pub const SCHED_FLAG_DL_OVERRUN: u32 = 4;
5453pub const SCHED_FLAG_KEEP_POLICY: u32 = 8;
5454pub const SCHED_FLAG_KEEP_PARAMS: u32 = 16;
5455pub const SCHED_FLAG_UTIL_CLAMP_MIN: u32 = 32;
5456pub const SCHED_FLAG_UTIL_CLAMP_MAX: u32 = 64;
5457pub const SCHED_FLAG_KEEP_ALL: u32 = 24;
5458pub const SCHED_FLAG_UTIL_CLAMP: u32 = 96;
5459pub const SCHED_FLAG_ALL: u32 = 127;
5460pub const SCHED_ATTR_SIZE_VER0: u32 = 48;
5461pub const SCHED_ATTR_SIZE_VER1: u32 = 56;
5462pub const SECCOMP_MODE_DISABLED: u32 = 0;
5463pub const SECCOMP_MODE_STRICT: u32 = 1;
5464pub const SECCOMP_MODE_FILTER: u32 = 2;
5465pub const SECCOMP_SET_MODE_STRICT: u32 = 0;
5466pub const SECCOMP_SET_MODE_FILTER: u32 = 1;
5467pub const SECCOMP_GET_ACTION_AVAIL: u32 = 2;
5468pub const SECCOMP_GET_NOTIF_SIZES: u32 = 3;
5469pub const SECCOMP_FILTER_FLAG_TSYNC: u32 = 1;
5470pub const SECCOMP_FILTER_FLAG_LOG: u32 = 2;
5471pub const SECCOMP_FILTER_FLAG_SPEC_ALLOW: u32 = 4;
5472pub const SECCOMP_FILTER_FLAG_NEW_LISTENER: u32 = 8;
5473pub const SECCOMP_FILTER_FLAG_TSYNC_ESRCH: u32 = 16;
5474pub const SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV: u32 = 32;
5475pub const SECCOMP_RET_KILL_PROCESS: u32 = 2147483648;
5476pub const SECCOMP_RET_KILL_THREAD: u32 = 0;
5477pub const SECCOMP_RET_KILL: u32 = 0;
5478pub const SECCOMP_RET_TRAP: u32 = 196608;
5479pub const SECCOMP_RET_ERRNO: u32 = 327680;
5480pub const SECCOMP_RET_USER_NOTIF: u32 = 2143289344;
5481pub const SECCOMP_RET_TRACE: u32 = 2146435072;
5482pub const SECCOMP_RET_LOG: u32 = 2147221504;
5483pub const SECCOMP_RET_ALLOW: u32 = 2147418112;
5484pub const SECCOMP_RET_ACTION_FULL: u32 = 4294901760;
5485pub const SECCOMP_RET_ACTION: u32 = 2147418112;
5486pub const SECCOMP_RET_DATA: u32 = 65535;
5487pub const SECCOMP_USER_NOTIF_FLAG_CONTINUE: u32 = 1;
5488pub const SECCOMP_USER_NOTIF_FD_SYNC_WAKE_UP: u32 = 1;
5489pub const SECCOMP_ADDFD_FLAG_SETFD: u32 = 1;
5490pub const SECCOMP_ADDFD_FLAG_SEND: u32 = 2;
5491pub const SECCOMP_IOC_MAGIC: u8 = 33u8;
5492pub const SECUREBITS_DEFAULT: u32 = 0;
5493pub const SECURE_NOROOT: u32 = 0;
5494pub const SECURE_NOROOT_LOCKED: u32 = 1;
5495pub const SECURE_NO_SETUID_FIXUP: u32 = 2;
5496pub const SECURE_NO_SETUID_FIXUP_LOCKED: u32 = 3;
5497pub const SECURE_KEEP_CAPS: u32 = 4;
5498pub const SECURE_KEEP_CAPS_LOCKED: u32 = 5;
5499pub const SECURE_NO_CAP_AMBIENT_RAISE: u32 = 6;
5500pub const SECURE_NO_CAP_AMBIENT_RAISE_LOCKED: u32 = 7;
5501pub const SI_MAX_SIZE: u32 = 128;
5502pub const SI_USER: u32 = 0;
5503pub const SI_KERNEL: u32 = 128;
5504pub const SI_QUEUE: i32 = -1;
5505pub const SI_TIMER: i32 = -2;
5506pub const SI_MESGQ: i32 = -3;
5507pub const SI_ASYNCIO: i32 = -4;
5508pub const SI_SIGIO: i32 = -5;
5509pub const SI_TKILL: i32 = -6;
5510pub const SI_DETHREAD: i32 = -7;
5511pub const SI_ASYNCNL: i32 = -60;
5512pub const ILL_ILLOPC: u32 = 1;
5513pub const ILL_ILLOPN: u32 = 2;
5514pub const ILL_ILLADR: u32 = 3;
5515pub const ILL_ILLTRP: u32 = 4;
5516pub const ILL_PRVOPC: u32 = 5;
5517pub const ILL_PRVREG: u32 = 6;
5518pub const ILL_COPROC: u32 = 7;
5519pub const ILL_BADSTK: u32 = 8;
5520pub const ILL_BADIADDR: u32 = 9;
5521pub const __ILL_BREAK: u32 = 10;
5522pub const __ILL_BNDMOD: u32 = 11;
5523pub const NSIGILL: u32 = 11;
5524pub const FPE_INTDIV: u32 = 1;
5525pub const FPE_INTOVF: u32 = 2;
5526pub const FPE_FLTDIV: u32 = 3;
5527pub const FPE_FLTOVF: u32 = 4;
5528pub const FPE_FLTUND: u32 = 5;
5529pub const FPE_FLTRES: u32 = 6;
5530pub const FPE_FLTINV: u32 = 7;
5531pub const FPE_FLTSUB: u32 = 8;
5532pub const __FPE_DECOVF: u32 = 9;
5533pub const __FPE_DECDIV: u32 = 10;
5534pub const __FPE_DECERR: u32 = 11;
5535pub const __FPE_INVASC: u32 = 12;
5536pub const __FPE_INVDEC: u32 = 13;
5537pub const FPE_FLTUNK: u32 = 14;
5538pub const FPE_CONDTRAP: u32 = 15;
5539pub const NSIGFPE: u32 = 15;
5540pub const SEGV_MAPERR: u32 = 1;
5541pub const SEGV_ACCERR: u32 = 2;
5542pub const SEGV_BNDERR: u32 = 3;
5543pub const SEGV_PKUERR: u32 = 4;
5544pub const SEGV_ACCADI: u32 = 5;
5545pub const SEGV_ADIDERR: u32 = 6;
5546pub const SEGV_ADIPERR: u32 = 7;
5547pub const SEGV_MTEAERR: u32 = 8;
5548pub const SEGV_MTESERR: u32 = 9;
5549pub const SEGV_CPERR: u32 = 10;
5550pub const NSIGSEGV: u32 = 10;
5551pub const BUS_ADRALN: u32 = 1;
5552pub const BUS_ADRERR: u32 = 2;
5553pub const BUS_OBJERR: u32 = 3;
5554pub const BUS_MCEERR_AR: u32 = 4;
5555pub const BUS_MCEERR_AO: u32 = 5;
5556pub const NSIGBUS: u32 = 5;
5557pub const TRAP_BRKPT: u32 = 1;
5558pub const TRAP_TRACE: u32 = 2;
5559pub const TRAP_BRANCH: u32 = 3;
5560pub const TRAP_HWBKPT: u32 = 4;
5561pub const TRAP_UNK: u32 = 5;
5562pub const TRAP_PERF: u32 = 6;
5563pub const NSIGTRAP: u32 = 6;
5564pub const TRAP_PERF_FLAG_ASYNC: u32 = 1;
5565pub const CLD_EXITED: u32 = 1;
5566pub const CLD_KILLED: u32 = 2;
5567pub const CLD_DUMPED: u32 = 3;
5568pub const CLD_TRAPPED: u32 = 4;
5569pub const CLD_STOPPED: u32 = 5;
5570pub const CLD_CONTINUED: u32 = 6;
5571pub const NSIGCHLD: u32 = 6;
5572pub const POLL_IN: u32 = 1;
5573pub const POLL_OUT: u32 = 2;
5574pub const POLL_MSG: u32 = 3;
5575pub const POLL_ERR: u32 = 4;
5576pub const POLL_PRI: u32 = 5;
5577pub const POLL_HUP: u32 = 6;
5578pub const NSIGPOLL: u32 = 6;
5579pub const SYS_SECCOMP: u32 = 1;
5580pub const SYS_USER_DISPATCH: u32 = 2;
5581pub const NSIGSYS: u32 = 2;
5582pub const EMT_TAGOVF: u32 = 1;
5583pub const NSIGEMT: u32 = 1;
5584pub const SIGEV_SIGNAL: u32 = 0;
5585pub const SIGEV_NONE: u32 = 1;
5586pub const SIGEV_THREAD: u32 = 2;
5587pub const SIGEV_THREAD_ID: u32 = 4;
5588pub const SIGEV_MAX_SIZE: u32 = 64;
5589pub const SS_ONSTACK: u32 = 1;
5590pub const SS_DISABLE: u32 = 2;
5591pub const SS_AUTODISARM: u32 = 2147483648;
5592pub const SS_FLAG_BITS: u32 = 2147483648;
5593pub const SFD_CLOEXEC: u32 = 524288;
5594pub const SFD_NONBLOCK: u32 = 2048;
5595pub const SOCK_DIAG_BY_FAMILY: u32 = 20;
5596pub const SOCK_DESTROY: u32 = 21;
5597pub const SIOCINQ: u32 = 21531;
5598pub const SIOCOUTQ: u32 = 21521;
5599pub const SOCK_IOC_TYPE: u32 = 137;
5600pub const SIOCGSTAMP: u32 = 35078;
5601pub const SIOCGSTAMPNS: u32 = 35079;
5602pub const SIOCADDRT: u32 = 35083;
5603pub const SIOCDELRT: u32 = 35084;
5604pub const SIOCRTMSG: u32 = 35085;
5605pub const SIOCGIFNAME: u32 = 35088;
5606pub const SIOCSIFLINK: u32 = 35089;
5607pub const SIOCGIFCONF: u32 = 35090;
5608pub const SIOCGIFFLAGS: u32 = 35091;
5609pub const SIOCSIFFLAGS: u32 = 35092;
5610pub const SIOCGIFADDR: u32 = 35093;
5611pub const SIOCSIFADDR: u32 = 35094;
5612pub const SIOCGIFDSTADDR: u32 = 35095;
5613pub const SIOCSIFDSTADDR: u32 = 35096;
5614pub const SIOCGIFBRDADDR: u32 = 35097;
5615pub const SIOCSIFBRDADDR: u32 = 35098;
5616pub const SIOCGIFNETMASK: u32 = 35099;
5617pub const SIOCSIFNETMASK: u32 = 35100;
5618pub const SIOCGIFMETRIC: u32 = 35101;
5619pub const SIOCSIFMETRIC: u32 = 35102;
5620pub const SIOCGIFMEM: u32 = 35103;
5621pub const SIOCSIFMEM: u32 = 35104;
5622pub const SIOCGIFMTU: u32 = 35105;
5623pub const SIOCSIFMTU: u32 = 35106;
5624pub const SIOCSIFNAME: u32 = 35107;
5625pub const SIOCSIFHWADDR: u32 = 35108;
5626pub const SIOCGIFENCAP: u32 = 35109;
5627pub const SIOCSIFENCAP: u32 = 35110;
5628pub const SIOCGIFHWADDR: u32 = 35111;
5629pub const SIOCGIFSLAVE: u32 = 35113;
5630pub const SIOCSIFSLAVE: u32 = 35120;
5631pub const SIOCADDMULTI: u32 = 35121;
5632pub const SIOCDELMULTI: u32 = 35122;
5633pub const SIOCGIFINDEX: u32 = 35123;
5634pub const SIOGIFINDEX: u32 = 35123;
5635pub const SIOCSIFPFLAGS: u32 = 35124;
5636pub const SIOCGIFPFLAGS: u32 = 35125;
5637pub const SIOCDIFADDR: u32 = 35126;
5638pub const SIOCSIFHWBROADCAST: u32 = 35127;
5639pub const SIOCGIFCOUNT: u32 = 35128;
5640pub const SIOCGIFBR: u32 = 35136;
5641pub const SIOCSIFBR: u32 = 35137;
5642pub const SIOCGIFTXQLEN: u32 = 35138;
5643pub const SIOCSIFTXQLEN: u32 = 35139;
5644pub const SIOCETHTOOL: u32 = 35142;
5645pub const SIOCGMIIPHY: u32 = 35143;
5646pub const SIOCGMIIREG: u32 = 35144;
5647pub const SIOCSMIIREG: u32 = 35145;
5648pub const SIOCWANDEV: u32 = 35146;
5649pub const SIOCOUTQNSD: u32 = 35147;
5650pub const SIOCGSKNS: u32 = 35148;
5651pub const SIOCDARP: u32 = 35155;
5652pub const SIOCGARP: u32 = 35156;
5653pub const SIOCSARP: u32 = 35157;
5654pub const SIOCDRARP: u32 = 35168;
5655pub const SIOCGRARP: u32 = 35169;
5656pub const SIOCSRARP: u32 = 35170;
5657pub const SIOCGIFMAP: u32 = 35184;
5658pub const SIOCSIFMAP: u32 = 35185;
5659pub const SIOCADDDLCI: u32 = 35200;
5660pub const SIOCDELDLCI: u32 = 35201;
5661pub const SIOCGIFVLAN: u32 = 35202;
5662pub const SIOCSIFVLAN: u32 = 35203;
5663pub const SIOCBONDENSLAVE: u32 = 35216;
5664pub const SIOCBONDRELEASE: u32 = 35217;
5665pub const SIOCBONDSETHWADDR: u32 = 35218;
5666pub const SIOCBONDSLAVEINFOQUERY: u32 = 35219;
5667pub const SIOCBONDINFOQUERY: u32 = 35220;
5668pub const SIOCBONDCHANGEACTIVE: u32 = 35221;
5669pub const SIOCBRADDBR: u32 = 35232;
5670pub const SIOCBRDELBR: u32 = 35233;
5671pub const SIOCBRADDIF: u32 = 35234;
5672pub const SIOCBRDELIF: u32 = 35235;
5673pub const SIOCSHWTSTAMP: u32 = 35248;
5674pub const SIOCGHWTSTAMP: u32 = 35249;
5675pub const SIOCDEVPRIVATE: u32 = 35312;
5676pub const SIOCPROTOPRIVATE: u32 = 35296;
5677pub const S_IFMT: u32 = 61440;
5678pub const S_IFSOCK: u32 = 49152;
5679pub const S_IFLNK: u32 = 40960;
5680pub const S_IFREG: u32 = 32768;
5681pub const S_IFBLK: u32 = 24576;
5682pub const S_IFDIR: u32 = 16384;
5683pub const S_IFCHR: u32 = 8192;
5684pub const S_IFIFO: u32 = 4096;
5685pub const S_ISUID: u32 = 2048;
5686pub const S_ISGID: u32 = 1024;
5687pub const S_ISVTX: u32 = 512;
5688pub const S_IRWXU: u32 = 448;
5689pub const S_IRUSR: u32 = 256;
5690pub const S_IWUSR: u32 = 128;
5691pub const S_IXUSR: u32 = 64;
5692pub const S_IRWXG: u32 = 56;
5693pub const S_IRGRP: u32 = 32;
5694pub const S_IWGRP: u32 = 16;
5695pub const S_IXGRP: u32 = 8;
5696pub const S_IRWXO: u32 = 7;
5697pub const S_IROTH: u32 = 4;
5698pub const S_IWOTH: u32 = 2;
5699pub const S_IXOTH: u32 = 1;
5700pub const STATX_TYPE: u32 = 1;
5701pub const STATX_MODE: u32 = 2;
5702pub const STATX_NLINK: u32 = 4;
5703pub const STATX_UID: u32 = 8;
5704pub const STATX_GID: u32 = 16;
5705pub const STATX_ATIME: u32 = 32;
5706pub const STATX_MTIME: u32 = 64;
5707pub const STATX_CTIME: u32 = 128;
5708pub const STATX_INO: u32 = 256;
5709pub const STATX_SIZE: u32 = 512;
5710pub const STATX_BLOCKS: u32 = 1024;
5711pub const STATX_BASIC_STATS: u32 = 2047;
5712pub const STATX_BTIME: u32 = 2048;
5713pub const STATX_MNT_ID: u32 = 4096;
5714pub const STATX_DIOALIGN: u32 = 8192;
5715pub const STATX_MNT_ID_UNIQUE: u32 = 16384;
5716pub const STATX_SUBVOL: u32 = 32768;
5717pub const STATX_WRITE_ATOMIC: u32 = 65536;
5718pub const STATX__RESERVED: u32 = 2147483648;
5719pub const STATX_ALL: u32 = 4095;
5720pub const STATX_ATTR_COMPRESSED: u32 = 4;
5721pub const STATX_ATTR_IMMUTABLE: u32 = 16;
5722pub const STATX_ATTR_APPEND: u32 = 32;
5723pub const STATX_ATTR_NODUMP: u32 = 64;
5724pub const STATX_ATTR_ENCRYPTED: u32 = 2048;
5725pub const STATX_ATTR_AUTOMOUNT: u32 = 4096;
5726pub const STATX_ATTR_MOUNT_ROOT: u32 = 8192;
5727pub const STATX_ATTR_VERITY: u32 = 1048576;
5728pub const STATX_ATTR_DAX: u32 = 2097152;
5729pub const STATX_ATTR_WRITE_ATOMIC: u32 = 4194304;
5730pub const SYNC_IOC_MAGIC: u8 = 62u8;
5731pub const SI_LOAD_SHIFT: u32 = 16;
5732pub const TASKSTATS_VERSION: u32 = 14;
5733pub const TS_COMM_LEN: u32 = 32;
5734pub const TASKSTATS_GENL_NAME: &'static std::ffi::CStr = c"TASKSTATS";
5735pub const TASKSTATS_GENL_VERSION: u32 = 1;
5736pub const IGNBRK: u32 = 1;
5737pub const BRKINT: u32 = 2;
5738pub const IGNPAR: u32 = 4;
5739pub const PARMRK: u32 = 8;
5740pub const INPCK: u32 = 16;
5741pub const ISTRIP: u32 = 32;
5742pub const INLCR: u32 = 64;
5743pub const IGNCR: u32 = 128;
5744pub const ICRNL: u32 = 256;
5745pub const IXANY: u32 = 2048;
5746pub const OPOST: u32 = 1;
5747pub const OCRNL: u32 = 8;
5748pub const ONOCR: u32 = 16;
5749pub const ONLRET: u32 = 32;
5750pub const OFILL: u32 = 64;
5751pub const OFDEL: u32 = 128;
5752pub const B0: u32 = 0;
5753pub const B50: u32 = 1;
5754pub const B75: u32 = 2;
5755pub const B110: u32 = 3;
5756pub const B134: u32 = 4;
5757pub const B150: u32 = 5;
5758pub const B200: u32 = 6;
5759pub const B300: u32 = 7;
5760pub const B600: u32 = 8;
5761pub const B1200: u32 = 9;
5762pub const B1800: u32 = 10;
5763pub const B2400: u32 = 11;
5764pub const B4800: u32 = 12;
5765pub const B9600: u32 = 13;
5766pub const B19200: u32 = 14;
5767pub const B38400: u32 = 15;
5768pub const EXTA: u32 = 14;
5769pub const EXTB: u32 = 15;
5770pub const ADDRB: u32 = 536870912;
5771pub const CMSPAR: u32 = 1073741824;
5772pub const CRTSCTS: u32 = 2147483648;
5773pub const IBSHIFT: u32 = 16;
5774pub const TCOOFF: u32 = 0;
5775pub const TCOON: u32 = 1;
5776pub const TCIOFF: u32 = 2;
5777pub const TCION: u32 = 3;
5778pub const TCIFLUSH: u32 = 0;
5779pub const TCOFLUSH: u32 = 1;
5780pub const TCIOFLUSH: u32 = 2;
5781pub const NCCS: u32 = 19;
5782pub const VINTR: u32 = 0;
5783pub const VQUIT: u32 = 1;
5784pub const VERASE: u32 = 2;
5785pub const VKILL: u32 = 3;
5786pub const VEOF: u32 = 4;
5787pub const VTIME: u32 = 5;
5788pub const VMIN: u32 = 6;
5789pub const VSWTC: u32 = 7;
5790pub const VSTART: u32 = 8;
5791pub const VSTOP: u32 = 9;
5792pub const VSUSP: u32 = 10;
5793pub const VEOL: u32 = 11;
5794pub const VREPRINT: u32 = 12;
5795pub const VDISCARD: u32 = 13;
5796pub const VWERASE: u32 = 14;
5797pub const VLNEXT: u32 = 15;
5798pub const VEOL2: u32 = 16;
5799pub const IUCLC: u32 = 512;
5800pub const IXON: u32 = 1024;
5801pub const IXOFF: u32 = 4096;
5802pub const IMAXBEL: u32 = 8192;
5803pub const IUTF8: u32 = 16384;
5804pub const OLCUC: u32 = 2;
5805pub const ONLCR: u32 = 4;
5806pub const NLDLY: u32 = 256;
5807pub const NL0: u32 = 0;
5808pub const NL1: u32 = 256;
5809pub const CRDLY: u32 = 1536;
5810pub const CR0: u32 = 0;
5811pub const CR1: u32 = 512;
5812pub const CR2: u32 = 1024;
5813pub const CR3: u32 = 1536;
5814pub const TABDLY: u32 = 6144;
5815pub const TAB0: u32 = 0;
5816pub const TAB1: u32 = 2048;
5817pub const TAB2: u32 = 4096;
5818pub const TAB3: u32 = 6144;
5819pub const XTABS: u32 = 6144;
5820pub const BSDLY: u32 = 8192;
5821pub const BS0: u32 = 0;
5822pub const BS1: u32 = 8192;
5823pub const VTDLY: u32 = 16384;
5824pub const VT0: u32 = 0;
5825pub const VT1: u32 = 16384;
5826pub const FFDLY: u32 = 32768;
5827pub const FF0: u32 = 0;
5828pub const FF1: u32 = 32768;
5829pub const CBAUD: u32 = 4111;
5830pub const CSIZE: u32 = 48;
5831pub const CS5: u32 = 0;
5832pub const CS6: u32 = 16;
5833pub const CS7: u32 = 32;
5834pub const CS8: u32 = 48;
5835pub const CSTOPB: u32 = 64;
5836pub const CREAD: u32 = 128;
5837pub const PARENB: u32 = 256;
5838pub const PARODD: u32 = 512;
5839pub const HUPCL: u32 = 1024;
5840pub const CLOCAL: u32 = 2048;
5841pub const CBAUDEX: u32 = 4096;
5842pub const BOTHER: u32 = 4096;
5843pub const B57600: u32 = 4097;
5844pub const B115200: u32 = 4098;
5845pub const B230400: u32 = 4099;
5846pub const B460800: u32 = 4100;
5847pub const B500000: u32 = 4101;
5848pub const B576000: u32 = 4102;
5849pub const B921600: u32 = 4103;
5850pub const B1000000: u32 = 4104;
5851pub const B1152000: u32 = 4105;
5852pub const B1500000: u32 = 4106;
5853pub const B2000000: u32 = 4107;
5854pub const B2500000: u32 = 4108;
5855pub const B3000000: u32 = 4109;
5856pub const B3500000: u32 = 4110;
5857pub const B4000000: u32 = 4111;
5858pub const CIBAUD: u32 = 269418496;
5859pub const ISIG: u32 = 1;
5860pub const ICANON: u32 = 2;
5861pub const XCASE: u32 = 4;
5862pub const ECHO: u32 = 8;
5863pub const ECHOE: u32 = 16;
5864pub const ECHOK: u32 = 32;
5865pub const ECHONL: u32 = 64;
5866pub const NOFLSH: u32 = 128;
5867pub const TOSTOP: u32 = 256;
5868pub const ECHOCTL: u32 = 512;
5869pub const ECHOPRT: u32 = 1024;
5870pub const ECHOKE: u32 = 2048;
5871pub const FLUSHO: u32 = 4096;
5872pub const PENDIN: u32 = 16384;
5873pub const IEXTEN: u32 = 32768;
5874pub const EXTPROC: u32 = 65536;
5875pub const TCSANOW: u32 = 0;
5876pub const TCSADRAIN: u32 = 1;
5877pub const TCSAFLUSH: u32 = 2;
5878pub const NCC: u32 = 8;
5879pub const TIOCM_LE: u32 = 1;
5880pub const TIOCM_DTR: u32 = 2;
5881pub const TIOCM_RTS: u32 = 4;
5882pub const TIOCM_ST: u32 = 8;
5883pub const TIOCM_SR: u32 = 16;
5884pub const TIOCM_CTS: u32 = 32;
5885pub const TIOCM_CAR: u32 = 64;
5886pub const TIOCM_RNG: u32 = 128;
5887pub const TIOCM_DSR: u32 = 256;
5888pub const TIOCM_CD: u32 = 64;
5889pub const TIOCM_RI: u32 = 128;
5890pub const TIOCM_OUT1: u32 = 8192;
5891pub const TIOCM_OUT2: u32 = 16384;
5892pub const TIOCM_LOOP: u32 = 32768;
5893pub const THERMAL_NAME_LENGTH: u32 = 20;
5894pub const THERMAL_GENL_FAMILY_NAME: &'static std::ffi::CStr = c"thermal";
5895pub const THERMAL_GENL_VERSION: u32 = 1;
5896pub const THERMAL_GENL_SAMPLING_GROUP_NAME: &'static std::ffi::CStr = c"sampling";
5897pub const THERMAL_GENL_EVENT_GROUP_NAME: &'static std::ffi::CStr = c"event";
5898pub const TFD_TIMER_ABSTIME: u32 = 1;
5899pub const TFD_TIMER_CANCEL_ON_SET: u32 = 2;
5900pub const TFD_CLOEXEC: u32 = 524288;
5901pub const TFD_NONBLOCK: u32 = 2048;
5902pub const UINPUT_VERSION: u32 = 5;
5903pub const UINPUT_MAX_NAME_SIZE: u32 = 80;
5904pub const UINPUT_IOCTL_BASE: u8 = 85u8;
5905pub const EV_UINPUT: u32 = 257;
5906pub const UI_FF_UPLOAD: u32 = 1;
5907pub const UI_FF_ERASE: u32 = 2;
5908pub const UIO_FASTIOV: u32 = 8;
5909pub const UIO_MAXIOV: u32 = 1024;
5910pub const UNIX_PATH_MAX: u32 = 108;
5911pub const SIOCUNIXFILE: u32 = 35296;
5912pub const __X32_SYSCALL_BIT: u32 = 1073741824;
5913pub const __NR_read: u32 = 0;
5914pub const __NR_write: u32 = 1;
5915pub const __NR_open: u32 = 2;
5916pub const __NR_close: u32 = 3;
5917pub const __NR_stat: u32 = 4;
5918pub const __NR_fstat: u32 = 5;
5919pub const __NR_lstat: u32 = 6;
5920pub const __NR_poll: u32 = 7;
5921pub const __NR_lseek: u32 = 8;
5922pub const __NR_mmap: u32 = 9;
5923pub const __NR_mprotect: u32 = 10;
5924pub const __NR_munmap: u32 = 11;
5925pub const __NR_brk: u32 = 12;
5926pub const __NR_rt_sigaction: u32 = 13;
5927pub const __NR_rt_sigprocmask: u32 = 14;
5928pub const __NR_rt_sigreturn: u32 = 15;
5929pub const __NR_ioctl: u32 = 16;
5930pub const __NR_pread64: u32 = 17;
5931pub const __NR_pwrite64: u32 = 18;
5932pub const __NR_readv: u32 = 19;
5933pub const __NR_writev: u32 = 20;
5934pub const __NR_access: u32 = 21;
5935pub const __NR_pipe: u32 = 22;
5936pub const __NR_select: u32 = 23;
5937pub const __NR_sched_yield: u32 = 24;
5938pub const __NR_mremap: u32 = 25;
5939pub const __NR_msync: u32 = 26;
5940pub const __NR_mincore: u32 = 27;
5941pub const __NR_madvise: u32 = 28;
5942pub const __NR_shmget: u32 = 29;
5943pub const __NR_shmat: u32 = 30;
5944pub const __NR_shmctl: u32 = 31;
5945pub const __NR_dup: u32 = 32;
5946pub const __NR_dup2: u32 = 33;
5947pub const __NR_pause: u32 = 34;
5948pub const __NR_nanosleep: u32 = 35;
5949pub const __NR_getitimer: u32 = 36;
5950pub const __NR_alarm: u32 = 37;
5951pub const __NR_setitimer: u32 = 38;
5952pub const __NR_getpid: u32 = 39;
5953pub const __NR_sendfile: u32 = 40;
5954pub const __NR_socket: u32 = 41;
5955pub const __NR_connect: u32 = 42;
5956pub const __NR_accept: u32 = 43;
5957pub const __NR_sendto: u32 = 44;
5958pub const __NR_recvfrom: u32 = 45;
5959pub const __NR_sendmsg: u32 = 46;
5960pub const __NR_recvmsg: u32 = 47;
5961pub const __NR_shutdown: u32 = 48;
5962pub const __NR_bind: u32 = 49;
5963pub const __NR_listen: u32 = 50;
5964pub const __NR_getsockname: u32 = 51;
5965pub const __NR_getpeername: u32 = 52;
5966pub const __NR_socketpair: u32 = 53;
5967pub const __NR_setsockopt: u32 = 54;
5968pub const __NR_getsockopt: u32 = 55;
5969pub const __NR_clone: u32 = 56;
5970pub const __NR_fork: u32 = 57;
5971pub const __NR_vfork: u32 = 58;
5972pub const __NR_execve: u32 = 59;
5973pub const __NR_exit: u32 = 60;
5974pub const __NR_wait4: u32 = 61;
5975pub const __NR_kill: u32 = 62;
5976pub const __NR_uname: u32 = 63;
5977pub const __NR_semget: u32 = 64;
5978pub const __NR_semop: u32 = 65;
5979pub const __NR_semctl: u32 = 66;
5980pub const __NR_shmdt: u32 = 67;
5981pub const __NR_msgget: u32 = 68;
5982pub const __NR_msgsnd: u32 = 69;
5983pub const __NR_msgrcv: u32 = 70;
5984pub const __NR_msgctl: u32 = 71;
5985pub const __NR_fcntl: u32 = 72;
5986pub const __NR_flock: u32 = 73;
5987pub const __NR_fsync: u32 = 74;
5988pub const __NR_fdatasync: u32 = 75;
5989pub const __NR_truncate: u32 = 76;
5990pub const __NR_ftruncate: u32 = 77;
5991pub const __NR_getdents: u32 = 78;
5992pub const __NR_getcwd: u32 = 79;
5993pub const __NR_chdir: u32 = 80;
5994pub const __NR_fchdir: u32 = 81;
5995pub const __NR_rename: u32 = 82;
5996pub const __NR_mkdir: u32 = 83;
5997pub const __NR_rmdir: u32 = 84;
5998pub const __NR_creat: u32 = 85;
5999pub const __NR_link: u32 = 86;
6000pub const __NR_unlink: u32 = 87;
6001pub const __NR_symlink: u32 = 88;
6002pub const __NR_readlink: u32 = 89;
6003pub const __NR_chmod: u32 = 90;
6004pub const __NR_fchmod: u32 = 91;
6005pub const __NR_chown: u32 = 92;
6006pub const __NR_fchown: u32 = 93;
6007pub const __NR_lchown: u32 = 94;
6008pub const __NR_umask: u32 = 95;
6009pub const __NR_gettimeofday: u32 = 96;
6010pub const __NR_getrlimit: u32 = 97;
6011pub const __NR_getrusage: u32 = 98;
6012pub const __NR_sysinfo: u32 = 99;
6013pub const __NR_times: u32 = 100;
6014pub const __NR_ptrace: u32 = 101;
6015pub const __NR_getuid: u32 = 102;
6016pub const __NR_syslog: u32 = 103;
6017pub const __NR_getgid: u32 = 104;
6018pub const __NR_setuid: u32 = 105;
6019pub const __NR_setgid: u32 = 106;
6020pub const __NR_geteuid: u32 = 107;
6021pub const __NR_getegid: u32 = 108;
6022pub const __NR_setpgid: u32 = 109;
6023pub const __NR_getppid: u32 = 110;
6024pub const __NR_getpgrp: u32 = 111;
6025pub const __NR_setsid: u32 = 112;
6026pub const __NR_setreuid: u32 = 113;
6027pub const __NR_setregid: u32 = 114;
6028pub const __NR_getgroups: u32 = 115;
6029pub const __NR_setgroups: u32 = 116;
6030pub const __NR_setresuid: u32 = 117;
6031pub const __NR_getresuid: u32 = 118;
6032pub const __NR_setresgid: u32 = 119;
6033pub const __NR_getresgid: u32 = 120;
6034pub const __NR_getpgid: u32 = 121;
6035pub const __NR_setfsuid: u32 = 122;
6036pub const __NR_setfsgid: u32 = 123;
6037pub const __NR_getsid: u32 = 124;
6038pub const __NR_capget: u32 = 125;
6039pub const __NR_capset: u32 = 126;
6040pub const __NR_rt_sigpending: u32 = 127;
6041pub const __NR_rt_sigtimedwait: u32 = 128;
6042pub const __NR_rt_sigqueueinfo: u32 = 129;
6043pub const __NR_rt_sigsuspend: u32 = 130;
6044pub const __NR_sigaltstack: u32 = 131;
6045pub const __NR_utime: u32 = 132;
6046pub const __NR_mknod: u32 = 133;
6047pub const __NR_uselib: u32 = 134;
6048pub const __NR_personality: u32 = 135;
6049pub const __NR_ustat: u32 = 136;
6050pub const __NR_statfs: u32 = 137;
6051pub const __NR_fstatfs: u32 = 138;
6052pub const __NR_sysfs: u32 = 139;
6053pub const __NR_getpriority: u32 = 140;
6054pub const __NR_setpriority: u32 = 141;
6055pub const __NR_sched_setparam: u32 = 142;
6056pub const __NR_sched_getparam: u32 = 143;
6057pub const __NR_sched_setscheduler: u32 = 144;
6058pub const __NR_sched_getscheduler: u32 = 145;
6059pub const __NR_sched_get_priority_max: u32 = 146;
6060pub const __NR_sched_get_priority_min: u32 = 147;
6061pub const __NR_sched_rr_get_interval: u32 = 148;
6062pub const __NR_mlock: u32 = 149;
6063pub const __NR_munlock: u32 = 150;
6064pub const __NR_mlockall: u32 = 151;
6065pub const __NR_munlockall: u32 = 152;
6066pub const __NR_vhangup: u32 = 153;
6067pub const __NR_modify_ldt: u32 = 154;
6068pub const __NR_pivot_root: u32 = 155;
6069pub const __NR__sysctl: u32 = 156;
6070pub const __NR_prctl: u32 = 157;
6071pub const __NR_arch_prctl: u32 = 158;
6072pub const __NR_adjtimex: u32 = 159;
6073pub const __NR_setrlimit: u32 = 160;
6074pub const __NR_chroot: u32 = 161;
6075pub const __NR_sync: u32 = 162;
6076pub const __NR_acct: u32 = 163;
6077pub const __NR_settimeofday: u32 = 164;
6078pub const __NR_mount: u32 = 165;
6079pub const __NR_umount2: u32 = 166;
6080pub const __NR_swapon: u32 = 167;
6081pub const __NR_swapoff: u32 = 168;
6082pub const __NR_reboot: u32 = 169;
6083pub const __NR_sethostname: u32 = 170;
6084pub const __NR_setdomainname: u32 = 171;
6085pub const __NR_iopl: u32 = 172;
6086pub const __NR_ioperm: u32 = 173;
6087pub const __NR_create_module: u32 = 174;
6088pub const __NR_init_module: u32 = 175;
6089pub const __NR_delete_module: u32 = 176;
6090pub const __NR_get_kernel_syms: u32 = 177;
6091pub const __NR_query_module: u32 = 178;
6092pub const __NR_quotactl: u32 = 179;
6093pub const __NR_nfsservctl: u32 = 180;
6094pub const __NR_getpmsg: u32 = 181;
6095pub const __NR_putpmsg: u32 = 182;
6096pub const __NR_afs_syscall: u32 = 183;
6097pub const __NR_tuxcall: u32 = 184;
6098pub const __NR_security: u32 = 185;
6099pub const __NR_gettid: u32 = 186;
6100pub const __NR_readahead: u32 = 187;
6101pub const __NR_setxattr: u32 = 188;
6102pub const __NR_lsetxattr: u32 = 189;
6103pub const __NR_fsetxattr: u32 = 190;
6104pub const __NR_getxattr: u32 = 191;
6105pub const __NR_lgetxattr: u32 = 192;
6106pub const __NR_fgetxattr: u32 = 193;
6107pub const __NR_listxattr: u32 = 194;
6108pub const __NR_llistxattr: u32 = 195;
6109pub const __NR_flistxattr: u32 = 196;
6110pub const __NR_removexattr: u32 = 197;
6111pub const __NR_lremovexattr: u32 = 198;
6112pub const __NR_fremovexattr: u32 = 199;
6113pub const __NR_tkill: u32 = 200;
6114pub const __NR_time: u32 = 201;
6115pub const __NR_futex: u32 = 202;
6116pub const __NR_sched_setaffinity: u32 = 203;
6117pub const __NR_sched_getaffinity: u32 = 204;
6118pub const __NR_set_thread_area: u32 = 205;
6119pub const __NR_io_setup: u32 = 206;
6120pub const __NR_io_destroy: u32 = 207;
6121pub const __NR_io_getevents: u32 = 208;
6122pub const __NR_io_submit: u32 = 209;
6123pub const __NR_io_cancel: u32 = 210;
6124pub const __NR_get_thread_area: u32 = 211;
6125pub const __NR_lookup_dcookie: u32 = 212;
6126pub const __NR_epoll_create: u32 = 213;
6127pub const __NR_epoll_ctl_old: u32 = 214;
6128pub const __NR_epoll_wait_old: u32 = 215;
6129pub const __NR_remap_file_pages: u32 = 216;
6130pub const __NR_getdents64: u32 = 217;
6131pub const __NR_set_tid_address: u32 = 218;
6132pub const __NR_restart_syscall: u32 = 219;
6133pub const __NR_semtimedop: u32 = 220;
6134pub const __NR_fadvise64: u32 = 221;
6135pub const __NR_timer_create: u32 = 222;
6136pub const __NR_timer_settime: u32 = 223;
6137pub const __NR_timer_gettime: u32 = 224;
6138pub const __NR_timer_getoverrun: u32 = 225;
6139pub const __NR_timer_delete: u32 = 226;
6140pub const __NR_clock_settime: u32 = 227;
6141pub const __NR_clock_gettime: u32 = 228;
6142pub const __NR_clock_getres: u32 = 229;
6143pub const __NR_clock_nanosleep: u32 = 230;
6144pub const __NR_exit_group: u32 = 231;
6145pub const __NR_epoll_wait: u32 = 232;
6146pub const __NR_epoll_ctl: u32 = 233;
6147pub const __NR_tgkill: u32 = 234;
6148pub const __NR_utimes: u32 = 235;
6149pub const __NR_vserver: u32 = 236;
6150pub const __NR_mbind: u32 = 237;
6151pub const __NR_set_mempolicy: u32 = 238;
6152pub const __NR_get_mempolicy: u32 = 239;
6153pub const __NR_mq_open: u32 = 240;
6154pub const __NR_mq_unlink: u32 = 241;
6155pub const __NR_mq_timedsend: u32 = 242;
6156pub const __NR_mq_timedreceive: u32 = 243;
6157pub const __NR_mq_notify: u32 = 244;
6158pub const __NR_mq_getsetattr: u32 = 245;
6159pub const __NR_kexec_load: u32 = 246;
6160pub const __NR_waitid: u32 = 247;
6161pub const __NR_add_key: u32 = 248;
6162pub const __NR_request_key: u32 = 249;
6163pub const __NR_keyctl: u32 = 250;
6164pub const __NR_ioprio_set: u32 = 251;
6165pub const __NR_ioprio_get: u32 = 252;
6166pub const __NR_inotify_init: u32 = 253;
6167pub const __NR_inotify_add_watch: u32 = 254;
6168pub const __NR_inotify_rm_watch: u32 = 255;
6169pub const __NR_migrate_pages: u32 = 256;
6170pub const __NR_openat: u32 = 257;
6171pub const __NR_mkdirat: u32 = 258;
6172pub const __NR_mknodat: u32 = 259;
6173pub const __NR_fchownat: u32 = 260;
6174pub const __NR_futimesat: u32 = 261;
6175pub const __NR_newfstatat: u32 = 262;
6176pub const __NR_unlinkat: u32 = 263;
6177pub const __NR_renameat: u32 = 264;
6178pub const __NR_linkat: u32 = 265;
6179pub const __NR_symlinkat: u32 = 266;
6180pub const __NR_readlinkat: u32 = 267;
6181pub const __NR_fchmodat: u32 = 268;
6182pub const __NR_faccessat: u32 = 269;
6183pub const __NR_pselect6: u32 = 270;
6184pub const __NR_ppoll: u32 = 271;
6185pub const __NR_unshare: u32 = 272;
6186pub const __NR_set_robust_list: u32 = 273;
6187pub const __NR_get_robust_list: u32 = 274;
6188pub const __NR_splice: u32 = 275;
6189pub const __NR_tee: u32 = 276;
6190pub const __NR_sync_file_range: u32 = 277;
6191pub const __NR_vmsplice: u32 = 278;
6192pub const __NR_move_pages: u32 = 279;
6193pub const __NR_utimensat: u32 = 280;
6194pub const __NR_epoll_pwait: u32 = 281;
6195pub const __NR_signalfd: u32 = 282;
6196pub const __NR_timerfd_create: u32 = 283;
6197pub const __NR_eventfd: u32 = 284;
6198pub const __NR_fallocate: u32 = 285;
6199pub const __NR_timerfd_settime: u32 = 286;
6200pub const __NR_timerfd_gettime: u32 = 287;
6201pub const __NR_accept4: u32 = 288;
6202pub const __NR_signalfd4: u32 = 289;
6203pub const __NR_eventfd2: u32 = 290;
6204pub const __NR_epoll_create1: u32 = 291;
6205pub const __NR_dup3: u32 = 292;
6206pub const __NR_pipe2: u32 = 293;
6207pub const __NR_inotify_init1: u32 = 294;
6208pub const __NR_preadv: u32 = 295;
6209pub const __NR_pwritev: u32 = 296;
6210pub const __NR_rt_tgsigqueueinfo: u32 = 297;
6211pub const __NR_perf_event_open: u32 = 298;
6212pub const __NR_recvmmsg: u32 = 299;
6213pub const __NR_fanotify_init: u32 = 300;
6214pub const __NR_fanotify_mark: u32 = 301;
6215pub const __NR_prlimit64: u32 = 302;
6216pub const __NR_name_to_handle_at: u32 = 303;
6217pub const __NR_open_by_handle_at: u32 = 304;
6218pub const __NR_clock_adjtime: u32 = 305;
6219pub const __NR_syncfs: u32 = 306;
6220pub const __NR_sendmmsg: u32 = 307;
6221pub const __NR_setns: u32 = 308;
6222pub const __NR_getcpu: u32 = 309;
6223pub const __NR_process_vm_readv: u32 = 310;
6224pub const __NR_process_vm_writev: u32 = 311;
6225pub const __NR_kcmp: u32 = 312;
6226pub const __NR_finit_module: u32 = 313;
6227pub const __NR_sched_setattr: u32 = 314;
6228pub const __NR_sched_getattr: u32 = 315;
6229pub const __NR_renameat2: u32 = 316;
6230pub const __NR_seccomp: u32 = 317;
6231pub const __NR_getrandom: u32 = 318;
6232pub const __NR_memfd_create: u32 = 319;
6233pub const __NR_kexec_file_load: u32 = 320;
6234pub const __NR_bpf: u32 = 321;
6235pub const __NR_execveat: u32 = 322;
6236pub const __NR_userfaultfd: u32 = 323;
6237pub const __NR_membarrier: u32 = 324;
6238pub const __NR_mlock2: u32 = 325;
6239pub const __NR_copy_file_range: u32 = 326;
6240pub const __NR_preadv2: u32 = 327;
6241pub const __NR_pwritev2: u32 = 328;
6242pub const __NR_pkey_mprotect: u32 = 329;
6243pub const __NR_pkey_alloc: u32 = 330;
6244pub const __NR_pkey_free: u32 = 331;
6245pub const __NR_statx: u32 = 332;
6246pub const __NR_io_pgetevents: u32 = 333;
6247pub const __NR_rseq: u32 = 334;
6248pub const __NR_uretprobe: u32 = 335;
6249pub const __NR_pidfd_send_signal: u32 = 424;
6250pub const __NR_io_uring_setup: u32 = 425;
6251pub const __NR_io_uring_enter: u32 = 426;
6252pub const __NR_io_uring_register: u32 = 427;
6253pub const __NR_open_tree: u32 = 428;
6254pub const __NR_move_mount: u32 = 429;
6255pub const __NR_fsopen: u32 = 430;
6256pub const __NR_fsconfig: u32 = 431;
6257pub const __NR_fsmount: u32 = 432;
6258pub const __NR_fspick: u32 = 433;
6259pub const __NR_pidfd_open: u32 = 434;
6260pub const __NR_clone3: u32 = 435;
6261pub const __NR_close_range: u32 = 436;
6262pub const __NR_openat2: u32 = 437;
6263pub const __NR_pidfd_getfd: u32 = 438;
6264pub const __NR_faccessat2: u32 = 439;
6265pub const __NR_process_madvise: u32 = 440;
6266pub const __NR_epoll_pwait2: u32 = 441;
6267pub const __NR_mount_setattr: u32 = 442;
6268pub const __NR_quotactl_fd: u32 = 443;
6269pub const __NR_landlock_create_ruleset: u32 = 444;
6270pub const __NR_landlock_add_rule: u32 = 445;
6271pub const __NR_landlock_restrict_self: u32 = 446;
6272pub const __NR_memfd_secret: u32 = 447;
6273pub const __NR_process_mrelease: u32 = 448;
6274pub const __NR_futex_waitv: u32 = 449;
6275pub const __NR_set_mempolicy_home_node: u32 = 450;
6276pub const __NR_cachestat: u32 = 451;
6277pub const __NR_fchmodat2: u32 = 452;
6278pub const __NR_map_shadow_stack: u32 = 453;
6279pub const __NR_futex_wake: u32 = 454;
6280pub const __NR_futex_wait: u32 = 455;
6281pub const __NR_futex_requeue: u32 = 456;
6282pub const __NR_statmount: u32 = 457;
6283pub const __NR_listmount: u32 = 458;
6284pub const __NR_lsm_get_self_attr: u32 = 459;
6285pub const __NR_lsm_set_self_attr: u32 = 460;
6286pub const __NR_lsm_list_modules: u32 = 461;
6287pub const __NR_mseal: u32 = 462;
6288pub const USB_DIR_OUT: u32 = 0;
6289pub const USB_DIR_IN: u32 = 128;
6290pub const USB_TYPE_MASK: u32 = 96;
6291pub const USB_TYPE_STANDARD: u32 = 0;
6292pub const USB_TYPE_CLASS: u32 = 32;
6293pub const USB_TYPE_VENDOR: u32 = 64;
6294pub const USB_TYPE_RESERVED: u32 = 96;
6295pub const USB_RECIP_MASK: u32 = 31;
6296pub const USB_RECIP_DEVICE: u32 = 0;
6297pub const USB_RECIP_INTERFACE: u32 = 1;
6298pub const USB_RECIP_ENDPOINT: u32 = 2;
6299pub const USB_RECIP_OTHER: u32 = 3;
6300pub const USB_RECIP_PORT: u32 = 4;
6301pub const USB_RECIP_RPIPE: u32 = 5;
6302pub const USB_REQ_GET_STATUS: u32 = 0;
6303pub const USB_REQ_CLEAR_FEATURE: u32 = 1;
6304pub const USB_REQ_SET_FEATURE: u32 = 3;
6305pub const USB_REQ_SET_ADDRESS: u32 = 5;
6306pub const USB_REQ_GET_DESCRIPTOR: u32 = 6;
6307pub const USB_REQ_SET_DESCRIPTOR: u32 = 7;
6308pub const USB_REQ_GET_CONFIGURATION: u32 = 8;
6309pub const USB_REQ_SET_CONFIGURATION: u32 = 9;
6310pub const USB_REQ_GET_INTERFACE: u32 = 10;
6311pub const USB_REQ_SET_INTERFACE: u32 = 11;
6312pub const USB_REQ_SYNCH_FRAME: u32 = 12;
6313pub const USB_REQ_SET_SEL: u32 = 48;
6314pub const USB_REQ_SET_ISOCH_DELAY: u32 = 49;
6315pub const USB_REQ_SET_ENCRYPTION: u32 = 13;
6316pub const USB_REQ_GET_ENCRYPTION: u32 = 14;
6317pub const USB_REQ_RPIPE_ABORT: u32 = 14;
6318pub const USB_REQ_SET_HANDSHAKE: u32 = 15;
6319pub const USB_REQ_RPIPE_RESET: u32 = 15;
6320pub const USB_REQ_GET_HANDSHAKE: u32 = 16;
6321pub const USB_REQ_SET_CONNECTION: u32 = 17;
6322pub const USB_REQ_SET_SECURITY_DATA: u32 = 18;
6323pub const USB_REQ_GET_SECURITY_DATA: u32 = 19;
6324pub const USB_REQ_SET_WUSB_DATA: u32 = 20;
6325pub const USB_REQ_LOOPBACK_DATA_WRITE: u32 = 21;
6326pub const USB_REQ_LOOPBACK_DATA_READ: u32 = 22;
6327pub const USB_REQ_SET_INTERFACE_DS: u32 = 23;
6328pub const USB_REQ_GET_PARTNER_PDO: u32 = 20;
6329pub const USB_REQ_GET_BATTERY_STATUS: u32 = 21;
6330pub const USB_REQ_SET_PDO: u32 = 22;
6331pub const USB_REQ_GET_VDM: u32 = 23;
6332pub const USB_REQ_SEND_VDM: u32 = 24;
6333pub const USB_DEVICE_SELF_POWERED: u32 = 0;
6334pub const USB_DEVICE_REMOTE_WAKEUP: u32 = 1;
6335pub const USB_DEVICE_TEST_MODE: u32 = 2;
6336pub const USB_DEVICE_BATTERY: u32 = 2;
6337pub const USB_DEVICE_B_HNP_ENABLE: u32 = 3;
6338pub const USB_DEVICE_WUSB_DEVICE: u32 = 3;
6339pub const USB_DEVICE_A_HNP_SUPPORT: u32 = 4;
6340pub const USB_DEVICE_A_ALT_HNP_SUPPORT: u32 = 5;
6341pub const USB_DEVICE_DEBUG_MODE: u32 = 6;
6342pub const USB_TEST_J: u32 = 1;
6343pub const USB_TEST_K: u32 = 2;
6344pub const USB_TEST_SE0_NAK: u32 = 3;
6345pub const USB_TEST_PACKET: u32 = 4;
6346pub const USB_TEST_FORCE_ENABLE: u32 = 5;
6347pub const USB_STATUS_TYPE_STANDARD: u32 = 0;
6348pub const USB_STATUS_TYPE_PTM: u32 = 1;
6349pub const USB_DEVICE_U1_ENABLE: u32 = 48;
6350pub const USB_DEVICE_U2_ENABLE: u32 = 49;
6351pub const USB_DEVICE_LTM_ENABLE: u32 = 50;
6352pub const USB_INTRF_FUNC_SUSPEND: u32 = 0;
6353pub const USB_INTR_FUNC_SUSPEND_OPT_MASK: u32 = 65280;
6354pub const USB_INTRF_FUNC_SUSPEND_LP: u32 = 256;
6355pub const USB_INTRF_FUNC_SUSPEND_RW: u32 = 512;
6356pub const USB_INTRF_STAT_FUNC_RW_CAP: u32 = 1;
6357pub const USB_INTRF_STAT_FUNC_RW: u32 = 2;
6358pub const USB_ENDPOINT_HALT: u32 = 0;
6359pub const USB_DEV_STAT_U1_ENABLED: u32 = 2;
6360pub const USB_DEV_STAT_U2_ENABLED: u32 = 3;
6361pub const USB_DEV_STAT_LTM_ENABLED: u32 = 4;
6362pub const USB_DEVICE_BATTERY_WAKE_MASK: u32 = 40;
6363pub const USB_DEVICE_OS_IS_PD_AWARE: u32 = 41;
6364pub const USB_DEVICE_POLICY_MODE: u32 = 42;
6365pub const USB_PORT_PR_SWAP: u32 = 43;
6366pub const USB_PORT_GOTO_MIN: u32 = 44;
6367pub const USB_PORT_RETURN_POWER: u32 = 45;
6368pub const USB_PORT_ACCEPT_PD_REQUEST: u32 = 46;
6369pub const USB_PORT_REJECT_PD_REQUEST: u32 = 47;
6370pub const USB_PORT_PORT_PD_RESET: u32 = 48;
6371pub const USB_PORT_C_PORT_PD_CHANGE: u32 = 49;
6372pub const USB_PORT_CABLE_PD_RESET: u32 = 50;
6373pub const USB_DEVICE_CHARGING_POLICY: u32 = 54;
6374pub const USB_DT_DEVICE: u32 = 1;
6375pub const USB_DT_CONFIG: u32 = 2;
6376pub const USB_DT_STRING: u32 = 3;
6377pub const USB_DT_INTERFACE: u32 = 4;
6378pub const USB_DT_ENDPOINT: u32 = 5;
6379pub const USB_DT_DEVICE_QUALIFIER: u32 = 6;
6380pub const USB_DT_OTHER_SPEED_CONFIG: u32 = 7;
6381pub const USB_DT_INTERFACE_POWER: u32 = 8;
6382pub const USB_DT_OTG: u32 = 9;
6383pub const USB_DT_DEBUG: u32 = 10;
6384pub const USB_DT_INTERFACE_ASSOCIATION: u32 = 11;
6385pub const USB_DT_SECURITY: u32 = 12;
6386pub const USB_DT_KEY: u32 = 13;
6387pub const USB_DT_ENCRYPTION_TYPE: u32 = 14;
6388pub const USB_DT_BOS: u32 = 15;
6389pub const USB_DT_DEVICE_CAPABILITY: u32 = 16;
6390pub const USB_DT_WIRELESS_ENDPOINT_COMP: u32 = 17;
6391pub const USB_DT_WIRE_ADAPTER: u32 = 33;
6392pub const USB_DT_DFU_FUNCTIONAL: u32 = 33;
6393pub const USB_DT_RPIPE: u32 = 34;
6394pub const USB_DT_CS_RADIO_CONTROL: u32 = 35;
6395pub const USB_DT_PIPE_USAGE: u32 = 36;
6396pub const USB_DT_SS_ENDPOINT_COMP: u32 = 48;
6397pub const USB_DT_SSP_ISOC_ENDPOINT_COMP: u32 = 49;
6398pub const USB_DT_CS_DEVICE: u32 = 33;
6399pub const USB_DT_CS_CONFIG: u32 = 34;
6400pub const USB_DT_CS_STRING: u32 = 35;
6401pub const USB_DT_CS_INTERFACE: u32 = 36;
6402pub const USB_DT_CS_ENDPOINT: u32 = 37;
6403pub const USB_DT_DEVICE_SIZE: u32 = 18;
6404pub const USB_CLASS_PER_INTERFACE: u32 = 0;
6405pub const USB_CLASS_AUDIO: u32 = 1;
6406pub const USB_CLASS_COMM: u32 = 2;
6407pub const USB_CLASS_HID: u32 = 3;
6408pub const USB_CLASS_PHYSICAL: u32 = 5;
6409pub const USB_CLASS_STILL_IMAGE: u32 = 6;
6410pub const USB_CLASS_PRINTER: u32 = 7;
6411pub const USB_CLASS_MASS_STORAGE: u32 = 8;
6412pub const USB_CLASS_HUB: u32 = 9;
6413pub const USB_CLASS_CDC_DATA: u32 = 10;
6414pub const USB_CLASS_CSCID: u32 = 11;
6415pub const USB_CLASS_CONTENT_SEC: u32 = 13;
6416pub const USB_CLASS_VIDEO: u32 = 14;
6417pub const USB_CLASS_WIRELESS_CONTROLLER: u32 = 224;
6418pub const USB_CLASS_PERSONAL_HEALTHCARE: u32 = 15;
6419pub const USB_CLASS_AUDIO_VIDEO: u32 = 16;
6420pub const USB_CLASS_BILLBOARD: u32 = 17;
6421pub const USB_CLASS_USB_TYPE_C_BRIDGE: u32 = 18;
6422pub const USB_CLASS_MISC: u32 = 239;
6423pub const USB_CLASS_APP_SPEC: u32 = 254;
6424pub const USB_SUBCLASS_DFU: u32 = 1;
6425pub const USB_CLASS_VENDOR_SPEC: u32 = 255;
6426pub const USB_SUBCLASS_VENDOR_SPEC: u32 = 255;
6427pub const USB_DT_CONFIG_SIZE: u32 = 9;
6428pub const USB_CONFIG_ATT_ONE: u32 = 128;
6429pub const USB_CONFIG_ATT_SELFPOWER: u32 = 64;
6430pub const USB_CONFIG_ATT_WAKEUP: u32 = 32;
6431pub const USB_CONFIG_ATT_BATTERY: u32 = 16;
6432pub const USB_MAX_STRING_LEN: u32 = 126;
6433pub const USB_DT_INTERFACE_SIZE: u32 = 9;
6434pub const USB_DT_ENDPOINT_SIZE: u32 = 7;
6435pub const USB_DT_ENDPOINT_AUDIO_SIZE: u32 = 9;
6436pub const USB_ENDPOINT_NUMBER_MASK: u32 = 15;
6437pub const USB_ENDPOINT_DIR_MASK: u32 = 128;
6438pub const USB_ENDPOINT_XFERTYPE_MASK: u32 = 3;
6439pub const USB_ENDPOINT_XFER_CONTROL: u32 = 0;
6440pub const USB_ENDPOINT_XFER_ISOC: u32 = 1;
6441pub const USB_ENDPOINT_XFER_BULK: u32 = 2;
6442pub const USB_ENDPOINT_XFER_INT: u32 = 3;
6443pub const USB_ENDPOINT_MAX_ADJUSTABLE: u32 = 128;
6444pub const USB_ENDPOINT_MAXP_MASK: u32 = 2047;
6445pub const USB_EP_MAXP_MULT_SHIFT: u32 = 11;
6446pub const USB_EP_MAXP_MULT_MASK: u32 = 6144;
6447pub const USB_ENDPOINT_INTRTYPE: u32 = 48;
6448pub const USB_ENDPOINT_INTR_PERIODIC: u32 = 0;
6449pub const USB_ENDPOINT_INTR_NOTIFICATION: u32 = 16;
6450pub const USB_ENDPOINT_SYNCTYPE: u32 = 12;
6451pub const USB_ENDPOINT_SYNC_NONE: u32 = 0;
6452pub const USB_ENDPOINT_SYNC_ASYNC: u32 = 4;
6453pub const USB_ENDPOINT_SYNC_ADAPTIVE: u32 = 8;
6454pub const USB_ENDPOINT_SYNC_SYNC: u32 = 12;
6455pub const USB_ENDPOINT_USAGE_MASK: u32 = 48;
6456pub const USB_ENDPOINT_USAGE_DATA: u32 = 0;
6457pub const USB_ENDPOINT_USAGE_FEEDBACK: u32 = 16;
6458pub const USB_ENDPOINT_USAGE_IMPLICIT_FB: u32 = 32;
6459pub const USB_DT_SSP_ISOC_EP_COMP_SIZE: u32 = 8;
6460pub const USB_DT_SS_EP_COMP_SIZE: u32 = 6;
6461pub const USB_OTG_SRP: u32 = 1;
6462pub const USB_OTG_HNP: u32 = 2;
6463pub const USB_OTG_ADP: u32 = 4;
6464pub const USB_OTG_RSP: u32 = 8;
6465pub const OTG_STS_SELECTOR: u32 = 61440;
6466pub const USB_DT_INTERFACE_ASSOCIATION_SIZE: u32 = 8;
6467pub const USB_ENC_TYPE_UNSECURE: u32 = 0;
6468pub const USB_ENC_TYPE_WIRED: u32 = 1;
6469pub const USB_ENC_TYPE_CCM_1: u32 = 2;
6470pub const USB_ENC_TYPE_RSA_1: u32 = 3;
6471pub const USB_DT_BOS_SIZE: u32 = 5;
6472pub const USB_CAP_TYPE_WIRELESS_USB: u32 = 1;
6473pub const USB_WIRELESS_P2P_DRD: u32 = 2;
6474pub const USB_WIRELESS_BEACON_MASK: u32 = 12;
6475pub const USB_WIRELESS_BEACON_SELF: u32 = 4;
6476pub const USB_WIRELESS_BEACON_DIRECTED: u32 = 8;
6477pub const USB_WIRELESS_BEACON_NONE: u32 = 12;
6478pub const USB_WIRELESS_PHY_53: u32 = 1;
6479pub const USB_WIRELESS_PHY_80: u32 = 2;
6480pub const USB_WIRELESS_PHY_107: u32 = 4;
6481pub const USB_WIRELESS_PHY_160: u32 = 8;
6482pub const USB_WIRELESS_PHY_200: u32 = 16;
6483pub const USB_WIRELESS_PHY_320: u32 = 32;
6484pub const USB_WIRELESS_PHY_400: u32 = 64;
6485pub const USB_WIRELESS_PHY_480: u32 = 128;
6486pub const USB_DT_USB_WIRELESS_CAP_SIZE: u32 = 11;
6487pub const USB_CAP_TYPE_EXT: u32 = 2;
6488pub const USB_LPM_SUPPORT: u32 = 2;
6489pub const USB_BESL_SUPPORT: u32 = 4;
6490pub const USB_BESL_BASELINE_VALID: u32 = 8;
6491pub const USB_BESL_DEEP_VALID: u32 = 16;
6492pub const USB_DT_USB_EXT_CAP_SIZE: u32 = 7;
6493pub const USB_SS_CAP_TYPE: u32 = 3;
6494pub const USB_LTM_SUPPORT: u32 = 2;
6495pub const USB_LOW_SPEED_OPERATION: u32 = 1;
6496pub const USB_FULL_SPEED_OPERATION: u32 = 2;
6497pub const USB_HIGH_SPEED_OPERATION: u32 = 4;
6498pub const USB_5GBPS_OPERATION: u32 = 8;
6499pub const USB_DT_USB_SS_CAP_SIZE: u32 = 10;
6500pub const CONTAINER_ID_TYPE: u32 = 4;
6501pub const USB_DT_USB_SS_CONTN_ID_SIZE: u32 = 20;
6502pub const USB_PLAT_DEV_CAP_TYPE: u32 = 5;
6503pub const USB_SSP_CAP_TYPE: u32 = 10;
6504pub const USB_SSP_SUBLINK_SPEED_ATTRIBS: u32 = 31;
6505pub const USB_SSP_SUBLINK_SPEED_IDS: u32 = 480;
6506pub const USB_SSP_MIN_SUBLINK_SPEED_ATTRIBUTE_ID: u32 = 15;
6507pub const USB_SSP_MIN_RX_LANE_COUNT: u32 = 3840;
6508pub const USB_SSP_MIN_TX_LANE_COUNT: u32 = 61440;
6509pub const USB_SSP_SUBLINK_SPEED_SSID: u32 = 15;
6510pub const USB_SSP_SUBLINK_SPEED_LSE: u32 = 48;
6511pub const USB_SSP_SUBLINK_SPEED_LSE_BPS: u32 = 0;
6512pub const USB_SSP_SUBLINK_SPEED_LSE_KBPS: u32 = 1;
6513pub const USB_SSP_SUBLINK_SPEED_LSE_MBPS: u32 = 2;
6514pub const USB_SSP_SUBLINK_SPEED_LSE_GBPS: u32 = 3;
6515pub const USB_SSP_SUBLINK_SPEED_ST: u32 = 192;
6516pub const USB_SSP_SUBLINK_SPEED_ST_SYM_RX: u32 = 0;
6517pub const USB_SSP_SUBLINK_SPEED_ST_ASYM_RX: u32 = 1;
6518pub const USB_SSP_SUBLINK_SPEED_ST_SYM_TX: u32 = 2;
6519pub const USB_SSP_SUBLINK_SPEED_ST_ASYM_TX: u32 = 3;
6520pub const USB_SSP_SUBLINK_SPEED_RSVD: u32 = 16128;
6521pub const USB_SSP_SUBLINK_SPEED_LP: u32 = 49152;
6522pub const USB_SSP_SUBLINK_SPEED_LP_SS: u32 = 0;
6523pub const USB_SSP_SUBLINK_SPEED_LP_SSP: u32 = 1;
6524pub const USB_SSP_SUBLINK_SPEED_LSM: u32 = 16711680;
6525pub const USB_PD_POWER_DELIVERY_CAPABILITY: u32 = 6;
6526pub const USB_PD_BATTERY_INFO_CAPABILITY: u32 = 7;
6527pub const USB_PD_PD_CONSUMER_PORT_CAPABILITY: u32 = 8;
6528pub const USB_PD_PD_PROVIDER_PORT_CAPABILITY: u32 = 9;
6529pub const USB_PD_CAP_BATTERY_CHARGING: u32 = 2;
6530pub const USB_PD_CAP_USB_PD: u32 = 4;
6531pub const USB_PD_CAP_PROVIDER: u32 = 8;
6532pub const USB_PD_CAP_CONSUMER: u32 = 16;
6533pub const USB_PD_CAP_CHARGING_POLICY: u32 = 32;
6534pub const USB_PD_CAP_TYPE_C_CURRENT: u32 = 64;
6535pub const USB_PD_CAP_PWR_AC: u32 = 256;
6536pub const USB_PD_CAP_PWR_BAT: u32 = 512;
6537pub const USB_PD_CAP_PWR_USE_V_BUS: u32 = 16384;
6538pub const USB_PD_CAP_CONSUMER_BC: u32 = 1;
6539pub const USB_PD_CAP_CONSUMER_PD: u32 = 2;
6540pub const USB_PD_CAP_CONSUMER_TYPE_C: u32 = 4;
6541pub const USB_PD_CAP_CONSUMER_UNKNOWN_PEAK_POWER_TIME: u32 = 65535;
6542pub const USB_PD_CAP_PROVIDER_BC: u32 = 1;
6543pub const USB_PD_CAP_PROVIDER_PD: u32 = 2;
6544pub const USB_PD_CAP_PROVIDER_TYPE_C: u32 = 4;
6545pub const USB_PTM_CAP_TYPE: u32 = 11;
6546pub const USB_DT_USB_PTM_ID_SIZE: u32 = 3;
6547pub const USB_ENDPOINT_SWITCH_MASK: u32 = 3;
6548pub const USB_ENDPOINT_SWITCH_NO: u32 = 0;
6549pub const USB_ENDPOINT_SWITCH_SWITCH: u32 = 1;
6550pub const USB_ENDPOINT_SWITCH_SCALE: u32 = 2;
6551pub const USB3_LPM_DISABLED: u32 = 0;
6552pub const USB3_LPM_U1_MAX_TIMEOUT: u32 = 127;
6553pub const USB3_LPM_U2_MAX_TIMEOUT: u32 = 254;
6554pub const USB3_LPM_DEVICE_INITIATED: u32 = 255;
6555pub const USB3_LPM_MAX_U1_SEL_PEL: u32 = 255;
6556pub const USB3_LPM_MAX_U2_SEL_PEL: u32 = 65535;
6557pub const USB_SELF_POWER_VBUS_MAX_DRAW: u32 = 100;
6558pub const USB_FFS_DMABUF_TRANSFER_MASK: u32 = 0;
6559pub const USERFAULTFD_IOC: u32 = 170;
6560pub const _UFFDIO_REGISTER: u32 = 0;
6561pub const _UFFDIO_UNREGISTER: u32 = 1;
6562pub const _UFFDIO_WAKE: u32 = 2;
6563pub const _UFFDIO_COPY: u32 = 3;
6564pub const _UFFDIO_ZEROPAGE: u32 = 4;
6565pub const _UFFDIO_MOVE: u32 = 5;
6566pub const _UFFDIO_WRITEPROTECT: u32 = 6;
6567pub const _UFFDIO_CONTINUE: u32 = 7;
6568pub const _UFFDIO_POISON: u32 = 8;
6569pub const _UFFDIO_API: u32 = 63;
6570pub const UFFDIO: u32 = 170;
6571pub const UFFD_EVENT_PAGEFAULT: u32 = 18;
6572pub const UFFD_EVENT_FORK: u32 = 19;
6573pub const UFFD_EVENT_REMAP: u32 = 20;
6574pub const UFFD_EVENT_REMOVE: u32 = 21;
6575pub const UFFD_EVENT_UNMAP: u32 = 22;
6576pub const UFFD_PAGEFAULT_FLAG_WRITE: u32 = 1;
6577pub const UFFD_PAGEFAULT_FLAG_WP: u32 = 2;
6578pub const UFFD_PAGEFAULT_FLAG_MINOR: u32 = 4;
6579pub const UFFD_FEATURE_PAGEFAULT_FLAG_WP: u32 = 1;
6580pub const UFFD_FEATURE_EVENT_FORK: u32 = 2;
6581pub const UFFD_FEATURE_EVENT_REMAP: u32 = 4;
6582pub const UFFD_FEATURE_EVENT_REMOVE: u32 = 8;
6583pub const UFFD_FEATURE_MISSING_HUGETLBFS: u32 = 16;
6584pub const UFFD_FEATURE_MISSING_SHMEM: u32 = 32;
6585pub const UFFD_FEATURE_EVENT_UNMAP: u32 = 64;
6586pub const UFFD_FEATURE_SIGBUS: u32 = 128;
6587pub const UFFD_FEATURE_THREAD_ID: u32 = 256;
6588pub const UFFD_FEATURE_MINOR_HUGETLBFS: u32 = 512;
6589pub const UFFD_FEATURE_MINOR_SHMEM: u32 = 1024;
6590pub const UFFD_FEATURE_EXACT_ADDRESS: u32 = 2048;
6591pub const UFFD_FEATURE_WP_HUGETLBFS_SHMEM: u32 = 4096;
6592pub const UFFD_FEATURE_WP_UNPOPULATED: u32 = 8192;
6593pub const UFFD_FEATURE_POISON: u32 = 16384;
6594pub const UFFD_FEATURE_WP_ASYNC: u32 = 32768;
6595pub const UFFD_FEATURE_MOVE: u32 = 65536;
6596pub const UFFD_USER_MODE_ONLY: u32 = 1;
6597pub const __OLD_UTS_LEN: u32 = 8;
6598pub const __NEW_UTS_LEN: u32 = 64;
6599pub const SO_VM_SOCKETS_BUFFER_SIZE: u32 = 0;
6600pub const SO_VM_SOCKETS_BUFFER_MIN_SIZE: u32 = 1;
6601pub const SO_VM_SOCKETS_BUFFER_MAX_SIZE: u32 = 2;
6602pub const SO_VM_SOCKETS_PEER_HOST_VM_ID: u32 = 3;
6603pub const SO_VM_SOCKETS_TRUSTED: u32 = 5;
6604pub const SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD: u32 = 6;
6605pub const SO_VM_SOCKETS_NONBLOCK_TXRX: u32 = 7;
6606pub const SO_VM_SOCKETS_CONNECT_TIMEOUT_NEW: u32 = 8;
6607pub const SO_VM_SOCKETS_CONNECT_TIMEOUT: u32 = 6;
6608pub const VMADDR_CID_ANY: i32 = -1;
6609pub const VMADDR_PORT_ANY: i32 = -1;
6610pub const VMADDR_CID_HYPERVISOR: u32 = 0;
6611pub const VMADDR_CID_LOCAL: u32 = 1;
6612pub const VMADDR_CID_HOST: u32 = 2;
6613pub const VMADDR_FLAG_TO_HOST: u32 = 1;
6614pub const VM_SOCKETS_INVALID_VERSION: i32 = -1;
6615pub const SOL_VSOCK: u32 = 287;
6616pub const VSOCK_RECVERR: u32 = 1;
6617pub const WNOHANG: u32 = 1;
6618pub const WUNTRACED: u32 = 2;
6619pub const WSTOPPED: u32 = 2;
6620pub const WEXITED: u32 = 4;
6621pub const WCONTINUED: u32 = 8;
6622pub const WNOWAIT: u32 = 16777216;
6623pub const __WNOTHREAD: u32 = 536870912;
6624pub const __WALL: u32 = 1073741824;
6625pub const __WCLONE: u32 = 2147483648;
6626pub const P_ALL: u32 = 0;
6627pub const P_PID: u32 = 1;
6628pub const P_PGID: u32 = 2;
6629pub const P_PIDFD: u32 = 3;
6630pub const XATTR_CREATE: u32 = 1;
6631pub const XATTR_REPLACE: u32 = 2;
6632pub const XATTR_OS2_PREFIX: &'static std::ffi::CStr = c"os2.";
6633pub const XATTR_MAC_OSX_PREFIX: &'static std::ffi::CStr = c"osx.";
6634pub const XATTR_BTRFS_PREFIX: &'static std::ffi::CStr = c"btrfs.";
6635pub const XATTR_HURD_PREFIX: &'static std::ffi::CStr = c"gnu.";
6636pub const XATTR_SECURITY_PREFIX: &'static std::ffi::CStr = c"security.";
6637pub const XATTR_SYSTEM_PREFIX: &'static std::ffi::CStr = c"system.";
6638pub const XATTR_TRUSTED_PREFIX: &'static std::ffi::CStr = c"trusted.";
6639pub const XATTR_USER_PREFIX: &'static std::ffi::CStr = c"user.";
6640pub const XATTR_EVM_SUFFIX: &'static std::ffi::CStr = c"evm";
6641pub const XATTR_NAME_EVM: &'static std::ffi::CStr = c"security.evm";
6642pub const XATTR_IMA_SUFFIX: &'static std::ffi::CStr = c"ima";
6643pub const XATTR_NAME_IMA: &'static std::ffi::CStr = c"security.ima";
6644pub const XATTR_SELINUX_SUFFIX: &'static std::ffi::CStr = c"selinux";
6645pub const XATTR_NAME_SELINUX: &'static std::ffi::CStr = c"security.selinux";
6646pub const XATTR_SMACK_SUFFIX: &'static std::ffi::CStr = c"SMACK64";
6647pub const XATTR_SMACK_IPIN: &'static std::ffi::CStr = c"SMACK64IPIN";
6648pub const XATTR_SMACK_IPOUT: &'static std::ffi::CStr = c"SMACK64IPOUT";
6649pub const XATTR_SMACK_EXEC: &'static std::ffi::CStr = c"SMACK64EXEC";
6650pub const XATTR_SMACK_TRANSMUTE: &'static std::ffi::CStr = c"SMACK64TRANSMUTE";
6651pub const XATTR_SMACK_MMAP: &'static std::ffi::CStr = c"SMACK64MMAP";
6652pub const XATTR_NAME_SMACK: &'static std::ffi::CStr = c"security.SMACK64";
6653pub const XATTR_NAME_SMACKIPIN: &'static std::ffi::CStr = c"security.SMACK64IPIN";
6654pub const XATTR_NAME_SMACKIPOUT: &'static std::ffi::CStr = c"security.SMACK64IPOUT";
6655pub const XATTR_NAME_SMACKEXEC: &'static std::ffi::CStr = c"security.SMACK64EXEC";
6656pub const XATTR_NAME_SMACKTRANSMUTE: &'static std::ffi::CStr = c"security.SMACK64TRANSMUTE";
6657pub const XATTR_NAME_SMACKMMAP: &'static std::ffi::CStr = c"security.SMACK64MMAP";
6658pub const XATTR_APPARMOR_SUFFIX: &'static std::ffi::CStr = c"apparmor";
6659pub const XATTR_NAME_APPARMOR: &'static std::ffi::CStr = c"security.apparmor";
6660pub const XATTR_CAPS_SUFFIX: &'static std::ffi::CStr = c"capability";
6661pub const XATTR_NAME_CAPS: &'static std::ffi::CStr = c"security.capability";
6662pub const XATTR_POSIX_ACL_ACCESS: &'static std::ffi::CStr = c"posix_acl_access";
6663pub const XATTR_NAME_POSIX_ACL_ACCESS: &'static std::ffi::CStr = c"system.posix_acl_access";
6664pub const XATTR_POSIX_ACL_DEFAULT: &'static std::ffi::CStr = c"posix_acl_default";
6665pub const XATTR_NAME_POSIX_ACL_DEFAULT: &'static std::ffi::CStr = c"system.posix_acl_default";
6666pub const XFRM_SC_DOI_RESERVED: u32 = 0;
6667pub const XFRM_SC_DOI_LSM: u32 = 1;
6668pub const XFRM_SC_ALG_RESERVED: u32 = 0;
6669pub const XFRM_SC_ALG_SELINUX: u32 = 1;
6670pub const XFRMA_REPLAY_ESN_MAX: u32 = 4096;
6671pub const XFRM_MODE_TRANSPORT: u32 = 0;
6672pub const XFRM_MODE_TUNNEL: u32 = 1;
6673pub const XFRM_MODE_ROUTEOPTIMIZATION: u32 = 2;
6674pub const XFRM_MODE_IN_TRIGGER: u32 = 3;
6675pub const XFRM_MODE_BEET: u32 = 4;
6676pub const XFRM_MODE_MAX: u32 = 5;
6677pub const XFRM_STATE_NOECN: u32 = 1;
6678pub const XFRM_STATE_DECAP_DSCP: u32 = 2;
6679pub const XFRM_STATE_NOPMTUDISC: u32 = 4;
6680pub const XFRM_STATE_WILDRECV: u32 = 8;
6681pub const XFRM_STATE_ICMP: u32 = 16;
6682pub const XFRM_STATE_AF_UNSPEC: u32 = 32;
6683pub const XFRM_STATE_ALIGN4: u32 = 64;
6684pub const XFRM_STATE_ESN: u32 = 128;
6685pub const XFRM_SA_XFLAG_DONT_ENCAP_DSCP: u32 = 1;
6686pub const XFRM_SA_XFLAG_OSEQ_MAY_WRAP: u32 = 2;
6687pub const XFRM_POLICY_ALLOW: u32 = 0;
6688pub const XFRM_POLICY_BLOCK: u32 = 1;
6689pub const XFRM_POLICY_LOCALOK: u32 = 1;
6690pub const XFRM_POLICY_ICMP: u32 = 2;
6691pub const XFRM_OFFLOAD_IPV6: u32 = 1;
6692pub const XFRM_OFFLOAD_INBOUND: u32 = 2;
6693pub const XFRM_OFFLOAD_PACKET: u32 = 4;
6694pub const XFRM_USERPOLICY_UNSPEC: u32 = 0;
6695pub const XFRM_USERPOLICY_BLOCK: u32 = 1;
6696pub const XFRM_USERPOLICY_ACCEPT: u32 = 2;
6697pub const XFRMGRP_ACQUIRE: u32 = 1;
6698pub const XFRMGRP_EXPIRE: u32 = 2;
6699pub const XFRMGRP_SA: u32 = 4;
6700pub const XFRMGRP_POLICY: u32 = 8;
6701pub const XFRMGRP_REPORT: u32 = 32;
6702pub const UC_FP_XSTATE: u32 = 1;
6703pub const UC_SIGCONTEXT_SS: u32 = 2;
6704pub const UC_STRICT_RESTORE_SS: u32 = 4;
6705pub const BPF_JMP32: u32 = 6;
6706pub const BPF_ALU64: u32 = 7;
6707pub const BPF_DW: u32 = 24;
6708pub const BPF_MEMSX: u32 = 128;
6709pub const BPF_ATOMIC: u32 = 192;
6710pub const BPF_XADD: u32 = 192;
6711pub const BPF_MOV: u32 = 176;
6712pub const BPF_ARSH: u32 = 192;
6713pub const BPF_END: u32 = 208;
6714pub const BPF_TO_LE: u32 = 0;
6715pub const BPF_TO_BE: u32 = 8;
6716pub const BPF_FROM_LE: u32 = 0;
6717pub const BPF_FROM_BE: u32 = 8;
6718pub const BPF_JNE: u32 = 80;
6719pub const BPF_JLT: u32 = 160;
6720pub const BPF_JLE: u32 = 176;
6721pub const BPF_JSGT: u32 = 96;
6722pub const BPF_JSGE: u32 = 112;
6723pub const BPF_JSLT: u32 = 192;
6724pub const BPF_JSLE: u32 = 208;
6725pub const BPF_JCOND: u32 = 224;
6726pub const BPF_CALL: u32 = 128;
6727pub const BPF_EXIT: u32 = 144;
6728pub const BPF_FETCH: u32 = 1;
6729pub const BPF_XCHG: u32 = 225;
6730pub const BPF_CMPXCHG: u32 = 241;
6731pub const BPF_F_ALLOW_OVERRIDE: u32 = 1;
6732pub const BPF_F_ALLOW_MULTI: u32 = 2;
6733pub const BPF_F_REPLACE: u32 = 4;
6734pub const BPF_F_BEFORE: u32 = 8;
6735pub const BPF_F_AFTER: u32 = 16;
6736pub const BPF_F_ID: u32 = 32;
6737pub const BPF_F_STRICT_ALIGNMENT: u32 = 1;
6738pub const BPF_F_ANY_ALIGNMENT: u32 = 2;
6739pub const BPF_F_TEST_RND_HI32: u32 = 4;
6740pub const BPF_F_TEST_STATE_FREQ: u32 = 8;
6741pub const BPF_F_SLEEPABLE: u32 = 16;
6742pub const BPF_F_XDP_HAS_FRAGS: u32 = 32;
6743pub const BPF_F_XDP_DEV_BOUND_ONLY: u32 = 64;
6744pub const BPF_F_TEST_REG_INVARIANTS: u32 = 128;
6745pub const BPF_F_NETFILTER_IP_DEFRAG: u32 = 1;
6746pub const BPF_PSEUDO_MAP_FD: u32 = 1;
6747pub const BPF_PSEUDO_MAP_IDX: u32 = 5;
6748pub const BPF_PSEUDO_MAP_VALUE: u32 = 2;
6749pub const BPF_PSEUDO_MAP_IDX_VALUE: u32 = 6;
6750pub const BPF_PSEUDO_BTF_ID: u32 = 3;
6751pub const BPF_PSEUDO_FUNC: u32 = 4;
6752pub const BPF_PSEUDO_CALL: u32 = 1;
6753pub const BPF_PSEUDO_KFUNC_CALL: u32 = 2;
6754pub const BPF_F_QUERY_EFFECTIVE: u32 = 1;
6755pub const BPF_F_TEST_RUN_ON_CPU: u32 = 1;
6756pub const BPF_F_TEST_XDP_LIVE_FRAMES: u32 = 2;
6757pub const BPF_F_TEST_SKB_CHECKSUM_COMPLETE: u32 = 4;
6758pub const BPF_BUILD_ID_SIZE: u32 = 20;
6759pub const BPF_OBJ_NAME_LEN: u32 = 16;
6760pub const XDP_PACKET_HEADROOM: u32 = 256;
6761pub const BPF_TAG_SIZE: u32 = 8;
6762pub const __KERNEL__: u32 = 1;
6763pub const __HAS_KERNEL__: u32 = 0;
6764pub const FUSE_KERNEL_VERSION: u32 = 7;
6765pub const FUSE_KERNEL_MINOR_VERSION: u32 = 40;
6766pub const FUSE_ROOT_ID: u32 = 1;
6767pub const FATTR_MODE: u32 = 1;
6768pub const FATTR_UID: u32 = 2;
6769pub const FATTR_GID: u32 = 4;
6770pub const FATTR_SIZE: u32 = 8;
6771pub const FATTR_ATIME: u32 = 16;
6772pub const FATTR_MTIME: u32 = 32;
6773pub const FATTR_FH: u32 = 64;
6774pub const FATTR_ATIME_NOW: u32 = 128;
6775pub const FATTR_MTIME_NOW: u32 = 256;
6776pub const FATTR_LOCKOWNER: u32 = 512;
6777pub const FATTR_CTIME: u32 = 1024;
6778pub const FATTR_KILL_SUIDGID: u32 = 2048;
6779pub const FOPEN_DIRECT_IO: u32 = 1;
6780pub const FOPEN_KEEP_CACHE: u32 = 2;
6781pub const FOPEN_NONSEEKABLE: u32 = 4;
6782pub const FOPEN_CACHE_DIR: u32 = 8;
6783pub const FOPEN_STREAM: u32 = 16;
6784pub const FOPEN_NOFLUSH: u32 = 32;
6785pub const FOPEN_PARALLEL_DIRECT_WRITES: u32 = 64;
6786pub const FOPEN_PASSTHROUGH: u32 = 128;
6787pub const FUSE_ASYNC_READ: u32 = 1;
6788pub const FUSE_POSIX_LOCKS: u32 = 2;
6789pub const FUSE_FILE_OPS: u32 = 4;
6790pub const FUSE_ATOMIC_O_TRUNC: u32 = 8;
6791pub const FUSE_EXPORT_SUPPORT: u32 = 16;
6792pub const FUSE_BIG_WRITES: u32 = 32;
6793pub const FUSE_DONT_MASK: u32 = 64;
6794pub const FUSE_SPLICE_WRITE: u32 = 128;
6795pub const FUSE_SPLICE_MOVE: u32 = 256;
6796pub const FUSE_SPLICE_READ: u32 = 512;
6797pub const FUSE_FLOCK_LOCKS: u32 = 1024;
6798pub const FUSE_HAS_IOCTL_DIR: u32 = 2048;
6799pub const FUSE_AUTO_INVAL_DATA: u32 = 4096;
6800pub const FUSE_DO_READDIRPLUS: u32 = 8192;
6801pub const FUSE_READDIRPLUS_AUTO: u32 = 16384;
6802pub const FUSE_ASYNC_DIO: u32 = 32768;
6803pub const FUSE_WRITEBACK_CACHE: u32 = 65536;
6804pub const FUSE_NO_OPEN_SUPPORT: u32 = 131072;
6805pub const FUSE_PARALLEL_DIROPS: u32 = 262144;
6806pub const FUSE_HANDLE_KILLPRIV: u32 = 524288;
6807pub const FUSE_POSIX_ACL: u32 = 1048576;
6808pub const FUSE_ABORT_ERROR: u32 = 2097152;
6809pub const FUSE_MAX_PAGES: u32 = 4194304;
6810pub const FUSE_CACHE_SYMLINKS: u32 = 8388608;
6811pub const FUSE_NO_OPENDIR_SUPPORT: u32 = 16777216;
6812pub const FUSE_EXPLICIT_INVAL_DATA: u32 = 33554432;
6813pub const FUSE_MAP_ALIGNMENT: u32 = 67108864;
6814pub const FUSE_SUBMOUNTS: u32 = 134217728;
6815pub const FUSE_HANDLE_KILLPRIV_V2: u32 = 268435456;
6816pub const FUSE_SETXATTR_EXT: u32 = 536870912;
6817pub const FUSE_INIT_EXT: u32 = 1073741824;
6818pub const FUSE_INIT_RESERVED: u32 = 2147483648;
6819pub const FUSE_SECURITY_CTX: u64 = 4294967296;
6820pub const FUSE_HAS_INODE_DAX: u64 = 8589934592;
6821pub const FUSE_CREATE_SUPP_GROUP: u64 = 17179869184;
6822pub const FUSE_HAS_EXPIRE_ONLY: u64 = 34359738368;
6823pub const FUSE_DIRECT_IO_ALLOW_MMAP: u64 = 68719476736;
6824pub const FUSE_PASSTHROUGH_UPSTREAM: u64 = 137438953472;
6825pub const FUSE_DIRECT_IO_RELAX: u64 = 68719476736;
6826pub const FUSE_PASSTHROUGH: i64 = -9223372036854775808;
6827pub const CUSE_UNRESTRICTED_IOCTL: u32 = 1;
6828pub const FUSE_RELEASE_FLUSH: u32 = 1;
6829pub const FUSE_RELEASE_FLOCK_UNLOCK: u32 = 2;
6830pub const FUSE_GETATTR_FH: u32 = 1;
6831pub const FUSE_LK_FLOCK: u32 = 1;
6832pub const FUSE_WRITE_CACHE: u32 = 1;
6833pub const FUSE_WRITE_LOCKOWNER: u32 = 2;
6834pub const FUSE_WRITE_KILL_SUIDGID: u32 = 4;
6835pub const FUSE_WRITE_KILL_PRIV: u32 = 4;
6836pub const FUSE_READ_LOCKOWNER: u32 = 2;
6837pub const FUSE_IOCTL_COMPAT: u32 = 1;
6838pub const FUSE_IOCTL_UNRESTRICTED: u32 = 2;
6839pub const FUSE_IOCTL_RETRY: u32 = 4;
6840pub const FUSE_IOCTL_32BIT: u32 = 8;
6841pub const FUSE_IOCTL_DIR: u32 = 16;
6842pub const FUSE_IOCTL_COMPAT_X32: u32 = 32;
6843pub const FUSE_IOCTL_MAX_IOV: u32 = 256;
6844pub const FUSE_POLL_SCHEDULE_NOTIFY: u32 = 1;
6845pub const FUSE_FSYNC_FDATASYNC: u32 = 1;
6846pub const FUSE_ATTR_SUBMOUNT: u32 = 1;
6847pub const FUSE_ATTR_DAX: u32 = 2;
6848pub const FUSE_OPEN_KILL_SUIDGID: u32 = 1;
6849pub const FUSE_SETXATTR_ACL_KILL_SGID: u32 = 1;
6850pub const FUSE_EXPIRE_ONLY: u32 = 1;
6851pub const FUSE_MIN_READ_BUFFER: u32 = 8192;
6852pub const FUSE_COMPAT_ENTRY_OUT_SIZE: u32 = 120;
6853pub const FUSE_ACTION_KEEP: u32 = 0;
6854pub const FUSE_ACTION_REMOVE: u32 = 1;
6855pub const FUSE_ACTION_REPLACE: u32 = 2;
6856pub const FUSE_COMPAT_ATTR_OUT_SIZE: u32 = 96;
6857pub const FUSE_COMPAT_MKNOD_IN_SIZE: u32 = 8;
6858pub const FUSE_COMPAT_WRITE_IN_SIZE: u32 = 24;
6859pub const FUSE_COMPAT_STATFS_SIZE: u32 = 48;
6860pub const FUSE_COMPAT_SETXATTR_IN_SIZE: u32 = 8;
6861pub const FUSE_COMPAT_INIT_OUT_SIZE: u32 = 8;
6862pub const FUSE_COMPAT_22_INIT_OUT_SIZE: u32 = 24;
6863pub const CUSE_INIT_INFO_MAX: u32 = 4096;
6864pub const FUSE_DEV_IOC_MAGIC: u32 = 229;
6865pub const FUSE_SETUPMAPPING_FLAG_WRITE: u32 = 1;
6866pub const FUSE_SETUPMAPPING_FLAG_READ: u32 = 2;
6867pub const FUSE_MAX_IN_ARGS: u32 = 5;
6868pub const FUSE_MAX_OUT_ARGS: u32 = 3;
6869pub const FUSE_BPF_FORCE: u32 = 1;
6870pub const FUSE_BPF_OUT_ARGVAR: u32 = 64;
6871pub const FUSE_BPF_USER_FILTER: u32 = 1;
6872pub const FUSE_BPF_BACKING: u32 = 2;
6873pub const FUSE_BPF_POST_FILTER: u32 = 4;
6874pub const FUSE_OPCODE_FILTER: u32 = 65535;
6875pub const FUSE_PREFILTER: u32 = 65536;
6876pub const FUSE_POSTFILTER: u32 = 131072;
6877pub const KGSL_VERSION_MAJOR: u32 = 3;
6878pub const KGSL_VERSION_MINOR: u32 = 14;
6879pub const KGSL_CONTEXT_SAVE_GMEM: u32 = 1;
6880pub const KGSL_CONTEXT_NO_GMEM_ALLOC: u32 = 2;
6881pub const KGSL_CONTEXT_SUBMIT_IB_LIST: u32 = 4;
6882pub const KGSL_CONTEXT_CTX_SWITCH: u32 = 8;
6883pub const KGSL_CONTEXT_PREAMBLE: u32 = 16;
6884pub const KGSL_CONTEXT_TRASH_STATE: u32 = 32;
6885pub const KGSL_CONTEXT_PER_CONTEXT_TS: u32 = 64;
6886pub const KGSL_CONTEXT_USER_GENERATED_TS: u32 = 128;
6887pub const KGSL_CONTEXT_END_OF_FRAME: u32 = 256;
6888pub const KGSL_CONTEXT_NO_FAULT_TOLERANCE: u32 = 512;
6889pub const KGSL_CONTEXT_SYNC: u32 = 1024;
6890pub const KGSL_CONTEXT_PWR_CONSTRAINT: u32 = 2048;
6891pub const KGSL_CONTEXT_PRIORITY_MASK: u32 = 61440;
6892pub const KGSL_CONTEXT_PRIORITY_SHIFT: u32 = 12;
6893pub const KGSL_CONTEXT_PRIORITY_UNDEF: u32 = 0;
6894pub const KGSL_CONTEXT_IFH_NOP: u32 = 65536;
6895pub const KGSL_CONTEXT_SECURE: u32 = 131072;
6896pub const KGSL_CONTEXT_NO_SNAPSHOT: u32 = 262144;
6897pub const KGSL_CONTEXT_SPARSE: u32 = 524288;
6898pub const KGSL_CONTEXT_PREEMPT_STYLE_MASK: u32 = 234881024;
6899pub const KGSL_CONTEXT_PREEMPT_STYLE_SHIFT: u32 = 25;
6900pub const KGSL_CONTEXT_PREEMPT_STYLE_DEFAULT: u32 = 0;
6901pub const KGSL_CONTEXT_PREEMPT_STYLE_RINGBUFFER: u32 = 1;
6902pub const KGSL_CONTEXT_PREEMPT_STYLE_FINEGRAIN: u32 = 2;
6903pub const KGSL_CONTEXT_TYPE_MASK: u32 = 32505856;
6904pub const KGSL_CONTEXT_TYPE_SHIFT: u32 = 20;
6905pub const KGSL_CONTEXT_TYPE_ANY: u32 = 0;
6906pub const KGSL_CONTEXT_TYPE_GL: u32 = 1;
6907pub const KGSL_CONTEXT_TYPE_CL: u32 = 2;
6908pub const KGSL_CONTEXT_TYPE_C2D: u32 = 3;
6909pub const KGSL_CONTEXT_TYPE_RS: u32 = 4;
6910pub const KGSL_CONTEXT_TYPE_VK: u32 = 5;
6911pub const KGSL_CONTEXT_TYPE_UNKNOWN: u32 = 30;
6912pub const KGSL_CONTEXT_INVALIDATE_ON_FAULT: u32 = 268435456;
6913pub const KGSL_CONTEXT_LPAC: u32 = 536870912;
6914pub const KGSL_CONTEXT_FAULT_INFO: u32 = 1073741824;
6915pub const KGSL_CONTEXT_INVALID: u32 = 4294967295;
6916pub const KGSL_CMDBATCH_MEMLIST: u32 = 1;
6917pub const KGSL_CMDBATCH_MARKER: u32 = 2;
6918pub const KGSL_CMDBATCH_SUBMIT_IB_LIST: u32 = 4;
6919pub const KGSL_CMDBATCH_CTX_SWITCH: u32 = 8;
6920pub const KGSL_CMDBATCH_PROFILING: u32 = 16;
6921pub const KGSL_CMDBATCH_PROFILING_KTIME: u32 = 32;
6922pub const KGSL_CMDBATCH_END_OF_FRAME: u32 = 256;
6923pub const KGSL_CMDBATCH_SYNC: u32 = 1024;
6924pub const KGSL_CMDBATCH_PWR_CONSTRAINT: u32 = 2048;
6925pub const KGSL_CMDBATCH_SPARSE: u32 = 4096;
6926pub const KGSL_CMDBATCH_START_RECURRING: u32 = 1048576;
6927pub const KGSL_CMDBATCH_STOP_RECURRING: u32 = 2097152;
6928pub const KGSL_CMDLIST_IB: u32 = 1;
6929pub const KGSL_CMDLIST_CTXTSWITCH_PREAMBLE: u32 = 2;
6930pub const KGSL_CMDLIST_IB_PREAMBLE: u32 = 4;
6931pub const KGSL_OBJLIST_MEMOBJ: u32 = 8;
6932pub const KGSL_OBJLIST_PROFILE: u32 = 16;
6933pub const KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP: u32 = 0;
6934pub const KGSL_CMD_SYNCPOINT_TYPE_FENCE: u32 = 1;
6935pub const KGSL_CMD_SYNCPOINT_TYPE_TIMELINE: u32 = 2;
6936pub const KGSL_MEMFLAGS_SECURE: u32 = 8;
6937pub const KGSL_MEMFLAGS_GPUREADONLY: u32 = 16777216;
6938pub const KGSL_MEMFLAGS_GPUWRITEONLY: u32 = 33554432;
6939pub const KGSL_MEMFLAGS_FORCE_32BIT: u64 = 4294967296;
6940pub const KGSL_SPARSE_BIND_MULTIPLE_TO_PHYS: u64 = 17179869184;
6941pub const KGSL_SPARSE_BIND: u32 = 1;
6942pub const KGSL_SPARSE_UNBIND: u32 = 2;
6943pub const KGSL_CACHEMODE_MASK: u32 = 201326592;
6944pub const KGSL_CACHEMODE_SHIFT: u32 = 26;
6945pub const KGSL_CACHEMODE_WRITECOMBINE: u32 = 0;
6946pub const KGSL_CACHEMODE_UNCACHED: u32 = 1;
6947pub const KGSL_CACHEMODE_WRITETHROUGH: u32 = 2;
6948pub const KGSL_CACHEMODE_WRITEBACK: u32 = 3;
6949pub const KGSL_MEMFLAGS_USE_CPU_MAP: u32 = 268435456;
6950pub const KGSL_MEMFLAGS_SPARSE_PHYS: u32 = 536870912;
6951pub const KGSL_MEMFLAGS_SPARSE_VIRT: u32 = 1073741824;
6952pub const KGSL_MEMFLAGS_IOCOHERENT: u32 = 2147483648;
6953pub const KGSL_MEMFLAGS_GUARD_PAGE: u64 = 8589934592;
6954pub const KGSL_MEMFLAGS_VBO: u64 = 17179869184;
6955pub const KGSL_MEMFLAGS_VBO_NO_MAP_ZERO: u64 = 34359738368;
6956pub const KGSL_MEMTYPE_MASK: u32 = 65280;
6957pub const KGSL_MEMTYPE_SHIFT: u32 = 8;
6958pub const KGSL_MEMTYPE_OBJECTANY: u32 = 0;
6959pub const KGSL_MEMTYPE_FRAMEBUFFER: u32 = 1;
6960pub const KGSL_MEMTYPE_RENDERBUFFER: u32 = 2;
6961pub const KGSL_MEMTYPE_ARRAYBUFFER: u32 = 3;
6962pub const KGSL_MEMTYPE_ELEMENTARRAYBUFFER: u32 = 4;
6963pub const KGSL_MEMTYPE_VERTEXARRAYBUFFER: u32 = 5;
6964pub const KGSL_MEMTYPE_TEXTURE: u32 = 6;
6965pub const KGSL_MEMTYPE_SURFACE: u32 = 7;
6966pub const KGSL_MEMTYPE_EGL_SURFACE: u32 = 8;
6967pub const KGSL_MEMTYPE_GL: u32 = 9;
6968pub const KGSL_MEMTYPE_CL: u32 = 10;
6969pub const KGSL_MEMTYPE_CL_BUFFER_MAP: u32 = 11;
6970pub const KGSL_MEMTYPE_CL_BUFFER_NOMAP: u32 = 12;
6971pub const KGSL_MEMTYPE_CL_IMAGE_MAP: u32 = 13;
6972pub const KGSL_MEMTYPE_CL_IMAGE_NOMAP: u32 = 14;
6973pub const KGSL_MEMTYPE_CL_KERNEL_STACK: u32 = 15;
6974pub const KGSL_MEMTYPE_COMMAND: u32 = 16;
6975pub const KGSL_MEMTYPE_2D: u32 = 17;
6976pub const KGSL_MEMTYPE_EGL_IMAGE: u32 = 18;
6977pub const KGSL_MEMTYPE_EGL_SHADOW: u32 = 19;
6978pub const KGSL_MEMTYPE_MULTISAMPLE: u32 = 20;
6979pub const KGSL_MEMTYPE_KERNEL: u32 = 255;
6980pub const KGSL_MEMALIGN_MASK: u32 = 16711680;
6981pub const KGSL_MEMALIGN_SHIFT: u32 = 16;
6982pub const KGSL_MEMFLAGS_USERMEM_MASK: u32 = 224;
6983pub const KGSL_MEMFLAGS_USERMEM_SHIFT: u32 = 5;
6984pub const KGSL_MEMFLAGS_NOT_USERMEM: u32 = 0;
6985pub const KGSL_FLAGS_NORMALMODE: u32 = 0;
6986pub const KGSL_FLAGS_SAFEMODE: u32 = 1;
6987pub const KGSL_FLAGS_INITIALIZED0: u32 = 2;
6988pub const KGSL_FLAGS_INITIALIZED: u32 = 4;
6989pub const KGSL_FLAGS_STARTED: u32 = 8;
6990pub const KGSL_FLAGS_ACTIVE: u32 = 16;
6991pub const KGSL_FLAGS_RESERVED0: u32 = 32;
6992pub const KGSL_FLAGS_RESERVED1: u32 = 64;
6993pub const KGSL_FLAGS_RESERVED2: u32 = 128;
6994pub const KGSL_FLAGS_SOFT_RESET: u32 = 256;
6995pub const KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS: u32 = 512;
6996pub const KGSL_SYNCOBJ_SERVER_TIMEOUT: u32 = 2000;
6997pub const KGSL_UBWC_NONE: u32 = 0;
6998pub const KGSL_UBWC_1_0: u32 = 1;
6999pub const KGSL_UBWC_2_0: u32 = 2;
7000pub const KGSL_UBWC_3_0: u32 = 3;
7001pub const KGSL_UBWC_4_0: u32 = 4;
7002pub const KGSL_UBWC_5_0: u32 = 5;
7003pub const KGSL_PROP_DEVICE_INFO: u32 = 1;
7004pub const KGSL_PROP_DEVICE_SHADOW: u32 = 2;
7005pub const KGSL_PROP_DEVICE_POWER: u32 = 3;
7006pub const KGSL_PROP_SHMEM: u32 = 4;
7007pub const KGSL_PROP_SHMEM_APERTURES: u32 = 5;
7008pub const KGSL_PROP_MMU_ENABLE: u32 = 6;
7009pub const KGSL_PROP_INTERRUPT_WAITS: u32 = 7;
7010pub const KGSL_PROP_VERSION: u32 = 8;
7011pub const KGSL_PROP_GPU_RESET_STAT: u32 = 9;
7012pub const KGSL_PROP_PWRCTRL: u32 = 14;
7013pub const KGSL_PROP_PWR_CONSTRAINT: u32 = 18;
7014pub const KGSL_PROP_UCHE_GMEM_VADDR: u32 = 19;
7015pub const KGSL_PROP_SP_GENERIC_MEM: u32 = 20;
7016pub const KGSL_PROP_UCODE_VERSION: u32 = 21;
7017pub const KGSL_PROP_GPMU_VERSION: u32 = 22;
7018pub const KGSL_PROP_HIGHEST_BANK_BIT: u32 = 23;
7019pub const KGSL_PROP_DEVICE_BITNESS: u32 = 24;
7020pub const KGSL_PROP_DEVICE_QDSS_STM: u32 = 25;
7021pub const KGSL_PROP_MIN_ACCESS_LENGTH: u32 = 26;
7022pub const KGSL_PROP_UBWC_MODE: u32 = 27;
7023pub const KGSL_PROP_DEVICE_QTIMER: u32 = 32;
7024pub const KGSL_PROP_L3_PWR_CONSTRAINT: u32 = 34;
7025pub const KGSL_PROP_SECURE_BUFFER_ALIGNMENT: u32 = 35;
7026pub const KGSL_PROP_SECURE_CTXT_SUPPORT: u32 = 36;
7027pub const KGSL_PROP_SPEED_BIN: u32 = 37;
7028pub const KGSL_PROP_GAMING_BIN: u32 = 38;
7029pub const KGSL_PROP_QUERY_CAPABILITIES: u32 = 39;
7030pub const KGSL_PROP_CONTEXT_PROPERTY: u32 = 40;
7031pub const KGSL_PROP_GPU_MODEL: u32 = 41;
7032pub const KGSL_PROP_VK_DEVICE_ID: u32 = 42;
7033pub const KGSL_PROP_IS_LPAC_ENABLED: u32 = 43;
7034pub const KGSL_PROP_GPU_VA64_SIZE: u32 = 44;
7035pub const KGSL_PROP_IS_RAYTRACING_ENABLED: u32 = 45;
7036pub const KGSL_PROP_IS_FASTBLEND_ENABLED: u32 = 46;
7037pub const KGSL_PROP_UCHE_TRAP_BASE: u32 = 47;
7038pub const KGSL_PROP_IS_AQE_ENABLED: u32 = 48;
7039pub const KGSL_PROP_GPU_SECURE_VA_SIZE: u32 = 49;
7040pub const KGSL_PROP_GPU_SECURE_VA_INUSE: u32 = 50;
7041pub const KGSL_QUERY_CAPS_PROPERTIES: u32 = 1;
7042pub const KGSL_CONTEXT_PROP_FAULTS: u32 = 1;
7043pub const KGSL_PERFCOUNTER_GROUP_CP: u32 = 0;
7044pub const KGSL_PERFCOUNTER_GROUP_RBBM: u32 = 1;
7045pub const KGSL_PERFCOUNTER_GROUP_PC: u32 = 2;
7046pub const KGSL_PERFCOUNTER_GROUP_VFD: u32 = 3;
7047pub const KGSL_PERFCOUNTER_GROUP_HLSQ: u32 = 4;
7048pub const KGSL_PERFCOUNTER_GROUP_VPC: u32 = 5;
7049pub const KGSL_PERFCOUNTER_GROUP_TSE: u32 = 6;
7050pub const KGSL_PERFCOUNTER_GROUP_RAS: u32 = 7;
7051pub const KGSL_PERFCOUNTER_GROUP_UCHE: u32 = 8;
7052pub const KGSL_PERFCOUNTER_GROUP_TP: u32 = 9;
7053pub const KGSL_PERFCOUNTER_GROUP_SP: u32 = 10;
7054pub const KGSL_PERFCOUNTER_GROUP_RB: u32 = 11;
7055pub const KGSL_PERFCOUNTER_GROUP_PWR: u32 = 12;
7056pub const KGSL_PERFCOUNTER_GROUP_VBIF: u32 = 13;
7057pub const KGSL_PERFCOUNTER_GROUP_VBIF_PWR: u32 = 14;
7058pub const KGSL_PERFCOUNTER_GROUP_MH: u32 = 15;
7059pub const KGSL_PERFCOUNTER_GROUP_PA_SU: u32 = 16;
7060pub const KGSL_PERFCOUNTER_GROUP_SQ: u32 = 17;
7061pub const KGSL_PERFCOUNTER_GROUP_SX: u32 = 18;
7062pub const KGSL_PERFCOUNTER_GROUP_TCF: u32 = 19;
7063pub const KGSL_PERFCOUNTER_GROUP_TCM: u32 = 20;
7064pub const KGSL_PERFCOUNTER_GROUP_TCR: u32 = 21;
7065pub const KGSL_PERFCOUNTER_GROUP_L2: u32 = 22;
7066pub const KGSL_PERFCOUNTER_GROUP_VSC: u32 = 23;
7067pub const KGSL_PERFCOUNTER_GROUP_CCU: u32 = 24;
7068pub const KGSL_PERFCOUNTER_GROUP_LRZ: u32 = 25;
7069pub const KGSL_PERFCOUNTER_GROUP_CMP: u32 = 26;
7070pub const KGSL_PERFCOUNTER_GROUP_ALWAYSON: u32 = 27;
7071pub const KGSL_PERFCOUNTER_GROUP_SP_PWR: u32 = 28;
7072pub const KGSL_PERFCOUNTER_GROUP_TP_PWR: u32 = 29;
7073pub const KGSL_PERFCOUNTER_GROUP_RB_PWR: u32 = 30;
7074pub const KGSL_PERFCOUNTER_GROUP_CCU_PWR: u32 = 31;
7075pub const KGSL_PERFCOUNTER_GROUP_UCHE_PWR: u32 = 32;
7076pub const KGSL_PERFCOUNTER_GROUP_CP_PWR: u32 = 33;
7077pub const KGSL_PERFCOUNTER_GROUP_GPMU_PWR: u32 = 34;
7078pub const KGSL_PERFCOUNTER_GROUP_ALWAYSON_PWR: u32 = 35;
7079pub const KGSL_PERFCOUNTER_GROUP_GLC: u32 = 36;
7080pub const KGSL_PERFCOUNTER_GROUP_FCHE: u32 = 37;
7081pub const KGSL_PERFCOUNTER_GROUP_MHUB: u32 = 38;
7082pub const KGSL_PERFCOUNTER_GROUP_GMU_XOCLK: u32 = 39;
7083pub const KGSL_PERFCOUNTER_GROUP_GMU_GMUCLK: u32 = 40;
7084pub const KGSL_PERFCOUNTER_GROUP_GMU_PERF: u32 = 41;
7085pub const KGSL_PERFCOUNTER_GROUP_SW: u32 = 42;
7086pub const KGSL_PERFCOUNTER_GROUP_UFC: u32 = 43;
7087pub const KGSL_PERFCOUNTER_GROUP_BV_CP: u32 = 44;
7088pub const KGSL_PERFCOUNTER_GROUP_BV_PC: u32 = 45;
7089pub const KGSL_PERFCOUNTER_GROUP_BV_VFD: u32 = 46;
7090pub const KGSL_PERFCOUNTER_GROUP_BV_VPC: u32 = 47;
7091pub const KGSL_PERFCOUNTER_GROUP_BV_TP: u32 = 48;
7092pub const KGSL_PERFCOUNTER_GROUP_BV_SP: u32 = 49;
7093pub const KGSL_PERFCOUNTER_GROUP_BV_UFC: u32 = 50;
7094pub const KGSL_PERFCOUNTER_GROUP_BV_TSE: u32 = 51;
7095pub const KGSL_PERFCOUNTER_GROUP_BV_RAS: u32 = 52;
7096pub const KGSL_PERFCOUNTER_GROUP_BV_LRZ: u32 = 53;
7097pub const KGSL_PERFCOUNTER_GROUP_BV_HLSQ: u32 = 54;
7098pub const KGSL_PERFCOUNTER_GROUP_MAX: u32 = 55;
7099pub const KGSL_PERFCOUNTER_NOT_USED: u32 = 4294967295;
7100pub const KGSL_PERFCOUNTER_BROKEN: u32 = 4294967294;
7101pub const KGSL_IOC_TYPE: u32 = 9;
7102pub const KGSL_TIMESTAMP_EVENT_GENLOCK: u32 = 1;
7103pub const KGSL_TIMESTAMP_EVENT_FENCE: u32 = 2;
7104pub const KGSL_GPUMEM_CACHE_CLEAN: u32 = 1;
7105pub const KGSL_GPUMEM_CACHE_TO_GPU: u32 = 1;
7106pub const KGSL_GPUMEM_CACHE_INV: u32 = 2;
7107pub const KGSL_GPUMEM_CACHE_FROM_GPU: u32 = 2;
7108pub const KGSL_GPUMEM_CACHE_FLUSH: u32 = 3;
7109pub const KGSL_GPUMEM_CACHE_RANGE: u32 = 2147483648;
7110pub const KGSL_IBDESC_MEMLIST: u32 = 1;
7111pub const KGSL_IBDESC_PROFILING_BUFFER: u32 = 2;
7112pub const KGSL_CONSTRAINT_NONE: u32 = 0;
7113pub const KGSL_CONSTRAINT_PWRLEVEL: u32 = 1;
7114pub const KGSL_CONSTRAINT_L3_NONE: u32 = 2;
7115pub const KGSL_CONSTRAINT_L3_PWRLEVEL: u32 = 3;
7116pub const KGSL_CONSTRAINT_PWR_MIN: u32 = 0;
7117pub const KGSL_CONSTRAINT_PWR_MAX: u32 = 1;
7118pub const KGSL_GPUOBJ_ALLOC_METADATA_MAX: u32 = 64;
7119pub const KGSL_GPUOBJ_FREE_ON_EVENT: u32 = 1;
7120pub const KGSL_GPU_EVENT_TIMESTAMP: u32 = 1;
7121pub const KGSL_GPU_EVENT_FENCE: u32 = 2;
7122pub const KGSL_GPUOBJ_SET_INFO_METADATA: u32 = 1;
7123pub const KGSL_GPUOBJ_SET_INFO_TYPE: u32 = 2;
7124pub const KGSL_GPUMEM_RANGE_OP_BIND: u32 = 1;
7125pub const KGSL_GPUMEM_RANGE_OP_UNBIND: u32 = 2;
7126pub const KGSL_GPUMEM_BIND_ASYNC: u32 = 1;
7127pub const KGSL_GPUMEM_BIND_FENCE_OUT: u32 = 2;
7128pub const KGSL_GPU_AUX_COMMAND_BIND: u32 = 1;
7129pub const KGSL_GPU_AUX_COMMAND_TIMELINE: u32 = 2;
7130pub const KGSL_GPU_AUX_COMMAND_SYNC: u32 = 1024;
7131pub const KGSL_TIMELINE_WAIT_ALL: u32 = 1;
7132pub const KGSL_TIMELINE_WAIT_ANY: u32 = 2;
7133pub const KGSL_FAULT_TYPE_NO_FAULT: u32 = 0;
7134pub const KGSL_FAULT_TYPE_PAGEFAULT: u32 = 1;
7135pub const KGSL_FAULT_TYPE_MAX: u32 = 2;
7136pub const KGSL_PAGEFAULT_TYPE_NONE: u32 = 0;
7137pub const KGSL_PAGEFAULT_TYPE_READ: u32 = 1;
7138pub const KGSL_PAGEFAULT_TYPE_WRITE: u32 = 2;
7139pub const KGSL_PAGEFAULT_TYPE_TRANSLATION: u32 = 4;
7140pub const KGSL_PAGEFAULT_TYPE_PERMISSION: u32 = 8;
7141pub const KGSL_PAGEFAULT_TYPE_EXTERNAL: u32 = 16;
7142pub const KGSL_PAGEFAULT_TYPE_TRANSACTION_STALLED: u32 = 32;
7143pub const ARCH_SET_GS: u32 = 4097;
7144pub const ARCH_SET_FS: u32 = 4098;
7145pub const ARCH_GET_FS: u32 = 4099;
7146pub const ARCH_GET_GS: u32 = 4100;
7147pub const ARCH_GET_CPUID: u32 = 4113;
7148pub const ARCH_SET_CPUID: u32 = 4114;
7149pub const ARCH_GET_XCOMP_SUPP: u32 = 4129;
7150pub const ARCH_GET_XCOMP_PERM: u32 = 4130;
7151pub const ARCH_REQ_XCOMP_PERM: u32 = 4131;
7152pub const ARCH_GET_XCOMP_GUEST_PERM: u32 = 4132;
7153pub const ARCH_REQ_XCOMP_GUEST_PERM: u32 = 4133;
7154pub const ARCH_XCOMP_TILECFG: u32 = 17;
7155pub const ARCH_XCOMP_TILEDATA: u32 = 18;
7156pub const ARCH_MAP_VDSO_X32: u32 = 8193;
7157pub const ARCH_MAP_VDSO_32: u32 = 8194;
7158pub const ARCH_MAP_VDSO_64: u32 = 8195;
7159pub const ARCH_GET_UNTAG_MASK: u32 = 16385;
7160pub const ARCH_ENABLE_TAGGED_ADDR: u32 = 16386;
7161pub const ARCH_GET_MAX_TAG_BITS: u32 = 16387;
7162pub const ARCH_FORCE_TAGGED_SVA: u32 = 16388;
7163pub const ARCH_SHSTK_ENABLE: u32 = 20481;
7164pub const ARCH_SHSTK_DISABLE: u32 = 20482;
7165pub const ARCH_SHSTK_LOCK: u32 = 20483;
7166pub const ARCH_SHSTK_UNLOCK: u32 = 20484;
7167pub const ARCH_SHSTK_STATUS: u32 = 20485;
7168pub const ARCH_SHSTK_SHSTK: u32 = 1;
7169pub const ARCH_SHSTK_WRSS: u32 = 2;
7170pub const SPLICE_F_MOVE: u32 = 1;
7171pub const SPLICE_F_NONBLOCK: u32 = 2;
7172pub const SPLICE_F_MORE: u32 = 4;
7173pub const SPLICE_F_GIFT: u32 = 8;
7174pub type size_t = crate::types::c_ulong;
7175pub type wchar_t = crate::types::c_int;
7176#[repr(C)]
7177#[repr(align(16))]
7178#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7179pub struct max_align_t {
7180    pub __clang_max_align_nonce1: crate::types::c_longlong,
7181    pub __bindgen_padding_0: [u8; 8usize],
7182    pub __clang_max_align_nonce2: u128,
7183}
7184pub type int_least64_t = i64;
7185pub type uint_least64_t = u64;
7186pub type int_fast64_t = i64;
7187pub type uint_fast64_t = u64;
7188pub type int_least32_t = i32;
7189pub type uint_least32_t = u32;
7190pub type int_fast32_t = i32;
7191pub type uint_fast32_t = u32;
7192pub type int_least16_t = i16;
7193pub type uint_least16_t = u16;
7194pub type int_fast16_t = i16;
7195pub type uint_fast16_t = u16;
7196pub type int_least8_t = i8;
7197pub type uint_least8_t = u8;
7198pub type int_fast8_t = i8;
7199pub type uint_fast8_t = u8;
7200pub type intmax_t = crate::types::c_long;
7201pub type uintmax_t = crate::types::c_ulong;
7202pub type __kernel_old_uid_t = crate::types::c_ushort;
7203pub type __kernel_old_gid_t = crate::types::c_ushort;
7204pub type __kernel_old_dev_t = crate::types::c_ulong;
7205pub type __kernel_long_t = crate::types::c_long;
7206pub type __kernel_ulong_t = crate::types::c_ulong;
7207pub type __kernel_ino_t = __kernel_ulong_t;
7208pub type __kernel_mode_t = crate::types::c_uint;
7209pub type __kernel_pid_t = crate::types::c_int;
7210pub type __kernel_ipc_pid_t = crate::types::c_int;
7211pub type __kernel_uid_t = crate::types::c_uint;
7212pub type __kernel_gid_t = crate::types::c_uint;
7213pub type __kernel_suseconds_t = __kernel_long_t;
7214pub type __kernel_daddr_t = crate::types::c_int;
7215pub type __kernel_uid32_t = crate::types::c_uint;
7216pub type __kernel_gid32_t = crate::types::c_uint;
7217pub type __kernel_size_t = __kernel_ulong_t;
7218pub type __kernel_ssize_t = __kernel_long_t;
7219pub type __kernel_ptrdiff_t = __kernel_long_t;
7220#[repr(C)]
7221#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7222pub struct __kernel_fsid_t {
7223    pub val: [crate::types::c_int; 2usize],
7224}
7225pub type __kernel_off_t = __kernel_long_t;
7226pub type __kernel_loff_t = crate::types::c_longlong;
7227pub type __kernel_old_time_t = __kernel_long_t;
7228pub type __kernel_time_t = __kernel_long_t;
7229pub type __kernel_time64_t = crate::types::c_longlong;
7230pub type __kernel_clock_t = __kernel_long_t;
7231pub type __kernel_timer_t = crate::types::c_int;
7232pub type __kernel_clockid_t = crate::types::c_int;
7233pub type __kernel_caddr_t = uref<crate::types::c_char>;
7234pub type __kernel_uid16_t = crate::types::c_ushort;
7235pub type __kernel_gid16_t = crate::types::c_ushort;
7236pub type __kernel_sa_family_t = crate::types::c_ushort;
7237#[repr(C)]
7238#[derive(Copy, Clone)]
7239pub struct sockaddr_storage {
7240    pub __bindgen_anon_1: sockaddr_storage__bindgen_ty_1,
7241}
7242#[repr(C)]
7243#[derive(Copy, Clone)]
7244pub union sockaddr_storage__bindgen_ty_1 {
7245    pub __bindgen_anon_1: sockaddr_storage__bindgen_ty_1__bindgen_ty_1,
7246    pub __align: uaddr,
7247}
7248#[repr(C)]
7249#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7250pub struct sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
7251    pub ss_family: __kernel_sa_family_t,
7252    pub __data: [crate::types::c_char; 126usize],
7253}
7254impl Default for sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
7255    fn default() -> Self {
7256        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7257        unsafe {
7258            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7259            s.assume_init()
7260        }
7261    }
7262}
7263impl Default for sockaddr_storage__bindgen_ty_1 {
7264    fn default() -> Self {
7265        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7266        unsafe {
7267            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7268            s.assume_init()
7269        }
7270    }
7271}
7272impl Default for sockaddr_storage {
7273    fn default() -> Self {
7274        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7275        unsafe {
7276            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7277            s.assume_init()
7278        }
7279    }
7280}
7281pub type socklen_t = u32;
7282#[repr(C)]
7283#[derive(
7284    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
7285)]
7286pub struct ucred {
7287    pub pid: __kernel_pid_t,
7288    pub uid: __kernel_uid32_t,
7289    pub gid: __kernel_gid32_t,
7290}
7291#[repr(C)]
7292#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7293pub struct msghdr {
7294    pub msg_name: uaddr,
7295    pub msg_namelen: socklen_t,
7296    pub __bindgen_padding_0: [u8; 4usize],
7297    pub msg_iov: uref<iovec>,
7298    pub msg_iovlen: size_t,
7299    pub msg_control: uaddr,
7300    pub msg_controllen: size_t,
7301    pub msg_flags: crate::types::c_uint,
7302    pub __bindgen_padding_1: [u8; 4usize],
7303}
7304impl Default for msghdr {
7305    fn default() -> Self {
7306        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7307        unsafe {
7308            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7309            s.assume_init()
7310        }
7311    }
7312}
7313#[repr(C)]
7314#[derive(
7315    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
7316)]
7317pub struct cmsghdr {
7318    pub cmsg_len: size_t,
7319    pub cmsg_level: crate::types::c_uint,
7320    pub cmsg_type: crate::types::c_uint,
7321}
7322#[repr(C)]
7323#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7324pub struct mmsghdr {
7325    pub msg_hdr: msghdr,
7326    pub msg_len: crate::types::c_uint,
7327    pub __bindgen_padding_0: [u8; 4usize],
7328}
7329impl Default for mmsghdr {
7330    fn default() -> Self {
7331        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7332        unsafe {
7333            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7334            s.assume_init()
7335        }
7336    }
7337}
7338#[repr(C)]
7339#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7340pub struct linger {
7341    pub l_onoff: crate::types::c_int,
7342    pub l_linger: crate::types::c_int,
7343}
7344#[repr(C)]
7345#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7346pub struct sockaddr_qrtr {
7347    pub sq_family: __kernel_sa_family_t,
7348    pub __bindgen_padding_0: [u8; 2usize],
7349    pub sq_node: crate::types::c_uint,
7350    pub sq_port: crate::types::c_uint,
7351}
7352pub type __s8 = crate::types::c_schar;
7353pub type __u8 = crate::types::c_uchar;
7354pub type __s16 = crate::types::c_short;
7355pub type __u16 = crate::types::c_ushort;
7356pub type __s32 = crate::types::c_int;
7357pub type __u32 = crate::types::c_uint;
7358pub type __s64 = crate::types::c_longlong;
7359pub type __u64 = crate::types::c_ulonglong;
7360#[repr(C)]
7361#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7362pub struct __kernel_fd_set {
7363    pub fds_bits: [crate::types::c_ulong; 16usize],
7364}
7365pub type __kernel_sighandler_t = uaddr;
7366pub type __kernel_key_t = crate::types::c_int;
7367pub type __kernel_mqd_t = crate::types::c_int;
7368pub type __s128 = i128;
7369pub type __u128 = u128;
7370pub type __le16 = __u16;
7371pub type __be16 = __u16;
7372pub type __le32 = __u32;
7373pub type __be32 = __u32;
7374pub type __le64 = __u64;
7375pub type __be64 = __u64;
7376pub type __sum16 = __u16;
7377pub type __wsum = __u32;
7378pub type __poll_t = crate::types::c_uint;
7379pub type sigset_t = crate::types::c_ulong;
7380pub type __signalfn_t = uaddr;
7381pub type __sighandler_t = __signalfn_t;
7382pub type __restorefn_t = uaddr;
7383pub type __sigrestore_t = __restorefn_t;
7384#[repr(C)]
7385#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
7386pub struct __kernel_sigaction {
7387    pub sa_handler: __sighandler_t,
7388    pub sa_flags: crate::types::c_ulong,
7389    pub sa_restorer: __sigrestore_t,
7390    pub sa_mask: sigset_t,
7391}
7392#[repr(C)]
7393#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7394pub struct sigaltstack {
7395    pub ss_sp: uaddr,
7396    pub ss_flags: crate::types::c_int,
7397    pub __bindgen_padding_0: [u8; 4usize],
7398    pub ss_size: __kernel_size_t,
7399}
7400impl Default for sigaltstack {
7401    fn default() -> Self {
7402        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7403        unsafe {
7404            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7405            s.assume_init()
7406        }
7407    }
7408}
7409pub type stack_t = sigaltstack;
7410pub type pid_t = __kernel_pid_t;
7411pub type uid_t = __kernel_uid_t;
7412#[repr(C)]
7413#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7414pub struct sockaddr {
7415    pub sa_family: __kernel_sa_family_t,
7416    pub sa_data: [crate::types::c_char; 14usize],
7417}
7418pub type sa_family_t = __kernel_sa_family_t;
7419pub type sigaction_t = __kernel_sigaction;
7420#[repr(C)]
7421#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7422pub struct pollfd {
7423    pub fd: crate::types::c_int,
7424    pub events: crate::types::c_short,
7425    pub revents: crate::types::c_short,
7426}
7427#[repr(C)]
7428#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7429pub struct _fpx_sw_bytes {
7430    pub magic1: __u32,
7431    pub extended_size: __u32,
7432    pub xfeatures: __u64,
7433    pub xstate_size: __u32,
7434    pub padding: [__u32; 7usize],
7435}
7436#[repr(C)]
7437#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7438pub struct _fpreg {
7439    pub significand: [__u16; 4usize],
7440    pub exponent: __u16,
7441}
7442#[repr(C)]
7443#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7444pub struct _fpxreg {
7445    pub significand: [__u16; 4usize],
7446    pub exponent: __u16,
7447    pub padding: [__u16; 3usize],
7448}
7449#[repr(C)]
7450#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7451pub struct _xmmreg {
7452    pub element: [__u32; 4usize],
7453}
7454#[repr(C)]
7455#[derive(Copy, Clone)]
7456pub struct _fpstate_32 {
7457    pub cw: __u32,
7458    pub sw: __u32,
7459    pub tag: __u32,
7460    pub ipoff: __u32,
7461    pub cssel: __u32,
7462    pub dataoff: __u32,
7463    pub datasel: __u32,
7464    pub _st: [_fpreg; 8usize],
7465    pub status: __u16,
7466    pub magic: __u16,
7467    pub _fxsr_env: [__u32; 6usize],
7468    pub mxcsr: __u32,
7469    pub reserved: __u32,
7470    pub _fxsr_st: [_fpxreg; 8usize],
7471    pub _xmm: [_xmmreg; 8usize],
7472    pub __bindgen_anon_1: _fpstate_32__bindgen_ty_1,
7473    pub __bindgen_anon_2: _fpstate_32__bindgen_ty_2,
7474}
7475#[repr(C)]
7476#[derive(Copy, Clone)]
7477pub union _fpstate_32__bindgen_ty_1 {
7478    pub padding1: [__u32; 44usize],
7479    pub padding: [__u32; 44usize],
7480}
7481impl Default for _fpstate_32__bindgen_ty_1 {
7482    fn default() -> Self {
7483        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7484        unsafe {
7485            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7486            s.assume_init()
7487        }
7488    }
7489}
7490#[repr(C)]
7491#[derive(Copy, Clone)]
7492pub union _fpstate_32__bindgen_ty_2 {
7493    pub padding2: [__u32; 12usize],
7494    pub sw_reserved: _fpx_sw_bytes,
7495}
7496impl Default for _fpstate_32__bindgen_ty_2 {
7497    fn default() -> Self {
7498        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7499        unsafe {
7500            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7501            s.assume_init()
7502        }
7503    }
7504}
7505impl Default for _fpstate_32 {
7506    fn default() -> Self {
7507        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7508        unsafe {
7509            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7510            s.assume_init()
7511        }
7512    }
7513}
7514#[repr(C)]
7515#[derive(Copy, Clone)]
7516pub struct _fpstate_64 {
7517    pub cwd: __u16,
7518    pub swd: __u16,
7519    pub twd: __u16,
7520    pub fop: __u16,
7521    pub rip: __u64,
7522    pub rdp: __u64,
7523    pub mxcsr: __u32,
7524    pub mxcsr_mask: __u32,
7525    pub st_space: [__u32; 32usize],
7526    pub xmm_space: [__u32; 64usize],
7527    pub reserved2: [__u32; 12usize],
7528    pub __bindgen_anon_1: _fpstate_64__bindgen_ty_1,
7529}
7530#[repr(C)]
7531#[derive(Copy, Clone)]
7532pub union _fpstate_64__bindgen_ty_1 {
7533    pub reserved3: [__u32; 12usize],
7534    pub sw_reserved: _fpx_sw_bytes,
7535}
7536impl Default for _fpstate_64__bindgen_ty_1 {
7537    fn default() -> Self {
7538        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7539        unsafe {
7540            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7541            s.assume_init()
7542        }
7543    }
7544}
7545impl Default for _fpstate_64 {
7546    fn default() -> Self {
7547        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7548        unsafe {
7549            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7550            s.assume_init()
7551        }
7552    }
7553}
7554#[repr(C)]
7555#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7556pub struct _header {
7557    pub xfeatures: __u64,
7558    pub reserved1: [__u64; 2usize],
7559    pub reserved2: [__u64; 5usize],
7560}
7561#[repr(C)]
7562#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7563pub struct _ymmh_state {
7564    pub ymmh_space: [__u32; 64usize],
7565}
7566impl Default for _ymmh_state {
7567    fn default() -> Self {
7568        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7569        unsafe {
7570            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7571            s.assume_init()
7572        }
7573    }
7574}
7575#[repr(C)]
7576#[derive(Copy, Clone)]
7577pub struct _xstate {
7578    pub fpstate: _fpstate_64,
7579    pub xstate_hdr: _header,
7580    pub ymmh: _ymmh_state,
7581}
7582impl Default for _xstate {
7583    fn default() -> Self {
7584        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7585        unsafe {
7586            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7587            s.assume_init()
7588        }
7589    }
7590}
7591#[repr(C)]
7592#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7593pub struct sigcontext_32 {
7594    pub gs: __u16,
7595    pub __gsh: __u16,
7596    pub fs: __u16,
7597    pub __fsh: __u16,
7598    pub es: __u16,
7599    pub __esh: __u16,
7600    pub ds: __u16,
7601    pub __dsh: __u16,
7602    pub di: __u32,
7603    pub si: __u32,
7604    pub bp: __u32,
7605    pub sp: __u32,
7606    pub bx: __u32,
7607    pub dx: __u32,
7608    pub cx: __u32,
7609    pub ax: __u32,
7610    pub trapno: __u32,
7611    pub err: __u32,
7612    pub ip: __u32,
7613    pub cs: __u16,
7614    pub __csh: __u16,
7615    pub flags: __u32,
7616    pub sp_at_signal: __u32,
7617    pub ss: __u16,
7618    pub __ssh: __u16,
7619    pub fpstate: __u32,
7620    pub oldmask: __u32,
7621    pub cr2: __u32,
7622}
7623#[repr(C)]
7624#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7625pub struct sigcontext_64 {
7626    pub r8: __u64,
7627    pub r9: __u64,
7628    pub r10: __u64,
7629    pub r11: __u64,
7630    pub r12: __u64,
7631    pub r13: __u64,
7632    pub r14: __u64,
7633    pub r15: __u64,
7634    pub di: __u64,
7635    pub si: __u64,
7636    pub bp: __u64,
7637    pub bx: __u64,
7638    pub dx: __u64,
7639    pub ax: __u64,
7640    pub cx: __u64,
7641    pub sp: __u64,
7642    pub ip: __u64,
7643    pub flags: __u64,
7644    pub cs: __u16,
7645    pub gs: __u16,
7646    pub fs: __u16,
7647    pub ss: __u16,
7648    pub err: __u64,
7649    pub trapno: __u64,
7650    pub oldmask: __u64,
7651    pub cr2: __u64,
7652    pub fpstate: __u64,
7653    pub reserved1: [__u64; 8usize],
7654}
7655#[repr(C)]
7656#[derive(Copy, Clone)]
7657pub struct sigcontext {
7658    pub r8: __u64,
7659    pub r9: __u64,
7660    pub r10: __u64,
7661    pub r11: __u64,
7662    pub r12: __u64,
7663    pub r13: __u64,
7664    pub r14: __u64,
7665    pub r15: __u64,
7666    pub rdi: __u64,
7667    pub rsi: __u64,
7668    pub rbp: __u64,
7669    pub rbx: __u64,
7670    pub rdx: __u64,
7671    pub rax: __u64,
7672    pub rcx: __u64,
7673    pub rsp: __u64,
7674    pub rip: __u64,
7675    pub eflags: __u64,
7676    pub cs: __u16,
7677    pub gs: __u16,
7678    pub fs: __u16,
7679    pub __bindgen_anon_1: sigcontext__bindgen_ty_1,
7680    pub err: __u64,
7681    pub trapno: __u64,
7682    pub oldmask: __u64,
7683    pub cr2: __u64,
7684    pub fpstate: uref<_fpstate_64>,
7685    pub reserved1: [__u64; 8usize],
7686}
7687#[repr(C)]
7688#[derive(Copy, Clone)]
7689pub union sigcontext__bindgen_ty_1 {
7690    pub ss: __u16,
7691    pub __pad0: __u16,
7692}
7693impl Default for sigcontext__bindgen_ty_1 {
7694    fn default() -> Self {
7695        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7696        unsafe {
7697            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7698            s.assume_init()
7699        }
7700    }
7701}
7702impl Default for sigcontext {
7703    fn default() -> Self {
7704        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7705        unsafe {
7706            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7707            s.assume_init()
7708        }
7709    }
7710}
7711#[repr(C)]
7712#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7713pub struct stat {
7714    pub st_dev: __kernel_ulong_t,
7715    pub st_ino: __kernel_ulong_t,
7716    pub st_nlink: __kernel_ulong_t,
7717    pub st_mode: crate::types::c_uint,
7718    pub st_uid: crate::types::c_uint,
7719    pub st_gid: crate::types::c_uint,
7720    pub __pad0: crate::types::c_uint,
7721    pub st_rdev: __kernel_ulong_t,
7722    pub st_size: __kernel_long_t,
7723    pub st_blksize: __kernel_long_t,
7724    pub st_blocks: __kernel_long_t,
7725    pub st_atime: __kernel_ulong_t,
7726    pub st_atime_nsec: __kernel_ulong_t,
7727    pub st_mtime: __kernel_ulong_t,
7728    pub st_mtime_nsec: __kernel_ulong_t,
7729    pub st_ctime: __kernel_ulong_t,
7730    pub st_ctime_nsec: __kernel_ulong_t,
7731    pub __linux_unused: [__kernel_long_t; 3usize],
7732}
7733#[repr(C)]
7734#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7735pub struct __old_kernel_stat {
7736    pub st_dev: crate::types::c_ushort,
7737    pub st_ino: crate::types::c_ushort,
7738    pub st_mode: crate::types::c_ushort,
7739    pub st_nlink: crate::types::c_ushort,
7740    pub st_uid: crate::types::c_ushort,
7741    pub st_gid: crate::types::c_ushort,
7742    pub st_rdev: crate::types::c_ushort,
7743    pub __bindgen_padding_0: [u8; 2usize],
7744    pub st_size: crate::types::c_uint,
7745    pub st_atime: crate::types::c_uint,
7746    pub st_mtime: crate::types::c_uint,
7747    pub st_ctime: crate::types::c_uint,
7748}
7749#[repr(C)]
7750#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7751pub struct statfs {
7752    pub f_type: __kernel_long_t,
7753    pub f_bsize: __kernel_long_t,
7754    pub f_blocks: __kernel_long_t,
7755    pub f_bfree: __kernel_long_t,
7756    pub f_bavail: __kernel_long_t,
7757    pub f_files: __kernel_long_t,
7758    pub f_ffree: __kernel_long_t,
7759    pub f_fsid: __kernel_fsid_t,
7760    pub f_namelen: __kernel_long_t,
7761    pub f_frsize: __kernel_long_t,
7762    pub f_flags: __kernel_long_t,
7763    pub f_spare: [__kernel_long_t; 4usize],
7764}
7765#[repr(C)]
7766#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7767pub struct statfs64 {
7768    pub f_type: __kernel_long_t,
7769    pub f_bsize: __kernel_long_t,
7770    pub f_blocks: __u64,
7771    pub f_bfree: __u64,
7772    pub f_bavail: __u64,
7773    pub f_files: __u64,
7774    pub f_ffree: __u64,
7775    pub f_fsid: __kernel_fsid_t,
7776    pub f_namelen: __kernel_long_t,
7777    pub f_frsize: __kernel_long_t,
7778    pub f_flags: __kernel_long_t,
7779    pub f_spare: [__kernel_long_t; 4usize],
7780}
7781#[repr(C, packed(4))]
7782#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7783pub struct compat_statfs64 {
7784    pub f_type: __u32,
7785    pub f_bsize: __u32,
7786    pub f_blocks: __u64,
7787    pub f_bfree: __u64,
7788    pub f_bavail: __u64,
7789    pub f_files: __u64,
7790    pub f_ffree: __u64,
7791    pub f_fsid: __kernel_fsid_t,
7792    pub f_namelen: __u32,
7793    pub f_frsize: __u32,
7794    pub f_flags: __u32,
7795    pub f_spare: [__u32; 4usize],
7796}
7797#[repr(C)]
7798#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7799pub struct fscrypt_policy_v1 {
7800    pub version: __u8,
7801    pub contents_encryption_mode: __u8,
7802    pub filenames_encryption_mode: __u8,
7803    pub flags: __u8,
7804    pub master_key_descriptor: [__u8; 8usize],
7805}
7806#[repr(C)]
7807#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7808pub struct fscrypt_key {
7809    pub mode: __u32,
7810    pub raw: [__u8; 64usize],
7811    pub size: __u32,
7812}
7813impl Default for fscrypt_key {
7814    fn default() -> Self {
7815        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7816        unsafe {
7817            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7818            s.assume_init()
7819        }
7820    }
7821}
7822#[repr(C)]
7823#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7824pub struct fscrypt_policy_v2 {
7825    pub version: __u8,
7826    pub contents_encryption_mode: __u8,
7827    pub filenames_encryption_mode: __u8,
7828    pub flags: __u8,
7829    pub log2_data_unit_size: __u8,
7830    pub __reserved: [__u8; 3usize],
7831    pub master_key_identifier: [__u8; 16usize],
7832}
7833#[repr(C)]
7834#[derive(Copy, Clone)]
7835pub struct fscrypt_get_policy_ex_arg {
7836    pub policy_size: __u64,
7837    pub policy: fscrypt_get_policy_ex_arg__bindgen_ty_1,
7838}
7839#[repr(C)]
7840#[derive(Copy, Clone)]
7841pub union fscrypt_get_policy_ex_arg__bindgen_ty_1 {
7842    pub version: __u8,
7843    pub v1: fscrypt_policy_v1,
7844    pub v2: fscrypt_policy_v2,
7845}
7846impl Default for fscrypt_get_policy_ex_arg__bindgen_ty_1 {
7847    fn default() -> Self {
7848        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7849        unsafe {
7850            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7851            s.assume_init()
7852        }
7853    }
7854}
7855impl Default for fscrypt_get_policy_ex_arg {
7856    fn default() -> Self {
7857        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7858        unsafe {
7859            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7860            s.assume_init()
7861        }
7862    }
7863}
7864#[repr(C)]
7865#[derive(Debug, Default)]
7866pub struct fscrypt_provisioning_key_payload {
7867    pub type_: __u32,
7868    pub __reserved: __u32,
7869    pub raw: __IncompleteArrayField<__u8>,
7870}
7871#[repr(C)]
7872#[derive(FromBytes, Immutable, KnownLayout)]
7873pub struct fscrypt_remove_key_arg {
7874    pub key_spec: fscrypt_key_specifier,
7875    pub removal_status_flags: __u32,
7876    pub __reserved: [__u32; 5usize],
7877}
7878impl Default for fscrypt_remove_key_arg {
7879    fn default() -> Self {
7880        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7881        unsafe {
7882            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7883            s.assume_init()
7884        }
7885    }
7886}
7887#[repr(C)]
7888pub struct fscrypt_get_key_status_arg {
7889    pub key_spec: fscrypt_key_specifier,
7890    pub __reserved: [__u32; 6usize],
7891    pub status: __u32,
7892    pub status_flags: __u32,
7893    pub user_count: __u32,
7894    pub __out_reserved: [__u32; 13usize],
7895}
7896impl Default for fscrypt_get_key_status_arg {
7897    fn default() -> Self {
7898        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7899        unsafe {
7900            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7901            s.assume_init()
7902        }
7903    }
7904}
7905pub const fsconfig_command_FSCONFIG_SET_FLAG: fsconfig_command = 0;
7906pub const fsconfig_command_FSCONFIG_SET_STRING: fsconfig_command = 1;
7907pub const fsconfig_command_FSCONFIG_SET_BINARY: fsconfig_command = 2;
7908pub const fsconfig_command_FSCONFIG_SET_PATH: fsconfig_command = 3;
7909pub const fsconfig_command_FSCONFIG_SET_PATH_EMPTY: fsconfig_command = 4;
7910pub const fsconfig_command_FSCONFIG_SET_FD: fsconfig_command = 5;
7911pub const fsconfig_command_FSCONFIG_CMD_CREATE: fsconfig_command = 6;
7912pub const fsconfig_command_FSCONFIG_CMD_RECONFIGURE: fsconfig_command = 7;
7913pub const fsconfig_command_FSCONFIG_CMD_CREATE_EXCL: fsconfig_command = 8;
7914pub type fsconfig_command = crate::types::c_uint;
7915#[repr(C)]
7916#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7917pub struct mount_attr {
7918    pub attr_set: __u64,
7919    pub attr_clr: __u64,
7920    pub propagation: __u64,
7921    pub userns_fd: __u64,
7922}
7923#[repr(C)]
7924#[derive(Debug)]
7925pub struct statmount {
7926    pub size: __u32,
7927    pub mnt_opts: __u32,
7928    pub mask: __u64,
7929    pub sb_dev_major: __u32,
7930    pub sb_dev_minor: __u32,
7931    pub sb_magic: __u64,
7932    pub sb_flags: __u32,
7933    pub fs_type: __u32,
7934    pub mnt_id: __u64,
7935    pub mnt_parent_id: __u64,
7936    pub mnt_id_old: __u32,
7937    pub mnt_parent_id_old: __u32,
7938    pub mnt_attr: __u64,
7939    pub mnt_propagation: __u64,
7940    pub mnt_peer_group: __u64,
7941    pub mnt_master: __u64,
7942    pub propagate_from: __u64,
7943    pub mnt_root: __u32,
7944    pub mnt_point: __u32,
7945    pub mnt_ns_id: __u64,
7946    pub __spare2: [__u64; 49usize],
7947    pub str_: __IncompleteArrayField<crate::types::c_char>,
7948}
7949impl Default for statmount {
7950    fn default() -> Self {
7951        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7952        unsafe {
7953            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7954            s.assume_init()
7955        }
7956    }
7957}
7958#[repr(C)]
7959#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7960pub struct mnt_id_req {
7961    pub size: __u32,
7962    pub spare: __u32,
7963    pub mnt_id: __u64,
7964    pub param: __u64,
7965    pub mnt_ns_id: __u64,
7966}
7967#[repr(C)]
7968#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7969pub struct file_clone_range {
7970    pub src_fd: __s64,
7971    pub src_offset: __u64,
7972    pub src_length: __u64,
7973    pub dest_offset: __u64,
7974}
7975#[repr(C)]
7976#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7977pub struct fstrim_range {
7978    pub start: __u64,
7979    pub len: __u64,
7980    pub minlen: __u64,
7981}
7982#[repr(C)]
7983#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7984pub struct fsuuid2 {
7985    pub len: __u8,
7986    pub uuid: [__u8; 16usize],
7987}
7988#[repr(C)]
7989#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7990pub struct fs_sysfs_path {
7991    pub len: __u8,
7992    pub name: [__u8; 128usize],
7993}
7994impl Default for fs_sysfs_path {
7995    fn default() -> Self {
7996        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7997        unsafe {
7998            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7999            s.assume_init()
8000        }
8001    }
8002}
8003#[repr(C)]
8004#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8005pub struct file_dedupe_range_info {
8006    pub dest_fd: __s64,
8007    pub dest_offset: __u64,
8008    pub bytes_deduped: __u64,
8009    pub status: __s32,
8010    pub reserved: __u32,
8011}
8012#[repr(C)]
8013#[derive(Debug, Default)]
8014pub struct file_dedupe_range {
8015    pub src_offset: __u64,
8016    pub src_length: __u64,
8017    pub dest_count: __u16,
8018    pub reserved1: __u16,
8019    pub reserved2: __u32,
8020    pub info: __IncompleteArrayField<file_dedupe_range_info>,
8021}
8022#[repr(C)]
8023#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8024pub struct files_stat_struct {
8025    pub nr_files: crate::types::c_ulong,
8026    pub nr_free_files: crate::types::c_ulong,
8027    pub max_files: crate::types::c_ulong,
8028}
8029#[repr(C)]
8030#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8031pub struct inodes_stat_t {
8032    pub nr_inodes: crate::types::c_long,
8033    pub nr_unused: crate::types::c_long,
8034    pub dummy: [crate::types::c_long; 5usize],
8035}
8036#[repr(C)]
8037#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8038pub struct fsxattr {
8039    pub fsx_xflags: __u32,
8040    pub fsx_extsize: __u32,
8041    pub fsx_nextents: __u32,
8042    pub fsx_projid: __u32,
8043    pub fsx_cowextsize: __u32,
8044    pub fsx_pad: [crate::types::c_uchar; 8usize],
8045}
8046pub type __kernel_rwf_t = crate::types::c_int;
8047#[repr(C)]
8048#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8049pub struct page_region {
8050    pub start: __u64,
8051    pub end: __u64,
8052    pub categories: __u64,
8053}
8054#[repr(C)]
8055#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8056pub struct pm_scan_arg {
8057    pub size: __u64,
8058    pub flags: __u64,
8059    pub start: __u64,
8060    pub end: __u64,
8061    pub walk_end: __u64,
8062    pub vec: __u64,
8063    pub vec_len: __u64,
8064    pub max_pages: __u64,
8065    pub category_inverted: __u64,
8066    pub category_mask: __u64,
8067    pub category_anyof_mask: __u64,
8068    pub return_mask: __u64,
8069}
8070pub const procmap_query_flags_PROCMAP_QUERY_VMA_READABLE: procmap_query_flags = 1;
8071pub const procmap_query_flags_PROCMAP_QUERY_VMA_WRITABLE: procmap_query_flags = 2;
8072pub const procmap_query_flags_PROCMAP_QUERY_VMA_EXECUTABLE: procmap_query_flags = 4;
8073pub const procmap_query_flags_PROCMAP_QUERY_VMA_SHARED: procmap_query_flags = 8;
8074pub const procmap_query_flags_PROCMAP_QUERY_COVERING_OR_NEXT_VMA: procmap_query_flags = 16;
8075pub const procmap_query_flags_PROCMAP_QUERY_FILE_BACKED_VMA: procmap_query_flags = 32;
8076pub type procmap_query_flags = crate::types::c_uint;
8077#[repr(C)]
8078#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8079pub struct procmap_query {
8080    pub size: __u64,
8081    pub query_flags: __u64,
8082    pub query_addr: __u64,
8083    pub vma_start: __u64,
8084    pub vma_end: __u64,
8085    pub vma_flags: __u64,
8086    pub vma_page_size: __u64,
8087    pub vma_offset: __u64,
8088    pub inode: __u64,
8089    pub dev_major: __u32,
8090    pub dev_minor: __u32,
8091    pub vma_name_size: __u32,
8092    pub build_id_size: __u32,
8093    pub vma_name_addr: __u64,
8094    pub build_id_addr: __u64,
8095}
8096pub type aio_context_t = __kernel_ulong_t;
8097pub const IOCB_CMD_PREAD: _bindgen_ty_1 = 0;
8098pub const IOCB_CMD_PWRITE: _bindgen_ty_1 = 1;
8099pub const IOCB_CMD_FSYNC: _bindgen_ty_1 = 2;
8100pub const IOCB_CMD_FDSYNC: _bindgen_ty_1 = 3;
8101pub const IOCB_CMD_POLL: _bindgen_ty_1 = 5;
8102pub const IOCB_CMD_NOOP: _bindgen_ty_1 = 6;
8103pub const IOCB_CMD_PREADV: _bindgen_ty_1 = 7;
8104pub const IOCB_CMD_PWRITEV: _bindgen_ty_1 = 8;
8105pub type _bindgen_ty_1 = crate::types::c_uint;
8106#[repr(C)]
8107#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8108pub struct io_event {
8109    pub data: __u64,
8110    pub obj: __u64,
8111    pub res: __s64,
8112    pub res2: __s64,
8113}
8114#[repr(C)]
8115#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8116pub struct iocb {
8117    pub aio_data: __u64,
8118    pub aio_key: __u32,
8119    pub aio_rw_flags: __kernel_rwf_t,
8120    pub aio_lio_opcode: __u16,
8121    pub aio_reqprio: __s16,
8122    pub aio_fildes: __u32,
8123    pub aio_buf: __u64,
8124    pub aio_nbytes: __u64,
8125    pub aio_offset: __s64,
8126    pub aio_reserved2: __u64,
8127    pub aio_flags: __u32,
8128    pub aio_resfd: __u32,
8129}
8130pub const BINDER_TYPE_BINDER: _bindgen_ty_2 = 1935813253;
8131pub const BINDER_TYPE_WEAK_BINDER: _bindgen_ty_2 = 2002922117;
8132pub const BINDER_TYPE_HANDLE: _bindgen_ty_2 = 1936206469;
8133pub const BINDER_TYPE_WEAK_HANDLE: _bindgen_ty_2 = 2003315333;
8134pub const BINDER_TYPE_FD: _bindgen_ty_2 = 1717840517;
8135pub const BINDER_TYPE_FDA: _bindgen_ty_2 = 1717854597;
8136pub const BINDER_TYPE_PTR: _bindgen_ty_2 = 1886661253;
8137pub type _bindgen_ty_2 = crate::types::c_uint;
8138pub const flat_binder_object_shifts_FLAT_BINDER_FLAG_SCHED_POLICY_SHIFT: flat_binder_object_shifts =
8139    9;
8140pub type flat_binder_object_shifts = crate::types::c_uint;
8141pub const flat_binder_object_flags_FLAT_BINDER_FLAG_PRIORITY_MASK: flat_binder_object_flags = 255;
8142pub const flat_binder_object_flags_FLAT_BINDER_FLAG_ACCEPTS_FDS: flat_binder_object_flags = 256;
8143pub const flat_binder_object_flags_FLAT_BINDER_FLAG_SCHED_POLICY_MASK: flat_binder_object_flags =
8144    1536;
8145pub const flat_binder_object_flags_FLAT_BINDER_FLAG_INHERIT_RT: flat_binder_object_flags = 2048;
8146pub const flat_binder_object_flags_FLAT_BINDER_FLAG_TXN_SECURITY_CTX: flat_binder_object_flags =
8147    4096;
8148pub type flat_binder_object_flags = crate::types::c_uint;
8149pub type binder_size_t = __u64;
8150pub type binder_uintptr_t = __u64;
8151#[repr(C)]
8152#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8153pub struct binder_object_header {
8154    pub type_: __u32,
8155}
8156#[repr(C)]
8157#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8158pub struct flat_binder_object {
8159    pub hdr: binder_object_header,
8160    pub flags: __u32,
8161    pub __bindgen_anon_1: flat_binder_object__bindgen_ty_1,
8162    pub cookie: binder_uintptr_t,
8163}
8164#[repr(C)]
8165#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8166pub union flat_binder_object__bindgen_ty_1 {
8167    pub binder: binder_uintptr_t,
8168    pub handle: __u32,
8169}
8170impl Default for flat_binder_object__bindgen_ty_1 {
8171    fn default() -> Self {
8172        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8173        unsafe {
8174            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8175            s.assume_init()
8176        }
8177    }
8178}
8179impl Default for flat_binder_object {
8180    fn default() -> Self {
8181        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8182        unsafe {
8183            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8184            s.assume_init()
8185        }
8186    }
8187}
8188#[repr(C)]
8189#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8190pub struct binder_fd_object {
8191    pub hdr: binder_object_header,
8192    pub pad_flags: __u32,
8193    pub __bindgen_anon_1: binder_fd_object__bindgen_ty_1,
8194    pub cookie: binder_uintptr_t,
8195}
8196#[repr(C)]
8197#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8198pub union binder_fd_object__bindgen_ty_1 {
8199    pub pad_binder: binder_uintptr_t,
8200    pub fd: __u32,
8201}
8202impl Default for binder_fd_object__bindgen_ty_1 {
8203    fn default() -> Self {
8204        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8205        unsafe {
8206            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8207            s.assume_init()
8208        }
8209    }
8210}
8211impl Default for binder_fd_object {
8212    fn default() -> Self {
8213        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8214        unsafe {
8215            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8216            s.assume_init()
8217        }
8218    }
8219}
8220#[repr(C)]
8221#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8222pub struct binder_buffer_object {
8223    pub hdr: binder_object_header,
8224    pub flags: __u32,
8225    pub buffer: binder_uintptr_t,
8226    pub length: binder_size_t,
8227    pub parent: binder_size_t,
8228    pub parent_offset: binder_size_t,
8229}
8230pub const BINDER_BUFFER_FLAG_HAS_PARENT: _bindgen_ty_3 = 1;
8231pub type _bindgen_ty_3 = crate::types::c_uint;
8232#[repr(C)]
8233#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8234pub struct binder_fd_array_object {
8235    pub hdr: binder_object_header,
8236    pub pad: __u32,
8237    pub num_fds: binder_size_t,
8238    pub parent: binder_size_t,
8239    pub parent_offset: binder_size_t,
8240}
8241#[repr(C)]
8242#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8243pub struct binder_write_read {
8244    pub write_size: binder_size_t,
8245    pub write_consumed: binder_size_t,
8246    pub write_buffer: binder_uintptr_t,
8247    pub read_size: binder_size_t,
8248    pub read_consumed: binder_size_t,
8249    pub read_buffer: binder_uintptr_t,
8250}
8251#[repr(C)]
8252#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8253pub struct binder_version {
8254    pub protocol_version: __s32,
8255}
8256#[repr(C)]
8257#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8258pub struct binder_node_debug_info {
8259    pub ptr: binder_uintptr_t,
8260    pub cookie: binder_uintptr_t,
8261    pub has_strong_ref: __u32,
8262    pub has_weak_ref: __u32,
8263}
8264#[repr(C)]
8265#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8266pub struct binder_node_info_for_ref {
8267    pub handle: __u32,
8268    pub strong_count: __u32,
8269    pub weak_count: __u32,
8270    pub reserved1: __u32,
8271    pub reserved2: __u32,
8272    pub reserved3: __u32,
8273}
8274#[repr(C)]
8275#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8276pub struct binder_freeze_info {
8277    pub pid: __u32,
8278    pub enable: __u32,
8279    pub timeout_ms: __u32,
8280}
8281#[repr(C)]
8282#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8283pub struct binder_frozen_status_info {
8284    pub pid: __u32,
8285    pub sync_recv: __u32,
8286    pub async_recv: __u32,
8287}
8288#[repr(C)]
8289#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8290pub struct binder_frozen_state_info {
8291    pub cookie: binder_uintptr_t,
8292    pub is_frozen: __u32,
8293    pub reserved: __u32,
8294}
8295#[repr(C)]
8296#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8297pub struct binder_extended_error {
8298    pub id: __u32,
8299    pub command: __u32,
8300    pub param: __s32,
8301}
8302pub const BINDER_WRITE_READ: _bindgen_ty_4 = 3224396289;
8303pub const BINDER_SET_IDLE_TIMEOUT: _bindgen_ty_4 = 1074291203;
8304pub const BINDER_SET_MAX_THREADS: _bindgen_ty_4 = 1074029061;
8305pub const BINDER_SET_IDLE_PRIORITY: _bindgen_ty_4 = 1074029062;
8306pub const BINDER_SET_CONTEXT_MGR: _bindgen_ty_4 = 1074029063;
8307pub const BINDER_THREAD_EXIT: _bindgen_ty_4 = 1074029064;
8308pub const BINDER_VERSION: _bindgen_ty_4 = 3221512713;
8309pub const BINDER_GET_NODE_DEBUG_INFO: _bindgen_ty_4 = 3222823435;
8310pub const BINDER_GET_NODE_INFO_FOR_REF: _bindgen_ty_4 = 3222823436;
8311pub const BINDER_SET_CONTEXT_MGR_EXT: _bindgen_ty_4 = 1075339789;
8312pub const BINDER_FREEZE: _bindgen_ty_4 = 1074553358;
8313pub const BINDER_GET_FROZEN_INFO: _bindgen_ty_4 = 3222037007;
8314pub const BINDER_ENABLE_ONEWAY_SPAM_DETECTION: _bindgen_ty_4 = 1074029072;
8315pub const BINDER_GET_EXTENDED_ERROR: _bindgen_ty_4 = 3222037009;
8316pub type _bindgen_ty_4 = crate::types::c_uint;
8317pub const transaction_flags_TF_ONE_WAY: transaction_flags = 1;
8318pub const transaction_flags_TF_ROOT_OBJECT: transaction_flags = 4;
8319pub const transaction_flags_TF_STATUS_CODE: transaction_flags = 8;
8320pub const transaction_flags_TF_ACCEPT_FDS: transaction_flags = 16;
8321pub const transaction_flags_TF_CLEAR_BUF: transaction_flags = 32;
8322pub const transaction_flags_TF_UPDATE_TXN: transaction_flags = 64;
8323pub type transaction_flags = crate::types::c_uint;
8324#[repr(C)]
8325#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8326pub struct binder_transaction_data {
8327    pub target: binder_transaction_data__bindgen_ty_1,
8328    pub cookie: binder_uintptr_t,
8329    pub code: __u32,
8330    pub flags: __u32,
8331    pub sender_pid: __kernel_pid_t,
8332    pub sender_euid: __kernel_uid32_t,
8333    pub data_size: binder_size_t,
8334    pub offsets_size: binder_size_t,
8335    pub data: binder_transaction_data__bindgen_ty_2,
8336}
8337#[repr(C)]
8338#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8339pub union binder_transaction_data__bindgen_ty_1 {
8340    pub handle: __u32,
8341    pub ptr: binder_uintptr_t,
8342}
8343impl Default for binder_transaction_data__bindgen_ty_1 {
8344    fn default() -> Self {
8345        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8346        unsafe {
8347            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8348            s.assume_init()
8349        }
8350    }
8351}
8352#[repr(C)]
8353#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8354pub union binder_transaction_data__bindgen_ty_2 {
8355    pub ptr: binder_transaction_data__bindgen_ty_2__bindgen_ty_1,
8356    pub buf: [__u8; 8usize],
8357}
8358#[repr(C)]
8359#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8360pub struct binder_transaction_data__bindgen_ty_2__bindgen_ty_1 {
8361    pub buffer: binder_uintptr_t,
8362    pub offsets: binder_uintptr_t,
8363}
8364impl Default for binder_transaction_data__bindgen_ty_2 {
8365    fn default() -> Self {
8366        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8367        unsafe {
8368            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8369            s.assume_init()
8370        }
8371    }
8372}
8373impl Default for binder_transaction_data {
8374    fn default() -> Self {
8375        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8376        unsafe {
8377            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8378            s.assume_init()
8379        }
8380    }
8381}
8382#[repr(C)]
8383#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8384pub struct binder_transaction_data_secctx {
8385    pub transaction_data: binder_transaction_data,
8386    pub secctx: binder_uintptr_t,
8387}
8388impl Default for binder_transaction_data_secctx {
8389    fn default() -> Self {
8390        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8391        unsafe {
8392            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8393            s.assume_init()
8394        }
8395    }
8396}
8397#[repr(C)]
8398#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8399pub struct binder_transaction_data_sg {
8400    pub transaction_data: binder_transaction_data,
8401    pub buffers_size: binder_size_t,
8402}
8403impl Default for binder_transaction_data_sg {
8404    fn default() -> Self {
8405        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8406        unsafe {
8407            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8408            s.assume_init()
8409        }
8410    }
8411}
8412#[repr(C)]
8413#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8414pub struct binder_ptr_cookie {
8415    pub ptr: binder_uintptr_t,
8416    pub cookie: binder_uintptr_t,
8417}
8418#[repr(C, packed)]
8419#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8420pub struct binder_handle_cookie {
8421    pub handle: __u32,
8422    pub cookie: binder_uintptr_t,
8423}
8424#[repr(C)]
8425#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8426pub struct binder_pri_desc {
8427    pub priority: __s32,
8428    pub desc: __u32,
8429}
8430#[repr(C)]
8431#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8432pub struct binder_pri_ptr_cookie {
8433    pub priority: __s32,
8434    pub __bindgen_padding_0: [u8; 4usize],
8435    pub ptr: binder_uintptr_t,
8436    pub cookie: binder_uintptr_t,
8437}
8438pub const binder_driver_return_protocol_BR_ERROR: binder_driver_return_protocol = 2147774976;
8439pub const binder_driver_return_protocol_BR_OK: binder_driver_return_protocol = 29185;
8440pub const binder_driver_return_protocol_BR_TRANSACTION_SEC_CTX: binder_driver_return_protocol =
8441    2152231426;
8442pub const binder_driver_return_protocol_BR_TRANSACTION: binder_driver_return_protocol = 2151707138;
8443pub const binder_driver_return_protocol_BR_REPLY: binder_driver_return_protocol = 2151707139;
8444pub const binder_driver_return_protocol_BR_ACQUIRE_RESULT: binder_driver_return_protocol =
8445    2147774980;
8446pub const binder_driver_return_protocol_BR_DEAD_REPLY: binder_driver_return_protocol = 29189;
8447pub const binder_driver_return_protocol_BR_TRANSACTION_COMPLETE: binder_driver_return_protocol =
8448    29190;
8449pub const binder_driver_return_protocol_BR_INCREFS: binder_driver_return_protocol = 2148561415;
8450pub const binder_driver_return_protocol_BR_ACQUIRE: binder_driver_return_protocol = 2148561416;
8451pub const binder_driver_return_protocol_BR_RELEASE: binder_driver_return_protocol = 2148561417;
8452pub const binder_driver_return_protocol_BR_DECREFS: binder_driver_return_protocol = 2148561418;
8453pub const binder_driver_return_protocol_BR_ATTEMPT_ACQUIRE: binder_driver_return_protocol =
8454    2149085707;
8455pub const binder_driver_return_protocol_BR_NOOP: binder_driver_return_protocol = 29196;
8456pub const binder_driver_return_protocol_BR_SPAWN_LOOPER: binder_driver_return_protocol = 29197;
8457pub const binder_driver_return_protocol_BR_FINISHED: binder_driver_return_protocol = 29198;
8458pub const binder_driver_return_protocol_BR_DEAD_BINDER: binder_driver_return_protocol = 2148037135;
8459pub const binder_driver_return_protocol_BR_CLEAR_DEATH_NOTIFICATION_DONE:
8460    binder_driver_return_protocol = 2148037136;
8461pub const binder_driver_return_protocol_BR_FAILED_REPLY: binder_driver_return_protocol = 29201;
8462pub const binder_driver_return_protocol_BR_FROZEN_REPLY: binder_driver_return_protocol = 29202;
8463pub const binder_driver_return_protocol_BR_ONEWAY_SPAM_SUSPECT: binder_driver_return_protocol =
8464    29203;
8465pub const binder_driver_return_protocol_BR_TRANSACTION_PENDING_FROZEN:
8466    binder_driver_return_protocol = 29204;
8467pub const binder_driver_return_protocol_BR_FROZEN_BINDER: binder_driver_return_protocol =
8468    2148561429;
8469pub const binder_driver_return_protocol_BR_CLEAR_FREEZE_NOTIFICATION_DONE:
8470    binder_driver_return_protocol = 2148037142;
8471pub type binder_driver_return_protocol = crate::types::c_uint;
8472pub const binder_driver_command_protocol_BC_TRANSACTION: binder_driver_command_protocol =
8473    1077961472;
8474pub const binder_driver_command_protocol_BC_REPLY: binder_driver_command_protocol = 1077961473;
8475pub const binder_driver_command_protocol_BC_ACQUIRE_RESULT: binder_driver_command_protocol =
8476    1074029314;
8477pub const binder_driver_command_protocol_BC_FREE_BUFFER: binder_driver_command_protocol =
8478    1074291459;
8479pub const binder_driver_command_protocol_BC_INCREFS: binder_driver_command_protocol = 1074029316;
8480pub const binder_driver_command_protocol_BC_ACQUIRE: binder_driver_command_protocol = 1074029317;
8481pub const binder_driver_command_protocol_BC_RELEASE: binder_driver_command_protocol = 1074029318;
8482pub const binder_driver_command_protocol_BC_DECREFS: binder_driver_command_protocol = 1074029319;
8483pub const binder_driver_command_protocol_BC_INCREFS_DONE: binder_driver_command_protocol =
8484    1074815752;
8485pub const binder_driver_command_protocol_BC_ACQUIRE_DONE: binder_driver_command_protocol =
8486    1074815753;
8487pub const binder_driver_command_protocol_BC_ATTEMPT_ACQUIRE: binder_driver_command_protocol =
8488    1074291466;
8489pub const binder_driver_command_protocol_BC_REGISTER_LOOPER: binder_driver_command_protocol = 25355;
8490pub const binder_driver_command_protocol_BC_ENTER_LOOPER: binder_driver_command_protocol = 25356;
8491pub const binder_driver_command_protocol_BC_EXIT_LOOPER: binder_driver_command_protocol = 25357;
8492pub const binder_driver_command_protocol_BC_REQUEST_DEATH_NOTIFICATION:
8493    binder_driver_command_protocol = 1074553614;
8494pub const binder_driver_command_protocol_BC_CLEAR_DEATH_NOTIFICATION:
8495    binder_driver_command_protocol = 1074553615;
8496pub const binder_driver_command_protocol_BC_DEAD_BINDER_DONE: binder_driver_command_protocol =
8497    1074291472;
8498pub const binder_driver_command_protocol_BC_TRANSACTION_SG: binder_driver_command_protocol =
8499    1078485777;
8500pub const binder_driver_command_protocol_BC_REPLY_SG: binder_driver_command_protocol = 1078485778;
8501pub const binder_driver_command_protocol_BC_REQUEST_FREEZE_NOTIFICATION:
8502    binder_driver_command_protocol = 1074553619;
8503pub const binder_driver_command_protocol_BC_CLEAR_FREEZE_NOTIFICATION:
8504    binder_driver_command_protocol = 1074553620;
8505pub const binder_driver_command_protocol_BC_FREEZE_NOTIFICATION_DONE:
8506    binder_driver_command_protocol = 1074291477;
8507pub type binder_driver_command_protocol = crate::types::c_uint;
8508#[repr(C)]
8509#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8510pub struct binderfs_device {
8511    pub name: [crate::types::c_char; 256usize],
8512    pub major: __u32,
8513    pub minor: __u32,
8514}
8515impl Default for binderfs_device {
8516    fn default() -> Self {
8517        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8518        unsafe {
8519            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8520            s.assume_init()
8521        }
8522    }
8523}
8524#[repr(C)]
8525#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8526pub struct ashmem_pin {
8527    pub offset: __u32,
8528    pub len: __u32,
8529}
8530pub const Audit_equal: _bindgen_ty_5 = 0;
8531pub const Audit_not_equal: _bindgen_ty_5 = 1;
8532pub const Audit_bitmask: _bindgen_ty_5 = 2;
8533pub const Audit_bittest: _bindgen_ty_5 = 3;
8534pub const Audit_lt: _bindgen_ty_5 = 4;
8535pub const Audit_gt: _bindgen_ty_5 = 5;
8536pub const Audit_le: _bindgen_ty_5 = 6;
8537pub const Audit_ge: _bindgen_ty_5 = 7;
8538pub const Audit_bad: _bindgen_ty_5 = 8;
8539pub type _bindgen_ty_5 = crate::types::c_uint;
8540pub const audit_nlgrps_AUDIT_NLGRP_NONE: audit_nlgrps = 0;
8541pub const audit_nlgrps_AUDIT_NLGRP_READLOG: audit_nlgrps = 1;
8542pub const audit_nlgrps___AUDIT_NLGRP_MAX: audit_nlgrps = 2;
8543pub type audit_nlgrps = crate::types::c_uint;
8544#[repr(C)]
8545#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
8546pub struct audit_status {
8547    pub mask: __u32,
8548    pub enabled: __u32,
8549    pub failure: __u32,
8550    pub pid: __u32,
8551    pub rate_limit: __u32,
8552    pub backlog_limit: __u32,
8553    pub lost: __u32,
8554    pub backlog: __u32,
8555    pub __bindgen_anon_1: audit_status__bindgen_ty_1,
8556    pub backlog_wait_time: __u32,
8557    pub backlog_wait_time_actual: __u32,
8558}
8559#[repr(C)]
8560#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
8561pub union audit_status__bindgen_ty_1 {
8562    pub version: __u32,
8563    pub feature_bitmap: __u32,
8564}
8565impl Default for audit_status__bindgen_ty_1 {
8566    fn default() -> Self {
8567        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8568        unsafe {
8569            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8570            s.assume_init()
8571        }
8572    }
8573}
8574impl Default for audit_status {
8575    fn default() -> Self {
8576        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8577        unsafe {
8578            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8579            s.assume_init()
8580        }
8581    }
8582}
8583#[repr(C)]
8584#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8585pub struct audit_features {
8586    pub vers: __u32,
8587    pub mask: __u32,
8588    pub features: __u32,
8589    pub lock: __u32,
8590}
8591#[repr(C)]
8592#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8593pub struct audit_tty_status {
8594    pub enabled: __u32,
8595    pub log_passwd: __u32,
8596}
8597#[repr(C)]
8598#[derive(Debug)]
8599pub struct audit_rule_data {
8600    pub flags: __u32,
8601    pub action: __u32,
8602    pub field_count: __u32,
8603    pub mask: [__u32; 64usize],
8604    pub fields: [__u32; 64usize],
8605    pub values: [__u32; 64usize],
8606    pub fieldflags: [__u32; 64usize],
8607    pub buflen: __u32,
8608    pub buf: __IncompleteArrayField<crate::types::c_char>,
8609}
8610impl Default for audit_rule_data {
8611    fn default() -> Self {
8612        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8613        unsafe {
8614            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8615            s.assume_init()
8616        }
8617    }
8618}
8619#[repr(C)]
8620#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8621pub struct __user_cap_header_struct {
8622    pub version: __u32,
8623    pub pid: crate::types::c_int,
8624}
8625pub type cap_user_header_t = uref<__user_cap_header_struct>;
8626#[repr(C)]
8627#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8628pub struct __user_cap_data_struct {
8629    pub effective: __u32,
8630    pub permitted: __u32,
8631    pub inheritable: __u32,
8632}
8633pub type cap_user_data_t = uref<__user_cap_data_struct>;
8634#[repr(C)]
8635#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8636pub struct vfs_cap_data {
8637    pub magic_etc: __le32,
8638    pub data: [vfs_cap_data__bindgen_ty_1; 2usize],
8639}
8640#[repr(C)]
8641#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8642pub struct vfs_cap_data__bindgen_ty_1 {
8643    pub permitted: __le32,
8644    pub inheritable: __le32,
8645}
8646#[repr(C)]
8647#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8648pub struct vfs_ns_cap_data {
8649    pub magic_etc: __le32,
8650    pub data: [vfs_ns_cap_data__bindgen_ty_1; 2usize],
8651    pub rootid: __le32,
8652}
8653#[repr(C)]
8654#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8655pub struct vfs_ns_cap_data__bindgen_ty_1 {
8656    pub permitted: __le32,
8657    pub inheritable: __le32,
8658}
8659#[repr(C)]
8660#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8661pub struct dm_ioctl {
8662    pub version: [__u32; 3usize],
8663    pub data_size: __u32,
8664    pub data_start: __u32,
8665    pub target_count: __u32,
8666    pub open_count: __s32,
8667    pub flags: __u32,
8668    pub event_nr: __u32,
8669    pub padding: __u32,
8670    pub dev: __u64,
8671    pub name: [crate::types::c_char; 128usize],
8672    pub uuid: [crate::types::c_char; 129usize],
8673    pub data: [crate::types::c_char; 7usize],
8674}
8675impl Default for dm_ioctl {
8676    fn default() -> Self {
8677        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8678        unsafe {
8679            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8680            s.assume_init()
8681        }
8682    }
8683}
8684#[repr(C)]
8685#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8686pub struct dm_target_spec {
8687    pub sector_start: __u64,
8688    pub length: __u64,
8689    pub status: __s32,
8690    pub next: __u32,
8691    pub target_type: [crate::types::c_char; 16usize],
8692}
8693#[repr(C)]
8694#[derive(Debug, Default)]
8695pub struct dm_target_deps {
8696    pub count: __u32,
8697    pub padding: __u32,
8698    pub dev: __IncompleteArrayField<__u64>,
8699}
8700#[repr(C)]
8701#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8702pub struct dm_name_list {
8703    pub dev: __u64,
8704    pub next: __u32,
8705    pub name: __IncompleteArrayField<crate::types::c_char>,
8706    pub __bindgen_padding_0: [u8; 4usize],
8707}
8708#[repr(C)]
8709#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8710pub struct dm_target_versions {
8711    pub next: __u32,
8712    pub version: [__u32; 3usize],
8713    pub name: __IncompleteArrayField<crate::types::c_char>,
8714}
8715#[repr(C)]
8716#[derive(Debug, Default)]
8717pub struct dm_target_msg {
8718    pub sector: __u64,
8719    pub message: __IncompleteArrayField<crate::types::c_char>,
8720}
8721pub const DM_VERSION_CMD: _bindgen_ty_6 = 0;
8722pub const DM_REMOVE_ALL_CMD: _bindgen_ty_6 = 1;
8723pub const DM_LIST_DEVICES_CMD: _bindgen_ty_6 = 2;
8724pub const DM_DEV_CREATE_CMD: _bindgen_ty_6 = 3;
8725pub const DM_DEV_REMOVE_CMD: _bindgen_ty_6 = 4;
8726pub const DM_DEV_RENAME_CMD: _bindgen_ty_6 = 5;
8727pub const DM_DEV_SUSPEND_CMD: _bindgen_ty_6 = 6;
8728pub const DM_DEV_STATUS_CMD: _bindgen_ty_6 = 7;
8729pub const DM_DEV_WAIT_CMD: _bindgen_ty_6 = 8;
8730pub const DM_TABLE_LOAD_CMD: _bindgen_ty_6 = 9;
8731pub const DM_TABLE_CLEAR_CMD: _bindgen_ty_6 = 10;
8732pub const DM_TABLE_DEPS_CMD: _bindgen_ty_6 = 11;
8733pub const DM_TABLE_STATUS_CMD: _bindgen_ty_6 = 12;
8734pub const DM_LIST_VERSIONS_CMD: _bindgen_ty_6 = 13;
8735pub const DM_TARGET_MSG_CMD: _bindgen_ty_6 = 14;
8736pub const DM_DEV_SET_GEOMETRY_CMD: _bindgen_ty_6 = 15;
8737pub const DM_DEV_ARM_POLL_CMD: _bindgen_ty_6 = 16;
8738pub const DM_GET_TARGET_VERSION_CMD: _bindgen_ty_6 = 17;
8739pub type _bindgen_ty_6 = crate::types::c_uint;
8740#[repr(C)]
8741#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8742pub struct dma_buf_sync {
8743    pub flags: __u64,
8744}
8745#[repr(C)]
8746#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8747pub struct dma_buf_export_sync_file {
8748    pub flags: __u32,
8749    pub fd: __s32,
8750}
8751#[repr(C)]
8752#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8753pub struct dma_buf_import_sync_file {
8754    pub flags: __u32,
8755    pub fd: __s32,
8756}
8757#[repr(C)]
8758#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8759pub struct dma_heap_allocation_data {
8760    pub len: __u64,
8761    pub fd: __u32,
8762    pub fd_flags: __u32,
8763    pub heap_flags: __u64,
8764}
8765pub type Elf32_Addr = __u32;
8766pub type Elf32_Half = __u16;
8767pub type Elf32_Off = __u32;
8768pub type Elf32_Sword = __s32;
8769pub type Elf32_Word = __u32;
8770pub type Elf64_Addr = __u64;
8771pub type Elf64_Half = __u16;
8772pub type Elf64_SHalf = __s16;
8773pub type Elf64_Off = __u64;
8774pub type Elf64_Sword = __s32;
8775pub type Elf64_Word = __u32;
8776pub type Elf64_Xword = __u64;
8777pub type Elf64_Sxword = __s64;
8778#[repr(C)]
8779#[derive(Copy, Clone)]
8780pub struct Elf32_Dyn {
8781    pub d_tag: Elf32_Sword,
8782    pub d_un: Elf32_Dyn__bindgen_ty_1,
8783}
8784#[repr(C)]
8785#[derive(Copy, Clone)]
8786pub union Elf32_Dyn__bindgen_ty_1 {
8787    pub d_val: Elf32_Sword,
8788    pub d_ptr: Elf32_Addr,
8789}
8790impl Default for Elf32_Dyn__bindgen_ty_1 {
8791    fn default() -> Self {
8792        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8793        unsafe {
8794            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8795            s.assume_init()
8796        }
8797    }
8798}
8799impl Default for Elf32_Dyn {
8800    fn default() -> Self {
8801        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8802        unsafe {
8803            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8804            s.assume_init()
8805        }
8806    }
8807}
8808#[repr(C)]
8809#[derive(Copy, Clone)]
8810pub struct Elf64_Dyn {
8811    pub d_tag: Elf64_Sxword,
8812    pub d_un: Elf64_Dyn__bindgen_ty_1,
8813}
8814#[repr(C)]
8815#[derive(Copy, Clone)]
8816pub union Elf64_Dyn__bindgen_ty_1 {
8817    pub d_val: Elf64_Xword,
8818    pub d_ptr: Elf64_Addr,
8819}
8820impl Default for Elf64_Dyn__bindgen_ty_1 {
8821    fn default() -> Self {
8822        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8823        unsafe {
8824            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8825            s.assume_init()
8826        }
8827    }
8828}
8829impl Default for Elf64_Dyn {
8830    fn default() -> Self {
8831        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8832        unsafe {
8833            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8834            s.assume_init()
8835        }
8836    }
8837}
8838#[repr(C)]
8839#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8840pub struct elf32_rel {
8841    pub r_offset: Elf32_Addr,
8842    pub r_info: Elf32_Word,
8843}
8844pub type Elf32_Rel = elf32_rel;
8845#[repr(C)]
8846#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8847pub struct elf64_rel {
8848    pub r_offset: Elf64_Addr,
8849    pub r_info: Elf64_Xword,
8850}
8851pub type Elf64_Rel = elf64_rel;
8852#[repr(C)]
8853#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8854pub struct elf32_rela {
8855    pub r_offset: Elf32_Addr,
8856    pub r_info: Elf32_Word,
8857    pub r_addend: Elf32_Sword,
8858}
8859pub type Elf32_Rela = elf32_rela;
8860#[repr(C)]
8861#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8862pub struct elf64_rela {
8863    pub r_offset: Elf64_Addr,
8864    pub r_info: Elf64_Xword,
8865    pub r_addend: Elf64_Sxword,
8866}
8867pub type Elf64_Rela = elf64_rela;
8868#[repr(C)]
8869#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8870pub struct elf32_sym {
8871    pub st_name: Elf32_Word,
8872    pub st_value: Elf32_Addr,
8873    pub st_size: Elf32_Word,
8874    pub st_info: crate::types::c_uchar,
8875    pub st_other: crate::types::c_uchar,
8876    pub st_shndx: Elf32_Half,
8877}
8878pub type Elf32_Sym = elf32_sym;
8879#[repr(C)]
8880#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8881pub struct elf64_sym {
8882    pub st_name: Elf64_Word,
8883    pub st_info: crate::types::c_uchar,
8884    pub st_other: crate::types::c_uchar,
8885    pub st_shndx: Elf64_Half,
8886    pub st_value: Elf64_Addr,
8887    pub st_size: Elf64_Xword,
8888}
8889pub type Elf64_Sym = elf64_sym;
8890#[repr(C)]
8891#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8892pub struct elf32_hdr {
8893    pub e_ident: [crate::types::c_uchar; 16usize],
8894    pub e_type: Elf32_Half,
8895    pub e_machine: Elf32_Half,
8896    pub e_version: Elf32_Word,
8897    pub e_entry: Elf32_Addr,
8898    pub e_phoff: Elf32_Off,
8899    pub e_shoff: Elf32_Off,
8900    pub e_flags: Elf32_Word,
8901    pub e_ehsize: Elf32_Half,
8902    pub e_phentsize: Elf32_Half,
8903    pub e_phnum: Elf32_Half,
8904    pub e_shentsize: Elf32_Half,
8905    pub e_shnum: Elf32_Half,
8906    pub e_shstrndx: Elf32_Half,
8907}
8908pub type Elf32_Ehdr = elf32_hdr;
8909#[repr(C)]
8910#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8911pub struct elf64_hdr {
8912    pub e_ident: [crate::types::c_uchar; 16usize],
8913    pub e_type: Elf64_Half,
8914    pub e_machine: Elf64_Half,
8915    pub e_version: Elf64_Word,
8916    pub e_entry: Elf64_Addr,
8917    pub e_phoff: Elf64_Off,
8918    pub e_shoff: Elf64_Off,
8919    pub e_flags: Elf64_Word,
8920    pub e_ehsize: Elf64_Half,
8921    pub e_phentsize: Elf64_Half,
8922    pub e_phnum: Elf64_Half,
8923    pub e_shentsize: Elf64_Half,
8924    pub e_shnum: Elf64_Half,
8925    pub e_shstrndx: Elf64_Half,
8926}
8927pub type Elf64_Ehdr = elf64_hdr;
8928#[repr(C)]
8929#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8930pub struct elf32_phdr {
8931    pub p_type: Elf32_Word,
8932    pub p_offset: Elf32_Off,
8933    pub p_vaddr: Elf32_Addr,
8934    pub p_paddr: Elf32_Addr,
8935    pub p_filesz: Elf32_Word,
8936    pub p_memsz: Elf32_Word,
8937    pub p_flags: Elf32_Word,
8938    pub p_align: Elf32_Word,
8939}
8940pub type Elf32_Phdr = elf32_phdr;
8941#[repr(C)]
8942#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8943pub struct elf64_phdr {
8944    pub p_type: Elf64_Word,
8945    pub p_flags: Elf64_Word,
8946    pub p_offset: Elf64_Off,
8947    pub p_vaddr: Elf64_Addr,
8948    pub p_paddr: Elf64_Addr,
8949    pub p_filesz: Elf64_Xword,
8950    pub p_memsz: Elf64_Xword,
8951    pub p_align: Elf64_Xword,
8952}
8953pub type Elf64_Phdr = elf64_phdr;
8954#[repr(C)]
8955#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8956pub struct elf32_shdr {
8957    pub sh_name: Elf32_Word,
8958    pub sh_type: Elf32_Word,
8959    pub sh_flags: Elf32_Word,
8960    pub sh_addr: Elf32_Addr,
8961    pub sh_offset: Elf32_Off,
8962    pub sh_size: Elf32_Word,
8963    pub sh_link: Elf32_Word,
8964    pub sh_info: Elf32_Word,
8965    pub sh_addralign: Elf32_Word,
8966    pub sh_entsize: Elf32_Word,
8967}
8968pub type Elf32_Shdr = elf32_shdr;
8969#[repr(C)]
8970#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8971pub struct elf64_shdr {
8972    pub sh_name: Elf64_Word,
8973    pub sh_type: Elf64_Word,
8974    pub sh_flags: Elf64_Xword,
8975    pub sh_addr: Elf64_Addr,
8976    pub sh_offset: Elf64_Off,
8977    pub sh_size: Elf64_Xword,
8978    pub sh_link: Elf64_Word,
8979    pub sh_info: Elf64_Word,
8980    pub sh_addralign: Elf64_Xword,
8981    pub sh_entsize: Elf64_Xword,
8982}
8983pub type Elf64_Shdr = elf64_shdr;
8984#[repr(C)]
8985#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8986pub struct elf32_note {
8987    pub n_namesz: Elf32_Word,
8988    pub n_descsz: Elf32_Word,
8989    pub n_type: Elf32_Word,
8990}
8991pub type Elf32_Nhdr = elf32_note;
8992#[repr(C)]
8993#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8994pub struct elf64_note {
8995    pub n_namesz: Elf64_Word,
8996    pub n_descsz: Elf64_Word,
8997    pub n_type: Elf64_Word,
8998}
8999pub type Elf64_Nhdr = elf64_note;
9000#[repr(C, packed)]
9001#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9002pub struct epoll_event {
9003    pub events: u32,
9004    pub data: u64,
9005}
9006#[repr(C)]
9007#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9008pub struct flock {
9009    pub l_type: crate::types::c_short,
9010    pub l_whence: crate::types::c_short,
9011    pub __bindgen_padding_0: [u8; 4usize],
9012    pub l_start: __kernel_off_t,
9013    pub l_len: __kernel_off_t,
9014    pub l_pid: pid_t,
9015    pub __bindgen_padding_1: [u8; 4usize],
9016}
9017pub type flock64 = flock;
9018#[repr(C)]
9019#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9020pub struct f_owner_ex {
9021    pub type_: crate::types::c_int,
9022    pub pid: __kernel_pid_t,
9023}
9024#[repr(C)]
9025#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9026pub struct open_how {
9027    pub flags: __u64,
9028    pub mode: __u64,
9029    pub resolve: __u64,
9030}
9031#[repr(C)]
9032#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9033pub struct epoll_params {
9034    pub busy_poll_usecs: __u32,
9035    pub busy_poll_budget: __u16,
9036    pub prefer_busy_poll: __u8,
9037    pub __pad: __u8,
9038}
9039#[repr(C)]
9040#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9041pub struct i2c_msg {
9042    pub addr: __u16,
9043    pub flags: __u16,
9044    pub len: __u16,
9045    pub __bindgen_padding_0: [u8; 2usize],
9046    pub buf: uref<__u8>,
9047}
9048impl Default for i2c_msg {
9049    fn default() -> Self {
9050        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9051        unsafe {
9052            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9053            s.assume_init()
9054        }
9055    }
9056}
9057#[repr(C)]
9058#[derive(Copy, Clone)]
9059pub union i2c_smbus_data {
9060    pub byte: __u8,
9061    pub word: __u16,
9062    pub block: [__u8; 34usize],
9063}
9064impl Default for i2c_smbus_data {
9065    fn default() -> Self {
9066        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9067        unsafe {
9068            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9069            s.assume_init()
9070        }
9071    }
9072}
9073pub const vesa_blank_mode_VESA_NO_BLANKING: vesa_blank_mode = 0;
9074pub const vesa_blank_mode_VESA_VSYNC_SUSPEND: vesa_blank_mode = 1;
9075pub const vesa_blank_mode_VESA_HSYNC_SUSPEND: vesa_blank_mode = 2;
9076pub const vesa_blank_mode_VESA_POWERDOWN: vesa_blank_mode = 3;
9077pub const vesa_blank_mode_VESA_BLANK_MAX: vesa_blank_mode = 3;
9078pub type vesa_blank_mode = crate::types::c_uint;
9079#[repr(C)]
9080#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9081pub struct fb_fix_screeninfo {
9082    pub id: [crate::types::c_char; 16usize],
9083    pub smem_start: crate::types::c_ulong,
9084    pub smem_len: __u32,
9085    pub type_: __u32,
9086    pub type_aux: __u32,
9087    pub visual: __u32,
9088    pub xpanstep: __u16,
9089    pub ypanstep: __u16,
9090    pub ywrapstep: __u16,
9091    pub __bindgen_padding_0: [u8; 2usize],
9092    pub line_length: __u32,
9093    pub __bindgen_padding_1: [u8; 4usize],
9094    pub mmio_start: crate::types::c_ulong,
9095    pub mmio_len: __u32,
9096    pub accel: __u32,
9097    pub capabilities: __u16,
9098    pub reserved: [__u16; 2usize],
9099    pub __bindgen_padding_2: [u8; 2usize],
9100}
9101#[repr(C)]
9102#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9103pub struct fb_bitfield {
9104    pub offset: __u32,
9105    pub length: __u32,
9106    pub msb_right: __u32,
9107}
9108#[repr(C)]
9109#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9110pub struct fb_var_screeninfo {
9111    pub xres: __u32,
9112    pub yres: __u32,
9113    pub xres_virtual: __u32,
9114    pub yres_virtual: __u32,
9115    pub xoffset: __u32,
9116    pub yoffset: __u32,
9117    pub bits_per_pixel: __u32,
9118    pub grayscale: __u32,
9119    pub red: fb_bitfield,
9120    pub green: fb_bitfield,
9121    pub blue: fb_bitfield,
9122    pub transp: fb_bitfield,
9123    pub nonstd: __u32,
9124    pub activate: __u32,
9125    pub height: __u32,
9126    pub width: __u32,
9127    pub accel_flags: __u32,
9128    pub pixclock: __u32,
9129    pub left_margin: __u32,
9130    pub right_margin: __u32,
9131    pub upper_margin: __u32,
9132    pub lower_margin: __u32,
9133    pub hsync_len: __u32,
9134    pub vsync_len: __u32,
9135    pub sync: __u32,
9136    pub vmode: __u32,
9137    pub rotate: __u32,
9138    pub colorspace: __u32,
9139    pub reserved: [__u32; 4usize],
9140}
9141#[repr(C)]
9142#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9143pub struct fb_cmap {
9144    pub start: __u32,
9145    pub len: __u32,
9146    pub red: uref<__u16>,
9147    pub green: uref<__u16>,
9148    pub blue: uref<__u16>,
9149    pub transp: uref<__u16>,
9150}
9151impl Default for fb_cmap {
9152    fn default() -> Self {
9153        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9154        unsafe {
9155            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9156            s.assume_init()
9157        }
9158    }
9159}
9160#[repr(C)]
9161#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9162pub struct fb_con2fbmap {
9163    pub console: __u32,
9164    pub framebuffer: __u32,
9165}
9166pub const FB_BLANK_UNBLANK: _bindgen_ty_7 = 0;
9167pub const FB_BLANK_NORMAL: _bindgen_ty_7 = 1;
9168pub const FB_BLANK_VSYNC_SUSPEND: _bindgen_ty_7 = 2;
9169pub const FB_BLANK_HSYNC_SUSPEND: _bindgen_ty_7 = 3;
9170pub const FB_BLANK_POWERDOWN: _bindgen_ty_7 = 4;
9171pub type _bindgen_ty_7 = crate::types::c_uint;
9172#[repr(C)]
9173#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9174pub struct fb_vblank {
9175    pub flags: __u32,
9176    pub count: __u32,
9177    pub vcount: __u32,
9178    pub hcount: __u32,
9179    pub reserved: [__u32; 4usize],
9180}
9181#[repr(C)]
9182#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9183pub struct fb_copyarea {
9184    pub dx: __u32,
9185    pub dy: __u32,
9186    pub width: __u32,
9187    pub height: __u32,
9188    pub sx: __u32,
9189    pub sy: __u32,
9190}
9191#[repr(C)]
9192#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9193pub struct fb_fillrect {
9194    pub dx: __u32,
9195    pub dy: __u32,
9196    pub width: __u32,
9197    pub height: __u32,
9198    pub color: __u32,
9199    pub rop: __u32,
9200}
9201#[repr(C)]
9202#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9203pub struct fb_image {
9204    pub dx: __u32,
9205    pub dy: __u32,
9206    pub width: __u32,
9207    pub height: __u32,
9208    pub fg_color: __u32,
9209    pub bg_color: __u32,
9210    pub depth: __u8,
9211    pub __bindgen_padding_0: [u8; 7usize],
9212    pub data: uref<crate::types::c_char>,
9213    pub cmap: fb_cmap,
9214}
9215impl Default for fb_image {
9216    fn default() -> Self {
9217        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9218        unsafe {
9219            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9220            s.assume_init()
9221        }
9222    }
9223}
9224#[repr(C)]
9225#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9226pub struct fbcurpos {
9227    pub x: __u16,
9228    pub y: __u16,
9229}
9230#[repr(C)]
9231#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9232pub struct fb_cursor {
9233    pub set: __u16,
9234    pub enable: __u16,
9235    pub rop: __u16,
9236    pub __bindgen_padding_0: [u8; 2usize],
9237    pub mask: uref<crate::types::c_char>,
9238    pub hot: fbcurpos,
9239    pub __bindgen_padding_1: [u8; 4usize],
9240    pub image: fb_image,
9241}
9242impl Default for fb_cursor {
9243    fn default() -> Self {
9244        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9245        unsafe {
9246            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9247            s.assume_init()
9248        }
9249    }
9250}
9251#[repr(C)]
9252#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9253pub struct sockaddr_nl {
9254    pub nl_family: __kernel_sa_family_t,
9255    pub nl_pad: crate::types::c_ushort,
9256    pub nl_pid: __u32,
9257    pub nl_groups: __u32,
9258}
9259#[repr(C)]
9260#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9261pub struct nlmsghdr {
9262    pub nlmsg_len: __u32,
9263    pub nlmsg_type: __u16,
9264    pub nlmsg_flags: __u16,
9265    pub nlmsg_seq: __u32,
9266    pub nlmsg_pid: __u32,
9267}
9268#[repr(C)]
9269#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9270pub struct nlmsgerr {
9271    pub error: crate::types::c_int,
9272    pub msg: nlmsghdr,
9273}
9274pub const nlmsgerr_attrs_NLMSGERR_ATTR_UNUSED: nlmsgerr_attrs = 0;
9275pub const nlmsgerr_attrs_NLMSGERR_ATTR_MSG: nlmsgerr_attrs = 1;
9276pub const nlmsgerr_attrs_NLMSGERR_ATTR_OFFS: nlmsgerr_attrs = 2;
9277pub const nlmsgerr_attrs_NLMSGERR_ATTR_COOKIE: nlmsgerr_attrs = 3;
9278pub const nlmsgerr_attrs_NLMSGERR_ATTR_POLICY: nlmsgerr_attrs = 4;
9279pub const nlmsgerr_attrs_NLMSGERR_ATTR_MISS_TYPE: nlmsgerr_attrs = 5;
9280pub const nlmsgerr_attrs_NLMSGERR_ATTR_MISS_NEST: nlmsgerr_attrs = 6;
9281pub const nlmsgerr_attrs___NLMSGERR_ATTR_MAX: nlmsgerr_attrs = 7;
9282pub const nlmsgerr_attrs_NLMSGERR_ATTR_MAX: nlmsgerr_attrs = 6;
9283pub type nlmsgerr_attrs = crate::types::c_uint;
9284#[repr(C)]
9285#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9286pub struct nl_pktinfo {
9287    pub group: __u32,
9288}
9289#[repr(C)]
9290#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9291pub struct nl_mmap_req {
9292    pub nm_block_size: crate::types::c_uint,
9293    pub nm_block_nr: crate::types::c_uint,
9294    pub nm_frame_size: crate::types::c_uint,
9295    pub nm_frame_nr: crate::types::c_uint,
9296}
9297#[repr(C)]
9298#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9299pub struct nl_mmap_hdr {
9300    pub nm_status: crate::types::c_uint,
9301    pub nm_len: crate::types::c_uint,
9302    pub nm_group: __u32,
9303    pub nm_pid: __u32,
9304    pub nm_uid: __u32,
9305    pub nm_gid: __u32,
9306}
9307pub const nl_mmap_status_NL_MMAP_STATUS_UNUSED: nl_mmap_status = 0;
9308pub const nl_mmap_status_NL_MMAP_STATUS_RESERVED: nl_mmap_status = 1;
9309pub const nl_mmap_status_NL_MMAP_STATUS_VALID: nl_mmap_status = 2;
9310pub const nl_mmap_status_NL_MMAP_STATUS_COPY: nl_mmap_status = 3;
9311pub const nl_mmap_status_NL_MMAP_STATUS_SKIP: nl_mmap_status = 4;
9312pub type nl_mmap_status = crate::types::c_uint;
9313pub const NETLINK_UNCONNECTED: _bindgen_ty_8 = 0;
9314pub const NETLINK_CONNECTED: _bindgen_ty_8 = 1;
9315pub type _bindgen_ty_8 = crate::types::c_uint;
9316#[repr(C)]
9317#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9318pub struct nlattr {
9319    pub nla_len: __u16,
9320    pub nla_type: __u16,
9321}
9322#[repr(C)]
9323#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9324pub struct nla_bitfield32 {
9325    pub value: __u32,
9326    pub selector: __u32,
9327}
9328pub const netlink_attribute_type_NL_ATTR_TYPE_INVALID: netlink_attribute_type = 0;
9329pub const netlink_attribute_type_NL_ATTR_TYPE_FLAG: netlink_attribute_type = 1;
9330pub const netlink_attribute_type_NL_ATTR_TYPE_U8: netlink_attribute_type = 2;
9331pub const netlink_attribute_type_NL_ATTR_TYPE_U16: netlink_attribute_type = 3;
9332pub const netlink_attribute_type_NL_ATTR_TYPE_U32: netlink_attribute_type = 4;
9333pub const netlink_attribute_type_NL_ATTR_TYPE_U64: netlink_attribute_type = 5;
9334pub const netlink_attribute_type_NL_ATTR_TYPE_S8: netlink_attribute_type = 6;
9335pub const netlink_attribute_type_NL_ATTR_TYPE_S16: netlink_attribute_type = 7;
9336pub const netlink_attribute_type_NL_ATTR_TYPE_S32: netlink_attribute_type = 8;
9337pub const netlink_attribute_type_NL_ATTR_TYPE_S64: netlink_attribute_type = 9;
9338pub const netlink_attribute_type_NL_ATTR_TYPE_BINARY: netlink_attribute_type = 10;
9339pub const netlink_attribute_type_NL_ATTR_TYPE_STRING: netlink_attribute_type = 11;
9340pub const netlink_attribute_type_NL_ATTR_TYPE_NUL_STRING: netlink_attribute_type = 12;
9341pub const netlink_attribute_type_NL_ATTR_TYPE_NESTED: netlink_attribute_type = 13;
9342pub const netlink_attribute_type_NL_ATTR_TYPE_NESTED_ARRAY: netlink_attribute_type = 14;
9343pub const netlink_attribute_type_NL_ATTR_TYPE_BITFIELD32: netlink_attribute_type = 15;
9344pub const netlink_attribute_type_NL_ATTR_TYPE_SINT: netlink_attribute_type = 16;
9345pub const netlink_attribute_type_NL_ATTR_TYPE_UINT: netlink_attribute_type = 17;
9346pub type netlink_attribute_type = crate::types::c_uint;
9347pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_UNSPEC: netlink_policy_type_attr = 0;
9348pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_TYPE: netlink_policy_type_attr = 1;
9349pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_VALUE_S: netlink_policy_type_attr = 2;
9350pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_VALUE_S: netlink_policy_type_attr = 3;
9351pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_VALUE_U: netlink_policy_type_attr = 4;
9352pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_VALUE_U: netlink_policy_type_attr = 5;
9353pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_LENGTH: netlink_policy_type_attr = 6;
9354pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_LENGTH: netlink_policy_type_attr = 7;
9355pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_POLICY_IDX: netlink_policy_type_attr = 8;
9356pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE: netlink_policy_type_attr = 9;
9357pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_BITFIELD32_MASK: netlink_policy_type_attr =
9358    10;
9359pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_PAD: netlink_policy_type_attr = 11;
9360pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MASK: netlink_policy_type_attr = 12;
9361pub const netlink_policy_type_attr___NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = 13;
9362pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = 12;
9363pub type netlink_policy_type_attr = crate::types::c_uint;
9364#[repr(C)]
9365#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9366pub struct rtnl_link_stats {
9367    pub rx_packets: __u32,
9368    pub tx_packets: __u32,
9369    pub rx_bytes: __u32,
9370    pub tx_bytes: __u32,
9371    pub rx_errors: __u32,
9372    pub tx_errors: __u32,
9373    pub rx_dropped: __u32,
9374    pub tx_dropped: __u32,
9375    pub multicast: __u32,
9376    pub collisions: __u32,
9377    pub rx_length_errors: __u32,
9378    pub rx_over_errors: __u32,
9379    pub rx_crc_errors: __u32,
9380    pub rx_frame_errors: __u32,
9381    pub rx_fifo_errors: __u32,
9382    pub rx_missed_errors: __u32,
9383    pub tx_aborted_errors: __u32,
9384    pub tx_carrier_errors: __u32,
9385    pub tx_fifo_errors: __u32,
9386    pub tx_heartbeat_errors: __u32,
9387    pub tx_window_errors: __u32,
9388    pub rx_compressed: __u32,
9389    pub tx_compressed: __u32,
9390    pub rx_nohandler: __u32,
9391}
9392#[repr(C)]
9393#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9394pub struct rtnl_link_stats64 {
9395    pub rx_packets: __u64,
9396    pub tx_packets: __u64,
9397    pub rx_bytes: __u64,
9398    pub tx_bytes: __u64,
9399    pub rx_errors: __u64,
9400    pub tx_errors: __u64,
9401    pub rx_dropped: __u64,
9402    pub tx_dropped: __u64,
9403    pub multicast: __u64,
9404    pub collisions: __u64,
9405    pub rx_length_errors: __u64,
9406    pub rx_over_errors: __u64,
9407    pub rx_crc_errors: __u64,
9408    pub rx_frame_errors: __u64,
9409    pub rx_fifo_errors: __u64,
9410    pub rx_missed_errors: __u64,
9411    pub tx_aborted_errors: __u64,
9412    pub tx_carrier_errors: __u64,
9413    pub tx_fifo_errors: __u64,
9414    pub tx_heartbeat_errors: __u64,
9415    pub tx_window_errors: __u64,
9416    pub rx_compressed: __u64,
9417    pub tx_compressed: __u64,
9418    pub rx_nohandler: __u64,
9419    pub rx_otherhost_dropped: __u64,
9420}
9421#[repr(C)]
9422#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9423pub struct rtnl_hw_stats64 {
9424    pub rx_packets: __u64,
9425    pub tx_packets: __u64,
9426    pub rx_bytes: __u64,
9427    pub tx_bytes: __u64,
9428    pub rx_errors: __u64,
9429    pub tx_errors: __u64,
9430    pub rx_dropped: __u64,
9431    pub tx_dropped: __u64,
9432    pub multicast: __u64,
9433}
9434#[repr(C)]
9435#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9436pub struct rtnl_link_ifmap {
9437    pub mem_start: __u64,
9438    pub mem_end: __u64,
9439    pub base_addr: __u64,
9440    pub irq: __u16,
9441    pub dma: __u8,
9442    pub port: __u8,
9443    pub __bindgen_padding_0: [u8; 4usize],
9444}
9445pub const IFLA_UNSPEC: _bindgen_ty_9 = 0;
9446pub const IFLA_ADDRESS: _bindgen_ty_9 = 1;
9447pub const IFLA_BROADCAST: _bindgen_ty_9 = 2;
9448pub const IFLA_IFNAME: _bindgen_ty_9 = 3;
9449pub const IFLA_MTU: _bindgen_ty_9 = 4;
9450pub const IFLA_LINK: _bindgen_ty_9 = 5;
9451pub const IFLA_QDISC: _bindgen_ty_9 = 6;
9452pub const IFLA_STATS: _bindgen_ty_9 = 7;
9453pub const IFLA_COST: _bindgen_ty_9 = 8;
9454pub const IFLA_PRIORITY: _bindgen_ty_9 = 9;
9455pub const IFLA_MASTER: _bindgen_ty_9 = 10;
9456pub const IFLA_WIRELESS: _bindgen_ty_9 = 11;
9457pub const IFLA_PROTINFO: _bindgen_ty_9 = 12;
9458pub const IFLA_TXQLEN: _bindgen_ty_9 = 13;
9459pub const IFLA_MAP: _bindgen_ty_9 = 14;
9460pub const IFLA_WEIGHT: _bindgen_ty_9 = 15;
9461pub const IFLA_OPERSTATE: _bindgen_ty_9 = 16;
9462pub const IFLA_LINKMODE: _bindgen_ty_9 = 17;
9463pub const IFLA_LINKINFO: _bindgen_ty_9 = 18;
9464pub const IFLA_NET_NS_PID: _bindgen_ty_9 = 19;
9465pub const IFLA_IFALIAS: _bindgen_ty_9 = 20;
9466pub const IFLA_NUM_VF: _bindgen_ty_9 = 21;
9467pub const IFLA_VFINFO_LIST: _bindgen_ty_9 = 22;
9468pub const IFLA_STATS64: _bindgen_ty_9 = 23;
9469pub const IFLA_VF_PORTS: _bindgen_ty_9 = 24;
9470pub const IFLA_PORT_SELF: _bindgen_ty_9 = 25;
9471pub const IFLA_AF_SPEC: _bindgen_ty_9 = 26;
9472pub const IFLA_GROUP: _bindgen_ty_9 = 27;
9473pub const IFLA_NET_NS_FD: _bindgen_ty_9 = 28;
9474pub const IFLA_EXT_MASK: _bindgen_ty_9 = 29;
9475pub const IFLA_PROMISCUITY: _bindgen_ty_9 = 30;
9476pub const IFLA_NUM_TX_QUEUES: _bindgen_ty_9 = 31;
9477pub const IFLA_NUM_RX_QUEUES: _bindgen_ty_9 = 32;
9478pub const IFLA_CARRIER: _bindgen_ty_9 = 33;
9479pub const IFLA_PHYS_PORT_ID: _bindgen_ty_9 = 34;
9480pub const IFLA_CARRIER_CHANGES: _bindgen_ty_9 = 35;
9481pub const IFLA_PHYS_SWITCH_ID: _bindgen_ty_9 = 36;
9482pub const IFLA_LINK_NETNSID: _bindgen_ty_9 = 37;
9483pub const IFLA_PHYS_PORT_NAME: _bindgen_ty_9 = 38;
9484pub const IFLA_PROTO_DOWN: _bindgen_ty_9 = 39;
9485pub const IFLA_GSO_MAX_SEGS: _bindgen_ty_9 = 40;
9486pub const IFLA_GSO_MAX_SIZE: _bindgen_ty_9 = 41;
9487pub const IFLA_PAD: _bindgen_ty_9 = 42;
9488pub const IFLA_XDP: _bindgen_ty_9 = 43;
9489pub const IFLA_EVENT: _bindgen_ty_9 = 44;
9490pub const IFLA_NEW_NETNSID: _bindgen_ty_9 = 45;
9491pub const IFLA_IF_NETNSID: _bindgen_ty_9 = 46;
9492pub const IFLA_TARGET_NETNSID: _bindgen_ty_9 = 46;
9493pub const IFLA_CARRIER_UP_COUNT: _bindgen_ty_9 = 47;
9494pub const IFLA_CARRIER_DOWN_COUNT: _bindgen_ty_9 = 48;
9495pub const IFLA_NEW_IFINDEX: _bindgen_ty_9 = 49;
9496pub const IFLA_MIN_MTU: _bindgen_ty_9 = 50;
9497pub const IFLA_MAX_MTU: _bindgen_ty_9 = 51;
9498pub const IFLA_PROP_LIST: _bindgen_ty_9 = 52;
9499pub const IFLA_ALT_IFNAME: _bindgen_ty_9 = 53;
9500pub const IFLA_PERM_ADDRESS: _bindgen_ty_9 = 54;
9501pub const IFLA_PROTO_DOWN_REASON: _bindgen_ty_9 = 55;
9502pub const IFLA_PARENT_DEV_NAME: _bindgen_ty_9 = 56;
9503pub const IFLA_PARENT_DEV_BUS_NAME: _bindgen_ty_9 = 57;
9504pub const IFLA_GRO_MAX_SIZE: _bindgen_ty_9 = 58;
9505pub const IFLA_TSO_MAX_SIZE: _bindgen_ty_9 = 59;
9506pub const IFLA_TSO_MAX_SEGS: _bindgen_ty_9 = 60;
9507pub const IFLA_ALLMULTI: _bindgen_ty_9 = 61;
9508pub const IFLA_DEVLINK_PORT: _bindgen_ty_9 = 62;
9509pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_9 = 63;
9510pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_9 = 64;
9511pub const IFLA_DPLL_PIN: _bindgen_ty_9 = 65;
9512pub const __IFLA_MAX: _bindgen_ty_9 = 66;
9513pub type _bindgen_ty_9 = crate::types::c_uint;
9514pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_10 = 0;
9515pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_10 = 1;
9516pub const IFLA_PROTO_DOWN_REASON_VALUE: _bindgen_ty_10 = 2;
9517pub const __IFLA_PROTO_DOWN_REASON_CNT: _bindgen_ty_10 = 3;
9518pub const IFLA_PROTO_DOWN_REASON_MAX: _bindgen_ty_10 = 2;
9519pub type _bindgen_ty_10 = crate::types::c_uint;
9520pub const IFLA_INET_UNSPEC: _bindgen_ty_11 = 0;
9521pub const IFLA_INET_CONF: _bindgen_ty_11 = 1;
9522pub const __IFLA_INET_MAX: _bindgen_ty_11 = 2;
9523pub type _bindgen_ty_11 = crate::types::c_uint;
9524pub const IFLA_INET6_UNSPEC: _bindgen_ty_12 = 0;
9525pub const IFLA_INET6_FLAGS: _bindgen_ty_12 = 1;
9526pub const IFLA_INET6_CONF: _bindgen_ty_12 = 2;
9527pub const IFLA_INET6_STATS: _bindgen_ty_12 = 3;
9528pub const IFLA_INET6_MCAST: _bindgen_ty_12 = 4;
9529pub const IFLA_INET6_CACHEINFO: _bindgen_ty_12 = 5;
9530pub const IFLA_INET6_ICMP6STATS: _bindgen_ty_12 = 6;
9531pub const IFLA_INET6_TOKEN: _bindgen_ty_12 = 7;
9532pub const IFLA_INET6_ADDR_GEN_MODE: _bindgen_ty_12 = 8;
9533pub const IFLA_INET6_RA_MTU: _bindgen_ty_12 = 9;
9534pub const __IFLA_INET6_MAX: _bindgen_ty_12 = 10;
9535pub type _bindgen_ty_12 = crate::types::c_uint;
9536pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_EUI64: in6_addr_gen_mode = 0;
9537pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_NONE: in6_addr_gen_mode = 1;
9538pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_STABLE_PRIVACY: in6_addr_gen_mode = 2;
9539pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_RANDOM: in6_addr_gen_mode = 3;
9540pub type in6_addr_gen_mode = crate::types::c_uint;
9541pub const IFLA_BR_UNSPEC: _bindgen_ty_13 = 0;
9542pub const IFLA_BR_FORWARD_DELAY: _bindgen_ty_13 = 1;
9543pub const IFLA_BR_HELLO_TIME: _bindgen_ty_13 = 2;
9544pub const IFLA_BR_MAX_AGE: _bindgen_ty_13 = 3;
9545pub const IFLA_BR_AGEING_TIME: _bindgen_ty_13 = 4;
9546pub const IFLA_BR_STP_STATE: _bindgen_ty_13 = 5;
9547pub const IFLA_BR_PRIORITY: _bindgen_ty_13 = 6;
9548pub const IFLA_BR_VLAN_FILTERING: _bindgen_ty_13 = 7;
9549pub const IFLA_BR_VLAN_PROTOCOL: _bindgen_ty_13 = 8;
9550pub const IFLA_BR_GROUP_FWD_MASK: _bindgen_ty_13 = 9;
9551pub const IFLA_BR_ROOT_ID: _bindgen_ty_13 = 10;
9552pub const IFLA_BR_BRIDGE_ID: _bindgen_ty_13 = 11;
9553pub const IFLA_BR_ROOT_PORT: _bindgen_ty_13 = 12;
9554pub const IFLA_BR_ROOT_PATH_COST: _bindgen_ty_13 = 13;
9555pub const IFLA_BR_TOPOLOGY_CHANGE: _bindgen_ty_13 = 14;
9556pub const IFLA_BR_TOPOLOGY_CHANGE_DETECTED: _bindgen_ty_13 = 15;
9557pub const IFLA_BR_HELLO_TIMER: _bindgen_ty_13 = 16;
9558pub const IFLA_BR_TCN_TIMER: _bindgen_ty_13 = 17;
9559pub const IFLA_BR_TOPOLOGY_CHANGE_TIMER: _bindgen_ty_13 = 18;
9560pub const IFLA_BR_GC_TIMER: _bindgen_ty_13 = 19;
9561pub const IFLA_BR_GROUP_ADDR: _bindgen_ty_13 = 20;
9562pub const IFLA_BR_FDB_FLUSH: _bindgen_ty_13 = 21;
9563pub const IFLA_BR_MCAST_ROUTER: _bindgen_ty_13 = 22;
9564pub const IFLA_BR_MCAST_SNOOPING: _bindgen_ty_13 = 23;
9565pub const IFLA_BR_MCAST_QUERY_USE_IFADDR: _bindgen_ty_13 = 24;
9566pub const IFLA_BR_MCAST_QUERIER: _bindgen_ty_13 = 25;
9567pub const IFLA_BR_MCAST_HASH_ELASTICITY: _bindgen_ty_13 = 26;
9568pub const IFLA_BR_MCAST_HASH_MAX: _bindgen_ty_13 = 27;
9569pub const IFLA_BR_MCAST_LAST_MEMBER_CNT: _bindgen_ty_13 = 28;
9570pub const IFLA_BR_MCAST_STARTUP_QUERY_CNT: _bindgen_ty_13 = 29;
9571pub const IFLA_BR_MCAST_LAST_MEMBER_INTVL: _bindgen_ty_13 = 30;
9572pub const IFLA_BR_MCAST_MEMBERSHIP_INTVL: _bindgen_ty_13 = 31;
9573pub const IFLA_BR_MCAST_QUERIER_INTVL: _bindgen_ty_13 = 32;
9574pub const IFLA_BR_MCAST_QUERY_INTVL: _bindgen_ty_13 = 33;
9575pub const IFLA_BR_MCAST_QUERY_RESPONSE_INTVL: _bindgen_ty_13 = 34;
9576pub const IFLA_BR_MCAST_STARTUP_QUERY_INTVL: _bindgen_ty_13 = 35;
9577pub const IFLA_BR_NF_CALL_IPTABLES: _bindgen_ty_13 = 36;
9578pub const IFLA_BR_NF_CALL_IP6TABLES: _bindgen_ty_13 = 37;
9579pub const IFLA_BR_NF_CALL_ARPTABLES: _bindgen_ty_13 = 38;
9580pub const IFLA_BR_VLAN_DEFAULT_PVID: _bindgen_ty_13 = 39;
9581pub const IFLA_BR_PAD: _bindgen_ty_13 = 40;
9582pub const IFLA_BR_VLAN_STATS_ENABLED: _bindgen_ty_13 = 41;
9583pub const IFLA_BR_MCAST_STATS_ENABLED: _bindgen_ty_13 = 42;
9584pub const IFLA_BR_MCAST_IGMP_VERSION: _bindgen_ty_13 = 43;
9585pub const IFLA_BR_MCAST_MLD_VERSION: _bindgen_ty_13 = 44;
9586pub const IFLA_BR_VLAN_STATS_PER_PORT: _bindgen_ty_13 = 45;
9587pub const IFLA_BR_MULTI_BOOLOPT: _bindgen_ty_13 = 46;
9588pub const IFLA_BR_MCAST_QUERIER_STATE: _bindgen_ty_13 = 47;
9589pub const IFLA_BR_FDB_N_LEARNED: _bindgen_ty_13 = 48;
9590pub const IFLA_BR_FDB_MAX_LEARNED: _bindgen_ty_13 = 49;
9591pub const __IFLA_BR_MAX: _bindgen_ty_13 = 50;
9592pub type _bindgen_ty_13 = crate::types::c_uint;
9593#[repr(C)]
9594#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9595pub struct ifla_bridge_id {
9596    pub prio: [__u8; 2usize],
9597    pub addr: [__u8; 6usize],
9598}
9599pub const BRIDGE_MODE_UNSPEC: _bindgen_ty_14 = 0;
9600pub const BRIDGE_MODE_HAIRPIN: _bindgen_ty_14 = 1;
9601pub type _bindgen_ty_14 = crate::types::c_uint;
9602pub const IFLA_BRPORT_UNSPEC: _bindgen_ty_15 = 0;
9603pub const IFLA_BRPORT_STATE: _bindgen_ty_15 = 1;
9604pub const IFLA_BRPORT_PRIORITY: _bindgen_ty_15 = 2;
9605pub const IFLA_BRPORT_COST: _bindgen_ty_15 = 3;
9606pub const IFLA_BRPORT_MODE: _bindgen_ty_15 = 4;
9607pub const IFLA_BRPORT_GUARD: _bindgen_ty_15 = 5;
9608pub const IFLA_BRPORT_PROTECT: _bindgen_ty_15 = 6;
9609pub const IFLA_BRPORT_FAST_LEAVE: _bindgen_ty_15 = 7;
9610pub const IFLA_BRPORT_LEARNING: _bindgen_ty_15 = 8;
9611pub const IFLA_BRPORT_UNICAST_FLOOD: _bindgen_ty_15 = 9;
9612pub const IFLA_BRPORT_PROXYARP: _bindgen_ty_15 = 10;
9613pub const IFLA_BRPORT_LEARNING_SYNC: _bindgen_ty_15 = 11;
9614pub const IFLA_BRPORT_PROXYARP_WIFI: _bindgen_ty_15 = 12;
9615pub const IFLA_BRPORT_ROOT_ID: _bindgen_ty_15 = 13;
9616pub const IFLA_BRPORT_BRIDGE_ID: _bindgen_ty_15 = 14;
9617pub const IFLA_BRPORT_DESIGNATED_PORT: _bindgen_ty_15 = 15;
9618pub const IFLA_BRPORT_DESIGNATED_COST: _bindgen_ty_15 = 16;
9619pub const IFLA_BRPORT_ID: _bindgen_ty_15 = 17;
9620pub const IFLA_BRPORT_NO: _bindgen_ty_15 = 18;
9621pub const IFLA_BRPORT_TOPOLOGY_CHANGE_ACK: _bindgen_ty_15 = 19;
9622pub const IFLA_BRPORT_CONFIG_PENDING: _bindgen_ty_15 = 20;
9623pub const IFLA_BRPORT_MESSAGE_AGE_TIMER: _bindgen_ty_15 = 21;
9624pub const IFLA_BRPORT_FORWARD_DELAY_TIMER: _bindgen_ty_15 = 22;
9625pub const IFLA_BRPORT_HOLD_TIMER: _bindgen_ty_15 = 23;
9626pub const IFLA_BRPORT_FLUSH: _bindgen_ty_15 = 24;
9627pub const IFLA_BRPORT_MULTICAST_ROUTER: _bindgen_ty_15 = 25;
9628pub const IFLA_BRPORT_PAD: _bindgen_ty_15 = 26;
9629pub const IFLA_BRPORT_MCAST_FLOOD: _bindgen_ty_15 = 27;
9630pub const IFLA_BRPORT_MCAST_TO_UCAST: _bindgen_ty_15 = 28;
9631pub const IFLA_BRPORT_VLAN_TUNNEL: _bindgen_ty_15 = 29;
9632pub const IFLA_BRPORT_BCAST_FLOOD: _bindgen_ty_15 = 30;
9633pub const IFLA_BRPORT_GROUP_FWD_MASK: _bindgen_ty_15 = 31;
9634pub const IFLA_BRPORT_NEIGH_SUPPRESS: _bindgen_ty_15 = 32;
9635pub const IFLA_BRPORT_ISOLATED: _bindgen_ty_15 = 33;
9636pub const IFLA_BRPORT_BACKUP_PORT: _bindgen_ty_15 = 34;
9637pub const IFLA_BRPORT_MRP_RING_OPEN: _bindgen_ty_15 = 35;
9638pub const IFLA_BRPORT_MRP_IN_OPEN: _bindgen_ty_15 = 36;
9639pub const IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT: _bindgen_ty_15 = 37;
9640pub const IFLA_BRPORT_MCAST_EHT_HOSTS_CNT: _bindgen_ty_15 = 38;
9641pub const IFLA_BRPORT_LOCKED: _bindgen_ty_15 = 39;
9642pub const IFLA_BRPORT_MAB: _bindgen_ty_15 = 40;
9643pub const IFLA_BRPORT_MCAST_N_GROUPS: _bindgen_ty_15 = 41;
9644pub const IFLA_BRPORT_MCAST_MAX_GROUPS: _bindgen_ty_15 = 42;
9645pub const IFLA_BRPORT_NEIGH_VLAN_SUPPRESS: _bindgen_ty_15 = 43;
9646pub const IFLA_BRPORT_BACKUP_NHID: _bindgen_ty_15 = 44;
9647pub const __IFLA_BRPORT_MAX: _bindgen_ty_15 = 45;
9648pub type _bindgen_ty_15 = crate::types::c_uint;
9649#[repr(C)]
9650#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9651pub struct ifla_cacheinfo {
9652    pub max_reasm_len: __u32,
9653    pub tstamp: __u32,
9654    pub reachable_time: __u32,
9655    pub retrans_time: __u32,
9656}
9657pub const IFLA_INFO_UNSPEC: _bindgen_ty_16 = 0;
9658pub const IFLA_INFO_KIND: _bindgen_ty_16 = 1;
9659pub const IFLA_INFO_DATA: _bindgen_ty_16 = 2;
9660pub const IFLA_INFO_XSTATS: _bindgen_ty_16 = 3;
9661pub const IFLA_INFO_SLAVE_KIND: _bindgen_ty_16 = 4;
9662pub const IFLA_INFO_SLAVE_DATA: _bindgen_ty_16 = 5;
9663pub const __IFLA_INFO_MAX: _bindgen_ty_16 = 6;
9664pub type _bindgen_ty_16 = crate::types::c_uint;
9665pub const IFLA_VLAN_UNSPEC: _bindgen_ty_17 = 0;
9666pub const IFLA_VLAN_ID: _bindgen_ty_17 = 1;
9667pub const IFLA_VLAN_FLAGS: _bindgen_ty_17 = 2;
9668pub const IFLA_VLAN_EGRESS_QOS: _bindgen_ty_17 = 3;
9669pub const IFLA_VLAN_INGRESS_QOS: _bindgen_ty_17 = 4;
9670pub const IFLA_VLAN_PROTOCOL: _bindgen_ty_17 = 5;
9671pub const __IFLA_VLAN_MAX: _bindgen_ty_17 = 6;
9672pub type _bindgen_ty_17 = crate::types::c_uint;
9673#[repr(C)]
9674#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9675pub struct ifla_vlan_flags {
9676    pub flags: __u32,
9677    pub mask: __u32,
9678}
9679pub const IFLA_VLAN_QOS_UNSPEC: _bindgen_ty_18 = 0;
9680pub const IFLA_VLAN_QOS_MAPPING: _bindgen_ty_18 = 1;
9681pub const __IFLA_VLAN_QOS_MAX: _bindgen_ty_18 = 2;
9682pub type _bindgen_ty_18 = crate::types::c_uint;
9683#[repr(C)]
9684#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9685pub struct ifla_vlan_qos_mapping {
9686    pub from: __u32,
9687    pub to: __u32,
9688}
9689pub const IFLA_MACVLAN_UNSPEC: _bindgen_ty_19 = 0;
9690pub const IFLA_MACVLAN_MODE: _bindgen_ty_19 = 1;
9691pub const IFLA_MACVLAN_FLAGS: _bindgen_ty_19 = 2;
9692pub const IFLA_MACVLAN_MACADDR_MODE: _bindgen_ty_19 = 3;
9693pub const IFLA_MACVLAN_MACADDR: _bindgen_ty_19 = 4;
9694pub const IFLA_MACVLAN_MACADDR_DATA: _bindgen_ty_19 = 5;
9695pub const IFLA_MACVLAN_MACADDR_COUNT: _bindgen_ty_19 = 6;
9696pub const IFLA_MACVLAN_BC_QUEUE_LEN: _bindgen_ty_19 = 7;
9697pub const IFLA_MACVLAN_BC_QUEUE_LEN_USED: _bindgen_ty_19 = 8;
9698pub const IFLA_MACVLAN_BC_CUTOFF: _bindgen_ty_19 = 9;
9699pub const __IFLA_MACVLAN_MAX: _bindgen_ty_19 = 10;
9700pub type _bindgen_ty_19 = crate::types::c_uint;
9701pub const macvlan_mode_MACVLAN_MODE_PRIVATE: macvlan_mode = 1;
9702pub const macvlan_mode_MACVLAN_MODE_VEPA: macvlan_mode = 2;
9703pub const macvlan_mode_MACVLAN_MODE_BRIDGE: macvlan_mode = 4;
9704pub const macvlan_mode_MACVLAN_MODE_PASSTHRU: macvlan_mode = 8;
9705pub const macvlan_mode_MACVLAN_MODE_SOURCE: macvlan_mode = 16;
9706pub type macvlan_mode = crate::types::c_uint;
9707pub const macvlan_macaddr_mode_MACVLAN_MACADDR_ADD: macvlan_macaddr_mode = 0;
9708pub const macvlan_macaddr_mode_MACVLAN_MACADDR_DEL: macvlan_macaddr_mode = 1;
9709pub const macvlan_macaddr_mode_MACVLAN_MACADDR_FLUSH: macvlan_macaddr_mode = 2;
9710pub const macvlan_macaddr_mode_MACVLAN_MACADDR_SET: macvlan_macaddr_mode = 3;
9711pub type macvlan_macaddr_mode = crate::types::c_uint;
9712pub const IFLA_VRF_UNSPEC: _bindgen_ty_20 = 0;
9713pub const IFLA_VRF_TABLE: _bindgen_ty_20 = 1;
9714pub const __IFLA_VRF_MAX: _bindgen_ty_20 = 2;
9715pub type _bindgen_ty_20 = crate::types::c_uint;
9716pub const IFLA_VRF_PORT_UNSPEC: _bindgen_ty_21 = 0;
9717pub const IFLA_VRF_PORT_TABLE: _bindgen_ty_21 = 1;
9718pub const __IFLA_VRF_PORT_MAX: _bindgen_ty_21 = 2;
9719pub type _bindgen_ty_21 = crate::types::c_uint;
9720pub const IFLA_MACSEC_UNSPEC: _bindgen_ty_22 = 0;
9721pub const IFLA_MACSEC_SCI: _bindgen_ty_22 = 1;
9722pub const IFLA_MACSEC_PORT: _bindgen_ty_22 = 2;
9723pub const IFLA_MACSEC_ICV_LEN: _bindgen_ty_22 = 3;
9724pub const IFLA_MACSEC_CIPHER_SUITE: _bindgen_ty_22 = 4;
9725pub const IFLA_MACSEC_WINDOW: _bindgen_ty_22 = 5;
9726pub const IFLA_MACSEC_ENCODING_SA: _bindgen_ty_22 = 6;
9727pub const IFLA_MACSEC_ENCRYPT: _bindgen_ty_22 = 7;
9728pub const IFLA_MACSEC_PROTECT: _bindgen_ty_22 = 8;
9729pub const IFLA_MACSEC_INC_SCI: _bindgen_ty_22 = 9;
9730pub const IFLA_MACSEC_ES: _bindgen_ty_22 = 10;
9731pub const IFLA_MACSEC_SCB: _bindgen_ty_22 = 11;
9732pub const IFLA_MACSEC_REPLAY_PROTECT: _bindgen_ty_22 = 12;
9733pub const IFLA_MACSEC_VALIDATION: _bindgen_ty_22 = 13;
9734pub const IFLA_MACSEC_PAD: _bindgen_ty_22 = 14;
9735pub const IFLA_MACSEC_OFFLOAD: _bindgen_ty_22 = 15;
9736pub const __IFLA_MACSEC_MAX: _bindgen_ty_22 = 16;
9737pub type _bindgen_ty_22 = crate::types::c_uint;
9738pub const IFLA_XFRM_UNSPEC: _bindgen_ty_23 = 0;
9739pub const IFLA_XFRM_LINK: _bindgen_ty_23 = 1;
9740pub const IFLA_XFRM_IF_ID: _bindgen_ty_23 = 2;
9741pub const IFLA_XFRM_COLLECT_METADATA: _bindgen_ty_23 = 3;
9742pub const __IFLA_XFRM_MAX: _bindgen_ty_23 = 4;
9743pub type _bindgen_ty_23 = crate::types::c_uint;
9744pub const macsec_validation_type_MACSEC_VALIDATE_DISABLED: macsec_validation_type = 0;
9745pub const macsec_validation_type_MACSEC_VALIDATE_CHECK: macsec_validation_type = 1;
9746pub const macsec_validation_type_MACSEC_VALIDATE_STRICT: macsec_validation_type = 2;
9747pub const macsec_validation_type___MACSEC_VALIDATE_END: macsec_validation_type = 3;
9748pub const macsec_validation_type_MACSEC_VALIDATE_MAX: macsec_validation_type = 2;
9749pub type macsec_validation_type = crate::types::c_uint;
9750pub const macsec_offload_MACSEC_OFFLOAD_OFF: macsec_offload = 0;
9751pub const macsec_offload_MACSEC_OFFLOAD_PHY: macsec_offload = 1;
9752pub const macsec_offload_MACSEC_OFFLOAD_MAC: macsec_offload = 2;
9753pub const macsec_offload___MACSEC_OFFLOAD_END: macsec_offload = 3;
9754pub const macsec_offload_MACSEC_OFFLOAD_MAX: macsec_offload = 2;
9755pub type macsec_offload = crate::types::c_uint;
9756pub const IFLA_IPVLAN_UNSPEC: _bindgen_ty_24 = 0;
9757pub const IFLA_IPVLAN_MODE: _bindgen_ty_24 = 1;
9758pub const IFLA_IPVLAN_FLAGS: _bindgen_ty_24 = 2;
9759pub const __IFLA_IPVLAN_MAX: _bindgen_ty_24 = 3;
9760pub type _bindgen_ty_24 = crate::types::c_uint;
9761pub const ipvlan_mode_IPVLAN_MODE_L2: ipvlan_mode = 0;
9762pub const ipvlan_mode_IPVLAN_MODE_L3: ipvlan_mode = 1;
9763pub const ipvlan_mode_IPVLAN_MODE_L3S: ipvlan_mode = 2;
9764pub const ipvlan_mode_IPVLAN_MODE_MAX: ipvlan_mode = 3;
9765pub type ipvlan_mode = crate::types::c_uint;
9766#[repr(C)]
9767#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9768pub struct tunnel_msg {
9769    pub family: __u8,
9770    pub flags: __u8,
9771    pub reserved2: __u16,
9772    pub ifindex: __u32,
9773}
9774pub const netkit_action_NETKIT_NEXT: netkit_action = -1;
9775pub const netkit_action_NETKIT_PASS: netkit_action = 0;
9776pub const netkit_action_NETKIT_DROP: netkit_action = 2;
9777pub const netkit_action_NETKIT_REDIRECT: netkit_action = 7;
9778pub type netkit_action = crate::types::c_int;
9779pub const netkit_mode_NETKIT_L2: netkit_mode = 0;
9780pub const netkit_mode_NETKIT_L3: netkit_mode = 1;
9781pub type netkit_mode = crate::types::c_uint;
9782pub const IFLA_NETKIT_UNSPEC: _bindgen_ty_25 = 0;
9783pub const IFLA_NETKIT_PEER_INFO: _bindgen_ty_25 = 1;
9784pub const IFLA_NETKIT_PRIMARY: _bindgen_ty_25 = 2;
9785pub const IFLA_NETKIT_POLICY: _bindgen_ty_25 = 3;
9786pub const IFLA_NETKIT_PEER_POLICY: _bindgen_ty_25 = 4;
9787pub const IFLA_NETKIT_MODE: _bindgen_ty_25 = 5;
9788pub const __IFLA_NETKIT_MAX: _bindgen_ty_25 = 6;
9789pub type _bindgen_ty_25 = crate::types::c_uint;
9790pub const VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_26 = 0;
9791pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_26 = 1;
9792pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_26 = 2;
9793pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_26 = 3;
9794pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_26 = 4;
9795pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_26 = 5;
9796pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_26 = 6;
9797pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_26 = 7;
9798pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_26 = 8;
9799pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_26 = 9;
9800pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_26 = 10;
9801pub type _bindgen_ty_26 = crate::types::c_uint;
9802pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_27 = 0;
9803pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_27 = 1;
9804pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_27 = 2;
9805pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_27 = 3;
9806pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_27 = 4;
9807pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_27 = 5;
9808pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_27 = 6;
9809pub type _bindgen_ty_27 = crate::types::c_uint;
9810pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_28 = 0;
9811pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_28 = 1;
9812pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_28 = 2;
9813pub type _bindgen_ty_28 = crate::types::c_uint;
9814pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_29 = 0;
9815pub const IFLA_VXLAN_ID: _bindgen_ty_29 = 1;
9816pub const IFLA_VXLAN_GROUP: _bindgen_ty_29 = 2;
9817pub const IFLA_VXLAN_LINK: _bindgen_ty_29 = 3;
9818pub const IFLA_VXLAN_LOCAL: _bindgen_ty_29 = 4;
9819pub const IFLA_VXLAN_TTL: _bindgen_ty_29 = 5;
9820pub const IFLA_VXLAN_TOS: _bindgen_ty_29 = 6;
9821pub const IFLA_VXLAN_LEARNING: _bindgen_ty_29 = 7;
9822pub const IFLA_VXLAN_AGEING: _bindgen_ty_29 = 8;
9823pub const IFLA_VXLAN_LIMIT: _bindgen_ty_29 = 9;
9824pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_29 = 10;
9825pub const IFLA_VXLAN_PROXY: _bindgen_ty_29 = 11;
9826pub const IFLA_VXLAN_RSC: _bindgen_ty_29 = 12;
9827pub const IFLA_VXLAN_L2MISS: _bindgen_ty_29 = 13;
9828pub const IFLA_VXLAN_L3MISS: _bindgen_ty_29 = 14;
9829pub const IFLA_VXLAN_PORT: _bindgen_ty_29 = 15;
9830pub const IFLA_VXLAN_GROUP6: _bindgen_ty_29 = 16;
9831pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_29 = 17;
9832pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_29 = 18;
9833pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_29 = 19;
9834pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_29 = 20;
9835pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_29 = 21;
9836pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_29 = 22;
9837pub const IFLA_VXLAN_GBP: _bindgen_ty_29 = 23;
9838pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_29 = 24;
9839pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_29 = 25;
9840pub const IFLA_VXLAN_LABEL: _bindgen_ty_29 = 26;
9841pub const IFLA_VXLAN_GPE: _bindgen_ty_29 = 27;
9842pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_29 = 28;
9843pub const IFLA_VXLAN_DF: _bindgen_ty_29 = 29;
9844pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_29 = 30;
9845pub const IFLA_VXLAN_LOCALBYPASS: _bindgen_ty_29 = 31;
9846pub const IFLA_VXLAN_LABEL_POLICY: _bindgen_ty_29 = 32;
9847pub const __IFLA_VXLAN_MAX: _bindgen_ty_29 = 33;
9848pub type _bindgen_ty_29 = crate::types::c_uint;
9849#[repr(C)]
9850#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9851pub struct ifla_vxlan_port_range {
9852    pub low: __be16,
9853    pub high: __be16,
9854}
9855pub const ifla_vxlan_df_VXLAN_DF_UNSET: ifla_vxlan_df = 0;
9856pub const ifla_vxlan_df_VXLAN_DF_SET: ifla_vxlan_df = 1;
9857pub const ifla_vxlan_df_VXLAN_DF_INHERIT: ifla_vxlan_df = 2;
9858pub const ifla_vxlan_df___VXLAN_DF_END: ifla_vxlan_df = 3;
9859pub const ifla_vxlan_df_VXLAN_DF_MAX: ifla_vxlan_df = 2;
9860pub type ifla_vxlan_df = crate::types::c_uint;
9861pub const ifla_vxlan_label_policy_VXLAN_LABEL_FIXED: ifla_vxlan_label_policy = 0;
9862pub const ifla_vxlan_label_policy_VXLAN_LABEL_INHERIT: ifla_vxlan_label_policy = 1;
9863pub const ifla_vxlan_label_policy___VXLAN_LABEL_END: ifla_vxlan_label_policy = 2;
9864pub const ifla_vxlan_label_policy_VXLAN_LABEL_MAX: ifla_vxlan_label_policy = 1;
9865pub type ifla_vxlan_label_policy = crate::types::c_uint;
9866pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_30 = 0;
9867pub const IFLA_GENEVE_ID: _bindgen_ty_30 = 1;
9868pub const IFLA_GENEVE_REMOTE: _bindgen_ty_30 = 2;
9869pub const IFLA_GENEVE_TTL: _bindgen_ty_30 = 3;
9870pub const IFLA_GENEVE_TOS: _bindgen_ty_30 = 4;
9871pub const IFLA_GENEVE_PORT: _bindgen_ty_30 = 5;
9872pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_30 = 6;
9873pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_30 = 7;
9874pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_30 = 8;
9875pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_30 = 9;
9876pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_30 = 10;
9877pub const IFLA_GENEVE_LABEL: _bindgen_ty_30 = 11;
9878pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_30 = 12;
9879pub const IFLA_GENEVE_DF: _bindgen_ty_30 = 13;
9880pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_30 = 14;
9881pub const __IFLA_GENEVE_MAX: _bindgen_ty_30 = 15;
9882pub type _bindgen_ty_30 = crate::types::c_uint;
9883pub const ifla_geneve_df_GENEVE_DF_UNSET: ifla_geneve_df = 0;
9884pub const ifla_geneve_df_GENEVE_DF_SET: ifla_geneve_df = 1;
9885pub const ifla_geneve_df_GENEVE_DF_INHERIT: ifla_geneve_df = 2;
9886pub const ifla_geneve_df___GENEVE_DF_END: ifla_geneve_df = 3;
9887pub const ifla_geneve_df_GENEVE_DF_MAX: ifla_geneve_df = 2;
9888pub type ifla_geneve_df = crate::types::c_uint;
9889pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_31 = 0;
9890pub const IFLA_BAREUDP_PORT: _bindgen_ty_31 = 1;
9891pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_31 = 2;
9892pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_31 = 3;
9893pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_31 = 4;
9894pub const __IFLA_BAREUDP_MAX: _bindgen_ty_31 = 5;
9895pub type _bindgen_ty_31 = crate::types::c_uint;
9896pub const IFLA_PPP_UNSPEC: _bindgen_ty_32 = 0;
9897pub const IFLA_PPP_DEV_FD: _bindgen_ty_32 = 1;
9898pub const __IFLA_PPP_MAX: _bindgen_ty_32 = 2;
9899pub type _bindgen_ty_32 = crate::types::c_uint;
9900pub const ifla_gtp_role_GTP_ROLE_GGSN: ifla_gtp_role = 0;
9901pub const ifla_gtp_role_GTP_ROLE_SGSN: ifla_gtp_role = 1;
9902pub type ifla_gtp_role = crate::types::c_uint;
9903pub const IFLA_GTP_UNSPEC: _bindgen_ty_33 = 0;
9904pub const IFLA_GTP_FD0: _bindgen_ty_33 = 1;
9905pub const IFLA_GTP_FD1: _bindgen_ty_33 = 2;
9906pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_33 = 3;
9907pub const IFLA_GTP_ROLE: _bindgen_ty_33 = 4;
9908pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_33 = 5;
9909pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_33 = 6;
9910pub const IFLA_GTP_LOCAL: _bindgen_ty_33 = 7;
9911pub const IFLA_GTP_LOCAL6: _bindgen_ty_33 = 8;
9912pub const __IFLA_GTP_MAX: _bindgen_ty_33 = 9;
9913pub type _bindgen_ty_33 = crate::types::c_uint;
9914pub const IFLA_BOND_UNSPEC: _bindgen_ty_34 = 0;
9915pub const IFLA_BOND_MODE: _bindgen_ty_34 = 1;
9916pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_34 = 2;
9917pub const IFLA_BOND_MIIMON: _bindgen_ty_34 = 3;
9918pub const IFLA_BOND_UPDELAY: _bindgen_ty_34 = 4;
9919pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_34 = 5;
9920pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_34 = 6;
9921pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_34 = 7;
9922pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_34 = 8;
9923pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_34 = 9;
9924pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_34 = 10;
9925pub const IFLA_BOND_PRIMARY: _bindgen_ty_34 = 11;
9926pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_34 = 12;
9927pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_34 = 13;
9928pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_34 = 14;
9929pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_34 = 15;
9930pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_34 = 16;
9931pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_34 = 17;
9932pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_34 = 18;
9933pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_34 = 19;
9934pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_34 = 20;
9935pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_34 = 21;
9936pub const IFLA_BOND_AD_SELECT: _bindgen_ty_34 = 22;
9937pub const IFLA_BOND_AD_INFO: _bindgen_ty_34 = 23;
9938pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_34 = 24;
9939pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_34 = 25;
9940pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_34 = 26;
9941pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_34 = 27;
9942pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_34 = 28;
9943pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_34 = 29;
9944pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_34 = 30;
9945pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_34 = 31;
9946pub const IFLA_BOND_COUPLED_CONTROL: _bindgen_ty_34 = 32;
9947pub const __IFLA_BOND_MAX: _bindgen_ty_34 = 33;
9948pub type _bindgen_ty_34 = crate::types::c_uint;
9949pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_35 = 0;
9950pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_35 = 1;
9951pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_35 = 2;
9952pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_35 = 3;
9953pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_35 = 4;
9954pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_35 = 5;
9955pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_35 = 6;
9956pub type _bindgen_ty_35 = crate::types::c_uint;
9957pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_36 = 0;
9958pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_36 = 1;
9959pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_36 = 2;
9960pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_36 = 3;
9961pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_36 = 4;
9962pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_36 = 5;
9963pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_36 = 6;
9964pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_36 = 7;
9965pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_36 = 8;
9966pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_36 = 9;
9967pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_36 = 10;
9968pub type _bindgen_ty_36 = crate::types::c_uint;
9969pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_37 = 0;
9970pub const IFLA_VF_INFO: _bindgen_ty_37 = 1;
9971pub const __IFLA_VF_INFO_MAX: _bindgen_ty_37 = 2;
9972pub type _bindgen_ty_37 = crate::types::c_uint;
9973pub const IFLA_VF_UNSPEC: _bindgen_ty_38 = 0;
9974pub const IFLA_VF_MAC: _bindgen_ty_38 = 1;
9975pub const IFLA_VF_VLAN: _bindgen_ty_38 = 2;
9976pub const IFLA_VF_TX_RATE: _bindgen_ty_38 = 3;
9977pub const IFLA_VF_SPOOFCHK: _bindgen_ty_38 = 4;
9978pub const IFLA_VF_LINK_STATE: _bindgen_ty_38 = 5;
9979pub const IFLA_VF_RATE: _bindgen_ty_38 = 6;
9980pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_38 = 7;
9981pub const IFLA_VF_STATS: _bindgen_ty_38 = 8;
9982pub const IFLA_VF_TRUST: _bindgen_ty_38 = 9;
9983pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_38 = 10;
9984pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_38 = 11;
9985pub const IFLA_VF_VLAN_LIST: _bindgen_ty_38 = 12;
9986pub const IFLA_VF_BROADCAST: _bindgen_ty_38 = 13;
9987pub const __IFLA_VF_MAX: _bindgen_ty_38 = 14;
9988pub type _bindgen_ty_38 = crate::types::c_uint;
9989#[repr(C)]
9990#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9991pub struct ifla_vf_mac {
9992    pub vf: __u32,
9993    pub mac: [__u8; 32usize],
9994}
9995#[repr(C)]
9996#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9997pub struct ifla_vf_broadcast {
9998    pub broadcast: [__u8; 32usize],
9999}
10000#[repr(C)]
10001#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10002pub struct ifla_vf_vlan {
10003    pub vf: __u32,
10004    pub vlan: __u32,
10005    pub qos: __u32,
10006}
10007pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_39 = 0;
10008pub const IFLA_VF_VLAN_INFO: _bindgen_ty_39 = 1;
10009pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_39 = 2;
10010pub type _bindgen_ty_39 = crate::types::c_uint;
10011#[repr(C)]
10012#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10013pub struct ifla_vf_vlan_info {
10014    pub vf: __u32,
10015    pub vlan: __u32,
10016    pub qos: __u32,
10017    pub vlan_proto: __be16,
10018    pub __bindgen_padding_0: [u8; 2usize],
10019}
10020#[repr(C)]
10021#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10022pub struct ifla_vf_tx_rate {
10023    pub vf: __u32,
10024    pub rate: __u32,
10025}
10026#[repr(C)]
10027#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10028pub struct ifla_vf_rate {
10029    pub vf: __u32,
10030    pub min_tx_rate: __u32,
10031    pub max_tx_rate: __u32,
10032}
10033#[repr(C)]
10034#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10035pub struct ifla_vf_spoofchk {
10036    pub vf: __u32,
10037    pub setting: __u32,
10038}
10039#[repr(C)]
10040#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10041pub struct ifla_vf_guid {
10042    pub vf: __u32,
10043    pub __bindgen_padding_0: [u8; 4usize],
10044    pub guid: __u64,
10045}
10046pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_40 = 0;
10047pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_40 = 1;
10048pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_40 = 2;
10049pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_40 = 3;
10050pub type _bindgen_ty_40 = crate::types::c_uint;
10051#[repr(C)]
10052#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10053pub struct ifla_vf_link_state {
10054    pub vf: __u32,
10055    pub link_state: __u32,
10056}
10057#[repr(C)]
10058#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10059pub struct ifla_vf_rss_query_en {
10060    pub vf: __u32,
10061    pub setting: __u32,
10062}
10063pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_41 = 0;
10064pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_41 = 1;
10065pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_41 = 2;
10066pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_41 = 3;
10067pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_41 = 4;
10068pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_41 = 5;
10069pub const IFLA_VF_STATS_PAD: _bindgen_ty_41 = 6;
10070pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_41 = 7;
10071pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_41 = 8;
10072pub const __IFLA_VF_STATS_MAX: _bindgen_ty_41 = 9;
10073pub type _bindgen_ty_41 = crate::types::c_uint;
10074#[repr(C)]
10075#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10076pub struct ifla_vf_trust {
10077    pub vf: __u32,
10078    pub setting: __u32,
10079}
10080pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_42 = 0;
10081pub const IFLA_VF_PORT: _bindgen_ty_42 = 1;
10082pub const __IFLA_VF_PORT_MAX: _bindgen_ty_42 = 2;
10083pub type _bindgen_ty_42 = crate::types::c_uint;
10084pub const IFLA_PORT_UNSPEC: _bindgen_ty_43 = 0;
10085pub const IFLA_PORT_VF: _bindgen_ty_43 = 1;
10086pub const IFLA_PORT_PROFILE: _bindgen_ty_43 = 2;
10087pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_43 = 3;
10088pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_43 = 4;
10089pub const IFLA_PORT_HOST_UUID: _bindgen_ty_43 = 5;
10090pub const IFLA_PORT_REQUEST: _bindgen_ty_43 = 6;
10091pub const IFLA_PORT_RESPONSE: _bindgen_ty_43 = 7;
10092pub const __IFLA_PORT_MAX: _bindgen_ty_43 = 8;
10093pub type _bindgen_ty_43 = crate::types::c_uint;
10094pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_44 = 0;
10095pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_44 = 1;
10096pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_44 = 2;
10097pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_44 = 3;
10098pub type _bindgen_ty_44 = crate::types::c_uint;
10099pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_45 = 0;
10100pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_45 = 1;
10101pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_45 = 2;
10102pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_45 = 3;
10103pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_45 = 4;
10104pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_45 = 5;
10105pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_45 = 6;
10106pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_45 = 256;
10107pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_45 = 257;
10108pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_45 = 258;
10109pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_45 = 259;
10110pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_45 = 260;
10111pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_45 = 261;
10112pub type _bindgen_ty_45 = crate::types::c_uint;
10113#[repr(C)]
10114#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10115pub struct ifla_port_vsi {
10116    pub vsi_mgr_id: __u8,
10117    pub vsi_type_id: [__u8; 3usize],
10118    pub vsi_type_version: __u8,
10119    pub pad: [__u8; 3usize],
10120}
10121pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_46 = 0;
10122pub const IFLA_IPOIB_PKEY: _bindgen_ty_46 = 1;
10123pub const IFLA_IPOIB_MODE: _bindgen_ty_46 = 2;
10124pub const IFLA_IPOIB_UMCAST: _bindgen_ty_46 = 3;
10125pub const __IFLA_IPOIB_MAX: _bindgen_ty_46 = 4;
10126pub type _bindgen_ty_46 = crate::types::c_uint;
10127pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_47 = 0;
10128pub const IPOIB_MODE_CONNECTED: _bindgen_ty_47 = 1;
10129pub type _bindgen_ty_47 = crate::types::c_uint;
10130pub const HSR_PROTOCOL_HSR: _bindgen_ty_48 = 0;
10131pub const HSR_PROTOCOL_PRP: _bindgen_ty_48 = 1;
10132pub const HSR_PROTOCOL_MAX: _bindgen_ty_48 = 2;
10133pub type _bindgen_ty_48 = crate::types::c_uint;
10134pub const IFLA_HSR_UNSPEC: _bindgen_ty_49 = 0;
10135pub const IFLA_HSR_SLAVE1: _bindgen_ty_49 = 1;
10136pub const IFLA_HSR_SLAVE2: _bindgen_ty_49 = 2;
10137pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_49 = 3;
10138pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_49 = 4;
10139pub const IFLA_HSR_SEQ_NR: _bindgen_ty_49 = 5;
10140pub const IFLA_HSR_VERSION: _bindgen_ty_49 = 6;
10141pub const IFLA_HSR_PROTOCOL: _bindgen_ty_49 = 7;
10142pub const IFLA_HSR_INTERLINK: _bindgen_ty_49 = 8;
10143pub const __IFLA_HSR_MAX: _bindgen_ty_49 = 9;
10144pub type _bindgen_ty_49 = crate::types::c_uint;
10145#[repr(C)]
10146#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10147pub struct if_stats_msg {
10148    pub family: __u8,
10149    pub pad1: __u8,
10150    pub pad2: __u16,
10151    pub ifindex: __u32,
10152    pub filter_mask: __u32,
10153}
10154pub const IFLA_STATS_UNSPEC: _bindgen_ty_50 = 0;
10155pub const IFLA_STATS_LINK_64: _bindgen_ty_50 = 1;
10156pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_50 = 2;
10157pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_50 = 3;
10158pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_50 = 4;
10159pub const IFLA_STATS_AF_SPEC: _bindgen_ty_50 = 5;
10160pub const __IFLA_STATS_MAX: _bindgen_ty_50 = 6;
10161pub type _bindgen_ty_50 = crate::types::c_uint;
10162pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_51 = 0;
10163pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_51 = 1;
10164pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_51 = 2;
10165pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_51 = 3;
10166pub type _bindgen_ty_51 = crate::types::c_uint;
10167pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_52 = 0;
10168pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_52 = 1;
10169pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_52 = 2;
10170pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_52 = 3;
10171pub type _bindgen_ty_52 = crate::types::c_uint;
10172pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_53 = 0;
10173pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_53 = 1;
10174pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_53 = 2;
10175pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_53 = 3;
10176pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_53 = 4;
10177pub type _bindgen_ty_53 = crate::types::c_uint;
10178pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_54 = 0;
10179pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_54 = 1;
10180pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_54 = 2;
10181pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_54 = 3;
10182pub type _bindgen_ty_54 = crate::types::c_uint;
10183pub const XDP_ATTACHED_NONE: _bindgen_ty_55 = 0;
10184pub const XDP_ATTACHED_DRV: _bindgen_ty_55 = 1;
10185pub const XDP_ATTACHED_SKB: _bindgen_ty_55 = 2;
10186pub const XDP_ATTACHED_HW: _bindgen_ty_55 = 3;
10187pub const XDP_ATTACHED_MULTI: _bindgen_ty_55 = 4;
10188pub type _bindgen_ty_55 = crate::types::c_uint;
10189pub const IFLA_XDP_UNSPEC: _bindgen_ty_56 = 0;
10190pub const IFLA_XDP_FD: _bindgen_ty_56 = 1;
10191pub const IFLA_XDP_ATTACHED: _bindgen_ty_56 = 2;
10192pub const IFLA_XDP_FLAGS: _bindgen_ty_56 = 3;
10193pub const IFLA_XDP_PROG_ID: _bindgen_ty_56 = 4;
10194pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_56 = 5;
10195pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_56 = 6;
10196pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_56 = 7;
10197pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_56 = 8;
10198pub const __IFLA_XDP_MAX: _bindgen_ty_56 = 9;
10199pub type _bindgen_ty_56 = crate::types::c_uint;
10200pub const IFLA_EVENT_NONE: _bindgen_ty_57 = 0;
10201pub const IFLA_EVENT_REBOOT: _bindgen_ty_57 = 1;
10202pub const IFLA_EVENT_FEATURES: _bindgen_ty_57 = 2;
10203pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_57 = 3;
10204pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_57 = 4;
10205pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_57 = 5;
10206pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_57 = 6;
10207pub type _bindgen_ty_57 = crate::types::c_uint;
10208pub const IFLA_TUN_UNSPEC: _bindgen_ty_58 = 0;
10209pub const IFLA_TUN_OWNER: _bindgen_ty_58 = 1;
10210pub const IFLA_TUN_GROUP: _bindgen_ty_58 = 2;
10211pub const IFLA_TUN_TYPE: _bindgen_ty_58 = 3;
10212pub const IFLA_TUN_PI: _bindgen_ty_58 = 4;
10213pub const IFLA_TUN_VNET_HDR: _bindgen_ty_58 = 5;
10214pub const IFLA_TUN_PERSIST: _bindgen_ty_58 = 6;
10215pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_58 = 7;
10216pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_58 = 8;
10217pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_58 = 9;
10218pub const __IFLA_TUN_MAX: _bindgen_ty_58 = 10;
10219pub type _bindgen_ty_58 = crate::types::c_uint;
10220pub const IFLA_RMNET_UNSPEC: _bindgen_ty_59 = 0;
10221pub const IFLA_RMNET_MUX_ID: _bindgen_ty_59 = 1;
10222pub const IFLA_RMNET_FLAGS: _bindgen_ty_59 = 2;
10223pub const __IFLA_RMNET_MAX: _bindgen_ty_59 = 3;
10224pub type _bindgen_ty_59 = crate::types::c_uint;
10225#[repr(C)]
10226#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10227pub struct ifla_rmnet_flags {
10228    pub flags: __u32,
10229    pub mask: __u32,
10230}
10231pub const IFLA_MCTP_UNSPEC: _bindgen_ty_60 = 0;
10232pub const IFLA_MCTP_NET: _bindgen_ty_60 = 1;
10233pub const __IFLA_MCTP_MAX: _bindgen_ty_60 = 2;
10234pub type _bindgen_ty_60 = crate::types::c_uint;
10235pub const IFLA_DSA_UNSPEC: _bindgen_ty_61 = 0;
10236pub const IFLA_DSA_CONDUIT: _bindgen_ty_61 = 1;
10237pub const IFLA_DSA_MASTER: _bindgen_ty_61 = 1;
10238pub const __IFLA_DSA_MAX: _bindgen_ty_61 = 2;
10239pub type _bindgen_ty_61 = crate::types::c_uint;
10240#[repr(C)]
10241#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10242pub struct ifaddrmsg {
10243    pub ifa_family: __u8,
10244    pub ifa_prefixlen: __u8,
10245    pub ifa_flags: __u8,
10246    pub ifa_scope: __u8,
10247    pub ifa_index: __u32,
10248}
10249pub const IFA_UNSPEC: _bindgen_ty_62 = 0;
10250pub const IFA_ADDRESS: _bindgen_ty_62 = 1;
10251pub const IFA_LOCAL: _bindgen_ty_62 = 2;
10252pub const IFA_LABEL: _bindgen_ty_62 = 3;
10253pub const IFA_BROADCAST: _bindgen_ty_62 = 4;
10254pub const IFA_ANYCAST: _bindgen_ty_62 = 5;
10255pub const IFA_CACHEINFO: _bindgen_ty_62 = 6;
10256pub const IFA_MULTICAST: _bindgen_ty_62 = 7;
10257pub const IFA_FLAGS: _bindgen_ty_62 = 8;
10258pub const IFA_RT_PRIORITY: _bindgen_ty_62 = 9;
10259pub const IFA_TARGET_NETNSID: _bindgen_ty_62 = 10;
10260pub const IFA_PROTO: _bindgen_ty_62 = 11;
10261pub const __IFA_MAX: _bindgen_ty_62 = 12;
10262pub type _bindgen_ty_62 = crate::types::c_uint;
10263#[repr(C)]
10264#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10265pub struct ifa_cacheinfo {
10266    pub ifa_prefered: __u32,
10267    pub ifa_valid: __u32,
10268    pub cstamp: __u32,
10269    pub tstamp: __u32,
10270}
10271#[repr(C)]
10272#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10273pub struct ndmsg {
10274    pub ndm_family: __u8,
10275    pub ndm_pad1: __u8,
10276    pub ndm_pad2: __u16,
10277    pub ndm_ifindex: __s32,
10278    pub ndm_state: __u16,
10279    pub ndm_flags: __u8,
10280    pub ndm_type: __u8,
10281}
10282pub const NDA_UNSPEC: _bindgen_ty_63 = 0;
10283pub const NDA_DST: _bindgen_ty_63 = 1;
10284pub const NDA_LLADDR: _bindgen_ty_63 = 2;
10285pub const NDA_CACHEINFO: _bindgen_ty_63 = 3;
10286pub const NDA_PROBES: _bindgen_ty_63 = 4;
10287pub const NDA_VLAN: _bindgen_ty_63 = 5;
10288pub const NDA_PORT: _bindgen_ty_63 = 6;
10289pub const NDA_VNI: _bindgen_ty_63 = 7;
10290pub const NDA_IFINDEX: _bindgen_ty_63 = 8;
10291pub const NDA_MASTER: _bindgen_ty_63 = 9;
10292pub const NDA_LINK_NETNSID: _bindgen_ty_63 = 10;
10293pub const NDA_SRC_VNI: _bindgen_ty_63 = 11;
10294pub const NDA_PROTOCOL: _bindgen_ty_63 = 12;
10295pub const NDA_NH_ID: _bindgen_ty_63 = 13;
10296pub const NDA_FDB_EXT_ATTRS: _bindgen_ty_63 = 14;
10297pub const NDA_FLAGS_EXT: _bindgen_ty_63 = 15;
10298pub const NDA_NDM_STATE_MASK: _bindgen_ty_63 = 16;
10299pub const NDA_NDM_FLAGS_MASK: _bindgen_ty_63 = 17;
10300pub const __NDA_MAX: _bindgen_ty_63 = 18;
10301pub type _bindgen_ty_63 = crate::types::c_uint;
10302#[repr(C)]
10303#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10304pub struct nda_cacheinfo {
10305    pub ndm_confirmed: __u32,
10306    pub ndm_used: __u32,
10307    pub ndm_updated: __u32,
10308    pub ndm_refcnt: __u32,
10309}
10310#[repr(C)]
10311#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10312pub struct ndt_stats {
10313    pub ndts_allocs: __u64,
10314    pub ndts_destroys: __u64,
10315    pub ndts_hash_grows: __u64,
10316    pub ndts_res_failed: __u64,
10317    pub ndts_lookups: __u64,
10318    pub ndts_hits: __u64,
10319    pub ndts_rcv_probes_mcast: __u64,
10320    pub ndts_rcv_probes_ucast: __u64,
10321    pub ndts_periodic_gc_runs: __u64,
10322    pub ndts_forced_gc_runs: __u64,
10323    pub ndts_table_fulls: __u64,
10324}
10325pub const NDTPA_UNSPEC: _bindgen_ty_64 = 0;
10326pub const NDTPA_IFINDEX: _bindgen_ty_64 = 1;
10327pub const NDTPA_REFCNT: _bindgen_ty_64 = 2;
10328pub const NDTPA_REACHABLE_TIME: _bindgen_ty_64 = 3;
10329pub const NDTPA_BASE_REACHABLE_TIME: _bindgen_ty_64 = 4;
10330pub const NDTPA_RETRANS_TIME: _bindgen_ty_64 = 5;
10331pub const NDTPA_GC_STALETIME: _bindgen_ty_64 = 6;
10332pub const NDTPA_DELAY_PROBE_TIME: _bindgen_ty_64 = 7;
10333pub const NDTPA_QUEUE_LEN: _bindgen_ty_64 = 8;
10334pub const NDTPA_APP_PROBES: _bindgen_ty_64 = 9;
10335pub const NDTPA_UCAST_PROBES: _bindgen_ty_64 = 10;
10336pub const NDTPA_MCAST_PROBES: _bindgen_ty_64 = 11;
10337pub const NDTPA_ANYCAST_DELAY: _bindgen_ty_64 = 12;
10338pub const NDTPA_PROXY_DELAY: _bindgen_ty_64 = 13;
10339pub const NDTPA_PROXY_QLEN: _bindgen_ty_64 = 14;
10340pub const NDTPA_LOCKTIME: _bindgen_ty_64 = 15;
10341pub const NDTPA_QUEUE_LENBYTES: _bindgen_ty_64 = 16;
10342pub const NDTPA_MCAST_REPROBES: _bindgen_ty_64 = 17;
10343pub const NDTPA_PAD: _bindgen_ty_64 = 18;
10344pub const NDTPA_INTERVAL_PROBE_TIME_MS: _bindgen_ty_64 = 19;
10345pub const __NDTPA_MAX: _bindgen_ty_64 = 20;
10346pub type _bindgen_ty_64 = crate::types::c_uint;
10347#[repr(C)]
10348#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10349pub struct ndtmsg {
10350    pub ndtm_family: __u8,
10351    pub ndtm_pad1: __u8,
10352    pub ndtm_pad2: __u16,
10353}
10354#[repr(C)]
10355#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10356pub struct ndt_config {
10357    pub ndtc_key_len: __u16,
10358    pub ndtc_entry_size: __u16,
10359    pub ndtc_entries: __u32,
10360    pub ndtc_last_flush: __u32,
10361    pub ndtc_last_rand: __u32,
10362    pub ndtc_hash_rnd: __u32,
10363    pub ndtc_hash_mask: __u32,
10364    pub ndtc_hash_chain_gc: __u32,
10365    pub ndtc_proxy_qlen: __u32,
10366}
10367pub const NDTA_UNSPEC: _bindgen_ty_65 = 0;
10368pub const NDTA_NAME: _bindgen_ty_65 = 1;
10369pub const NDTA_THRESH1: _bindgen_ty_65 = 2;
10370pub const NDTA_THRESH2: _bindgen_ty_65 = 3;
10371pub const NDTA_THRESH3: _bindgen_ty_65 = 4;
10372pub const NDTA_CONFIG: _bindgen_ty_65 = 5;
10373pub const NDTA_PARMS: _bindgen_ty_65 = 6;
10374pub const NDTA_STATS: _bindgen_ty_65 = 7;
10375pub const NDTA_GC_INTERVAL: _bindgen_ty_65 = 8;
10376pub const NDTA_PAD: _bindgen_ty_65 = 9;
10377pub const __NDTA_MAX: _bindgen_ty_65 = 10;
10378pub type _bindgen_ty_65 = crate::types::c_uint;
10379pub const FDB_NOTIFY_BIT: _bindgen_ty_66 = 1;
10380pub const FDB_NOTIFY_INACTIVE_BIT: _bindgen_ty_66 = 2;
10381pub type _bindgen_ty_66 = crate::types::c_uint;
10382pub const NFEA_UNSPEC: _bindgen_ty_67 = 0;
10383pub const NFEA_ACTIVITY_NOTIFY: _bindgen_ty_67 = 1;
10384pub const NFEA_DONT_REFRESH: _bindgen_ty_67 = 2;
10385pub const __NFEA_MAX: _bindgen_ty_67 = 3;
10386pub type _bindgen_ty_67 = crate::types::c_uint;
10387pub const RTM_BASE: _bindgen_ty_68 = 16;
10388pub const RTM_NEWLINK: _bindgen_ty_68 = 16;
10389pub const RTM_DELLINK: _bindgen_ty_68 = 17;
10390pub const RTM_GETLINK: _bindgen_ty_68 = 18;
10391pub const RTM_SETLINK: _bindgen_ty_68 = 19;
10392pub const RTM_NEWADDR: _bindgen_ty_68 = 20;
10393pub const RTM_DELADDR: _bindgen_ty_68 = 21;
10394pub const RTM_GETADDR: _bindgen_ty_68 = 22;
10395pub const RTM_NEWROUTE: _bindgen_ty_68 = 24;
10396pub const RTM_DELROUTE: _bindgen_ty_68 = 25;
10397pub const RTM_GETROUTE: _bindgen_ty_68 = 26;
10398pub const RTM_NEWNEIGH: _bindgen_ty_68 = 28;
10399pub const RTM_DELNEIGH: _bindgen_ty_68 = 29;
10400pub const RTM_GETNEIGH: _bindgen_ty_68 = 30;
10401pub const RTM_NEWRULE: _bindgen_ty_68 = 32;
10402pub const RTM_DELRULE: _bindgen_ty_68 = 33;
10403pub const RTM_GETRULE: _bindgen_ty_68 = 34;
10404pub const RTM_NEWQDISC: _bindgen_ty_68 = 36;
10405pub const RTM_DELQDISC: _bindgen_ty_68 = 37;
10406pub const RTM_GETQDISC: _bindgen_ty_68 = 38;
10407pub const RTM_NEWTCLASS: _bindgen_ty_68 = 40;
10408pub const RTM_DELTCLASS: _bindgen_ty_68 = 41;
10409pub const RTM_GETTCLASS: _bindgen_ty_68 = 42;
10410pub const RTM_NEWTFILTER: _bindgen_ty_68 = 44;
10411pub const RTM_DELTFILTER: _bindgen_ty_68 = 45;
10412pub const RTM_GETTFILTER: _bindgen_ty_68 = 46;
10413pub const RTM_NEWACTION: _bindgen_ty_68 = 48;
10414pub const RTM_DELACTION: _bindgen_ty_68 = 49;
10415pub const RTM_GETACTION: _bindgen_ty_68 = 50;
10416pub const RTM_NEWPREFIX: _bindgen_ty_68 = 52;
10417pub const RTM_GETMULTICAST: _bindgen_ty_68 = 58;
10418pub const RTM_GETANYCAST: _bindgen_ty_68 = 62;
10419pub const RTM_NEWNEIGHTBL: _bindgen_ty_68 = 64;
10420pub const RTM_GETNEIGHTBL: _bindgen_ty_68 = 66;
10421pub const RTM_SETNEIGHTBL: _bindgen_ty_68 = 67;
10422pub const RTM_NEWNDUSEROPT: _bindgen_ty_68 = 68;
10423pub const RTM_NEWADDRLABEL: _bindgen_ty_68 = 72;
10424pub const RTM_DELADDRLABEL: _bindgen_ty_68 = 73;
10425pub const RTM_GETADDRLABEL: _bindgen_ty_68 = 74;
10426pub const RTM_GETDCB: _bindgen_ty_68 = 78;
10427pub const RTM_SETDCB: _bindgen_ty_68 = 79;
10428pub const RTM_NEWNETCONF: _bindgen_ty_68 = 80;
10429pub const RTM_DELNETCONF: _bindgen_ty_68 = 81;
10430pub const RTM_GETNETCONF: _bindgen_ty_68 = 82;
10431pub const RTM_NEWMDB: _bindgen_ty_68 = 84;
10432pub const RTM_DELMDB: _bindgen_ty_68 = 85;
10433pub const RTM_GETMDB: _bindgen_ty_68 = 86;
10434pub const RTM_NEWNSID: _bindgen_ty_68 = 88;
10435pub const RTM_DELNSID: _bindgen_ty_68 = 89;
10436pub const RTM_GETNSID: _bindgen_ty_68 = 90;
10437pub const RTM_NEWSTATS: _bindgen_ty_68 = 92;
10438pub const RTM_GETSTATS: _bindgen_ty_68 = 94;
10439pub const RTM_SETSTATS: _bindgen_ty_68 = 95;
10440pub const RTM_NEWCACHEREPORT: _bindgen_ty_68 = 96;
10441pub const RTM_NEWCHAIN: _bindgen_ty_68 = 100;
10442pub const RTM_DELCHAIN: _bindgen_ty_68 = 101;
10443pub const RTM_GETCHAIN: _bindgen_ty_68 = 102;
10444pub const RTM_NEWNEXTHOP: _bindgen_ty_68 = 104;
10445pub const RTM_DELNEXTHOP: _bindgen_ty_68 = 105;
10446pub const RTM_GETNEXTHOP: _bindgen_ty_68 = 106;
10447pub const RTM_NEWLINKPROP: _bindgen_ty_68 = 108;
10448pub const RTM_DELLINKPROP: _bindgen_ty_68 = 109;
10449pub const RTM_GETLINKPROP: _bindgen_ty_68 = 110;
10450pub const RTM_NEWVLAN: _bindgen_ty_68 = 112;
10451pub const RTM_DELVLAN: _bindgen_ty_68 = 113;
10452pub const RTM_GETVLAN: _bindgen_ty_68 = 114;
10453pub const RTM_NEWNEXTHOPBUCKET: _bindgen_ty_68 = 116;
10454pub const RTM_DELNEXTHOPBUCKET: _bindgen_ty_68 = 117;
10455pub const RTM_GETNEXTHOPBUCKET: _bindgen_ty_68 = 118;
10456pub const RTM_NEWTUNNEL: _bindgen_ty_68 = 120;
10457pub const RTM_DELTUNNEL: _bindgen_ty_68 = 121;
10458pub const RTM_GETTUNNEL: _bindgen_ty_68 = 122;
10459pub const __RTM_MAX: _bindgen_ty_68 = 123;
10460pub type _bindgen_ty_68 = crate::types::c_uint;
10461#[repr(C)]
10462#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10463pub struct rtattr {
10464    pub rta_len: crate::types::c_ushort,
10465    pub rta_type: crate::types::c_ushort,
10466}
10467#[repr(C)]
10468#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10469pub struct rtmsg {
10470    pub rtm_family: crate::types::c_uchar,
10471    pub rtm_dst_len: crate::types::c_uchar,
10472    pub rtm_src_len: crate::types::c_uchar,
10473    pub rtm_tos: crate::types::c_uchar,
10474    pub rtm_table: crate::types::c_uchar,
10475    pub rtm_protocol: crate::types::c_uchar,
10476    pub rtm_scope: crate::types::c_uchar,
10477    pub rtm_type: crate::types::c_uchar,
10478    pub rtm_flags: crate::types::c_uint,
10479}
10480pub const RTN_UNSPEC: _bindgen_ty_69 = 0;
10481pub const RTN_UNICAST: _bindgen_ty_69 = 1;
10482pub const RTN_LOCAL: _bindgen_ty_69 = 2;
10483pub const RTN_BROADCAST: _bindgen_ty_69 = 3;
10484pub const RTN_ANYCAST: _bindgen_ty_69 = 4;
10485pub const RTN_MULTICAST: _bindgen_ty_69 = 5;
10486pub const RTN_BLACKHOLE: _bindgen_ty_69 = 6;
10487pub const RTN_UNREACHABLE: _bindgen_ty_69 = 7;
10488pub const RTN_PROHIBIT: _bindgen_ty_69 = 8;
10489pub const RTN_THROW: _bindgen_ty_69 = 9;
10490pub const RTN_NAT: _bindgen_ty_69 = 10;
10491pub const RTN_XRESOLVE: _bindgen_ty_69 = 11;
10492pub const __RTN_MAX: _bindgen_ty_69 = 12;
10493pub type _bindgen_ty_69 = crate::types::c_uint;
10494pub const rt_scope_t_RT_SCOPE_UNIVERSE: rt_scope_t = 0;
10495pub const rt_scope_t_RT_SCOPE_SITE: rt_scope_t = 200;
10496pub const rt_scope_t_RT_SCOPE_LINK: rt_scope_t = 253;
10497pub const rt_scope_t_RT_SCOPE_HOST: rt_scope_t = 254;
10498pub const rt_scope_t_RT_SCOPE_NOWHERE: rt_scope_t = 255;
10499pub type rt_scope_t = crate::types::c_uint;
10500pub const rt_class_t_RT_TABLE_UNSPEC: rt_class_t = 0;
10501pub const rt_class_t_RT_TABLE_COMPAT: rt_class_t = 252;
10502pub const rt_class_t_RT_TABLE_DEFAULT: rt_class_t = 253;
10503pub const rt_class_t_RT_TABLE_MAIN: rt_class_t = 254;
10504pub const rt_class_t_RT_TABLE_LOCAL: rt_class_t = 255;
10505pub const rt_class_t_RT_TABLE_MAX: rt_class_t = 4294967295;
10506pub type rt_class_t = crate::types::c_uint;
10507pub const rtattr_type_t_RTA_UNSPEC: rtattr_type_t = 0;
10508pub const rtattr_type_t_RTA_DST: rtattr_type_t = 1;
10509pub const rtattr_type_t_RTA_SRC: rtattr_type_t = 2;
10510pub const rtattr_type_t_RTA_IIF: rtattr_type_t = 3;
10511pub const rtattr_type_t_RTA_OIF: rtattr_type_t = 4;
10512pub const rtattr_type_t_RTA_GATEWAY: rtattr_type_t = 5;
10513pub const rtattr_type_t_RTA_PRIORITY: rtattr_type_t = 6;
10514pub const rtattr_type_t_RTA_PREFSRC: rtattr_type_t = 7;
10515pub const rtattr_type_t_RTA_METRICS: rtattr_type_t = 8;
10516pub const rtattr_type_t_RTA_MULTIPATH: rtattr_type_t = 9;
10517pub const rtattr_type_t_RTA_PROTOINFO: rtattr_type_t = 10;
10518pub const rtattr_type_t_RTA_FLOW: rtattr_type_t = 11;
10519pub const rtattr_type_t_RTA_CACHEINFO: rtattr_type_t = 12;
10520pub const rtattr_type_t_RTA_SESSION: rtattr_type_t = 13;
10521pub const rtattr_type_t_RTA_MP_ALGO: rtattr_type_t = 14;
10522pub const rtattr_type_t_RTA_TABLE: rtattr_type_t = 15;
10523pub const rtattr_type_t_RTA_MARK: rtattr_type_t = 16;
10524pub const rtattr_type_t_RTA_MFC_STATS: rtattr_type_t = 17;
10525pub const rtattr_type_t_RTA_VIA: rtattr_type_t = 18;
10526pub const rtattr_type_t_RTA_NEWDST: rtattr_type_t = 19;
10527pub const rtattr_type_t_RTA_PREF: rtattr_type_t = 20;
10528pub const rtattr_type_t_RTA_ENCAP_TYPE: rtattr_type_t = 21;
10529pub const rtattr_type_t_RTA_ENCAP: rtattr_type_t = 22;
10530pub const rtattr_type_t_RTA_EXPIRES: rtattr_type_t = 23;
10531pub const rtattr_type_t_RTA_PAD: rtattr_type_t = 24;
10532pub const rtattr_type_t_RTA_UID: rtattr_type_t = 25;
10533pub const rtattr_type_t_RTA_TTL_PROPAGATE: rtattr_type_t = 26;
10534pub const rtattr_type_t_RTA_IP_PROTO: rtattr_type_t = 27;
10535pub const rtattr_type_t_RTA_SPORT: rtattr_type_t = 28;
10536pub const rtattr_type_t_RTA_DPORT: rtattr_type_t = 29;
10537pub const rtattr_type_t_RTA_NH_ID: rtattr_type_t = 30;
10538pub const rtattr_type_t___RTA_MAX: rtattr_type_t = 31;
10539pub type rtattr_type_t = crate::types::c_uint;
10540#[repr(C)]
10541#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10542pub struct rtnexthop {
10543    pub rtnh_len: crate::types::c_ushort,
10544    pub rtnh_flags: crate::types::c_uchar,
10545    pub rtnh_hops: crate::types::c_uchar,
10546    pub rtnh_ifindex: crate::types::c_int,
10547}
10548#[repr(C)]
10549#[derive(Debug, Default)]
10550pub struct rtvia {
10551    pub rtvia_family: __kernel_sa_family_t,
10552    pub rtvia_addr: __IncompleteArrayField<__u8>,
10553}
10554#[repr(C)]
10555#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10556pub struct rta_cacheinfo {
10557    pub rta_clntref: __u32,
10558    pub rta_lastuse: __u32,
10559    pub rta_expires: __s32,
10560    pub rta_error: __u32,
10561    pub rta_used: __u32,
10562    pub rta_id: __u32,
10563    pub rta_ts: __u32,
10564    pub rta_tsage: __u32,
10565}
10566pub const RTAX_UNSPEC: _bindgen_ty_70 = 0;
10567pub const RTAX_LOCK: _bindgen_ty_70 = 1;
10568pub const RTAX_MTU: _bindgen_ty_70 = 2;
10569pub const RTAX_WINDOW: _bindgen_ty_70 = 3;
10570pub const RTAX_RTT: _bindgen_ty_70 = 4;
10571pub const RTAX_RTTVAR: _bindgen_ty_70 = 5;
10572pub const RTAX_SSTHRESH: _bindgen_ty_70 = 6;
10573pub const RTAX_CWND: _bindgen_ty_70 = 7;
10574pub const RTAX_ADVMSS: _bindgen_ty_70 = 8;
10575pub const RTAX_REORDERING: _bindgen_ty_70 = 9;
10576pub const RTAX_HOPLIMIT: _bindgen_ty_70 = 10;
10577pub const RTAX_INITCWND: _bindgen_ty_70 = 11;
10578pub const RTAX_FEATURES: _bindgen_ty_70 = 12;
10579pub const RTAX_RTO_MIN: _bindgen_ty_70 = 13;
10580pub const RTAX_INITRWND: _bindgen_ty_70 = 14;
10581pub const RTAX_QUICKACK: _bindgen_ty_70 = 15;
10582pub const RTAX_CC_ALGO: _bindgen_ty_70 = 16;
10583pub const RTAX_FASTOPEN_NO_COOKIE: _bindgen_ty_70 = 17;
10584pub const __RTAX_MAX: _bindgen_ty_70 = 18;
10585pub type _bindgen_ty_70 = crate::types::c_uint;
10586#[repr(C)]
10587#[derive(Copy, Clone)]
10588pub struct rta_session {
10589    pub proto: __u8,
10590    pub pad1: __u8,
10591    pub pad2: __u16,
10592    pub u: rta_session__bindgen_ty_1,
10593}
10594#[repr(C)]
10595#[derive(Copy, Clone)]
10596pub union rta_session__bindgen_ty_1 {
10597    pub ports: rta_session__bindgen_ty_1__bindgen_ty_1,
10598    pub icmpt: rta_session__bindgen_ty_1__bindgen_ty_2,
10599    pub spi: __u32,
10600}
10601#[repr(C)]
10602#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10603pub struct rta_session__bindgen_ty_1__bindgen_ty_1 {
10604    pub sport: __u16,
10605    pub dport: __u16,
10606}
10607#[repr(C)]
10608#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10609pub struct rta_session__bindgen_ty_1__bindgen_ty_2 {
10610    pub type_: __u8,
10611    pub code: __u8,
10612    pub ident: __u16,
10613}
10614impl Default for rta_session__bindgen_ty_1 {
10615    fn default() -> Self {
10616        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10617        unsafe {
10618            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10619            s.assume_init()
10620        }
10621    }
10622}
10623impl Default for rta_session {
10624    fn default() -> Self {
10625        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10626        unsafe {
10627            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10628            s.assume_init()
10629        }
10630    }
10631}
10632#[repr(C)]
10633#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10634pub struct rta_mfc_stats {
10635    pub mfcs_packets: __u64,
10636    pub mfcs_bytes: __u64,
10637    pub mfcs_wrong_if: __u64,
10638}
10639#[repr(C)]
10640#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10641pub struct rtgenmsg {
10642    pub rtgen_family: crate::types::c_uchar,
10643}
10644#[repr(C)]
10645#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10646pub struct ifinfomsg {
10647    pub ifi_family: crate::types::c_uchar,
10648    pub __ifi_pad: crate::types::c_uchar,
10649    pub ifi_type: crate::types::c_ushort,
10650    pub ifi_index: crate::types::c_int,
10651    pub ifi_flags: crate::types::c_uint,
10652    pub ifi_change: crate::types::c_uint,
10653}
10654#[repr(C)]
10655#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10656pub struct prefixmsg {
10657    pub prefix_family: crate::types::c_uchar,
10658    pub prefix_pad1: crate::types::c_uchar,
10659    pub prefix_pad2: crate::types::c_ushort,
10660    pub prefix_ifindex: crate::types::c_int,
10661    pub prefix_type: crate::types::c_uchar,
10662    pub prefix_len: crate::types::c_uchar,
10663    pub prefix_flags: crate::types::c_uchar,
10664    pub prefix_pad3: crate::types::c_uchar,
10665}
10666pub const PREFIX_UNSPEC: _bindgen_ty_71 = 0;
10667pub const PREFIX_ADDRESS: _bindgen_ty_71 = 1;
10668pub const PREFIX_CACHEINFO: _bindgen_ty_71 = 2;
10669pub const __PREFIX_MAX: _bindgen_ty_71 = 3;
10670pub type _bindgen_ty_71 = crate::types::c_uint;
10671#[repr(C)]
10672#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10673pub struct prefix_cacheinfo {
10674    pub preferred_time: __u32,
10675    pub valid_time: __u32,
10676}
10677#[repr(C)]
10678#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10679pub struct tcmsg {
10680    pub tcm_family: crate::types::c_uchar,
10681    pub tcm__pad1: crate::types::c_uchar,
10682    pub tcm__pad2: crate::types::c_ushort,
10683    pub tcm_ifindex: crate::types::c_int,
10684    pub tcm_handle: __u32,
10685    pub tcm_parent: __u32,
10686    pub tcm_info: __u32,
10687}
10688pub const TCA_UNSPEC: _bindgen_ty_72 = 0;
10689pub const TCA_KIND: _bindgen_ty_72 = 1;
10690pub const TCA_OPTIONS: _bindgen_ty_72 = 2;
10691pub const TCA_STATS: _bindgen_ty_72 = 3;
10692pub const TCA_XSTATS: _bindgen_ty_72 = 4;
10693pub const TCA_RATE: _bindgen_ty_72 = 5;
10694pub const TCA_FCNT: _bindgen_ty_72 = 6;
10695pub const TCA_STATS2: _bindgen_ty_72 = 7;
10696pub const TCA_STAB: _bindgen_ty_72 = 8;
10697pub const TCA_PAD: _bindgen_ty_72 = 9;
10698pub const TCA_DUMP_INVISIBLE: _bindgen_ty_72 = 10;
10699pub const TCA_CHAIN: _bindgen_ty_72 = 11;
10700pub const TCA_HW_OFFLOAD: _bindgen_ty_72 = 12;
10701pub const TCA_INGRESS_BLOCK: _bindgen_ty_72 = 13;
10702pub const TCA_EGRESS_BLOCK: _bindgen_ty_72 = 14;
10703pub const TCA_DUMP_FLAGS: _bindgen_ty_72 = 15;
10704pub const TCA_EXT_WARN_MSG: _bindgen_ty_72 = 16;
10705pub const __TCA_MAX: _bindgen_ty_72 = 17;
10706pub type _bindgen_ty_72 = crate::types::c_uint;
10707#[repr(C)]
10708#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10709pub struct nduseroptmsg {
10710    pub nduseropt_family: crate::types::c_uchar,
10711    pub nduseropt_pad1: crate::types::c_uchar,
10712    pub nduseropt_opts_len: crate::types::c_ushort,
10713    pub nduseropt_ifindex: crate::types::c_int,
10714    pub nduseropt_icmp_type: __u8,
10715    pub nduseropt_icmp_code: __u8,
10716    pub nduseropt_pad2: crate::types::c_ushort,
10717    pub nduseropt_pad3: crate::types::c_uint,
10718}
10719pub const NDUSEROPT_UNSPEC: _bindgen_ty_73 = 0;
10720pub const NDUSEROPT_SRCADDR: _bindgen_ty_73 = 1;
10721pub const __NDUSEROPT_MAX: _bindgen_ty_73 = 2;
10722pub type _bindgen_ty_73 = crate::types::c_uint;
10723pub const rtnetlink_groups_RTNLGRP_NONE: rtnetlink_groups = 0;
10724pub const rtnetlink_groups_RTNLGRP_LINK: rtnetlink_groups = 1;
10725pub const rtnetlink_groups_RTNLGRP_NOTIFY: rtnetlink_groups = 2;
10726pub const rtnetlink_groups_RTNLGRP_NEIGH: rtnetlink_groups = 3;
10727pub const rtnetlink_groups_RTNLGRP_TC: rtnetlink_groups = 4;
10728pub const rtnetlink_groups_RTNLGRP_IPV4_IFADDR: rtnetlink_groups = 5;
10729pub const rtnetlink_groups_RTNLGRP_IPV4_MROUTE: rtnetlink_groups = 6;
10730pub const rtnetlink_groups_RTNLGRP_IPV4_ROUTE: rtnetlink_groups = 7;
10731pub const rtnetlink_groups_RTNLGRP_IPV4_RULE: rtnetlink_groups = 8;
10732pub const rtnetlink_groups_RTNLGRP_IPV6_IFADDR: rtnetlink_groups = 9;
10733pub const rtnetlink_groups_RTNLGRP_IPV6_MROUTE: rtnetlink_groups = 10;
10734pub const rtnetlink_groups_RTNLGRP_IPV6_ROUTE: rtnetlink_groups = 11;
10735pub const rtnetlink_groups_RTNLGRP_IPV6_IFINFO: rtnetlink_groups = 12;
10736pub const rtnetlink_groups_RTNLGRP_DECnet_IFADDR: rtnetlink_groups = 13;
10737pub const rtnetlink_groups_RTNLGRP_NOP2: rtnetlink_groups = 14;
10738pub const rtnetlink_groups_RTNLGRP_DECnet_ROUTE: rtnetlink_groups = 15;
10739pub const rtnetlink_groups_RTNLGRP_DECnet_RULE: rtnetlink_groups = 16;
10740pub const rtnetlink_groups_RTNLGRP_NOP4: rtnetlink_groups = 17;
10741pub const rtnetlink_groups_RTNLGRP_IPV6_PREFIX: rtnetlink_groups = 18;
10742pub const rtnetlink_groups_RTNLGRP_IPV6_RULE: rtnetlink_groups = 19;
10743pub const rtnetlink_groups_RTNLGRP_ND_USEROPT: rtnetlink_groups = 20;
10744pub const rtnetlink_groups_RTNLGRP_PHONET_IFADDR: rtnetlink_groups = 21;
10745pub const rtnetlink_groups_RTNLGRP_PHONET_ROUTE: rtnetlink_groups = 22;
10746pub const rtnetlink_groups_RTNLGRP_DCB: rtnetlink_groups = 23;
10747pub const rtnetlink_groups_RTNLGRP_IPV4_NETCONF: rtnetlink_groups = 24;
10748pub const rtnetlink_groups_RTNLGRP_IPV6_NETCONF: rtnetlink_groups = 25;
10749pub const rtnetlink_groups_RTNLGRP_MDB: rtnetlink_groups = 26;
10750pub const rtnetlink_groups_RTNLGRP_MPLS_ROUTE: rtnetlink_groups = 27;
10751pub const rtnetlink_groups_RTNLGRP_NSID: rtnetlink_groups = 28;
10752pub const rtnetlink_groups_RTNLGRP_MPLS_NETCONF: rtnetlink_groups = 29;
10753pub const rtnetlink_groups_RTNLGRP_IPV4_MROUTE_R: rtnetlink_groups = 30;
10754pub const rtnetlink_groups_RTNLGRP_IPV6_MROUTE_R: rtnetlink_groups = 31;
10755pub const rtnetlink_groups_RTNLGRP_NEXTHOP: rtnetlink_groups = 32;
10756pub const rtnetlink_groups_RTNLGRP_BRVLAN: rtnetlink_groups = 33;
10757pub const rtnetlink_groups_RTNLGRP_MCTP_IFADDR: rtnetlink_groups = 34;
10758pub const rtnetlink_groups_RTNLGRP_TUNNEL: rtnetlink_groups = 35;
10759pub const rtnetlink_groups_RTNLGRP_STATS: rtnetlink_groups = 36;
10760pub const rtnetlink_groups___RTNLGRP_MAX: rtnetlink_groups = 37;
10761pub type rtnetlink_groups = crate::types::c_uint;
10762#[repr(C)]
10763#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10764pub struct tcamsg {
10765    pub tca_family: crate::types::c_uchar,
10766    pub tca__pad1: crate::types::c_uchar,
10767    pub tca__pad2: crate::types::c_ushort,
10768}
10769pub const TCA_ROOT_UNSPEC: _bindgen_ty_74 = 0;
10770pub const TCA_ROOT_TAB: _bindgen_ty_74 = 1;
10771pub const TCA_ROOT_FLAGS: _bindgen_ty_74 = 2;
10772pub const TCA_ROOT_COUNT: _bindgen_ty_74 = 3;
10773pub const TCA_ROOT_TIME_DELTA: _bindgen_ty_74 = 4;
10774pub const TCA_ROOT_EXT_WARN_MSG: _bindgen_ty_74 = 5;
10775pub const __TCA_ROOT_MAX: _bindgen_ty_74 = 6;
10776pub type _bindgen_ty_74 = crate::types::c_uint;
10777#[repr(C)]
10778#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10779pub struct fib_rule_hdr {
10780    pub family: __u8,
10781    pub dst_len: __u8,
10782    pub src_len: __u8,
10783    pub tos: __u8,
10784    pub table: __u8,
10785    pub res1: __u8,
10786    pub res2: __u8,
10787    pub action: __u8,
10788    pub flags: __u32,
10789}
10790#[repr(C)]
10791#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10792pub struct fib_rule_uid_range {
10793    pub start: __u32,
10794    pub end: __u32,
10795}
10796#[repr(C)]
10797#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10798pub struct fib_rule_port_range {
10799    pub start: __u16,
10800    pub end: __u16,
10801}
10802pub const FRA_UNSPEC: _bindgen_ty_75 = 0;
10803pub const FRA_DST: _bindgen_ty_75 = 1;
10804pub const FRA_SRC: _bindgen_ty_75 = 2;
10805pub const FRA_IIFNAME: _bindgen_ty_75 = 3;
10806pub const FRA_GOTO: _bindgen_ty_75 = 4;
10807pub const FRA_UNUSED2: _bindgen_ty_75 = 5;
10808pub const FRA_PRIORITY: _bindgen_ty_75 = 6;
10809pub const FRA_UNUSED3: _bindgen_ty_75 = 7;
10810pub const FRA_UNUSED4: _bindgen_ty_75 = 8;
10811pub const FRA_UNUSED5: _bindgen_ty_75 = 9;
10812pub const FRA_FWMARK: _bindgen_ty_75 = 10;
10813pub const FRA_FLOW: _bindgen_ty_75 = 11;
10814pub const FRA_TUN_ID: _bindgen_ty_75 = 12;
10815pub const FRA_SUPPRESS_IFGROUP: _bindgen_ty_75 = 13;
10816pub const FRA_SUPPRESS_PREFIXLEN: _bindgen_ty_75 = 14;
10817pub const FRA_TABLE: _bindgen_ty_75 = 15;
10818pub const FRA_FWMASK: _bindgen_ty_75 = 16;
10819pub const FRA_OIFNAME: _bindgen_ty_75 = 17;
10820pub const FRA_PAD: _bindgen_ty_75 = 18;
10821pub const FRA_L3MDEV: _bindgen_ty_75 = 19;
10822pub const FRA_UID_RANGE: _bindgen_ty_75 = 20;
10823pub const FRA_PROTOCOL: _bindgen_ty_75 = 21;
10824pub const FRA_IP_PROTO: _bindgen_ty_75 = 22;
10825pub const FRA_SPORT_RANGE: _bindgen_ty_75 = 23;
10826pub const FRA_DPORT_RANGE: _bindgen_ty_75 = 24;
10827pub const FRA_DSCP: _bindgen_ty_75 = 25;
10828pub const __FRA_MAX: _bindgen_ty_75 = 26;
10829pub type _bindgen_ty_75 = crate::types::c_uint;
10830pub const FR_ACT_UNSPEC: _bindgen_ty_76 = 0;
10831pub const FR_ACT_TO_TBL: _bindgen_ty_76 = 1;
10832pub const FR_ACT_GOTO: _bindgen_ty_76 = 2;
10833pub const FR_ACT_NOP: _bindgen_ty_76 = 3;
10834pub const FR_ACT_RES3: _bindgen_ty_76 = 4;
10835pub const FR_ACT_RES4: _bindgen_ty_76 = 5;
10836pub const FR_ACT_BLACKHOLE: _bindgen_ty_76 = 6;
10837pub const FR_ACT_UNREACHABLE: _bindgen_ty_76 = 7;
10838pub const FR_ACT_PROHIBIT: _bindgen_ty_76 = 8;
10839pub const __FR_ACT_MAX: _bindgen_ty_76 = 9;
10840pub type _bindgen_ty_76 = crate::types::c_uint;
10841#[repr(C)]
10842#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10843pub struct sock_filter {
10844    pub code: __u16,
10845    pub jt: __u8,
10846    pub jf: __u8,
10847    pub k: __u32,
10848}
10849#[repr(C)]
10850#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10851pub struct sock_fprog {
10852    pub len: crate::types::c_ushort,
10853    pub __bindgen_padding_0: [u8; 6usize],
10854    pub filter: uref<sock_filter>,
10855}
10856impl Default for sock_fprog {
10857    fn default() -> Self {
10858        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10859        unsafe {
10860            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10861            s.assume_init()
10862        }
10863    }
10864}
10865#[repr(C)]
10866#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10867pub struct fsverity_enable_arg {
10868    pub version: __u32,
10869    pub hash_algorithm: __u32,
10870    pub block_size: __u32,
10871    pub salt_size: __u32,
10872    pub salt_ptr: __u64,
10873    pub sig_size: __u32,
10874    pub __reserved1: __u32,
10875    pub sig_ptr: __u64,
10876    pub __reserved2: [__u64; 11usize],
10877}
10878#[repr(C)]
10879#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
10880pub struct fsverity_digest {
10881    pub digest_algorithm: __u16,
10882    pub digest_size: __u16,
10883    pub digest: __IncompleteArrayField<__u8>,
10884}
10885#[repr(C)]
10886#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10887pub struct fsverity_descriptor {
10888    pub version: __u8,
10889    pub hash_algorithm: __u8,
10890    pub log_blocksize: __u8,
10891    pub salt_size: __u8,
10892    pub __reserved_0x04: __le32,
10893    pub data_size: __le64,
10894    pub root_hash: [__u8; 64usize],
10895    pub salt: [__u8; 32usize],
10896    pub __reserved: [__u8; 144usize],
10897}
10898impl Default for fsverity_descriptor {
10899    fn default() -> Self {
10900        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10901        unsafe {
10902            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10903            s.assume_init()
10904        }
10905    }
10906}
10907#[repr(C)]
10908#[derive(Debug, Default)]
10909pub struct fsverity_formatted_digest {
10910    pub magic: [crate::types::c_char; 8usize],
10911    pub digest_algorithm: __le16,
10912    pub digest_size: __le16,
10913    pub digest: __IncompleteArrayField<__u8>,
10914}
10915#[repr(C)]
10916#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10917pub struct fsverity_read_metadata_arg {
10918    pub metadata_type: __u64,
10919    pub offset: __u64,
10920    pub length: __u64,
10921    pub buf_ptr: __u64,
10922    pub __reserved: __u64,
10923}
10924#[repr(C)]
10925#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10926pub struct futex_waitv {
10927    pub val: __u64,
10928    pub uaddr: __u64,
10929    pub flags: __u32,
10930    pub __reserved: __u32,
10931}
10932#[repr(C)]
10933#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10934pub struct robust_list {
10935    pub next: uref<robust_list>,
10936}
10937impl Default for robust_list {
10938    fn default() -> Self {
10939        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10940        unsafe {
10941            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10942            s.assume_init()
10943        }
10944    }
10945}
10946#[repr(C)]
10947#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10948pub struct robust_list_head {
10949    pub list: robust_list,
10950    pub futex_offset: crate::types::c_long,
10951    pub list_op_pending: uref<robust_list>,
10952}
10953impl Default for robust_list_head {
10954    fn default() -> Self {
10955        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10956        unsafe {
10957            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10958            s.assume_init()
10959        }
10960    }
10961}
10962#[repr(C)]
10963#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10964pub struct sync_serial_settings {
10965    pub clock_rate: crate::types::c_uint,
10966    pub clock_type: crate::types::c_uint,
10967    pub loopback: crate::types::c_ushort,
10968    pub __bindgen_padding_0: [u8; 2usize],
10969}
10970#[repr(C)]
10971#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10972pub struct te1_settings {
10973    pub clock_rate: crate::types::c_uint,
10974    pub clock_type: crate::types::c_uint,
10975    pub loopback: crate::types::c_ushort,
10976    pub __bindgen_padding_0: [u8; 2usize],
10977    pub slot_map: crate::types::c_uint,
10978}
10979#[repr(C)]
10980#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10981pub struct raw_hdlc_proto {
10982    pub encoding: crate::types::c_ushort,
10983    pub parity: crate::types::c_ushort,
10984}
10985#[repr(C)]
10986#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10987pub struct fr_proto {
10988    pub t391: crate::types::c_uint,
10989    pub t392: crate::types::c_uint,
10990    pub n391: crate::types::c_uint,
10991    pub n392: crate::types::c_uint,
10992    pub n393: crate::types::c_uint,
10993    pub lmi: crate::types::c_ushort,
10994    pub dce: crate::types::c_ushort,
10995}
10996#[repr(C)]
10997#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10998pub struct fr_proto_pvc {
10999    pub dlci: crate::types::c_uint,
11000}
11001#[repr(C)]
11002#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11003pub struct fr_proto_pvc_info {
11004    pub dlci: crate::types::c_uint,
11005    pub master: [crate::types::c_char; 16usize],
11006}
11007#[repr(C)]
11008#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11009pub struct cisco_proto {
11010    pub interval: crate::types::c_uint,
11011    pub timeout: crate::types::c_uint,
11012}
11013#[repr(C)]
11014#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11015pub struct x25_hdlc_proto {
11016    pub dce: crate::types::c_ushort,
11017    pub __bindgen_padding_0: [u8; 2usize],
11018    pub modulo: crate::types::c_uint,
11019    pub window: crate::types::c_uint,
11020    pub t1: crate::types::c_uint,
11021    pub t2: crate::types::c_uint,
11022    pub n2: crate::types::c_uint,
11023}
11024pub const net_device_flags_IFF_UP: net_device_flags = 1;
11025pub const net_device_flags_IFF_BROADCAST: net_device_flags = 2;
11026pub const net_device_flags_IFF_DEBUG: net_device_flags = 4;
11027pub const net_device_flags_IFF_LOOPBACK: net_device_flags = 8;
11028pub const net_device_flags_IFF_POINTOPOINT: net_device_flags = 16;
11029pub const net_device_flags_IFF_NOTRAILERS: net_device_flags = 32;
11030pub const net_device_flags_IFF_RUNNING: net_device_flags = 64;
11031pub const net_device_flags_IFF_NOARP: net_device_flags = 128;
11032pub const net_device_flags_IFF_PROMISC: net_device_flags = 256;
11033pub const net_device_flags_IFF_ALLMULTI: net_device_flags = 512;
11034pub const net_device_flags_IFF_MASTER: net_device_flags = 1024;
11035pub const net_device_flags_IFF_SLAVE: net_device_flags = 2048;
11036pub const net_device_flags_IFF_MULTICAST: net_device_flags = 4096;
11037pub const net_device_flags_IFF_PORTSEL: net_device_flags = 8192;
11038pub const net_device_flags_IFF_AUTOMEDIA: net_device_flags = 16384;
11039pub const net_device_flags_IFF_DYNAMIC: net_device_flags = 32768;
11040pub const net_device_flags_IFF_LOWER_UP: net_device_flags = 65536;
11041pub const net_device_flags_IFF_DORMANT: net_device_flags = 131072;
11042pub const net_device_flags_IFF_ECHO: net_device_flags = 262144;
11043pub type net_device_flags = crate::types::c_uint;
11044pub const IF_OPER_UNKNOWN: _bindgen_ty_77 = 0;
11045pub const IF_OPER_NOTPRESENT: _bindgen_ty_77 = 1;
11046pub const IF_OPER_DOWN: _bindgen_ty_77 = 2;
11047pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_77 = 3;
11048pub const IF_OPER_TESTING: _bindgen_ty_77 = 4;
11049pub const IF_OPER_DORMANT: _bindgen_ty_77 = 5;
11050pub const IF_OPER_UP: _bindgen_ty_77 = 6;
11051pub type _bindgen_ty_77 = crate::types::c_uint;
11052pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_78 = 0;
11053pub const IF_LINK_MODE_DORMANT: _bindgen_ty_78 = 1;
11054pub const IF_LINK_MODE_TESTING: _bindgen_ty_78 = 2;
11055pub type _bindgen_ty_78 = crate::types::c_uint;
11056#[repr(C)]
11057#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11058pub struct ifmap {
11059    pub mem_start: crate::types::c_ulong,
11060    pub mem_end: crate::types::c_ulong,
11061    pub base_addr: crate::types::c_ushort,
11062    pub irq: crate::types::c_uchar,
11063    pub dma: crate::types::c_uchar,
11064    pub port: crate::types::c_uchar,
11065    pub __bindgen_padding_0: [u8; 3usize],
11066}
11067#[repr(C)]
11068#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11069pub struct if_settings {
11070    pub type_: crate::types::c_uint,
11071    pub size: crate::types::c_uint,
11072    pub ifs_ifsu: if_settings__bindgen_ty_1,
11073}
11074#[repr(C)]
11075#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11076pub union if_settings__bindgen_ty_1 {
11077    pub raw_hdlc: uref<raw_hdlc_proto>,
11078    pub cisco: uref<cisco_proto>,
11079    pub fr: uref<fr_proto>,
11080    pub fr_pvc: uref<fr_proto_pvc>,
11081    pub fr_pvc_info: uref<fr_proto_pvc_info>,
11082    pub x25: uref<x25_hdlc_proto>,
11083    pub sync: uref<sync_serial_settings>,
11084    pub te1: uref<te1_settings>,
11085}
11086impl Default for if_settings__bindgen_ty_1 {
11087    fn default() -> Self {
11088        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11089        unsafe {
11090            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11091            s.assume_init()
11092        }
11093    }
11094}
11095impl Default for if_settings {
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 struct ifreq {
11107    pub ifr_ifrn: ifreq__bindgen_ty_1,
11108    pub ifr_ifru: ifreq__bindgen_ty_2,
11109}
11110#[repr(C)]
11111#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11112pub union ifreq__bindgen_ty_1 {
11113    pub ifrn_name: [crate::types::c_char; 16usize],
11114}
11115impl Default for ifreq__bindgen_ty_1 {
11116    fn default() -> Self {
11117        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11118        unsafe {
11119            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11120            s.assume_init()
11121        }
11122    }
11123}
11124#[repr(C)]
11125#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11126pub union ifreq__bindgen_ty_2 {
11127    pub ifru_addr: sockaddr,
11128    pub ifru_dstaddr: sockaddr,
11129    pub ifru_broadaddr: sockaddr,
11130    pub ifru_netmask: sockaddr,
11131    pub ifru_hwaddr: sockaddr,
11132    pub ifru_flags: crate::types::c_short,
11133    pub ifru_ivalue: crate::types::c_int,
11134    pub ifru_mtu: crate::types::c_int,
11135    pub ifru_map: ifmap,
11136    pub ifru_slave: [crate::types::c_char; 16usize],
11137    pub ifru_newname: [crate::types::c_char; 16usize],
11138    pub ifru_data: uaddr,
11139    pub ifru_settings: if_settings,
11140}
11141impl Default for ifreq__bindgen_ty_2 {
11142    fn default() -> Self {
11143        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11144        unsafe {
11145            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11146            s.assume_init()
11147        }
11148    }
11149}
11150impl Default for ifreq {
11151    fn default() -> Self {
11152        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11153        unsafe {
11154            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11155            s.assume_init()
11156        }
11157    }
11158}
11159#[repr(C)]
11160#[derive(Copy, Clone)]
11161pub struct ifconf {
11162    pub ifc_len: crate::types::c_int,
11163    pub __bindgen_padding_0: [u8; 4usize],
11164    pub ifc_ifcu: ifconf__bindgen_ty_1,
11165}
11166#[repr(C)]
11167#[derive(Copy, Clone)]
11168pub union ifconf__bindgen_ty_1 {
11169    pub ifcu_buf: uref<crate::types::c_char>,
11170    pub ifcu_req: uref<ifreq>,
11171}
11172impl Default for ifconf__bindgen_ty_1 {
11173    fn default() -> Self {
11174        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11175        unsafe {
11176            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11177            s.assume_init()
11178        }
11179    }
11180}
11181impl Default for ifconf {
11182    fn default() -> Self {
11183        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11184        unsafe {
11185            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11186            s.assume_init()
11187        }
11188    }
11189}
11190#[repr(C, packed)]
11191#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11192pub struct ethhdr {
11193    pub h_dest: [crate::types::c_uchar; 6usize],
11194    pub h_source: [crate::types::c_uchar; 6usize],
11195    pub h_proto: __be16,
11196}
11197#[repr(C)]
11198#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11199pub struct sockaddr_pkt {
11200    pub spkt_family: crate::types::c_ushort,
11201    pub spkt_device: [crate::types::c_uchar; 14usize],
11202    pub spkt_protocol: __be16,
11203}
11204#[repr(C)]
11205#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
11206pub struct sockaddr_ll {
11207    pub sll_family: crate::types::c_ushort,
11208    pub sll_protocol: __be16,
11209    pub sll_ifindex: crate::types::c_int,
11210    pub sll_hatype: crate::types::c_ushort,
11211    pub sll_pkttype: crate::types::c_uchar,
11212    pub sll_halen: crate::types::c_uchar,
11213    pub sll_addr: [crate::types::c_uchar; 8usize],
11214}
11215#[repr(C)]
11216#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11217pub struct tpacket_stats {
11218    pub tp_packets: crate::types::c_uint,
11219    pub tp_drops: crate::types::c_uint,
11220}
11221#[repr(C)]
11222#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11223pub struct tpacket_stats_v3 {
11224    pub tp_packets: crate::types::c_uint,
11225    pub tp_drops: crate::types::c_uint,
11226    pub tp_freeze_q_cnt: crate::types::c_uint,
11227}
11228#[repr(C)]
11229#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11230pub struct tpacket_rollover_stats {
11231    pub tp_all: __u64,
11232    pub tp_huge: __u64,
11233    pub tp_failed: __u64,
11234}
11235#[repr(C)]
11236#[derive(Copy, Clone)]
11237pub union tpacket_stats_u {
11238    pub stats1: tpacket_stats,
11239    pub stats3: tpacket_stats_v3,
11240}
11241impl Default for tpacket_stats_u {
11242    fn default() -> Self {
11243        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11244        unsafe {
11245            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11246            s.assume_init()
11247        }
11248    }
11249}
11250#[repr(C)]
11251#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11252pub struct tpacket_auxdata {
11253    pub tp_status: __u32,
11254    pub tp_len: __u32,
11255    pub tp_snaplen: __u32,
11256    pub tp_mac: __u16,
11257    pub tp_net: __u16,
11258    pub tp_vlan_tci: __u16,
11259    pub tp_vlan_tpid: __u16,
11260}
11261#[repr(C)]
11262#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11263pub struct tpacket_hdr {
11264    pub tp_status: crate::types::c_ulong,
11265    pub tp_len: crate::types::c_uint,
11266    pub tp_snaplen: crate::types::c_uint,
11267    pub tp_mac: crate::types::c_ushort,
11268    pub tp_net: crate::types::c_ushort,
11269    pub tp_sec: crate::types::c_uint,
11270    pub tp_usec: crate::types::c_uint,
11271    pub __bindgen_padding_0: [u8; 4usize],
11272}
11273#[repr(C)]
11274#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11275pub struct tpacket2_hdr {
11276    pub tp_status: __u32,
11277    pub tp_len: __u32,
11278    pub tp_snaplen: __u32,
11279    pub tp_mac: __u16,
11280    pub tp_net: __u16,
11281    pub tp_sec: __u32,
11282    pub tp_nsec: __u32,
11283    pub tp_vlan_tci: __u16,
11284    pub tp_vlan_tpid: __u16,
11285    pub tp_padding: [__u8; 4usize],
11286}
11287#[repr(C)]
11288#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11289pub struct tpacket_hdr_variant1 {
11290    pub tp_rxhash: __u32,
11291    pub tp_vlan_tci: __u32,
11292    pub tp_vlan_tpid: __u16,
11293    pub tp_padding: __u16,
11294}
11295#[repr(C)]
11296#[derive(Copy, Clone)]
11297pub struct tpacket3_hdr {
11298    pub tp_next_offset: __u32,
11299    pub tp_sec: __u32,
11300    pub tp_nsec: __u32,
11301    pub tp_snaplen: __u32,
11302    pub tp_len: __u32,
11303    pub tp_status: __u32,
11304    pub tp_mac: __u16,
11305    pub tp_net: __u16,
11306    pub __bindgen_anon_1: tpacket3_hdr__bindgen_ty_1,
11307    pub tp_padding: [__u8; 8usize],
11308}
11309#[repr(C)]
11310#[derive(Copy, Clone)]
11311pub union tpacket3_hdr__bindgen_ty_1 {
11312    pub hv1: tpacket_hdr_variant1,
11313}
11314impl Default for tpacket3_hdr__bindgen_ty_1 {
11315    fn default() -> Self {
11316        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11317        unsafe {
11318            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11319            s.assume_init()
11320        }
11321    }
11322}
11323impl Default for tpacket3_hdr {
11324    fn default() -> Self {
11325        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11326        unsafe {
11327            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11328            s.assume_init()
11329        }
11330    }
11331}
11332#[repr(C)]
11333#[derive(Copy, Clone)]
11334pub struct tpacket_bd_ts {
11335    pub ts_sec: crate::types::c_uint,
11336    pub __bindgen_anon_1: tpacket_bd_ts__bindgen_ty_1,
11337}
11338#[repr(C)]
11339#[derive(Copy, Clone)]
11340pub union tpacket_bd_ts__bindgen_ty_1 {
11341    pub ts_usec: crate::types::c_uint,
11342    pub ts_nsec: crate::types::c_uint,
11343}
11344impl Default for tpacket_bd_ts__bindgen_ty_1 {
11345    fn default() -> Self {
11346        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11347        unsafe {
11348            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11349            s.assume_init()
11350        }
11351    }
11352}
11353impl Default for tpacket_bd_ts {
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 struct tpacket_hdr_v1 {
11365    pub block_status: __u32,
11366    pub num_pkts: __u32,
11367    pub offset_to_first_pkt: __u32,
11368    pub blk_len: __u32,
11369    pub seq_num: __u64,
11370    pub ts_first_pkt: tpacket_bd_ts,
11371    pub ts_last_pkt: tpacket_bd_ts,
11372}
11373impl Default for tpacket_hdr_v1 {
11374    fn default() -> Self {
11375        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11376        unsafe {
11377            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11378            s.assume_init()
11379        }
11380    }
11381}
11382#[repr(C)]
11383#[derive(Copy, Clone)]
11384pub union tpacket_bd_header_u {
11385    pub bh1: tpacket_hdr_v1,
11386}
11387impl Default for tpacket_bd_header_u {
11388    fn default() -> Self {
11389        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11390        unsafe {
11391            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11392            s.assume_init()
11393        }
11394    }
11395}
11396#[repr(C)]
11397#[derive(Copy, Clone)]
11398pub struct tpacket_block_desc {
11399    pub version: __u32,
11400    pub offset_to_priv: __u32,
11401    pub hdr: tpacket_bd_header_u,
11402}
11403impl Default for tpacket_block_desc {
11404    fn default() -> Self {
11405        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11406        unsafe {
11407            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11408            s.assume_init()
11409        }
11410    }
11411}
11412pub const tpacket_versions_TPACKET_V1: tpacket_versions = 0;
11413pub const tpacket_versions_TPACKET_V2: tpacket_versions = 1;
11414pub const tpacket_versions_TPACKET_V3: tpacket_versions = 2;
11415pub type tpacket_versions = crate::types::c_uint;
11416#[repr(C)]
11417#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11418pub struct tpacket_req {
11419    pub tp_block_size: crate::types::c_uint,
11420    pub tp_block_nr: crate::types::c_uint,
11421    pub tp_frame_size: crate::types::c_uint,
11422    pub tp_frame_nr: crate::types::c_uint,
11423}
11424#[repr(C)]
11425#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11426pub struct tpacket_req3 {
11427    pub tp_block_size: crate::types::c_uint,
11428    pub tp_block_nr: crate::types::c_uint,
11429    pub tp_frame_size: crate::types::c_uint,
11430    pub tp_frame_nr: crate::types::c_uint,
11431    pub tp_retire_blk_tov: crate::types::c_uint,
11432    pub tp_sizeof_priv: crate::types::c_uint,
11433    pub tp_feature_req_word: crate::types::c_uint,
11434}
11435#[repr(C)]
11436#[derive(Copy, Clone)]
11437pub union tpacket_req_u {
11438    pub req: tpacket_req,
11439    pub req3: tpacket_req3,
11440}
11441impl Default for tpacket_req_u {
11442    fn default() -> Self {
11443        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11444        unsafe {
11445            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11446            s.assume_init()
11447        }
11448    }
11449}
11450#[repr(C)]
11451#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11452pub struct packet_mreq {
11453    pub mr_ifindex: crate::types::c_int,
11454    pub mr_type: crate::types::c_ushort,
11455    pub mr_alen: crate::types::c_ushort,
11456    pub mr_address: [crate::types::c_uchar; 8usize],
11457}
11458#[repr(C)]
11459#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11460pub struct fanout_args {
11461    pub id: __u16,
11462    pub type_flags: __u16,
11463    pub max_num_members: __u32,
11464}
11465pub const IF_PORT_UNKNOWN: _bindgen_ty_79 = 0;
11466pub const IF_PORT_10BASE2: _bindgen_ty_79 = 1;
11467pub const IF_PORT_10BASET: _bindgen_ty_79 = 2;
11468pub const IF_PORT_AUI: _bindgen_ty_79 = 3;
11469pub const IF_PORT_100BASET: _bindgen_ty_79 = 4;
11470pub const IF_PORT_100BASETX: _bindgen_ty_79 = 5;
11471pub const IF_PORT_100BASEFX: _bindgen_ty_79 = 6;
11472pub type _bindgen_ty_79 = crate::types::c_uint;
11473#[repr(C)]
11474#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11475pub struct arpreq {
11476    pub arp_pa: sockaddr,
11477    pub arp_ha: sockaddr,
11478    pub arp_flags: crate::types::c_int,
11479    pub arp_netmask: sockaddr,
11480    pub arp_dev: [crate::types::c_char; 16usize],
11481}
11482#[repr(C)]
11483#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11484pub struct arpreq_old {
11485    pub arp_pa: sockaddr,
11486    pub arp_ha: sockaddr,
11487    pub arp_flags: crate::types::c_int,
11488    pub arp_netmask: sockaddr,
11489}
11490#[repr(C)]
11491#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11492pub struct arphdr {
11493    pub ar_hrd: __be16,
11494    pub ar_pro: __be16,
11495    pub ar_hln: crate::types::c_uchar,
11496    pub ar_pln: crate::types::c_uchar,
11497    pub ar_op: __be16,
11498}
11499#[repr(C)]
11500#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11501pub struct tun_pi {
11502    pub flags: __u16,
11503    pub proto: __be16,
11504}
11505#[repr(C)]
11506#[derive(Debug, Default)]
11507pub struct tun_filter {
11508    pub flags: __u16,
11509    pub count: __u16,
11510    pub addr: __IncompleteArrayField<[__u8; 6usize]>,
11511}
11512#[repr(C)]
11513#[derive(Debug, Default, Immutable, IntoBytes, KnownLayout)]
11514pub struct inotify_event {
11515    pub wd: __s32,
11516    pub mask: __u32,
11517    pub cookie: __u32,
11518    pub len: __u32,
11519    pub name: __IncompleteArrayField<crate::types::c_char>,
11520}
11521#[repr(C)]
11522#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11523pub struct timespec {
11524    pub tv_sec: __kernel_time_t,
11525    pub tv_nsec: crate::types::c_long,
11526}
11527#[repr(C)]
11528#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11529pub struct __kernel_timespec {
11530    pub tv_sec: __kernel_time64_t,
11531    pub tv_nsec: crate::types::c_longlong,
11532}
11533#[repr(C)]
11534#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11535pub struct __kernel_itimerspec {
11536    pub it_interval: __kernel_timespec,
11537    pub it_value: __kernel_timespec,
11538}
11539#[repr(C)]
11540#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11541pub struct __kernel_old_timespec {
11542    pub tv_sec: __kernel_old_time_t,
11543    pub tv_nsec: crate::types::c_long,
11544}
11545#[repr(C)]
11546#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11547pub struct __kernel_sock_timeval {
11548    pub tv_sec: __s64,
11549    pub tv_usec: __s64,
11550}
11551#[repr(C)]
11552#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11553pub struct timeval {
11554    pub tv_sec: __kernel_old_time_t,
11555    pub tv_usec: __kernel_suseconds_t,
11556}
11557#[repr(C)]
11558#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11559pub struct itimerspec {
11560    pub it_interval: timespec,
11561    pub it_value: timespec,
11562}
11563#[repr(C)]
11564#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11565pub struct itimerval {
11566    pub it_interval: timeval,
11567    pub it_value: timeval,
11568}
11569#[repr(C)]
11570#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11571pub struct timezone {
11572    pub tz_minuteswest: crate::types::c_int,
11573    pub tz_dsttime: crate::types::c_int,
11574}
11575#[repr(C)]
11576#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11577pub struct input_event {
11578    pub time: timeval,
11579    pub type_: __u16,
11580    pub code: __u16,
11581    pub value: __s32,
11582}
11583#[repr(C)]
11584#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11585pub struct input_id {
11586    pub bustype: __u16,
11587    pub vendor: __u16,
11588    pub product: __u16,
11589    pub version: __u16,
11590}
11591#[repr(C)]
11592#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11593pub struct input_absinfo {
11594    pub value: __s32,
11595    pub minimum: __s32,
11596    pub maximum: __s32,
11597    pub fuzz: __s32,
11598    pub flat: __s32,
11599    pub resolution: __s32,
11600}
11601#[repr(C)]
11602#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11603pub struct input_keymap_entry {
11604    pub flags: __u8,
11605    pub len: __u8,
11606    pub index: __u16,
11607    pub keycode: __u32,
11608    pub scancode: [__u8; 32usize],
11609}
11610#[repr(C)]
11611#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11612pub struct input_mask {
11613    pub type_: __u32,
11614    pub codes_size: __u32,
11615    pub codes_ptr: __u64,
11616}
11617#[repr(C)]
11618#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11619pub struct ff_replay {
11620    pub length: __u16,
11621    pub delay: __u16,
11622}
11623#[repr(C)]
11624#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11625pub struct ff_trigger {
11626    pub button: __u16,
11627    pub interval: __u16,
11628}
11629#[repr(C)]
11630#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11631pub struct ff_envelope {
11632    pub attack_length: __u16,
11633    pub attack_level: __u16,
11634    pub fade_length: __u16,
11635    pub fade_level: __u16,
11636}
11637#[repr(C)]
11638#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11639pub struct ff_constant_effect {
11640    pub level: __s16,
11641    pub envelope: ff_envelope,
11642}
11643#[repr(C)]
11644#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11645pub struct ff_ramp_effect {
11646    pub start_level: __s16,
11647    pub end_level: __s16,
11648    pub envelope: ff_envelope,
11649}
11650#[repr(C)]
11651#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11652pub struct ff_condition_effect {
11653    pub right_saturation: __u16,
11654    pub left_saturation: __u16,
11655    pub right_coeff: __s16,
11656    pub left_coeff: __s16,
11657    pub deadband: __u16,
11658    pub center: __s16,
11659}
11660#[repr(C)]
11661#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11662pub struct ff_periodic_effect {
11663    pub waveform: __u16,
11664    pub period: __u16,
11665    pub magnitude: __s16,
11666    pub offset: __s16,
11667    pub phase: __u16,
11668    pub envelope: ff_envelope,
11669    pub __bindgen_padding_0: [u8; 2usize],
11670    pub custom_len: __u32,
11671    pub custom_data: uref<__s16>,
11672}
11673impl Default for ff_periodic_effect {
11674    fn default() -> Self {
11675        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11676        unsafe {
11677            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11678            s.assume_init()
11679        }
11680    }
11681}
11682#[repr(C)]
11683#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11684pub struct ff_rumble_effect {
11685    pub strong_magnitude: __u16,
11686    pub weak_magnitude: __u16,
11687}
11688#[repr(C)]
11689#[derive(Copy, Clone)]
11690pub struct ff_effect {
11691    pub type_: __u16,
11692    pub id: __s16,
11693    pub direction: __u16,
11694    pub trigger: ff_trigger,
11695    pub replay: ff_replay,
11696    pub __bindgen_padding_0: [u8; 2usize],
11697    pub u: ff_effect__bindgen_ty_1,
11698}
11699#[repr(C)]
11700#[derive(Copy, Clone)]
11701pub union ff_effect__bindgen_ty_1 {
11702    pub constant: ff_constant_effect,
11703    pub ramp: ff_ramp_effect,
11704    pub periodic: ff_periodic_effect,
11705    pub condition: [ff_condition_effect; 2usize],
11706    pub rumble: ff_rumble_effect,
11707}
11708impl Default for ff_effect__bindgen_ty_1 {
11709    fn default() -> Self {
11710        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11711        unsafe {
11712            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11713            s.assume_init()
11714        }
11715    }
11716}
11717impl Default for ff_effect {
11718    fn default() -> Self {
11719        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11720        unsafe {
11721            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11722            s.assume_init()
11723        }
11724    }
11725}
11726#[repr(C)]
11727pub struct io_uring_sqe {
11728    pub opcode: __u8,
11729    pub flags: __u8,
11730    pub ioprio: __u16,
11731    pub fd: __s32,
11732    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1,
11733    pub __bindgen_anon_2: io_uring_sqe__bindgen_ty_2,
11734    pub len: __u32,
11735    pub __bindgen_anon_3: io_uring_sqe__bindgen_ty_3,
11736    pub user_data: __u64,
11737    pub __bindgen_anon_4: io_uring_sqe__bindgen_ty_4,
11738    pub personality: __u16,
11739    pub __bindgen_anon_5: io_uring_sqe__bindgen_ty_5,
11740    pub __bindgen_anon_6: io_uring_sqe__bindgen_ty_6,
11741}
11742#[repr(C)]
11743#[derive(Copy, Clone)]
11744pub union io_uring_sqe__bindgen_ty_1 {
11745    pub off: __u64,
11746    pub addr2: __u64,
11747    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1__bindgen_ty_1,
11748}
11749#[repr(C)]
11750#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11751pub struct io_uring_sqe__bindgen_ty_1__bindgen_ty_1 {
11752    pub cmd_op: __u32,
11753    pub __pad1: __u32,
11754}
11755impl Default for io_uring_sqe__bindgen_ty_1 {
11756    fn default() -> Self {
11757        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11758        unsafe {
11759            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11760            s.assume_init()
11761        }
11762    }
11763}
11764#[repr(C)]
11765#[derive(Copy, Clone)]
11766pub union io_uring_sqe__bindgen_ty_2 {
11767    pub addr: __u64,
11768    pub splice_off_in: __u64,
11769    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_2__bindgen_ty_1,
11770}
11771#[repr(C)]
11772#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11773pub struct io_uring_sqe__bindgen_ty_2__bindgen_ty_1 {
11774    pub level: __u32,
11775    pub optname: __u32,
11776}
11777impl Default for io_uring_sqe__bindgen_ty_2 {
11778    fn default() -> Self {
11779        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11780        unsafe {
11781            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11782            s.assume_init()
11783        }
11784    }
11785}
11786#[repr(C)]
11787#[derive(Copy, Clone)]
11788pub union io_uring_sqe__bindgen_ty_3 {
11789    pub rw_flags: __kernel_rwf_t,
11790    pub fsync_flags: __u32,
11791    pub poll_events: __u16,
11792    pub poll32_events: __u32,
11793    pub sync_range_flags: __u32,
11794    pub msg_flags: __u32,
11795    pub timeout_flags: __u32,
11796    pub accept_flags: __u32,
11797    pub cancel_flags: __u32,
11798    pub open_flags: __u32,
11799    pub statx_flags: __u32,
11800    pub fadvise_advice: __u32,
11801    pub splice_flags: __u32,
11802    pub rename_flags: __u32,
11803    pub unlink_flags: __u32,
11804    pub hardlink_flags: __u32,
11805    pub xattr_flags: __u32,
11806    pub msg_ring_flags: __u32,
11807    pub uring_cmd_flags: __u32,
11808    pub waitid_flags: __u32,
11809    pub futex_flags: __u32,
11810    pub install_fd_flags: __u32,
11811    pub nop_flags: __u32,
11812}
11813impl Default for io_uring_sqe__bindgen_ty_3 {
11814    fn default() -> Self {
11815        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11816        unsafe {
11817            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11818            s.assume_init()
11819        }
11820    }
11821}
11822#[repr(C, packed)]
11823#[derive(Copy, Clone)]
11824pub union io_uring_sqe__bindgen_ty_4 {
11825    pub buf_index: __u16,
11826    pub buf_group: __u16,
11827}
11828impl Default for io_uring_sqe__bindgen_ty_4 {
11829    fn default() -> Self {
11830        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11831        unsafe {
11832            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11833            s.assume_init()
11834        }
11835    }
11836}
11837#[repr(C)]
11838#[derive(Copy, Clone)]
11839pub union io_uring_sqe__bindgen_ty_5 {
11840    pub splice_fd_in: __s32,
11841    pub file_index: __u32,
11842    pub optlen: __u32,
11843    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1,
11844}
11845#[repr(C)]
11846#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11847pub struct io_uring_sqe__bindgen_ty_5__bindgen_ty_1 {
11848    pub addr_len: __u16,
11849    pub __pad3: [__u16; 1usize],
11850}
11851impl Default for io_uring_sqe__bindgen_ty_5 {
11852    fn default() -> Self {
11853        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11854        unsafe {
11855            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11856            s.assume_init()
11857        }
11858    }
11859}
11860#[repr(C)]
11861pub struct io_uring_sqe__bindgen_ty_6 {
11862    pub __bindgen_anon_1: __BindgenUnionField<io_uring_sqe__bindgen_ty_6__bindgen_ty_1>,
11863    pub optval: __BindgenUnionField<__u64>,
11864    pub cmd: __BindgenUnionField<[__u8; 0usize]>,
11865    pub bindgen_union_field: __BindgenOpaqueArray8<[u8; 16usize]>,
11866}
11867#[repr(C)]
11868#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11869pub struct io_uring_sqe__bindgen_ty_6__bindgen_ty_1 {
11870    pub addr3: __u64,
11871    pub __pad2: [__u64; 1usize],
11872}
11873impl Default for io_uring_sqe__bindgen_ty_6 {
11874    fn default() -> Self {
11875        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11876        unsafe {
11877            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11878            s.assume_init()
11879        }
11880    }
11881}
11882impl Default for io_uring_sqe {
11883    fn default() -> Self {
11884        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11885        unsafe {
11886            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11887            s.assume_init()
11888        }
11889    }
11890}
11891pub const io_uring_sqe_flags_bit_IOSQE_FIXED_FILE_BIT: io_uring_sqe_flags_bit = 0;
11892pub const io_uring_sqe_flags_bit_IOSQE_IO_DRAIN_BIT: io_uring_sqe_flags_bit = 1;
11893pub const io_uring_sqe_flags_bit_IOSQE_IO_LINK_BIT: io_uring_sqe_flags_bit = 2;
11894pub const io_uring_sqe_flags_bit_IOSQE_IO_HARDLINK_BIT: io_uring_sqe_flags_bit = 3;
11895pub const io_uring_sqe_flags_bit_IOSQE_ASYNC_BIT: io_uring_sqe_flags_bit = 4;
11896pub const io_uring_sqe_flags_bit_IOSQE_BUFFER_SELECT_BIT: io_uring_sqe_flags_bit = 5;
11897pub const io_uring_sqe_flags_bit_IOSQE_CQE_SKIP_SUCCESS_BIT: io_uring_sqe_flags_bit = 6;
11898pub type io_uring_sqe_flags_bit = crate::types::c_uint;
11899pub const io_uring_op_IORING_OP_NOP: io_uring_op = 0;
11900pub const io_uring_op_IORING_OP_READV: io_uring_op = 1;
11901pub const io_uring_op_IORING_OP_WRITEV: io_uring_op = 2;
11902pub const io_uring_op_IORING_OP_FSYNC: io_uring_op = 3;
11903pub const io_uring_op_IORING_OP_READ_FIXED: io_uring_op = 4;
11904pub const io_uring_op_IORING_OP_WRITE_FIXED: io_uring_op = 5;
11905pub const io_uring_op_IORING_OP_POLL_ADD: io_uring_op = 6;
11906pub const io_uring_op_IORING_OP_POLL_REMOVE: io_uring_op = 7;
11907pub const io_uring_op_IORING_OP_SYNC_FILE_RANGE: io_uring_op = 8;
11908pub const io_uring_op_IORING_OP_SENDMSG: io_uring_op = 9;
11909pub const io_uring_op_IORING_OP_RECVMSG: io_uring_op = 10;
11910pub const io_uring_op_IORING_OP_TIMEOUT: io_uring_op = 11;
11911pub const io_uring_op_IORING_OP_TIMEOUT_REMOVE: io_uring_op = 12;
11912pub const io_uring_op_IORING_OP_ACCEPT: io_uring_op = 13;
11913pub const io_uring_op_IORING_OP_ASYNC_CANCEL: io_uring_op = 14;
11914pub const io_uring_op_IORING_OP_LINK_TIMEOUT: io_uring_op = 15;
11915pub const io_uring_op_IORING_OP_CONNECT: io_uring_op = 16;
11916pub const io_uring_op_IORING_OP_FALLOCATE: io_uring_op = 17;
11917pub const io_uring_op_IORING_OP_OPENAT: io_uring_op = 18;
11918pub const io_uring_op_IORING_OP_CLOSE: io_uring_op = 19;
11919pub const io_uring_op_IORING_OP_FILES_UPDATE: io_uring_op = 20;
11920pub const io_uring_op_IORING_OP_STATX: io_uring_op = 21;
11921pub const io_uring_op_IORING_OP_READ: io_uring_op = 22;
11922pub const io_uring_op_IORING_OP_WRITE: io_uring_op = 23;
11923pub const io_uring_op_IORING_OP_FADVISE: io_uring_op = 24;
11924pub const io_uring_op_IORING_OP_MADVISE: io_uring_op = 25;
11925pub const io_uring_op_IORING_OP_SEND: io_uring_op = 26;
11926pub const io_uring_op_IORING_OP_RECV: io_uring_op = 27;
11927pub const io_uring_op_IORING_OP_OPENAT2: io_uring_op = 28;
11928pub const io_uring_op_IORING_OP_EPOLL_CTL: io_uring_op = 29;
11929pub const io_uring_op_IORING_OP_SPLICE: io_uring_op = 30;
11930pub const io_uring_op_IORING_OP_PROVIDE_BUFFERS: io_uring_op = 31;
11931pub const io_uring_op_IORING_OP_REMOVE_BUFFERS: io_uring_op = 32;
11932pub const io_uring_op_IORING_OP_TEE: io_uring_op = 33;
11933pub const io_uring_op_IORING_OP_SHUTDOWN: io_uring_op = 34;
11934pub const io_uring_op_IORING_OP_RENAMEAT: io_uring_op = 35;
11935pub const io_uring_op_IORING_OP_UNLINKAT: io_uring_op = 36;
11936pub const io_uring_op_IORING_OP_MKDIRAT: io_uring_op = 37;
11937pub const io_uring_op_IORING_OP_SYMLINKAT: io_uring_op = 38;
11938pub const io_uring_op_IORING_OP_LINKAT: io_uring_op = 39;
11939pub const io_uring_op_IORING_OP_MSG_RING: io_uring_op = 40;
11940pub const io_uring_op_IORING_OP_FSETXATTR: io_uring_op = 41;
11941pub const io_uring_op_IORING_OP_SETXATTR: io_uring_op = 42;
11942pub const io_uring_op_IORING_OP_FGETXATTR: io_uring_op = 43;
11943pub const io_uring_op_IORING_OP_GETXATTR: io_uring_op = 44;
11944pub const io_uring_op_IORING_OP_SOCKET: io_uring_op = 45;
11945pub const io_uring_op_IORING_OP_URING_CMD: io_uring_op = 46;
11946pub const io_uring_op_IORING_OP_SEND_ZC: io_uring_op = 47;
11947pub const io_uring_op_IORING_OP_SENDMSG_ZC: io_uring_op = 48;
11948pub const io_uring_op_IORING_OP_READ_MULTISHOT: io_uring_op = 49;
11949pub const io_uring_op_IORING_OP_WAITID: io_uring_op = 50;
11950pub const io_uring_op_IORING_OP_FUTEX_WAIT: io_uring_op = 51;
11951pub const io_uring_op_IORING_OP_FUTEX_WAKE: io_uring_op = 52;
11952pub const io_uring_op_IORING_OP_FUTEX_WAITV: io_uring_op = 53;
11953pub const io_uring_op_IORING_OP_FIXED_FD_INSTALL: io_uring_op = 54;
11954pub const io_uring_op_IORING_OP_FTRUNCATE: io_uring_op = 55;
11955pub const io_uring_op_IORING_OP_BIND: io_uring_op = 56;
11956pub const io_uring_op_IORING_OP_LISTEN: io_uring_op = 57;
11957pub const io_uring_op_IORING_OP_LAST: io_uring_op = 58;
11958pub type io_uring_op = crate::types::c_uint;
11959pub const io_uring_msg_ring_flags_IORING_MSG_DATA: io_uring_msg_ring_flags = 0;
11960pub const io_uring_msg_ring_flags_IORING_MSG_SEND_FD: io_uring_msg_ring_flags = 1;
11961pub type io_uring_msg_ring_flags = crate::types::c_uint;
11962#[repr(C)]
11963#[derive(Debug, Default)]
11964pub struct io_uring_cqe {
11965    pub user_data: __u64,
11966    pub res: __s32,
11967    pub flags: __u32,
11968    pub big_cqe: __IncompleteArrayField<__u64>,
11969}
11970#[repr(C)]
11971#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11972pub struct io_sqring_offsets {
11973    pub head: __u32,
11974    pub tail: __u32,
11975    pub ring_mask: __u32,
11976    pub ring_entries: __u32,
11977    pub flags: __u32,
11978    pub dropped: __u32,
11979    pub array: __u32,
11980    pub resv1: __u32,
11981    pub user_addr: __u64,
11982}
11983#[repr(C)]
11984#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11985pub struct io_cqring_offsets {
11986    pub head: __u32,
11987    pub tail: __u32,
11988    pub ring_mask: __u32,
11989    pub ring_entries: __u32,
11990    pub overflow: __u32,
11991    pub cqes: __u32,
11992    pub flags: __u32,
11993    pub resv1: __u32,
11994    pub user_addr: __u64,
11995}
11996#[repr(C)]
11997#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11998pub struct io_uring_params {
11999    pub sq_entries: __u32,
12000    pub cq_entries: __u32,
12001    pub flags: __u32,
12002    pub sq_thread_cpu: __u32,
12003    pub sq_thread_idle: __u32,
12004    pub features: __u32,
12005    pub wq_fd: __u32,
12006    pub resv: [__u32; 3usize],
12007    pub sq_off: io_sqring_offsets,
12008    pub cq_off: io_cqring_offsets,
12009}
12010pub const io_uring_register_op_IORING_REGISTER_BUFFERS: io_uring_register_op = 0;
12011pub const io_uring_register_op_IORING_UNREGISTER_BUFFERS: io_uring_register_op = 1;
12012pub const io_uring_register_op_IORING_REGISTER_FILES: io_uring_register_op = 2;
12013pub const io_uring_register_op_IORING_UNREGISTER_FILES: io_uring_register_op = 3;
12014pub const io_uring_register_op_IORING_REGISTER_EVENTFD: io_uring_register_op = 4;
12015pub const io_uring_register_op_IORING_UNREGISTER_EVENTFD: io_uring_register_op = 5;
12016pub const io_uring_register_op_IORING_REGISTER_FILES_UPDATE: io_uring_register_op = 6;
12017pub const io_uring_register_op_IORING_REGISTER_EVENTFD_ASYNC: io_uring_register_op = 7;
12018pub const io_uring_register_op_IORING_REGISTER_PROBE: io_uring_register_op = 8;
12019pub const io_uring_register_op_IORING_REGISTER_PERSONALITY: io_uring_register_op = 9;
12020pub const io_uring_register_op_IORING_UNREGISTER_PERSONALITY: io_uring_register_op = 10;
12021pub const io_uring_register_op_IORING_REGISTER_RESTRICTIONS: io_uring_register_op = 11;
12022pub const io_uring_register_op_IORING_REGISTER_ENABLE_RINGS: io_uring_register_op = 12;
12023pub const io_uring_register_op_IORING_REGISTER_FILES2: io_uring_register_op = 13;
12024pub const io_uring_register_op_IORING_REGISTER_FILES_UPDATE2: io_uring_register_op = 14;
12025pub const io_uring_register_op_IORING_REGISTER_BUFFERS2: io_uring_register_op = 15;
12026pub const io_uring_register_op_IORING_REGISTER_BUFFERS_UPDATE: io_uring_register_op = 16;
12027pub const io_uring_register_op_IORING_REGISTER_IOWQ_AFF: io_uring_register_op = 17;
12028pub const io_uring_register_op_IORING_UNREGISTER_IOWQ_AFF: io_uring_register_op = 18;
12029pub const io_uring_register_op_IORING_REGISTER_IOWQ_MAX_WORKERS: io_uring_register_op = 19;
12030pub const io_uring_register_op_IORING_REGISTER_RING_FDS: io_uring_register_op = 20;
12031pub const io_uring_register_op_IORING_UNREGISTER_RING_FDS: io_uring_register_op = 21;
12032pub const io_uring_register_op_IORING_REGISTER_PBUF_RING: io_uring_register_op = 22;
12033pub const io_uring_register_op_IORING_UNREGISTER_PBUF_RING: io_uring_register_op = 23;
12034pub const io_uring_register_op_IORING_REGISTER_SYNC_CANCEL: io_uring_register_op = 24;
12035pub const io_uring_register_op_IORING_REGISTER_FILE_ALLOC_RANGE: io_uring_register_op = 25;
12036pub const io_uring_register_op_IORING_REGISTER_PBUF_STATUS: io_uring_register_op = 26;
12037pub const io_uring_register_op_IORING_REGISTER_NAPI: io_uring_register_op = 27;
12038pub const io_uring_register_op_IORING_UNREGISTER_NAPI: io_uring_register_op = 28;
12039pub const io_uring_register_op_IORING_REGISTER_CLOCK: io_uring_register_op = 29;
12040pub const io_uring_register_op_IORING_REGISTER_CLONE_BUFFERS: io_uring_register_op = 30;
12041pub const io_uring_register_op_IORING_REGISTER_LAST: io_uring_register_op = 31;
12042pub const io_uring_register_op_IORING_REGISTER_USE_REGISTERED_RING: io_uring_register_op =
12043    2147483648;
12044pub type io_uring_register_op = crate::types::c_uint;
12045pub const io_wq_type_IO_WQ_BOUND: io_wq_type = 0;
12046pub const io_wq_type_IO_WQ_UNBOUND: io_wq_type = 1;
12047pub type io_wq_type = crate::types::c_uint;
12048#[repr(C)]
12049#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12050pub struct io_uring_files_update {
12051    pub offset: __u32,
12052    pub resv: __u32,
12053    pub fds: __u64,
12054}
12055#[repr(C)]
12056#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12057pub struct io_uring_rsrc_register {
12058    pub nr: __u32,
12059    pub flags: __u32,
12060    pub resv2: __u64,
12061    pub data: __u64,
12062    pub tags: __u64,
12063}
12064#[repr(C)]
12065#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12066pub struct io_uring_rsrc_update {
12067    pub offset: __u32,
12068    pub resv: __u32,
12069    pub data: __u64,
12070}
12071#[repr(C)]
12072#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12073pub struct io_uring_rsrc_update2 {
12074    pub offset: __u32,
12075    pub resv: __u32,
12076    pub data: __u64,
12077    pub tags: __u64,
12078    pub nr: __u32,
12079    pub resv2: __u32,
12080}
12081#[repr(C)]
12082#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12083pub struct io_uring_probe_op {
12084    pub op: __u8,
12085    pub resv: __u8,
12086    pub flags: __u16,
12087    pub resv2: __u32,
12088}
12089#[repr(C)]
12090#[derive(Debug, Default)]
12091pub struct io_uring_probe {
12092    pub last_op: __u8,
12093    pub ops_len: __u8,
12094    pub resv: __u16,
12095    pub resv2: [__u32; 3usize],
12096    pub ops: __IncompleteArrayField<io_uring_probe_op>,
12097}
12098#[repr(C)]
12099#[derive(Copy, Clone)]
12100pub struct io_uring_restriction {
12101    pub opcode: __u16,
12102    pub __bindgen_anon_1: io_uring_restriction__bindgen_ty_1,
12103    pub resv: __u8,
12104    pub resv2: [__u32; 3usize],
12105}
12106#[repr(C)]
12107#[derive(Copy, Clone)]
12108pub union io_uring_restriction__bindgen_ty_1 {
12109    pub register_op: __u8,
12110    pub sqe_op: __u8,
12111    pub sqe_flags: __u8,
12112}
12113impl Default for io_uring_restriction__bindgen_ty_1 {
12114    fn default() -> Self {
12115        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12116        unsafe {
12117            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12118            s.assume_init()
12119        }
12120    }
12121}
12122impl Default for io_uring_restriction {
12123    fn default() -> Self {
12124        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12125        unsafe {
12126            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12127            s.assume_init()
12128        }
12129    }
12130}
12131#[repr(C)]
12132#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12133pub struct io_uring_clock_register {
12134    pub clockid: __u32,
12135    pub __resv: [__u32; 3usize],
12136}
12137pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_80 = 1;
12138pub type _bindgen_ty_80 = crate::types::c_uint;
12139#[repr(C)]
12140#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12141pub struct io_uring_clone_buffers {
12142    pub src_fd: __u32,
12143    pub flags: __u32,
12144    pub pad: [__u32; 6usize],
12145}
12146#[repr(C)]
12147#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12148pub struct io_uring_buf {
12149    pub addr: __u64,
12150    pub len: __u32,
12151    pub bid: __u16,
12152    pub resv: __u16,
12153}
12154#[repr(C)]
12155pub struct io_uring_buf_ring {
12156    pub __bindgen_anon_1: io_uring_buf_ring__bindgen_ty_1,
12157}
12158#[repr(C)]
12159pub struct io_uring_buf_ring__bindgen_ty_1 {
12160    pub __bindgen_anon_1: __BindgenUnionField<io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1>,
12161    pub __bindgen_anon_2: __BindgenUnionField<io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2>,
12162    pub bindgen_union_field: __BindgenOpaqueArray8<[u8; 16usize]>,
12163}
12164#[repr(C)]
12165#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12166pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1 {
12167    pub resv1: __u64,
12168    pub resv2: __u32,
12169    pub resv3: __u16,
12170    pub tail: __u16,
12171}
12172#[repr(C)]
12173#[derive(Debug, Default)]
12174pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2 {
12175    pub __empty_bufs: io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1,
12176    pub bufs: __IncompleteArrayField<io_uring_buf>,
12177}
12178#[repr(C)]
12179#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12180pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 {}
12181impl Default for io_uring_buf_ring__bindgen_ty_1 {
12182    fn default() -> Self {
12183        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12184        unsafe {
12185            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12186            s.assume_init()
12187        }
12188    }
12189}
12190impl Default for io_uring_buf_ring {
12191    fn default() -> Self {
12192        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12193        unsafe {
12194            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12195            s.assume_init()
12196        }
12197    }
12198}
12199pub const io_uring_register_pbuf_ring_flags_IOU_PBUF_RING_MMAP: io_uring_register_pbuf_ring_flags =
12200    1;
12201pub const io_uring_register_pbuf_ring_flags_IOU_PBUF_RING_INC: io_uring_register_pbuf_ring_flags =
12202    2;
12203pub type io_uring_register_pbuf_ring_flags = crate::types::c_uint;
12204#[repr(C)]
12205#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12206pub struct io_uring_buf_reg {
12207    pub ring_addr: __u64,
12208    pub ring_entries: __u32,
12209    pub bgid: __u16,
12210    pub flags: __u16,
12211    pub resv: [__u64; 3usize],
12212}
12213#[repr(C)]
12214#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12215pub struct io_uring_buf_status {
12216    pub buf_group: __u32,
12217    pub head: __u32,
12218    pub resv: [__u32; 8usize],
12219}
12220#[repr(C)]
12221#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12222pub struct io_uring_napi {
12223    pub busy_poll_to: __u32,
12224    pub prefer_busy_poll: __u8,
12225    pub pad: [__u8; 3usize],
12226    pub resv: __u64,
12227}
12228pub const io_uring_register_restriction_op_IORING_RESTRICTION_REGISTER_OP:
12229    io_uring_register_restriction_op = 0;
12230pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_OP:
12231    io_uring_register_restriction_op = 1;
12232pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_FLAGS_ALLOWED:
12233    io_uring_register_restriction_op = 2;
12234pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_FLAGS_REQUIRED:
12235    io_uring_register_restriction_op = 3;
12236pub const io_uring_register_restriction_op_IORING_RESTRICTION_LAST:
12237    io_uring_register_restriction_op = 4;
12238pub type io_uring_register_restriction_op = crate::types::c_uint;
12239#[repr(C)]
12240#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12241pub struct io_uring_getevents_arg {
12242    pub sigmask: __u64,
12243    pub sigmask_sz: __u32,
12244    pub min_wait_usec: __u32,
12245    pub ts: __u64,
12246}
12247#[repr(C)]
12248#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12249pub struct io_uring_sync_cancel_reg {
12250    pub addr: __u64,
12251    pub fd: __s32,
12252    pub flags: __u32,
12253    pub timeout: __kernel_timespec,
12254    pub opcode: __u8,
12255    pub pad: [__u8; 7usize],
12256    pub pad2: [__u64; 3usize],
12257}
12258#[repr(C)]
12259#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12260pub struct io_uring_file_index_range {
12261    pub off: __u32,
12262    pub len: __u32,
12263    pub resv: __u64,
12264}
12265#[repr(C)]
12266#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12267pub struct io_uring_recvmsg_out {
12268    pub namelen: __u32,
12269    pub controllen: __u32,
12270    pub payloadlen: __u32,
12271    pub flags: __u32,
12272}
12273pub const io_uring_socket_op_SOCKET_URING_OP_SIOCINQ: io_uring_socket_op = 0;
12274pub const io_uring_socket_op_SOCKET_URING_OP_SIOCOUTQ: io_uring_socket_op = 1;
12275pub const io_uring_socket_op_SOCKET_URING_OP_GETSOCKOPT: io_uring_socket_op = 2;
12276pub const io_uring_socket_op_SOCKET_URING_OP_SETSOCKOPT: io_uring_socket_op = 3;
12277pub type io_uring_socket_op = crate::types::c_uint;
12278#[repr(C)]
12279#[derive(Copy, Clone)]
12280pub struct iphdr {
12281    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
12282    pub tos: __u8,
12283    pub tot_len: __be16,
12284    pub id: __be16,
12285    pub frag_off: __be16,
12286    pub ttl: __u8,
12287    pub protocol: __u8,
12288    pub check: __sum16,
12289    pub __bindgen_anon_1: iphdr__bindgen_ty_1,
12290}
12291#[repr(C)]
12292#[derive(Copy, Clone)]
12293pub union iphdr__bindgen_ty_1 {
12294    pub __bindgen_anon_1: iphdr__bindgen_ty_1__bindgen_ty_1,
12295    pub addrs: iphdr__bindgen_ty_1__bindgen_ty_2,
12296}
12297#[repr(C)]
12298#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12299pub struct iphdr__bindgen_ty_1__bindgen_ty_1 {
12300    pub saddr: __be32,
12301    pub daddr: __be32,
12302}
12303#[repr(C)]
12304#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12305pub struct iphdr__bindgen_ty_1__bindgen_ty_2 {
12306    pub saddr: __be32,
12307    pub daddr: __be32,
12308}
12309impl Default for iphdr__bindgen_ty_1 {
12310    fn default() -> Self {
12311        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12312        unsafe {
12313            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12314            s.assume_init()
12315        }
12316    }
12317}
12318impl Default for iphdr {
12319    fn default() -> Self {
12320        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12321        unsafe {
12322            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12323            s.assume_init()
12324        }
12325    }
12326}
12327impl iphdr {
12328    #[inline]
12329    pub fn ihl(&self) -> __u8 {
12330        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 4u8>() as u8) }
12331    }
12332    #[inline]
12333    pub fn set_ihl(&mut self, val: __u8) {
12334        unsafe {
12335            let val: u8 = val as _;
12336            self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
12337        }
12338    }
12339    #[inline]
12340    pub unsafe fn ihl_raw(this: *const Self) -> __u8 {
12341        unsafe {
12342            ::std::mem::transmute(
12343                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
12344                    ::std::ptr::addr_of!((*this)._bitfield_1),
12345                ) as u8,
12346            )
12347        }
12348    }
12349    #[inline]
12350    pub unsafe fn set_ihl_raw(this: *mut Self, val: __u8) {
12351        unsafe {
12352            let val: u8 = val as _;
12353            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
12354                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12355                val as u64,
12356            )
12357        }
12358    }
12359    #[inline]
12360    pub fn version(&self) -> __u8 {
12361        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 4u8>() as u8) }
12362    }
12363    #[inline]
12364    pub fn set_version(&mut self, val: __u8) {
12365        unsafe {
12366            let val: u8 = val as _;
12367            self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
12368        }
12369    }
12370    #[inline]
12371    pub unsafe fn version_raw(this: *const Self) -> __u8 {
12372        unsafe {
12373            ::std::mem::transmute(
12374                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
12375                    ::std::ptr::addr_of!((*this)._bitfield_1),
12376                ) as u8,
12377            )
12378        }
12379    }
12380    #[inline]
12381    pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
12382        unsafe {
12383            let val: u8 = val as _;
12384            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
12385                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12386                val as u64,
12387            )
12388        }
12389    }
12390    #[inline]
12391    pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12392        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12393        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
12394            let ihl: u8 = ihl as _;
12395            ihl as u64
12396        });
12397        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
12398            let version: u8 = version as _;
12399            version as u64
12400        });
12401        __bindgen_bitfield_unit
12402    }
12403}
12404#[repr(C)]
12405#[derive(Debug, Default)]
12406pub struct ip_auth_hdr {
12407    pub nexthdr: __u8,
12408    pub hdrlen: __u8,
12409    pub reserved: __be16,
12410    pub spi: __be32,
12411    pub seq_no: __be32,
12412    pub auth_data: __IncompleteArrayField<__u8>,
12413}
12414#[repr(C)]
12415#[derive(Debug, Default)]
12416pub struct ip_esp_hdr {
12417    pub spi: __be32,
12418    pub seq_no: __be32,
12419    pub enc_data: __IncompleteArrayField<__u8>,
12420}
12421#[repr(C)]
12422#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12423pub struct ip_comp_hdr {
12424    pub nexthdr: __u8,
12425    pub flags: __u8,
12426    pub cpi: __be16,
12427}
12428#[repr(C)]
12429#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12430pub struct ip_beet_phdr {
12431    pub nexthdr: __u8,
12432    pub hdrlen: __u8,
12433    pub padlen: __u8,
12434    pub reserved: __u8,
12435}
12436pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_81 = 1;
12437pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_81 = 2;
12438pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_81 = 3;
12439pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_81 = 4;
12440pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_81 = 5;
12441pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_81 = 6;
12442pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_81 = 7;
12443pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_81 = 8;
12444pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_81 = 9;
12445pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_81 = 10;
12446pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_81 = 11;
12447pub const IPV4_DEVCONF_TAG: _bindgen_ty_81 = 12;
12448pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_81 = 13;
12449pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_81 = 14;
12450pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_81 = 15;
12451pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_81 = 16;
12452pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_81 = 17;
12453pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_81 = 18;
12454pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_81 = 19;
12455pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_81 = 20;
12456pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_81 = 21;
12457pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_81 = 22;
12458pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_81 = 23;
12459pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_81 = 24;
12460pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_81 = 25;
12461pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_81 = 26;
12462pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_81 = 27;
12463pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_81 = 28;
12464pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_81 = 29;
12465pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_81 = 30;
12466pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_81 = 31;
12467pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_81 = 32;
12468pub const IPV4_DEVCONF_ARP_EVICT_NOCARRIER: _bindgen_ty_81 = 33;
12469pub const __IPV4_DEVCONF_MAX: _bindgen_ty_81 = 34;
12470pub type _bindgen_ty_81 = crate::types::c_uint;
12471#[repr(C)]
12472#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12473pub struct in6_addr {
12474    pub in6_u: in6_addr__bindgen_ty_1,
12475}
12476#[repr(C)]
12477#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12478pub union in6_addr__bindgen_ty_1 {
12479    pub u6_addr8: [__u8; 16usize],
12480    pub u6_addr16: [__be16; 8usize],
12481    pub u6_addr32: [__be32; 4usize],
12482}
12483impl Default for in6_addr__bindgen_ty_1 {
12484    fn default() -> Self {
12485        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12486        unsafe {
12487            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12488            s.assume_init()
12489        }
12490    }
12491}
12492impl Default for in6_addr {
12493    fn default() -> Self {
12494        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12495        unsafe {
12496            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12497            s.assume_init()
12498        }
12499    }
12500}
12501#[repr(C)]
12502#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12503pub struct sockaddr_in6 {
12504    pub sin6_family: crate::types::c_ushort,
12505    pub sin6_port: __be16,
12506    pub sin6_flowinfo: __be32,
12507    pub sin6_addr: in6_addr,
12508    pub sin6_scope_id: __u32,
12509}
12510impl Default for sockaddr_in6 {
12511    fn default() -> Self {
12512        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12513        unsafe {
12514            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12515            s.assume_init()
12516        }
12517    }
12518}
12519#[repr(C)]
12520#[derive(Copy, Clone)]
12521pub struct ipv6_mreq {
12522    pub ipv6mr_multiaddr: in6_addr,
12523    pub ipv6mr_ifindex: crate::types::c_int,
12524}
12525impl Default for ipv6_mreq {
12526    fn default() -> Self {
12527        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12528        unsafe {
12529            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12530            s.assume_init()
12531        }
12532    }
12533}
12534#[repr(C)]
12535#[derive(Copy, Clone)]
12536pub struct in6_flowlabel_req {
12537    pub flr_dst: in6_addr,
12538    pub flr_label: __be32,
12539    pub flr_action: __u8,
12540    pub flr_share: __u8,
12541    pub flr_flags: __u16,
12542    pub flr_expires: __u16,
12543    pub flr_linger: __u16,
12544    pub __flr_pad: __u32,
12545}
12546impl Default for in6_flowlabel_req {
12547    fn default() -> Self {
12548        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12549        unsafe {
12550            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12551            s.assume_init()
12552        }
12553    }
12554}
12555#[repr(C)]
12556#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12557pub struct in6_pktinfo {
12558    pub ipi6_addr: in6_addr,
12559    pub ipi6_ifindex: crate::types::c_int,
12560}
12561impl Default for in6_pktinfo {
12562    fn default() -> Self {
12563        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12564        unsafe {
12565            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12566            s.assume_init()
12567        }
12568    }
12569}
12570#[repr(C)]
12571#[derive(Copy, Clone)]
12572pub struct ip6_mtuinfo {
12573    pub ip6m_addr: sockaddr_in6,
12574    pub ip6m_mtu: __u32,
12575}
12576impl Default for ip6_mtuinfo {
12577    fn default() -> Self {
12578        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12579        unsafe {
12580            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12581            s.assume_init()
12582        }
12583    }
12584}
12585#[repr(C)]
12586#[derive(Copy, Clone)]
12587pub struct in6_ifreq {
12588    pub ifr6_addr: in6_addr,
12589    pub ifr6_prefixlen: __u32,
12590    pub ifr6_ifindex: crate::types::c_int,
12591}
12592impl Default for in6_ifreq {
12593    fn default() -> Self {
12594        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12595        unsafe {
12596            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12597            s.assume_init()
12598        }
12599    }
12600}
12601#[repr(C)]
12602#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12603pub struct ipv6_rt_hdr {
12604    pub nexthdr: __u8,
12605    pub hdrlen: __u8,
12606    pub type_: __u8,
12607    pub segments_left: __u8,
12608}
12609#[repr(C, packed)]
12610#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12611pub struct ipv6_opt_hdr {
12612    pub nexthdr: __u8,
12613    pub hdrlen: __u8,
12614}
12615#[repr(C)]
12616pub struct rt0_hdr {
12617    pub rt_hdr: ipv6_rt_hdr,
12618    pub reserved: __u32,
12619    pub addr: __IncompleteArrayField<in6_addr>,
12620}
12621impl Default for rt0_hdr {
12622    fn default() -> Self {
12623        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12624        unsafe {
12625            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12626            s.assume_init()
12627        }
12628    }
12629}
12630#[repr(C)]
12631#[derive(Copy, Clone)]
12632pub struct rt2_hdr {
12633    pub rt_hdr: ipv6_rt_hdr,
12634    pub reserved: __u32,
12635    pub addr: in6_addr,
12636}
12637impl Default for rt2_hdr {
12638    fn default() -> Self {
12639        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12640        unsafe {
12641            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12642            s.assume_init()
12643        }
12644    }
12645}
12646#[repr(C, packed)]
12647#[derive(Copy, Clone)]
12648pub struct ipv6_destopt_hao {
12649    pub type_: __u8,
12650    pub length: __u8,
12651    pub addr: in6_addr,
12652}
12653impl Default for ipv6_destopt_hao {
12654    fn default() -> Self {
12655        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12656        unsafe {
12657            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12658            s.assume_init()
12659        }
12660    }
12661}
12662#[repr(C)]
12663#[derive(Copy, Clone)]
12664pub struct ipv6hdr {
12665    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
12666    pub flow_lbl: [__u8; 3usize],
12667    pub payload_len: __be16,
12668    pub nexthdr: __u8,
12669    pub hop_limit: __u8,
12670    pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1,
12671}
12672#[repr(C)]
12673#[derive(Copy, Clone)]
12674pub union ipv6hdr__bindgen_ty_1 {
12675    pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1__bindgen_ty_1,
12676    pub addrs: ipv6hdr__bindgen_ty_1__bindgen_ty_2,
12677}
12678#[repr(C)]
12679#[derive(Copy, Clone)]
12680pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
12681    pub saddr: in6_addr,
12682    pub daddr: in6_addr,
12683}
12684impl Default for ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
12685    fn default() -> Self {
12686        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12687        unsafe {
12688            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12689            s.assume_init()
12690        }
12691    }
12692}
12693#[repr(C)]
12694#[derive(Copy, Clone)]
12695pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
12696    pub saddr: in6_addr,
12697    pub daddr: in6_addr,
12698}
12699impl Default for ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
12700    fn default() -> Self {
12701        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12702        unsafe {
12703            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12704            s.assume_init()
12705        }
12706    }
12707}
12708impl Default for ipv6hdr__bindgen_ty_1 {
12709    fn default() -> Self {
12710        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12711        unsafe {
12712            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12713            s.assume_init()
12714        }
12715    }
12716}
12717impl Default for ipv6hdr {
12718    fn default() -> Self {
12719        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12720        unsafe {
12721            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12722            s.assume_init()
12723        }
12724    }
12725}
12726impl ipv6hdr {
12727    #[inline]
12728    pub fn priority(&self) -> __u8 {
12729        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 4u8>() as u8) }
12730    }
12731    #[inline]
12732    pub fn set_priority(&mut self, val: __u8) {
12733        unsafe {
12734            let val: u8 = val as _;
12735            self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
12736        }
12737    }
12738    #[inline]
12739    pub unsafe fn priority_raw(this: *const Self) -> __u8 {
12740        unsafe {
12741            ::std::mem::transmute(
12742                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
12743                    ::std::ptr::addr_of!((*this)._bitfield_1),
12744                ) as u8,
12745            )
12746        }
12747    }
12748    #[inline]
12749    pub unsafe fn set_priority_raw(this: *mut Self, val: __u8) {
12750        unsafe {
12751            let val: u8 = val as _;
12752            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
12753                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12754                val as u64,
12755            )
12756        }
12757    }
12758    #[inline]
12759    pub fn version(&self) -> __u8 {
12760        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 4u8>() as u8) }
12761    }
12762    #[inline]
12763    pub fn set_version(&mut self, val: __u8) {
12764        unsafe {
12765            let val: u8 = val as _;
12766            self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
12767        }
12768    }
12769    #[inline]
12770    pub unsafe fn version_raw(this: *const Self) -> __u8 {
12771        unsafe {
12772            ::std::mem::transmute(
12773                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
12774                    ::std::ptr::addr_of!((*this)._bitfield_1),
12775                ) as u8,
12776            )
12777        }
12778    }
12779    #[inline]
12780    pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
12781        unsafe {
12782            let val: u8 = val as _;
12783            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
12784                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12785                val as u64,
12786            )
12787        }
12788    }
12789    #[inline]
12790    pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12791        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12792        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
12793            let priority: u8 = priority as _;
12794            priority as u64
12795        });
12796        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
12797            let version: u8 = version as _;
12798            version as u64
12799        });
12800        __bindgen_bitfield_unit
12801    }
12802}
12803pub const DEVCONF_FORWARDING: _bindgen_ty_82 = 0;
12804pub const DEVCONF_HOPLIMIT: _bindgen_ty_82 = 1;
12805pub const DEVCONF_MTU6: _bindgen_ty_82 = 2;
12806pub const DEVCONF_ACCEPT_RA: _bindgen_ty_82 = 3;
12807pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_82 = 4;
12808pub const DEVCONF_AUTOCONF: _bindgen_ty_82 = 5;
12809pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_82 = 6;
12810pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_82 = 7;
12811pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_82 = 8;
12812pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_82 = 9;
12813pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_82 = 10;
12814pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_82 = 11;
12815pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_82 = 12;
12816pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_82 = 13;
12817pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_82 = 14;
12818pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_82 = 15;
12819pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_82 = 16;
12820pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_82 = 17;
12821pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_82 = 18;
12822pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_82 = 19;
12823pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_82 = 20;
12824pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_82 = 21;
12825pub const DEVCONF_PROXY_NDP: _bindgen_ty_82 = 22;
12826pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_82 = 23;
12827pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_82 = 24;
12828pub const DEVCONF_MC_FORWARDING: _bindgen_ty_82 = 25;
12829pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_82 = 26;
12830pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_82 = 27;
12831pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_82 = 28;
12832pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_82 = 29;
12833pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_82 = 30;
12834pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_82 = 31;
12835pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_82 = 32;
12836pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_82 = 33;
12837pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_82 = 34;
12838pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_82 = 35;
12839pub const DEVCONF_STABLE_SECRET: _bindgen_ty_82 = 36;
12840pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_82 = 37;
12841pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_82 = 38;
12842pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_82 = 39;
12843pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_82 = 40;
12844pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_82 = 41;
12845pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_82 = 42;
12846pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_82 = 43;
12847pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_82 = 44;
12848pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_82 = 45;
12849pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_82 = 46;
12850pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_82 = 47;
12851pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_82 = 48;
12852pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_82 = 49;
12853pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_82 = 50;
12854pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_82 = 51;
12855pub const DEVCONF_RA_DEFRTR_METRIC: _bindgen_ty_82 = 52;
12856pub const DEVCONF_IOAM6_ENABLED: _bindgen_ty_82 = 53;
12857pub const DEVCONF_IOAM6_ID: _bindgen_ty_82 = 54;
12858pub const DEVCONF_IOAM6_ID_WIDE: _bindgen_ty_82 = 55;
12859pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_82 = 56;
12860pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_82 = 57;
12861pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_82 = 58;
12862pub const DEVCONF_MAX: _bindgen_ty_82 = 59;
12863pub type _bindgen_ty_82 = crate::types::c_uint;
12864pub const kcmp_type_KCMP_FILE: kcmp_type = 0;
12865pub const kcmp_type_KCMP_VM: kcmp_type = 1;
12866pub const kcmp_type_KCMP_FILES: kcmp_type = 2;
12867pub const kcmp_type_KCMP_FS: kcmp_type = 3;
12868pub const kcmp_type_KCMP_SIGHAND: kcmp_type = 4;
12869pub const kcmp_type_KCMP_IO: kcmp_type = 5;
12870pub const kcmp_type_KCMP_SYSVSEM: kcmp_type = 6;
12871pub const kcmp_type_KCMP_EPOLL_TFD: kcmp_type = 7;
12872pub const kcmp_type_KCMP_TYPES: kcmp_type = 8;
12873pub type kcmp_type = crate::types::c_uint;
12874#[repr(C)]
12875#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12876pub struct kcmp_epoll_slot {
12877    pub efd: __u32,
12878    pub tfd: __u32,
12879    pub toff: __u32,
12880}
12881pub const LO_FLAGS_READ_ONLY: _bindgen_ty_83 = 1;
12882pub const LO_FLAGS_AUTOCLEAR: _bindgen_ty_83 = 4;
12883pub const LO_FLAGS_PARTSCAN: _bindgen_ty_83 = 8;
12884pub const LO_FLAGS_DIRECT_IO: _bindgen_ty_83 = 16;
12885pub type _bindgen_ty_83 = crate::types::c_uint;
12886#[repr(C)]
12887#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12888pub struct loop_info {
12889    pub lo_number: crate::types::c_int,
12890    pub __bindgen_padding_0: [u8; 4usize],
12891    pub lo_device: __kernel_old_dev_t,
12892    pub lo_inode: crate::types::c_ulong,
12893    pub lo_rdevice: __kernel_old_dev_t,
12894    pub lo_offset: crate::types::c_int,
12895    pub lo_encrypt_type: crate::types::c_int,
12896    pub lo_encrypt_key_size: crate::types::c_int,
12897    pub lo_flags: crate::types::c_int,
12898    pub lo_name: [crate::types::c_char; 64usize],
12899    pub lo_encrypt_key: [crate::types::c_uchar; 32usize],
12900    pub lo_init: [crate::types::c_ulong; 2usize],
12901    pub reserved: [crate::types::c_char; 4usize],
12902    pub __bindgen_padding_1: [u8; 4usize],
12903}
12904impl Default for loop_info {
12905    fn default() -> Self {
12906        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12907        unsafe {
12908            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12909            s.assume_init()
12910        }
12911    }
12912}
12913#[repr(C)]
12914#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12915pub struct loop_info64 {
12916    pub lo_device: __u64,
12917    pub lo_inode: __u64,
12918    pub lo_rdevice: __u64,
12919    pub lo_offset: __u64,
12920    pub lo_sizelimit: __u64,
12921    pub lo_number: __u32,
12922    pub lo_encrypt_type: __u32,
12923    pub lo_encrypt_key_size: __u32,
12924    pub lo_flags: __u32,
12925    pub lo_file_name: [__u8; 64usize],
12926    pub lo_crypt_name: [__u8; 64usize],
12927    pub lo_encrypt_key: [__u8; 32usize],
12928    pub lo_init: [__u64; 2usize],
12929}
12930impl Default for loop_info64 {
12931    fn default() -> Self {
12932        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12933        unsafe {
12934            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12935            s.assume_init()
12936        }
12937    }
12938}
12939#[repr(C)]
12940#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12941pub struct loop_config {
12942    pub fd: __u32,
12943    pub block_size: __u32,
12944    pub info: loop_info64,
12945    pub __reserved: [__u64; 8usize],
12946}
12947impl Default for loop_config {
12948    fn default() -> Self {
12949        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12950        unsafe {
12951            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12952            s.assume_init()
12953        }
12954    }
12955}
12956pub const membarrier_cmd_MEMBARRIER_CMD_QUERY: membarrier_cmd = 0;
12957pub const membarrier_cmd_MEMBARRIER_CMD_GLOBAL: membarrier_cmd = 1;
12958pub const membarrier_cmd_MEMBARRIER_CMD_GLOBAL_EXPEDITED: membarrier_cmd = 2;
12959pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED: membarrier_cmd = 4;
12960pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED: membarrier_cmd = 8;
12961pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED: membarrier_cmd = 16;
12962pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE: membarrier_cmd = 32;
12963pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE: membarrier_cmd = 64;
12964pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ: membarrier_cmd = 128;
12965pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ: membarrier_cmd = 256;
12966pub const membarrier_cmd_MEMBARRIER_CMD_GET_REGISTRATIONS: membarrier_cmd = 512;
12967pub const membarrier_cmd_MEMBARRIER_CMD_SHARED: membarrier_cmd = 1;
12968pub type membarrier_cmd = crate::types::c_uint;
12969pub const membarrier_cmd_flag_MEMBARRIER_CMD_FLAG_CPU: membarrier_cmd_flag = 1;
12970pub type membarrier_cmd_flag = crate::types::c_uint;
12971#[repr(C)]
12972#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12973pub struct cachestat_range {
12974    pub off: __u64,
12975    pub len: __u64,
12976}
12977#[repr(C)]
12978#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12979pub struct cachestat {
12980    pub nr_cache: __u64,
12981    pub nr_dirty: __u64,
12982    pub nr_writeback: __u64,
12983    pub nr_evicted: __u64,
12984    pub nr_recently_evicted: __u64,
12985}
12986#[repr(C)]
12987#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12988pub struct mq_attr {
12989    pub mq_flags: __kernel_long_t,
12990    pub mq_maxmsg: __kernel_long_t,
12991    pub mq_msgsize: __kernel_long_t,
12992    pub mq_curmsgs: __kernel_long_t,
12993    pub __reserved: [__kernel_long_t; 4usize],
12994}
12995#[doc = " An integral type representing an IPv4 address."]
12996pub type in_addr_t = u32;
12997#[doc = " A structure representing an IPv4 address."]
12998#[repr(C)]
12999#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13000pub struct in_addr {
13001    pub s_addr: in_addr_t,
13002}
13003pub const IPPROTO_IP: _bindgen_ty_84 = 0;
13004pub const IPPROTO_ICMP: _bindgen_ty_84 = 1;
13005pub const IPPROTO_IGMP: _bindgen_ty_84 = 2;
13006pub const IPPROTO_IPIP: _bindgen_ty_84 = 4;
13007pub const IPPROTO_TCP: _bindgen_ty_84 = 6;
13008pub const IPPROTO_EGP: _bindgen_ty_84 = 8;
13009pub const IPPROTO_PUP: _bindgen_ty_84 = 12;
13010pub const IPPROTO_UDP: _bindgen_ty_84 = 17;
13011pub const IPPROTO_IDP: _bindgen_ty_84 = 22;
13012pub const IPPROTO_TP: _bindgen_ty_84 = 29;
13013pub const IPPROTO_DCCP: _bindgen_ty_84 = 33;
13014pub const IPPROTO_IPV6: _bindgen_ty_84 = 41;
13015pub const IPPROTO_RSVP: _bindgen_ty_84 = 46;
13016pub const IPPROTO_GRE: _bindgen_ty_84 = 47;
13017pub const IPPROTO_ESP: _bindgen_ty_84 = 50;
13018pub const IPPROTO_AH: _bindgen_ty_84 = 51;
13019pub const IPPROTO_MTP: _bindgen_ty_84 = 92;
13020pub const IPPROTO_BEETPH: _bindgen_ty_84 = 94;
13021pub const IPPROTO_ENCAP: _bindgen_ty_84 = 98;
13022pub const IPPROTO_PIM: _bindgen_ty_84 = 103;
13023pub const IPPROTO_COMP: _bindgen_ty_84 = 108;
13024pub const IPPROTO_L2TP: _bindgen_ty_84 = 115;
13025pub const IPPROTO_SCTP: _bindgen_ty_84 = 132;
13026pub const IPPROTO_UDPLITE: _bindgen_ty_84 = 136;
13027pub const IPPROTO_MPLS: _bindgen_ty_84 = 137;
13028pub const IPPROTO_ETHERNET: _bindgen_ty_84 = 143;
13029pub const IPPROTO_RAW: _bindgen_ty_84 = 255;
13030pub const IPPROTO_SMC: _bindgen_ty_84 = 256;
13031pub const IPPROTO_MPTCP: _bindgen_ty_84 = 262;
13032pub const IPPROTO_MAX: _bindgen_ty_84 = 263;
13033pub type _bindgen_ty_84 = crate::types::c_uint;
13034#[repr(C)]
13035#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13036pub struct ip_mreq {
13037    pub imr_multiaddr: in_addr,
13038    pub imr_interface: in_addr,
13039}
13040#[repr(C)]
13041#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13042pub struct ip_mreqn {
13043    pub imr_multiaddr: in_addr,
13044    pub imr_address: in_addr,
13045    pub imr_ifindex: crate::types::c_int,
13046}
13047#[repr(C)]
13048#[derive(Copy, Clone)]
13049pub struct group_req {
13050    pub gr_interface: __u32,
13051    pub __bindgen_padding_0: [u8; 4usize],
13052    pub gr_group: sockaddr_storage,
13053}
13054impl Default for group_req {
13055    fn default() -> Self {
13056        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13057        unsafe {
13058            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13059            s.assume_init()
13060        }
13061    }
13062}
13063#[repr(C)]
13064#[derive(Copy, Clone)]
13065pub struct group_source_req {
13066    pub gsr_interface: __u32,
13067    pub __bindgen_padding_0: [u8; 4usize],
13068    pub gsr_group: sockaddr_storage,
13069    pub gsr_source: sockaddr_storage,
13070}
13071impl Default for group_source_req {
13072    fn default() -> Self {
13073        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13074        unsafe {
13075            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13076            s.assume_init()
13077        }
13078    }
13079}
13080#[repr(C)]
13081#[repr(align(8))]
13082#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13083pub struct group_filter {
13084    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13085}
13086#[repr(C)]
13087#[repr(align(8))]
13088#[derive(Copy, Clone)]
13089pub union group_filter__bindgen_ty_1 {
13090    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13091}
13092#[repr(C)]
13093#[repr(align(8))]
13094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13095pub struct group_filter__bindgen_ty_1__bindgen_ty_1 {
13096    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13097}
13098#[repr(C)]
13099#[repr(align(8))]
13100#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13101pub struct group_filter__bindgen_ty_1__bindgen_ty_2 {
13102    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 144usize]>,
13103}
13104impl Default for group_filter__bindgen_ty_1 {
13105    fn default() -> Self {
13106        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13107        unsafe {
13108            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13109            s.assume_init()
13110        }
13111    }
13112}
13113#[repr(C)]
13114#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13115pub struct in_pktinfo {
13116    pub ipi_ifindex: crate::types::c_int,
13117    pub ipi_spec_dst: in_addr,
13118    pub ipi_addr: in_addr,
13119}
13120#[repr(C)]
13121#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13122pub struct sockaddr_in {
13123    pub sin_family: __kernel_sa_family_t,
13124    pub sin_port: __be16,
13125    pub sin_addr: in_addr,
13126    pub __pad: [crate::types::c_uchar; 8usize],
13127}
13128pub const nf_inet_hooks_NF_INET_PRE_ROUTING: nf_inet_hooks = 0;
13129pub const nf_inet_hooks_NF_INET_LOCAL_IN: nf_inet_hooks = 1;
13130pub const nf_inet_hooks_NF_INET_FORWARD: nf_inet_hooks = 2;
13131pub const nf_inet_hooks_NF_INET_LOCAL_OUT: nf_inet_hooks = 3;
13132pub const nf_inet_hooks_NF_INET_POST_ROUTING: nf_inet_hooks = 4;
13133pub const nf_inet_hooks_NF_INET_NUMHOOKS: nf_inet_hooks = 5;
13134pub const nf_inet_hooks_NF_INET_INGRESS: nf_inet_hooks = 5;
13135pub type nf_inet_hooks = crate::types::c_uint;
13136pub const nf_dev_hooks_NF_NETDEV_INGRESS: nf_dev_hooks = 0;
13137pub const nf_dev_hooks_NF_NETDEV_EGRESS: nf_dev_hooks = 1;
13138pub const nf_dev_hooks_NF_NETDEV_NUMHOOKS: nf_dev_hooks = 2;
13139pub type nf_dev_hooks = crate::types::c_uint;
13140pub const NFPROTO_UNSPEC: _bindgen_ty_85 = 0;
13141pub const NFPROTO_INET: _bindgen_ty_85 = 1;
13142pub const NFPROTO_IPV4: _bindgen_ty_85 = 2;
13143pub const NFPROTO_ARP: _bindgen_ty_85 = 3;
13144pub const NFPROTO_NETDEV: _bindgen_ty_85 = 5;
13145pub const NFPROTO_BRIDGE: _bindgen_ty_85 = 7;
13146pub const NFPROTO_IPV6: _bindgen_ty_85 = 10;
13147pub const NFPROTO_DECNET: _bindgen_ty_85 = 12;
13148pub const NFPROTO_NUMPROTO: _bindgen_ty_85 = 13;
13149pub type _bindgen_ty_85 = crate::types::c_uint;
13150#[repr(C)]
13151#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13152pub union nf_inet_addr {
13153    pub all: [__u32; 4usize],
13154    pub ip: __be32,
13155    pub ip6: [__be32; 4usize],
13156    pub in_: in_addr,
13157    pub in6: in6_addr,
13158}
13159impl Default for nf_inet_addr {
13160    fn default() -> Self {
13161        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13162        unsafe {
13163            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13164            s.assume_init()
13165        }
13166    }
13167}
13168pub const ip_conntrack_info_IP_CT_ESTABLISHED: ip_conntrack_info = 0;
13169pub const ip_conntrack_info_IP_CT_RELATED: ip_conntrack_info = 1;
13170pub const ip_conntrack_info_IP_CT_NEW: ip_conntrack_info = 2;
13171pub const ip_conntrack_info_IP_CT_IS_REPLY: ip_conntrack_info = 3;
13172pub const ip_conntrack_info_IP_CT_ESTABLISHED_REPLY: ip_conntrack_info = 3;
13173pub const ip_conntrack_info_IP_CT_RELATED_REPLY: ip_conntrack_info = 4;
13174pub const ip_conntrack_info_IP_CT_NUMBER: ip_conntrack_info = 5;
13175pub const ip_conntrack_info_IP_CT_NEW_REPLY: ip_conntrack_info = 5;
13176pub type ip_conntrack_info = crate::types::c_uint;
13177pub const ip_conntrack_status_IPS_EXPECTED_BIT: ip_conntrack_status = 0;
13178pub const ip_conntrack_status_IPS_EXPECTED: ip_conntrack_status = 1;
13179pub const ip_conntrack_status_IPS_SEEN_REPLY_BIT: ip_conntrack_status = 1;
13180pub const ip_conntrack_status_IPS_SEEN_REPLY: ip_conntrack_status = 2;
13181pub const ip_conntrack_status_IPS_ASSURED_BIT: ip_conntrack_status = 2;
13182pub const ip_conntrack_status_IPS_ASSURED: ip_conntrack_status = 4;
13183pub const ip_conntrack_status_IPS_CONFIRMED_BIT: ip_conntrack_status = 3;
13184pub const ip_conntrack_status_IPS_CONFIRMED: ip_conntrack_status = 8;
13185pub const ip_conntrack_status_IPS_SRC_NAT_BIT: ip_conntrack_status = 4;
13186pub const ip_conntrack_status_IPS_SRC_NAT: ip_conntrack_status = 16;
13187pub const ip_conntrack_status_IPS_DST_NAT_BIT: ip_conntrack_status = 5;
13188pub const ip_conntrack_status_IPS_DST_NAT: ip_conntrack_status = 32;
13189pub const ip_conntrack_status_IPS_NAT_MASK: ip_conntrack_status = 48;
13190pub const ip_conntrack_status_IPS_SEQ_ADJUST_BIT: ip_conntrack_status = 6;
13191pub const ip_conntrack_status_IPS_SEQ_ADJUST: ip_conntrack_status = 64;
13192pub const ip_conntrack_status_IPS_SRC_NAT_DONE_BIT: ip_conntrack_status = 7;
13193pub const ip_conntrack_status_IPS_SRC_NAT_DONE: ip_conntrack_status = 128;
13194pub const ip_conntrack_status_IPS_DST_NAT_DONE_BIT: ip_conntrack_status = 8;
13195pub const ip_conntrack_status_IPS_DST_NAT_DONE: ip_conntrack_status = 256;
13196pub const ip_conntrack_status_IPS_NAT_DONE_MASK: ip_conntrack_status = 384;
13197pub const ip_conntrack_status_IPS_DYING_BIT: ip_conntrack_status = 9;
13198pub const ip_conntrack_status_IPS_DYING: ip_conntrack_status = 512;
13199pub const ip_conntrack_status_IPS_FIXED_TIMEOUT_BIT: ip_conntrack_status = 10;
13200pub const ip_conntrack_status_IPS_FIXED_TIMEOUT: ip_conntrack_status = 1024;
13201pub const ip_conntrack_status_IPS_TEMPLATE_BIT: ip_conntrack_status = 11;
13202pub const ip_conntrack_status_IPS_TEMPLATE: ip_conntrack_status = 2048;
13203pub const ip_conntrack_status_IPS_UNTRACKED_BIT: ip_conntrack_status = 12;
13204pub const ip_conntrack_status_IPS_UNTRACKED: ip_conntrack_status = 4096;
13205pub const ip_conntrack_status_IPS_HELPER_BIT: ip_conntrack_status = 13;
13206pub const ip_conntrack_status_IPS_HELPER: ip_conntrack_status = 8192;
13207pub const ip_conntrack_status_IPS_OFFLOAD_BIT: ip_conntrack_status = 14;
13208pub const ip_conntrack_status_IPS_OFFLOAD: ip_conntrack_status = 16384;
13209pub const ip_conntrack_status_IPS_HW_OFFLOAD_BIT: ip_conntrack_status = 15;
13210pub const ip_conntrack_status_IPS_HW_OFFLOAD: ip_conntrack_status = 32768;
13211pub const ip_conntrack_status_IPS_UNCHANGEABLE_MASK: ip_conntrack_status = 56313;
13212pub const ip_conntrack_status___IPS_MAX_BIT: ip_conntrack_status = 16;
13213pub type ip_conntrack_status = crate::types::c_uint;
13214pub const ip_conntrack_events_IPCT_NEW: ip_conntrack_events = 0;
13215pub const ip_conntrack_events_IPCT_RELATED: ip_conntrack_events = 1;
13216pub const ip_conntrack_events_IPCT_DESTROY: ip_conntrack_events = 2;
13217pub const ip_conntrack_events_IPCT_REPLY: ip_conntrack_events = 3;
13218pub const ip_conntrack_events_IPCT_ASSURED: ip_conntrack_events = 4;
13219pub const ip_conntrack_events_IPCT_PROTOINFO: ip_conntrack_events = 5;
13220pub const ip_conntrack_events_IPCT_HELPER: ip_conntrack_events = 6;
13221pub const ip_conntrack_events_IPCT_MARK: ip_conntrack_events = 7;
13222pub const ip_conntrack_events_IPCT_SEQADJ: ip_conntrack_events = 8;
13223pub const ip_conntrack_events_IPCT_NATSEQADJ: ip_conntrack_events = 8;
13224pub const ip_conntrack_events_IPCT_SECMARK: ip_conntrack_events = 9;
13225pub const ip_conntrack_events_IPCT_LABEL: ip_conntrack_events = 10;
13226pub const ip_conntrack_events_IPCT_SYNPROXY: ip_conntrack_events = 11;
13227pub type ip_conntrack_events = crate::types::c_uint;
13228pub const ip_conntrack_expect_events_IPEXP_NEW: ip_conntrack_expect_events = 0;
13229pub const ip_conntrack_expect_events_IPEXP_DESTROY: ip_conntrack_expect_events = 1;
13230pub type ip_conntrack_expect_events = crate::types::c_uint;
13231pub const ip_conntrack_dir_IP_CT_DIR_ORIGINAL: ip_conntrack_dir = 0;
13232pub const ip_conntrack_dir_IP_CT_DIR_REPLY: ip_conntrack_dir = 1;
13233pub const ip_conntrack_dir_IP_CT_DIR_MAX: ip_conntrack_dir = 2;
13234pub type ip_conntrack_dir = crate::types::c_uint;
13235#[repr(C)]
13236#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13237pub union nf_conntrack_man_proto {
13238    pub all: __be16,
13239    pub tcp: nf_conntrack_man_proto__bindgen_ty_1,
13240    pub udp: nf_conntrack_man_proto__bindgen_ty_2,
13241    pub icmp: nf_conntrack_man_proto__bindgen_ty_3,
13242    pub dccp: nf_conntrack_man_proto__bindgen_ty_4,
13243    pub sctp: nf_conntrack_man_proto__bindgen_ty_5,
13244    pub gre: nf_conntrack_man_proto__bindgen_ty_6,
13245}
13246#[repr(C)]
13247#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13248pub struct nf_conntrack_man_proto__bindgen_ty_1 {
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_2 {
13254    pub port: __be16,
13255}
13256#[repr(C)]
13257#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13258pub struct nf_conntrack_man_proto__bindgen_ty_3 {
13259    pub id: __be16,
13260}
13261#[repr(C)]
13262#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13263pub struct nf_conntrack_man_proto__bindgen_ty_4 {
13264    pub port: __be16,
13265}
13266#[repr(C)]
13267#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13268pub struct nf_conntrack_man_proto__bindgen_ty_5 {
13269    pub port: __be16,
13270}
13271#[repr(C)]
13272#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13273pub struct nf_conntrack_man_proto__bindgen_ty_6 {
13274    pub key: __be16,
13275}
13276impl Default for nf_conntrack_man_proto {
13277    fn default() -> Self {
13278        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13279        unsafe {
13280            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13281            s.assume_init()
13282        }
13283    }
13284}
13285#[repr(C)]
13286#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13287pub struct nf_nat_ipv4_range {
13288    pub flags: crate::types::c_uint,
13289    pub min_ip: __be32,
13290    pub max_ip: __be32,
13291    pub min: nf_conntrack_man_proto,
13292    pub max: nf_conntrack_man_proto,
13293}
13294impl Default for nf_nat_ipv4_range {
13295    fn default() -> Self {
13296        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13297        unsafe {
13298            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13299            s.assume_init()
13300        }
13301    }
13302}
13303#[repr(C)]
13304#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13305pub struct nf_nat_ipv4_multi_range_compat {
13306    pub rangesize: crate::types::c_uint,
13307    pub range: [nf_nat_ipv4_range; 1usize],
13308}
13309impl Default for nf_nat_ipv4_multi_range_compat {
13310    fn default() -> Self {
13311        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13312        unsafe {
13313            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13314            s.assume_init()
13315        }
13316    }
13317}
13318#[repr(C)]
13319#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13320pub struct nf_nat_range {
13321    pub flags: crate::types::c_uint,
13322    pub min_addr: nf_inet_addr,
13323    pub max_addr: nf_inet_addr,
13324    pub min_proto: nf_conntrack_man_proto,
13325    pub max_proto: nf_conntrack_man_proto,
13326}
13327impl Default for nf_nat_range {
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(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13338pub struct nf_nat_range2 {
13339    pub flags: crate::types::c_uint,
13340    pub min_addr: nf_inet_addr,
13341    pub max_addr: nf_inet_addr,
13342    pub min_proto: nf_conntrack_man_proto,
13343    pub max_proto: nf_conntrack_man_proto,
13344    pub base_proto: nf_conntrack_man_proto,
13345    pub __bindgen_padding_0: [u8; 2usize],
13346}
13347impl Default for nf_nat_range2 {
13348    fn default() -> Self {
13349        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13350        unsafe {
13351            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13352            s.assume_init()
13353        }
13354    }
13355}
13356#[repr(C)]
13357#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13358pub struct xt_tproxy_target_info {
13359    pub mark_mask: __u32,
13360    pub mark_value: __u32,
13361    pub laddr: __be32,
13362    pub lport: __be16,
13363    pub __bindgen_padding_0: [u8; 2usize],
13364}
13365#[repr(C)]
13366#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13367pub struct xt_tproxy_target_info_v1 {
13368    pub mark_mask: __u32,
13369    pub mark_value: __u32,
13370    pub laddr: nf_inet_addr,
13371    pub lport: __be16,
13372    pub __bindgen_padding_0: [u8; 2usize],
13373}
13374impl Default for xt_tproxy_target_info_v1 {
13375    fn default() -> Self {
13376        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13377        unsafe {
13378            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13379            s.assume_init()
13380        }
13381    }
13382}
13383#[repr(C)]
13384#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13385pub struct bpf_prog {
13386    _unused: [u8; 0],
13387}
13388#[repr(C)]
13389#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13390pub struct xt_bpf_info {
13391    pub bpf_program_num_elem: __u16,
13392    pub __bindgen_padding_0: [u8; 2usize],
13393    pub bpf_program: [sock_filter; 64usize],
13394    pub __bindgen_padding_1: [u8; 4usize],
13395    pub filter: uref<bpf_prog>,
13396}
13397impl Default for xt_bpf_info {
13398    fn default() -> Self {
13399        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13400        unsafe {
13401            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13402            s.assume_init()
13403        }
13404    }
13405}
13406pub const xt_bpf_modes_XT_BPF_MODE_BYTECODE: xt_bpf_modes = 0;
13407pub const xt_bpf_modes_XT_BPF_MODE_FD_PINNED: xt_bpf_modes = 1;
13408pub const xt_bpf_modes_XT_BPF_MODE_FD_ELF: xt_bpf_modes = 2;
13409pub type xt_bpf_modes = crate::types::c_uint;
13410#[repr(C)]
13411#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13412pub struct xt_bpf_info_v1 {
13413    pub mode: __u16,
13414    pub bpf_program_num_elem: __u16,
13415    pub fd: __s32,
13416    pub __bindgen_anon_1: xt_bpf_info_v1__bindgen_ty_1,
13417    pub filter: uref<bpf_prog>,
13418}
13419#[repr(C)]
13420#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13421pub union xt_bpf_info_v1__bindgen_ty_1 {
13422    pub bpf_program: [sock_filter; 64usize],
13423    pub path: [crate::types::c_char; 512usize],
13424}
13425impl Default for xt_bpf_info_v1__bindgen_ty_1 {
13426    fn default() -> Self {
13427        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13428        unsafe {
13429            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13430            s.assume_init()
13431        }
13432    }
13433}
13434impl Default for xt_bpf_info_v1 {
13435    fn default() -> Self {
13436        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13437        unsafe {
13438            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13439            s.assume_init()
13440        }
13441    }
13442}
13443#[repr(C)]
13444#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13445pub struct xt_mark_tginfo2 {
13446    pub mark: __u32,
13447    pub mask: __u32,
13448}
13449#[repr(C)]
13450#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13451pub struct xt_mark_mtinfo1 {
13452    pub mark: __u32,
13453    pub mask: __u32,
13454    pub invert: __u8,
13455    pub __bindgen_padding_0: [u8; 3usize],
13456}
13457pub const nf_ip_hook_priorities_NF_IP_PRI_FIRST: nf_ip_hook_priorities = -2147483648;
13458pub const nf_ip_hook_priorities_NF_IP_PRI_RAW_BEFORE_DEFRAG: nf_ip_hook_priorities = -450;
13459pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_DEFRAG: nf_ip_hook_priorities = -400;
13460pub const nf_ip_hook_priorities_NF_IP_PRI_RAW: nf_ip_hook_priorities = -300;
13461pub const nf_ip_hook_priorities_NF_IP_PRI_SELINUX_FIRST: nf_ip_hook_priorities = -225;
13462pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK: nf_ip_hook_priorities = -200;
13463pub const nf_ip_hook_priorities_NF_IP_PRI_MANGLE: nf_ip_hook_priorities = -150;
13464pub const nf_ip_hook_priorities_NF_IP_PRI_NAT_DST: nf_ip_hook_priorities = -100;
13465pub const nf_ip_hook_priorities_NF_IP_PRI_FILTER: nf_ip_hook_priorities = 0;
13466pub const nf_ip_hook_priorities_NF_IP_PRI_SECURITY: nf_ip_hook_priorities = 50;
13467pub const nf_ip_hook_priorities_NF_IP_PRI_NAT_SRC: nf_ip_hook_priorities = 100;
13468pub const nf_ip_hook_priorities_NF_IP_PRI_SELINUX_LAST: nf_ip_hook_priorities = 225;
13469pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_HELPER: nf_ip_hook_priorities = 300;
13470pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_CONFIRM: nf_ip_hook_priorities = 2147483647;
13471pub const nf_ip_hook_priorities_NF_IP_PRI_LAST: nf_ip_hook_priorities = 2147483647;
13472pub type nf_ip_hook_priorities = crate::types::c_int;
13473#[repr(C)]
13474pub struct xt_entry_match {
13475    pub u: xt_entry_match__bindgen_ty_1,
13476    pub data: __IncompleteArrayField<crate::types::c_uchar>,
13477}
13478#[repr(C)]
13479#[derive(Copy, Clone)]
13480pub union xt_entry_match__bindgen_ty_1 {
13481    pub user: xt_entry_match__bindgen_ty_1__bindgen_ty_1,
13482    pub kernel: xt_entry_match__bindgen_ty_1__bindgen_ty_2,
13483    pub match_size: __u16,
13484}
13485#[repr(C)]
13486#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13487pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_1 {
13488    pub match_size: __u16,
13489    pub name: [crate::types::c_char; 29usize],
13490    pub revision: __u8,
13491}
13492#[repr(C)]
13493#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13494pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
13495    pub match_size: __u16,
13496    pub __bindgen_padding_0: [u8; 6usize],
13497    pub match_: uref<xt_match>,
13498}
13499impl Default for xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
13500    fn default() -> Self {
13501        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13502        unsafe {
13503            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13504            s.assume_init()
13505        }
13506    }
13507}
13508impl Default for xt_entry_match__bindgen_ty_1 {
13509    fn default() -> Self {
13510        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13511        unsafe {
13512            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13513            s.assume_init()
13514        }
13515    }
13516}
13517impl Default for xt_entry_match {
13518    fn default() -> Self {
13519        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13520        unsafe {
13521            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13522            s.assume_init()
13523        }
13524    }
13525}
13526#[repr(C)]
13527pub struct xt_entry_target {
13528    pub u: xt_entry_target__bindgen_ty_1,
13529    pub data: __IncompleteArrayField<crate::types::c_uchar>,
13530}
13531#[repr(C)]
13532#[derive(Copy, Clone)]
13533pub union xt_entry_target__bindgen_ty_1 {
13534    pub user: xt_entry_target__bindgen_ty_1__bindgen_ty_1,
13535    pub kernel: xt_entry_target__bindgen_ty_1__bindgen_ty_2,
13536    pub target_size: __u16,
13537}
13538#[repr(C)]
13539#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13540pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_1 {
13541    pub target_size: __u16,
13542    pub name: [crate::types::c_char; 29usize],
13543    pub revision: __u8,
13544}
13545#[repr(C)]
13546#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13547pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
13548    pub target_size: __u16,
13549    pub __bindgen_padding_0: [u8; 6usize],
13550    pub target: uref<xt_target>,
13551}
13552impl Default for xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
13553    fn default() -> Self {
13554        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13555        unsafe {
13556            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13557            s.assume_init()
13558        }
13559    }
13560}
13561impl Default for xt_entry_target__bindgen_ty_1 {
13562    fn default() -> Self {
13563        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13564        unsafe {
13565            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13566            s.assume_init()
13567        }
13568    }
13569}
13570impl Default for xt_entry_target {
13571    fn default() -> Self {
13572        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13573        unsafe {
13574            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13575            s.assume_init()
13576        }
13577    }
13578}
13579#[repr(C)]
13580pub struct xt_standard_target {
13581    pub target: xt_entry_target,
13582    pub verdict: crate::types::c_int,
13583    pub __bindgen_padding_0: [u8; 4usize],
13584}
13585impl Default for xt_standard_target {
13586    fn default() -> Self {
13587        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13588        unsafe {
13589            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13590            s.assume_init()
13591        }
13592    }
13593}
13594#[repr(C)]
13595pub struct xt_error_target {
13596    pub target: xt_entry_target,
13597    pub errorname: [crate::types::c_char; 30usize],
13598    pub __bindgen_padding_0: [u8; 2usize],
13599}
13600impl Default for xt_error_target {
13601    fn default() -> Self {
13602        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13603        unsafe {
13604            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13605            s.assume_init()
13606        }
13607    }
13608}
13609#[repr(C)]
13610#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13611pub struct xt_get_revision {
13612    pub name: [crate::types::c_char; 29usize],
13613    pub revision: __u8,
13614}
13615#[repr(C)]
13616#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13617pub struct _xt_align {
13618    pub u8_: __u8,
13619    pub __bindgen_padding_0: u8,
13620    pub u16_: __u16,
13621    pub u32_: __u32,
13622    pub u64_: __u64,
13623}
13624#[repr(C)]
13625#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13626pub struct xt_counters {
13627    pub pcnt: __u64,
13628    pub bcnt: __u64,
13629}
13630#[repr(C)]
13631#[derive(Debug, Default, FromBytes, Immutable, KnownLayout)]
13632pub struct xt_counters_info {
13633    pub name: [crate::types::c_char; 32usize],
13634    pub num_counters: crate::types::c_uint,
13635    pub __bindgen_padding_0: [u8; 4usize],
13636    pub counters: __IncompleteArrayField<xt_counters>,
13637}
13638#[repr(C)]
13639#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13640pub struct xt_tcp {
13641    pub spts: [__u16; 2usize],
13642    pub dpts: [__u16; 2usize],
13643    pub option: __u8,
13644    pub flg_mask: __u8,
13645    pub flg_cmp: __u8,
13646    pub invflags: __u8,
13647}
13648#[repr(C)]
13649#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13650pub struct xt_udp {
13651    pub spts: [__u16; 2usize],
13652    pub dpts: [__u16; 2usize],
13653    pub invflags: __u8,
13654    pub __bindgen_padding_0: u8,
13655}
13656#[repr(C)]
13657#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13658pub struct ipt_ip {
13659    pub src: in_addr,
13660    pub dst: in_addr,
13661    pub smsk: in_addr,
13662    pub dmsk: in_addr,
13663    pub iniface: [crate::types::c_char; 16usize],
13664    pub outiface: [crate::types::c_char; 16usize],
13665    pub iniface_mask: [crate::types::c_uchar; 16usize],
13666    pub outiface_mask: [crate::types::c_uchar; 16usize],
13667    pub proto: __u16,
13668    pub flags: __u8,
13669    pub invflags: __u8,
13670}
13671#[repr(C)]
13672#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13673pub struct ipt_entry {
13674    pub ip: ipt_ip,
13675    pub nfcache: crate::types::c_uint,
13676    pub target_offset: __u16,
13677    pub next_offset: __u16,
13678    pub comefrom: crate::types::c_uint,
13679    pub counters: xt_counters,
13680    pub elems: __IncompleteArrayField<crate::types::c_uchar>,
13681}
13682#[repr(C)]
13683#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13684pub struct ipt_icmp {
13685    pub type_: __u8,
13686    pub code: [__u8; 2usize],
13687    pub invflags: __u8,
13688}
13689#[repr(C)]
13690#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13691pub struct ipt_getinfo {
13692    pub name: [crate::types::c_char; 32usize],
13693    pub valid_hooks: crate::types::c_uint,
13694    pub hook_entry: [crate::types::c_uint; 5usize],
13695    pub underflow: [crate::types::c_uint; 5usize],
13696    pub num_entries: crate::types::c_uint,
13697    pub size: crate::types::c_uint,
13698}
13699#[repr(C)]
13700#[derive(Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13701pub struct ipt_replace {
13702    pub name: [crate::types::c_char; 32usize],
13703    pub valid_hooks: crate::types::c_uint,
13704    pub num_entries: crate::types::c_uint,
13705    pub size: crate::types::c_uint,
13706    pub hook_entry: [crate::types::c_uint; 5usize],
13707    pub underflow: [crate::types::c_uint; 5usize],
13708    pub num_counters: crate::types::c_uint,
13709    pub counters: uref<xt_counters>,
13710    pub entries: __IncompleteArrayField<ipt_entry>,
13711}
13712impl Default for ipt_replace {
13713    fn default() -> Self {
13714        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13715        unsafe {
13716            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13717            s.assume_init()
13718        }
13719    }
13720}
13721#[repr(C)]
13722#[derive(Debug, Default, FromBytes, Immutable, KnownLayout)]
13723pub struct ipt_get_entries {
13724    pub name: [crate::types::c_char; 32usize],
13725    pub size: crate::types::c_uint,
13726    pub __bindgen_padding_0: [u8; 4usize],
13727    pub entrytable: __IncompleteArrayField<ipt_entry>,
13728}
13729pub const ipt_reject_with_IPT_ICMP_NET_UNREACHABLE: ipt_reject_with = 0;
13730pub const ipt_reject_with_IPT_ICMP_HOST_UNREACHABLE: ipt_reject_with = 1;
13731pub const ipt_reject_with_IPT_ICMP_PROT_UNREACHABLE: ipt_reject_with = 2;
13732pub const ipt_reject_with_IPT_ICMP_PORT_UNREACHABLE: ipt_reject_with = 3;
13733pub const ipt_reject_with_IPT_ICMP_ECHOREPLY: ipt_reject_with = 4;
13734pub const ipt_reject_with_IPT_ICMP_NET_PROHIBITED: ipt_reject_with = 5;
13735pub const ipt_reject_with_IPT_ICMP_HOST_PROHIBITED: ipt_reject_with = 6;
13736pub const ipt_reject_with_IPT_TCP_RESET: ipt_reject_with = 7;
13737pub const ipt_reject_with_IPT_ICMP_ADMIN_PROHIBITED: ipt_reject_with = 8;
13738pub type ipt_reject_with = crate::types::c_uint;
13739#[repr(C)]
13740#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13741pub struct ipt_reject_info {
13742    pub with: ipt_reject_with,
13743}
13744impl Default for ipt_reject_info {
13745    fn default() -> Self {
13746        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13747        unsafe {
13748            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13749            s.assume_init()
13750        }
13751    }
13752}
13753pub const nf_ip6_hook_priorities_NF_IP6_PRI_FIRST: nf_ip6_hook_priorities = -2147483648;
13754pub const nf_ip6_hook_priorities_NF_IP6_PRI_RAW_BEFORE_DEFRAG: nf_ip6_hook_priorities = -450;
13755pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK_DEFRAG: nf_ip6_hook_priorities = -400;
13756pub const nf_ip6_hook_priorities_NF_IP6_PRI_RAW: nf_ip6_hook_priorities = -300;
13757pub const nf_ip6_hook_priorities_NF_IP6_PRI_SELINUX_FIRST: nf_ip6_hook_priorities = -225;
13758pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK: nf_ip6_hook_priorities = -200;
13759pub const nf_ip6_hook_priorities_NF_IP6_PRI_MANGLE: nf_ip6_hook_priorities = -150;
13760pub const nf_ip6_hook_priorities_NF_IP6_PRI_NAT_DST: nf_ip6_hook_priorities = -100;
13761pub const nf_ip6_hook_priorities_NF_IP6_PRI_FILTER: nf_ip6_hook_priorities = 0;
13762pub const nf_ip6_hook_priorities_NF_IP6_PRI_SECURITY: nf_ip6_hook_priorities = 50;
13763pub const nf_ip6_hook_priorities_NF_IP6_PRI_NAT_SRC: nf_ip6_hook_priorities = 100;
13764pub const nf_ip6_hook_priorities_NF_IP6_PRI_SELINUX_LAST: nf_ip6_hook_priorities = 225;
13765pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK_HELPER: nf_ip6_hook_priorities = 300;
13766pub const nf_ip6_hook_priorities_NF_IP6_PRI_LAST: nf_ip6_hook_priorities = 2147483647;
13767pub type nf_ip6_hook_priorities = crate::types::c_int;
13768#[repr(C)]
13769#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13770pub struct ip6t_ip6 {
13771    pub src: in6_addr,
13772    pub dst: in6_addr,
13773    pub smsk: in6_addr,
13774    pub dmsk: in6_addr,
13775    pub iniface: [crate::types::c_char; 16usize],
13776    pub outiface: [crate::types::c_char; 16usize],
13777    pub iniface_mask: [crate::types::c_uchar; 16usize],
13778    pub outiface_mask: [crate::types::c_uchar; 16usize],
13779    pub proto: __u16,
13780    pub tos: __u8,
13781    pub flags: __u8,
13782    pub invflags: __u8,
13783    pub __bindgen_padding_0: [u8; 3usize],
13784}
13785impl Default for ip6t_ip6 {
13786    fn default() -> Self {
13787        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13788        unsafe {
13789            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13790            s.assume_init()
13791        }
13792    }
13793}
13794#[repr(C)]
13795#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
13796pub struct ip6t_entry {
13797    pub ipv6: ip6t_ip6,
13798    pub nfcache: crate::types::c_uint,
13799    pub target_offset: __u16,
13800    pub next_offset: __u16,
13801    pub comefrom: crate::types::c_uint,
13802    pub __bindgen_padding_0: [u8; 4usize],
13803    pub counters: xt_counters,
13804    pub elems: __IncompleteArrayField<crate::types::c_uchar>,
13805}
13806impl Default for ip6t_entry {
13807    fn default() -> Self {
13808        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13809        unsafe {
13810            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13811            s.assume_init()
13812        }
13813    }
13814}
13815#[repr(C)]
13816pub struct ip6t_standard {
13817    pub entry: ip6t_entry,
13818    pub target: xt_standard_target,
13819}
13820impl Default for ip6t_standard {
13821    fn default() -> Self {
13822        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13823        unsafe {
13824            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13825            s.assume_init()
13826        }
13827    }
13828}
13829#[repr(C)]
13830pub struct ip6t_error {
13831    pub entry: ip6t_entry,
13832    pub target: xt_error_target,
13833}
13834impl Default for ip6t_error {
13835    fn default() -> Self {
13836        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13837        unsafe {
13838            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13839            s.assume_init()
13840        }
13841    }
13842}
13843#[repr(C)]
13844#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13845pub struct ip6t_icmp {
13846    pub type_: __u8,
13847    pub code: [__u8; 2usize],
13848    pub invflags: __u8,
13849}
13850#[repr(C)]
13851#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13852pub struct ip6t_getinfo {
13853    pub name: [crate::types::c_char; 32usize],
13854    pub valid_hooks: crate::types::c_uint,
13855    pub hook_entry: [crate::types::c_uint; 5usize],
13856    pub underflow: [crate::types::c_uint; 5usize],
13857    pub num_entries: crate::types::c_uint,
13858    pub size: crate::types::c_uint,
13859}
13860#[repr(C)]
13861#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
13862pub struct ip6t_replace {
13863    pub name: [crate::types::c_char; 32usize],
13864    pub valid_hooks: crate::types::c_uint,
13865    pub num_entries: crate::types::c_uint,
13866    pub size: crate::types::c_uint,
13867    pub hook_entry: [crate::types::c_uint; 5usize],
13868    pub underflow: [crate::types::c_uint; 5usize],
13869    pub num_counters: crate::types::c_uint,
13870    pub counters: uref<xt_counters>,
13871    pub entries: __IncompleteArrayField<ip6t_entry>,
13872}
13873impl Default for ip6t_replace {
13874    fn default() -> Self {
13875        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13876        unsafe {
13877            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13878            s.assume_init()
13879        }
13880    }
13881}
13882#[repr(C)]
13883#[derive(FromBytes, Immutable, KnownLayout)]
13884pub struct ip6t_get_entries {
13885    pub name: [crate::types::c_char; 32usize],
13886    pub size: crate::types::c_uint,
13887    pub __bindgen_padding_0: [u8; 4usize],
13888    pub entrytable: __IncompleteArrayField<ip6t_entry>,
13889}
13890impl Default for ip6t_get_entries {
13891    fn default() -> Self {
13892        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13893        unsafe {
13894            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13895            s.assume_init()
13896        }
13897    }
13898}
13899pub const ip6t_reject_with_IP6T_ICMP6_NO_ROUTE: ip6t_reject_with = 0;
13900pub const ip6t_reject_with_IP6T_ICMP6_ADM_PROHIBITED: ip6t_reject_with = 1;
13901pub const ip6t_reject_with_IP6T_ICMP6_NOT_NEIGHBOUR: ip6t_reject_with = 2;
13902pub const ip6t_reject_with_IP6T_ICMP6_ADDR_UNREACH: ip6t_reject_with = 3;
13903pub const ip6t_reject_with_IP6T_ICMP6_PORT_UNREACH: ip6t_reject_with = 4;
13904pub const ip6t_reject_with_IP6T_ICMP6_ECHOREPLY: ip6t_reject_with = 5;
13905pub const ip6t_reject_with_IP6T_TCP_RESET: ip6t_reject_with = 6;
13906pub const ip6t_reject_with_IP6T_ICMP6_POLICY_FAIL: ip6t_reject_with = 7;
13907pub const ip6t_reject_with_IP6T_ICMP6_REJECT_ROUTE: ip6t_reject_with = 8;
13908pub type ip6t_reject_with = crate::types::c_uint;
13909#[repr(C)]
13910#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13911pub struct ip6t_reject_info {
13912    pub with: __u32,
13913}
13914pub const perf_type_id_PERF_TYPE_HARDWARE: perf_type_id = 0;
13915pub const perf_type_id_PERF_TYPE_SOFTWARE: perf_type_id = 1;
13916pub const perf_type_id_PERF_TYPE_TRACEPOINT: perf_type_id = 2;
13917pub const perf_type_id_PERF_TYPE_HW_CACHE: perf_type_id = 3;
13918pub const perf_type_id_PERF_TYPE_RAW: perf_type_id = 4;
13919pub const perf_type_id_PERF_TYPE_BREAKPOINT: perf_type_id = 5;
13920pub const perf_type_id_PERF_TYPE_MAX: perf_type_id = 6;
13921pub type perf_type_id = crate::types::c_uint;
13922pub const perf_hw_id_PERF_COUNT_HW_CPU_CYCLES: perf_hw_id = 0;
13923pub const perf_hw_id_PERF_COUNT_HW_INSTRUCTIONS: perf_hw_id = 1;
13924pub const perf_hw_id_PERF_COUNT_HW_CACHE_REFERENCES: perf_hw_id = 2;
13925pub const perf_hw_id_PERF_COUNT_HW_CACHE_MISSES: perf_hw_id = 3;
13926pub const perf_hw_id_PERF_COUNT_HW_BRANCH_INSTRUCTIONS: perf_hw_id = 4;
13927pub const perf_hw_id_PERF_COUNT_HW_BRANCH_MISSES: perf_hw_id = 5;
13928pub const perf_hw_id_PERF_COUNT_HW_BUS_CYCLES: perf_hw_id = 6;
13929pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_FRONTEND: perf_hw_id = 7;
13930pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_BACKEND: perf_hw_id = 8;
13931pub const perf_hw_id_PERF_COUNT_HW_REF_CPU_CYCLES: perf_hw_id = 9;
13932pub const perf_hw_id_PERF_COUNT_HW_MAX: perf_hw_id = 10;
13933pub type perf_hw_id = crate::types::c_uint;
13934pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1D: perf_hw_cache_id = 0;
13935pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1I: perf_hw_cache_id = 1;
13936pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_LL: perf_hw_cache_id = 2;
13937pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_DTLB: perf_hw_cache_id = 3;
13938pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_ITLB: perf_hw_cache_id = 4;
13939pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_BPU: perf_hw_cache_id = 5;
13940pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_NODE: perf_hw_cache_id = 6;
13941pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_MAX: perf_hw_cache_id = 7;
13942pub type perf_hw_cache_id = crate::types::c_uint;
13943pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_READ: perf_hw_cache_op_id = 0;
13944pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_WRITE: perf_hw_cache_op_id = 1;
13945pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_PREFETCH: perf_hw_cache_op_id = 2;
13946pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_MAX: perf_hw_cache_op_id = 3;
13947pub type perf_hw_cache_op_id = crate::types::c_uint;
13948pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_ACCESS: perf_hw_cache_op_result_id =
13949    0;
13950pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MISS: perf_hw_cache_op_result_id =
13951    1;
13952pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MAX: perf_hw_cache_op_result_id = 2;
13953pub type perf_hw_cache_op_result_id = crate::types::c_uint;
13954pub const perf_sw_ids_PERF_COUNT_SW_CPU_CLOCK: perf_sw_ids = 0;
13955pub const perf_sw_ids_PERF_COUNT_SW_TASK_CLOCK: perf_sw_ids = 1;
13956pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS: perf_sw_ids = 2;
13957pub const perf_sw_ids_PERF_COUNT_SW_CONTEXT_SWITCHES: perf_sw_ids = 3;
13958pub const perf_sw_ids_PERF_COUNT_SW_CPU_MIGRATIONS: perf_sw_ids = 4;
13959pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MIN: perf_sw_ids = 5;
13960pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MAJ: perf_sw_ids = 6;
13961pub const perf_sw_ids_PERF_COUNT_SW_ALIGNMENT_FAULTS: perf_sw_ids = 7;
13962pub const perf_sw_ids_PERF_COUNT_SW_EMULATION_FAULTS: perf_sw_ids = 8;
13963pub const perf_sw_ids_PERF_COUNT_SW_DUMMY: perf_sw_ids = 9;
13964pub const perf_sw_ids_PERF_COUNT_SW_BPF_OUTPUT: perf_sw_ids = 10;
13965pub const perf_sw_ids_PERF_COUNT_SW_CGROUP_SWITCHES: perf_sw_ids = 11;
13966pub const perf_sw_ids_PERF_COUNT_SW_MAX: perf_sw_ids = 12;
13967pub type perf_sw_ids = crate::types::c_uint;
13968pub const perf_event_sample_format_PERF_SAMPLE_IP: perf_event_sample_format = 1;
13969pub const perf_event_sample_format_PERF_SAMPLE_TID: perf_event_sample_format = 2;
13970pub const perf_event_sample_format_PERF_SAMPLE_TIME: perf_event_sample_format = 4;
13971pub const perf_event_sample_format_PERF_SAMPLE_ADDR: perf_event_sample_format = 8;
13972pub const perf_event_sample_format_PERF_SAMPLE_READ: perf_event_sample_format = 16;
13973pub const perf_event_sample_format_PERF_SAMPLE_CALLCHAIN: perf_event_sample_format = 32;
13974pub const perf_event_sample_format_PERF_SAMPLE_ID: perf_event_sample_format = 64;
13975pub const perf_event_sample_format_PERF_SAMPLE_CPU: perf_event_sample_format = 128;
13976pub const perf_event_sample_format_PERF_SAMPLE_PERIOD: perf_event_sample_format = 256;
13977pub const perf_event_sample_format_PERF_SAMPLE_STREAM_ID: perf_event_sample_format = 512;
13978pub const perf_event_sample_format_PERF_SAMPLE_RAW: perf_event_sample_format = 1024;
13979pub const perf_event_sample_format_PERF_SAMPLE_BRANCH_STACK: perf_event_sample_format = 2048;
13980pub const perf_event_sample_format_PERF_SAMPLE_REGS_USER: perf_event_sample_format = 4096;
13981pub const perf_event_sample_format_PERF_SAMPLE_STACK_USER: perf_event_sample_format = 8192;
13982pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT: perf_event_sample_format = 16384;
13983pub const perf_event_sample_format_PERF_SAMPLE_DATA_SRC: perf_event_sample_format = 32768;
13984pub const perf_event_sample_format_PERF_SAMPLE_IDENTIFIER: perf_event_sample_format = 65536;
13985pub const perf_event_sample_format_PERF_SAMPLE_TRANSACTION: perf_event_sample_format = 131072;
13986pub const perf_event_sample_format_PERF_SAMPLE_REGS_INTR: perf_event_sample_format = 262144;
13987pub const perf_event_sample_format_PERF_SAMPLE_PHYS_ADDR: perf_event_sample_format = 524288;
13988pub const perf_event_sample_format_PERF_SAMPLE_AUX: perf_event_sample_format = 1048576;
13989pub const perf_event_sample_format_PERF_SAMPLE_CGROUP: perf_event_sample_format = 2097152;
13990pub const perf_event_sample_format_PERF_SAMPLE_DATA_PAGE_SIZE: perf_event_sample_format = 4194304;
13991pub const perf_event_sample_format_PERF_SAMPLE_CODE_PAGE_SIZE: perf_event_sample_format = 8388608;
13992pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT_STRUCT: perf_event_sample_format = 16777216;
13993pub const perf_event_sample_format_PERF_SAMPLE_MAX: perf_event_sample_format = 33554432;
13994pub type perf_event_sample_format = crate::types::c_uint;
13995pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_USER_SHIFT:
13996    perf_branch_sample_type_shift = 0;
13997pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_KERNEL_SHIFT:
13998    perf_branch_sample_type_shift = 1;
13999pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HV_SHIFT: perf_branch_sample_type_shift =
14000    2;
14001pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_SHIFT:
14002    perf_branch_sample_type_shift = 3;
14003pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT:
14004    perf_branch_sample_type_shift = 4;
14005pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT:
14006    perf_branch_sample_type_shift = 5;
14007pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_CALL_SHIFT:
14008    perf_branch_sample_type_shift = 6;
14009pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT:
14010    perf_branch_sample_type_shift = 7;
14011pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IN_TX_SHIFT:
14012    perf_branch_sample_type_shift = 8;
14013pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_TX_SHIFT:
14014    perf_branch_sample_type_shift = 9;
14015pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COND_SHIFT:
14016    perf_branch_sample_type_shift = 10;
14017pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT:
14018    perf_branch_sample_type_shift = 11;
14019pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT:
14020    perf_branch_sample_type_shift = 12;
14021pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_SHIFT:
14022    perf_branch_sample_type_shift = 13;
14023pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT:
14024    perf_branch_sample_type_shift = 14;
14025pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT:
14026    perf_branch_sample_type_shift = 15;
14027pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT:
14028    perf_branch_sample_type_shift = 16;
14029pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT:
14030    perf_branch_sample_type_shift = 17;
14031pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_PRIV_SAVE_SHIFT:
14032    perf_branch_sample_type_shift = 18;
14033pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COUNTERS_SHIFT:
14034    perf_branch_sample_type_shift = 19;
14035pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_MAX_SHIFT:
14036    perf_branch_sample_type_shift = 20;
14037pub type perf_branch_sample_type_shift = crate::types::c_uint;
14038pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_USER: perf_branch_sample_type = 1;
14039pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_KERNEL: perf_branch_sample_type = 2;
14040pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HV: perf_branch_sample_type = 4;
14041pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY: perf_branch_sample_type = 8;
14042pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_CALL: perf_branch_sample_type = 16;
14043pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_RETURN: perf_branch_sample_type = 32;
14044pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_CALL: perf_branch_sample_type = 64;
14045pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ABORT_TX: perf_branch_sample_type = 128;
14046pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IN_TX: perf_branch_sample_type = 256;
14047pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_TX: perf_branch_sample_type = 512;
14048pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COND: perf_branch_sample_type = 1024;
14049pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL_STACK: perf_branch_sample_type = 2048;
14050pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_JUMP: perf_branch_sample_type = 4096;
14051pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL: perf_branch_sample_type = 8192;
14052pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_FLAGS: perf_branch_sample_type = 16384;
14053pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_CYCLES: perf_branch_sample_type = 32768;
14054pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_TYPE_SAVE: perf_branch_sample_type = 65536;
14055pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HW_INDEX: perf_branch_sample_type = 131072;
14056pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_PRIV_SAVE: perf_branch_sample_type = 262144;
14057pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COUNTERS: perf_branch_sample_type = 524288;
14058pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_MAX: perf_branch_sample_type = 1048576;
14059pub type perf_branch_sample_type = crate::types::c_uint;
14060pub const PERF_BR_UNKNOWN: _bindgen_ty_86 = 0;
14061pub const PERF_BR_COND: _bindgen_ty_86 = 1;
14062pub const PERF_BR_UNCOND: _bindgen_ty_86 = 2;
14063pub const PERF_BR_IND: _bindgen_ty_86 = 3;
14064pub const PERF_BR_CALL: _bindgen_ty_86 = 4;
14065pub const PERF_BR_IND_CALL: _bindgen_ty_86 = 5;
14066pub const PERF_BR_RET: _bindgen_ty_86 = 6;
14067pub const PERF_BR_SYSCALL: _bindgen_ty_86 = 7;
14068pub const PERF_BR_SYSRET: _bindgen_ty_86 = 8;
14069pub const PERF_BR_COND_CALL: _bindgen_ty_86 = 9;
14070pub const PERF_BR_COND_RET: _bindgen_ty_86 = 10;
14071pub const PERF_BR_ERET: _bindgen_ty_86 = 11;
14072pub const PERF_BR_IRQ: _bindgen_ty_86 = 12;
14073pub const PERF_BR_SERROR: _bindgen_ty_86 = 13;
14074pub const PERF_BR_NO_TX: _bindgen_ty_86 = 14;
14075pub const PERF_BR_EXTEND_ABI: _bindgen_ty_86 = 15;
14076pub const PERF_BR_MAX: _bindgen_ty_86 = 16;
14077pub type _bindgen_ty_86 = crate::types::c_uint;
14078pub const PERF_BR_SPEC_NA: _bindgen_ty_87 = 0;
14079pub const PERF_BR_SPEC_WRONG_PATH: _bindgen_ty_87 = 1;
14080pub const PERF_BR_NON_SPEC_CORRECT_PATH: _bindgen_ty_87 = 2;
14081pub const PERF_BR_SPEC_CORRECT_PATH: _bindgen_ty_87 = 3;
14082pub const PERF_BR_SPEC_MAX: _bindgen_ty_87 = 4;
14083pub type _bindgen_ty_87 = crate::types::c_uint;
14084pub const PERF_BR_NEW_FAULT_ALGN: _bindgen_ty_88 = 0;
14085pub const PERF_BR_NEW_FAULT_DATA: _bindgen_ty_88 = 1;
14086pub const PERF_BR_NEW_FAULT_INST: _bindgen_ty_88 = 2;
14087pub const PERF_BR_NEW_ARCH_1: _bindgen_ty_88 = 3;
14088pub const PERF_BR_NEW_ARCH_2: _bindgen_ty_88 = 4;
14089pub const PERF_BR_NEW_ARCH_3: _bindgen_ty_88 = 5;
14090pub const PERF_BR_NEW_ARCH_4: _bindgen_ty_88 = 6;
14091pub const PERF_BR_NEW_ARCH_5: _bindgen_ty_88 = 7;
14092pub const PERF_BR_NEW_MAX: _bindgen_ty_88 = 8;
14093pub type _bindgen_ty_88 = crate::types::c_uint;
14094pub const PERF_BR_PRIV_UNKNOWN: _bindgen_ty_89 = 0;
14095pub const PERF_BR_PRIV_USER: _bindgen_ty_89 = 1;
14096pub const PERF_BR_PRIV_KERNEL: _bindgen_ty_89 = 2;
14097pub const PERF_BR_PRIV_HV: _bindgen_ty_89 = 3;
14098pub type _bindgen_ty_89 = crate::types::c_uint;
14099pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_NONE: perf_sample_regs_abi = 0;
14100pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_32: perf_sample_regs_abi = 1;
14101pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_64: perf_sample_regs_abi = 2;
14102pub type perf_sample_regs_abi = crate::types::c_uint;
14103pub const PERF_TXN_ELISION: _bindgen_ty_90 = 1;
14104pub const PERF_TXN_TRANSACTION: _bindgen_ty_90 = 2;
14105pub const PERF_TXN_SYNC: _bindgen_ty_90 = 4;
14106pub const PERF_TXN_ASYNC: _bindgen_ty_90 = 8;
14107pub const PERF_TXN_RETRY: _bindgen_ty_90 = 16;
14108pub const PERF_TXN_CONFLICT: _bindgen_ty_90 = 32;
14109pub const PERF_TXN_CAPACITY_WRITE: _bindgen_ty_90 = 64;
14110pub const PERF_TXN_CAPACITY_READ: _bindgen_ty_90 = 128;
14111pub const PERF_TXN_MAX: _bindgen_ty_90 = 256;
14112pub const PERF_TXN_ABORT_MASK: _bindgen_ty_90 = 18446744069414584320;
14113pub const PERF_TXN_ABORT_SHIFT: _bindgen_ty_90 = 32;
14114pub type _bindgen_ty_90 = crate::types::c_ulong;
14115pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_ENABLED: perf_event_read_format = 1;
14116pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_RUNNING: perf_event_read_format = 2;
14117pub const perf_event_read_format_PERF_FORMAT_ID: perf_event_read_format = 4;
14118pub const perf_event_read_format_PERF_FORMAT_GROUP: perf_event_read_format = 8;
14119pub const perf_event_read_format_PERF_FORMAT_LOST: perf_event_read_format = 16;
14120pub const perf_event_read_format_PERF_FORMAT_MAX: perf_event_read_format = 32;
14121pub type perf_event_read_format = crate::types::c_uint;
14122#[repr(C)]
14123#[derive(Clone, Copy, FromBytes, Immutable)]
14124pub struct perf_event_attr {
14125    pub type_: __u32,
14126    pub size: __u32,
14127    pub config: __u64,
14128    pub __bindgen_anon_1: perf_event_attr__bindgen_ty_1,
14129    pub sample_type: __u64,
14130    pub read_format: __u64,
14131    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
14132    pub __bindgen_anon_2: perf_event_attr__bindgen_ty_2,
14133    pub bp_type: __u32,
14134    pub __bindgen_anon_3: perf_event_attr__bindgen_ty_3,
14135    pub __bindgen_anon_4: perf_event_attr__bindgen_ty_4,
14136    pub branch_sample_type: __u64,
14137    pub sample_regs_user: __u64,
14138    pub sample_stack_user: __u32,
14139    pub clockid: __s32,
14140    pub sample_regs_intr: __u64,
14141    pub aux_watermark: __u32,
14142    pub sample_max_stack: __u16,
14143    pub __reserved_2: __u16,
14144    pub aux_sample_size: __u32,
14145    pub __reserved_3: __u32,
14146    pub sig_data: __u64,
14147    pub config3: __u64,
14148}
14149#[repr(C)]
14150#[derive(Clone, Copy, FromBytes, Immutable)]
14151pub union perf_event_attr__bindgen_ty_1 {
14152    pub sample_period: __u64,
14153    pub sample_freq: __u64,
14154}
14155impl Default for perf_event_attr__bindgen_ty_1 {
14156    fn default() -> Self {
14157        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14158        unsafe {
14159            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14160            s.assume_init()
14161        }
14162    }
14163}
14164#[repr(C)]
14165#[derive(Clone, Copy, FromBytes, Immutable)]
14166pub union perf_event_attr__bindgen_ty_2 {
14167    pub wakeup_events: __u32,
14168    pub wakeup_watermark: __u32,
14169}
14170impl Default for perf_event_attr__bindgen_ty_2 {
14171    fn default() -> Self {
14172        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14173        unsafe {
14174            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14175            s.assume_init()
14176        }
14177    }
14178}
14179#[repr(C)]
14180#[derive(Clone, Copy, FromBytes, Immutable)]
14181pub union perf_event_attr__bindgen_ty_3 {
14182    pub bp_addr: __u64,
14183    pub kprobe_func: __u64,
14184    pub uprobe_path: __u64,
14185    pub config1: __u64,
14186}
14187impl Default for perf_event_attr__bindgen_ty_3 {
14188    fn default() -> Self {
14189        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14190        unsafe {
14191            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14192            s.assume_init()
14193        }
14194    }
14195}
14196#[repr(C)]
14197#[derive(Clone, Copy, FromBytes, Immutable)]
14198pub union perf_event_attr__bindgen_ty_4 {
14199    pub bp_len: __u64,
14200    pub kprobe_addr: __u64,
14201    pub probe_offset: __u64,
14202    pub config2: __u64,
14203}
14204impl Default for perf_event_attr__bindgen_ty_4 {
14205    fn default() -> Self {
14206        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14207        unsafe {
14208            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14209            s.assume_init()
14210        }
14211    }
14212}
14213impl Default for perf_event_attr {
14214    fn default() -> Self {
14215        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14216        unsafe {
14217            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14218            s.assume_init()
14219        }
14220    }
14221}
14222impl perf_event_attr {
14223    #[inline]
14224    pub fn disabled(&self) -> __u64 {
14225        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u64) }
14226    }
14227    #[inline]
14228    pub fn set_disabled(&mut self, val: __u64) {
14229        unsafe {
14230            let val: u64 = val as _;
14231            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
14232        }
14233    }
14234    #[inline]
14235    pub unsafe fn disabled_raw(this: *const Self) -> __u64 {
14236        unsafe {
14237            ::std::mem::transmute(
14238                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
14239                    ::std::ptr::addr_of!((*this)._bitfield_1),
14240                ) as u64,
14241            )
14242        }
14243    }
14244    #[inline]
14245    pub unsafe fn set_disabled_raw(this: *mut Self, val: __u64) {
14246        unsafe {
14247            let val: u64 = val as _;
14248            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
14249                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14250                val as u64,
14251            )
14252        }
14253    }
14254    #[inline]
14255    pub fn inherit(&self) -> __u64 {
14256        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u64) }
14257    }
14258    #[inline]
14259    pub fn set_inherit(&mut self, val: __u64) {
14260        unsafe {
14261            let val: u64 = val as _;
14262            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
14263        }
14264    }
14265    #[inline]
14266    pub unsafe fn inherit_raw(this: *const Self) -> __u64 {
14267        unsafe {
14268            ::std::mem::transmute(
14269                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
14270                    ::std::ptr::addr_of!((*this)._bitfield_1),
14271                ) as u64,
14272            )
14273        }
14274    }
14275    #[inline]
14276    pub unsafe fn set_inherit_raw(this: *mut Self, val: __u64) {
14277        unsafe {
14278            let val: u64 = val as _;
14279            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
14280                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14281                val as u64,
14282            )
14283        }
14284    }
14285    #[inline]
14286    pub fn pinned(&self) -> __u64 {
14287        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u64) }
14288    }
14289    #[inline]
14290    pub fn set_pinned(&mut self, val: __u64) {
14291        unsafe {
14292            let val: u64 = val as _;
14293            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
14294        }
14295    }
14296    #[inline]
14297    pub unsafe fn pinned_raw(this: *const Self) -> __u64 {
14298        unsafe {
14299            ::std::mem::transmute(
14300                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
14301                    ::std::ptr::addr_of!((*this)._bitfield_1),
14302                ) as u64,
14303            )
14304        }
14305    }
14306    #[inline]
14307    pub unsafe fn set_pinned_raw(this: *mut Self, val: __u64) {
14308        unsafe {
14309            let val: u64 = val as _;
14310            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
14311                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14312                val as u64,
14313            )
14314        }
14315    }
14316    #[inline]
14317    pub fn exclusive(&self) -> __u64 {
14318        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u64) }
14319    }
14320    #[inline]
14321    pub fn set_exclusive(&mut self, val: __u64) {
14322        unsafe {
14323            let val: u64 = val as _;
14324            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
14325        }
14326    }
14327    #[inline]
14328    pub unsafe fn exclusive_raw(this: *const Self) -> __u64 {
14329        unsafe {
14330            ::std::mem::transmute(
14331                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
14332                    ::std::ptr::addr_of!((*this)._bitfield_1),
14333                ) as u64,
14334            )
14335        }
14336    }
14337    #[inline]
14338    pub unsafe fn set_exclusive_raw(this: *mut Self, val: __u64) {
14339        unsafe {
14340            let val: u64 = val as _;
14341            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
14342                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14343                val as u64,
14344            )
14345        }
14346    }
14347    #[inline]
14348    pub fn exclude_user(&self) -> __u64 {
14349        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 1u8>() as u64) }
14350    }
14351    #[inline]
14352    pub fn set_exclude_user(&mut self, val: __u64) {
14353        unsafe {
14354            let val: u64 = val as _;
14355            self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
14356        }
14357    }
14358    #[inline]
14359    pub unsafe fn exclude_user_raw(this: *const Self) -> __u64 {
14360        unsafe {
14361            ::std::mem::transmute(
14362                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 1u8>(
14363                    ::std::ptr::addr_of!((*this)._bitfield_1),
14364                ) as u64,
14365            )
14366        }
14367    }
14368    #[inline]
14369    pub unsafe fn set_exclude_user_raw(this: *mut Self, val: __u64) {
14370        unsafe {
14371            let val: u64 = val as _;
14372            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 1u8>(
14373                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14374                val as u64,
14375            )
14376        }
14377    }
14378    #[inline]
14379    pub fn exclude_kernel(&self) -> __u64 {
14380        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 1u8>() as u64) }
14381    }
14382    #[inline]
14383    pub fn set_exclude_kernel(&mut self, val: __u64) {
14384        unsafe {
14385            let val: u64 = val as _;
14386            self._bitfield_1.set_const::<5usize, 1u8>(val as u64)
14387        }
14388    }
14389    #[inline]
14390    pub unsafe fn exclude_kernel_raw(this: *const Self) -> __u64 {
14391        unsafe {
14392            ::std::mem::transmute(
14393                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 1u8>(
14394                    ::std::ptr::addr_of!((*this)._bitfield_1),
14395                ) as u64,
14396            )
14397        }
14398    }
14399    #[inline]
14400    pub unsafe fn set_exclude_kernel_raw(this: *mut Self, val: __u64) {
14401        unsafe {
14402            let val: u64 = val as _;
14403            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 1u8>(
14404                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14405                val as u64,
14406            )
14407        }
14408    }
14409    #[inline]
14410    pub fn exclude_hv(&self) -> __u64 {
14411        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<6usize, 1u8>() as u64) }
14412    }
14413    #[inline]
14414    pub fn set_exclude_hv(&mut self, val: __u64) {
14415        unsafe {
14416            let val: u64 = val as _;
14417            self._bitfield_1.set_const::<6usize, 1u8>(val as u64)
14418        }
14419    }
14420    #[inline]
14421    pub unsafe fn exclude_hv_raw(this: *const Self) -> __u64 {
14422        unsafe {
14423            ::std::mem::transmute(
14424                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<6usize, 1u8>(
14425                    ::std::ptr::addr_of!((*this)._bitfield_1),
14426                ) as u64,
14427            )
14428        }
14429    }
14430    #[inline]
14431    pub unsafe fn set_exclude_hv_raw(this: *mut Self, val: __u64) {
14432        unsafe {
14433            let val: u64 = val as _;
14434            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<6usize, 1u8>(
14435                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14436                val as u64,
14437            )
14438        }
14439    }
14440    #[inline]
14441    pub fn exclude_idle(&self) -> __u64 {
14442        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<7usize, 1u8>() as u64) }
14443    }
14444    #[inline]
14445    pub fn set_exclude_idle(&mut self, val: __u64) {
14446        unsafe {
14447            let val: u64 = val as _;
14448            self._bitfield_1.set_const::<7usize, 1u8>(val as u64)
14449        }
14450    }
14451    #[inline]
14452    pub unsafe fn exclude_idle_raw(this: *const Self) -> __u64 {
14453        unsafe {
14454            ::std::mem::transmute(
14455                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<7usize, 1u8>(
14456                    ::std::ptr::addr_of!((*this)._bitfield_1),
14457                ) as u64,
14458            )
14459        }
14460    }
14461    #[inline]
14462    pub unsafe fn set_exclude_idle_raw(this: *mut Self, val: __u64) {
14463        unsafe {
14464            let val: u64 = val as _;
14465            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<7usize, 1u8>(
14466                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14467                val as u64,
14468            )
14469        }
14470    }
14471    #[inline]
14472    pub fn mmap(&self) -> __u64 {
14473        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<8usize, 1u8>() as u64) }
14474    }
14475    #[inline]
14476    pub fn set_mmap(&mut self, val: __u64) {
14477        unsafe {
14478            let val: u64 = val as _;
14479            self._bitfield_1.set_const::<8usize, 1u8>(val as u64)
14480        }
14481    }
14482    #[inline]
14483    pub unsafe fn mmap_raw(this: *const Self) -> __u64 {
14484        unsafe {
14485            ::std::mem::transmute(
14486                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<8usize, 1u8>(
14487                    ::std::ptr::addr_of!((*this)._bitfield_1),
14488                ) as u64,
14489            )
14490        }
14491    }
14492    #[inline]
14493    pub unsafe fn set_mmap_raw(this: *mut Self, val: __u64) {
14494        unsafe {
14495            let val: u64 = val as _;
14496            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<8usize, 1u8>(
14497                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14498                val as u64,
14499            )
14500        }
14501    }
14502    #[inline]
14503    pub fn comm(&self) -> __u64 {
14504        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<9usize, 1u8>() as u64) }
14505    }
14506    #[inline]
14507    pub fn set_comm(&mut self, val: __u64) {
14508        unsafe {
14509            let val: u64 = val as _;
14510            self._bitfield_1.set_const::<9usize, 1u8>(val as u64)
14511        }
14512    }
14513    #[inline]
14514    pub unsafe fn comm_raw(this: *const Self) -> __u64 {
14515        unsafe {
14516            ::std::mem::transmute(
14517                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<9usize, 1u8>(
14518                    ::std::ptr::addr_of!((*this)._bitfield_1),
14519                ) as u64,
14520            )
14521        }
14522    }
14523    #[inline]
14524    pub unsafe fn set_comm_raw(this: *mut Self, val: __u64) {
14525        unsafe {
14526            let val: u64 = val as _;
14527            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<9usize, 1u8>(
14528                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14529                val as u64,
14530            )
14531        }
14532    }
14533    #[inline]
14534    pub fn freq(&self) -> __u64 {
14535        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<10usize, 1u8>() as u64) }
14536    }
14537    #[inline]
14538    pub fn set_freq(&mut self, val: __u64) {
14539        unsafe {
14540            let val: u64 = val as _;
14541            self._bitfield_1.set_const::<10usize, 1u8>(val as u64)
14542        }
14543    }
14544    #[inline]
14545    pub unsafe fn freq_raw(this: *const Self) -> __u64 {
14546        unsafe {
14547            ::std::mem::transmute(
14548                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<10usize, 1u8>(
14549                    ::std::ptr::addr_of!((*this)._bitfield_1),
14550                ) as u64,
14551            )
14552        }
14553    }
14554    #[inline]
14555    pub unsafe fn set_freq_raw(this: *mut Self, val: __u64) {
14556        unsafe {
14557            let val: u64 = val as _;
14558            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<10usize, 1u8>(
14559                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14560                val as u64,
14561            )
14562        }
14563    }
14564    #[inline]
14565    pub fn inherit_stat(&self) -> __u64 {
14566        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<11usize, 1u8>() as u64) }
14567    }
14568    #[inline]
14569    pub fn set_inherit_stat(&mut self, val: __u64) {
14570        unsafe {
14571            let val: u64 = val as _;
14572            self._bitfield_1.set_const::<11usize, 1u8>(val as u64)
14573        }
14574    }
14575    #[inline]
14576    pub unsafe fn inherit_stat_raw(this: *const Self) -> __u64 {
14577        unsafe {
14578            ::std::mem::transmute(
14579                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<11usize, 1u8>(
14580                    ::std::ptr::addr_of!((*this)._bitfield_1),
14581                ) as u64,
14582            )
14583        }
14584    }
14585    #[inline]
14586    pub unsafe fn set_inherit_stat_raw(this: *mut Self, val: __u64) {
14587        unsafe {
14588            let val: u64 = val as _;
14589            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<11usize, 1u8>(
14590                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14591                val as u64,
14592            )
14593        }
14594    }
14595    #[inline]
14596    pub fn enable_on_exec(&self) -> __u64 {
14597        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<12usize, 1u8>() as u64) }
14598    }
14599    #[inline]
14600    pub fn set_enable_on_exec(&mut self, val: __u64) {
14601        unsafe {
14602            let val: u64 = val as _;
14603            self._bitfield_1.set_const::<12usize, 1u8>(val as u64)
14604        }
14605    }
14606    #[inline]
14607    pub unsafe fn enable_on_exec_raw(this: *const Self) -> __u64 {
14608        unsafe {
14609            ::std::mem::transmute(
14610                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<12usize, 1u8>(
14611                    ::std::ptr::addr_of!((*this)._bitfield_1),
14612                ) as u64,
14613            )
14614        }
14615    }
14616    #[inline]
14617    pub unsafe fn set_enable_on_exec_raw(this: *mut Self, val: __u64) {
14618        unsafe {
14619            let val: u64 = val as _;
14620            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<12usize, 1u8>(
14621                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14622                val as u64,
14623            )
14624        }
14625    }
14626    #[inline]
14627    pub fn task(&self) -> __u64 {
14628        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<13usize, 1u8>() as u64) }
14629    }
14630    #[inline]
14631    pub fn set_task(&mut self, val: __u64) {
14632        unsafe {
14633            let val: u64 = val as _;
14634            self._bitfield_1.set_const::<13usize, 1u8>(val as u64)
14635        }
14636    }
14637    #[inline]
14638    pub unsafe fn task_raw(this: *const Self) -> __u64 {
14639        unsafe {
14640            ::std::mem::transmute(
14641                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<13usize, 1u8>(
14642                    ::std::ptr::addr_of!((*this)._bitfield_1),
14643                ) as u64,
14644            )
14645        }
14646    }
14647    #[inline]
14648    pub unsafe fn set_task_raw(this: *mut Self, val: __u64) {
14649        unsafe {
14650            let val: u64 = val as _;
14651            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<13usize, 1u8>(
14652                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14653                val as u64,
14654            )
14655        }
14656    }
14657    #[inline]
14658    pub fn watermark(&self) -> __u64 {
14659        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<14usize, 1u8>() as u64) }
14660    }
14661    #[inline]
14662    pub fn set_watermark(&mut self, val: __u64) {
14663        unsafe {
14664            let val: u64 = val as _;
14665            self._bitfield_1.set_const::<14usize, 1u8>(val as u64)
14666        }
14667    }
14668    #[inline]
14669    pub unsafe fn watermark_raw(this: *const Self) -> __u64 {
14670        unsafe {
14671            ::std::mem::transmute(
14672                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<14usize, 1u8>(
14673                    ::std::ptr::addr_of!((*this)._bitfield_1),
14674                ) as u64,
14675            )
14676        }
14677    }
14678    #[inline]
14679    pub unsafe fn set_watermark_raw(this: *mut Self, val: __u64) {
14680        unsafe {
14681            let val: u64 = val as _;
14682            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<14usize, 1u8>(
14683                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14684                val as u64,
14685            )
14686        }
14687    }
14688    #[inline]
14689    pub fn precise_ip(&self) -> __u64 {
14690        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<15usize, 2u8>() as u64) }
14691    }
14692    #[inline]
14693    pub fn set_precise_ip(&mut self, val: __u64) {
14694        unsafe {
14695            let val: u64 = val as _;
14696            self._bitfield_1.set_const::<15usize, 2u8>(val as u64)
14697        }
14698    }
14699    #[inline]
14700    pub unsafe fn precise_ip_raw(this: *const Self) -> __u64 {
14701        unsafe {
14702            ::std::mem::transmute(
14703                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<15usize, 2u8>(
14704                    ::std::ptr::addr_of!((*this)._bitfield_1),
14705                ) as u64,
14706            )
14707        }
14708    }
14709    #[inline]
14710    pub unsafe fn set_precise_ip_raw(this: *mut Self, val: __u64) {
14711        unsafe {
14712            let val: u64 = val as _;
14713            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<15usize, 2u8>(
14714                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14715                val as u64,
14716            )
14717        }
14718    }
14719    #[inline]
14720    pub fn mmap_data(&self) -> __u64 {
14721        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<17usize, 1u8>() as u64) }
14722    }
14723    #[inline]
14724    pub fn set_mmap_data(&mut self, val: __u64) {
14725        unsafe {
14726            let val: u64 = val as _;
14727            self._bitfield_1.set_const::<17usize, 1u8>(val as u64)
14728        }
14729    }
14730    #[inline]
14731    pub unsafe fn mmap_data_raw(this: *const Self) -> __u64 {
14732        unsafe {
14733            ::std::mem::transmute(
14734                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<17usize, 1u8>(
14735                    ::std::ptr::addr_of!((*this)._bitfield_1),
14736                ) as u64,
14737            )
14738        }
14739    }
14740    #[inline]
14741    pub unsafe fn set_mmap_data_raw(this: *mut Self, val: __u64) {
14742        unsafe {
14743            let val: u64 = val as _;
14744            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<17usize, 1u8>(
14745                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14746                val as u64,
14747            )
14748        }
14749    }
14750    #[inline]
14751    pub fn sample_id_all(&self) -> __u64 {
14752        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<18usize, 1u8>() as u64) }
14753    }
14754    #[inline]
14755    pub fn set_sample_id_all(&mut self, val: __u64) {
14756        unsafe {
14757            let val: u64 = val as _;
14758            self._bitfield_1.set_const::<18usize, 1u8>(val as u64)
14759        }
14760    }
14761    #[inline]
14762    pub unsafe fn sample_id_all_raw(this: *const Self) -> __u64 {
14763        unsafe {
14764            ::std::mem::transmute(
14765                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<18usize, 1u8>(
14766                    ::std::ptr::addr_of!((*this)._bitfield_1),
14767                ) as u64,
14768            )
14769        }
14770    }
14771    #[inline]
14772    pub unsafe fn set_sample_id_all_raw(this: *mut Self, val: __u64) {
14773        unsafe {
14774            let val: u64 = val as _;
14775            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<18usize, 1u8>(
14776                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14777                val as u64,
14778            )
14779        }
14780    }
14781    #[inline]
14782    pub fn exclude_host(&self) -> __u64 {
14783        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<19usize, 1u8>() as u64) }
14784    }
14785    #[inline]
14786    pub fn set_exclude_host(&mut self, val: __u64) {
14787        unsafe {
14788            let val: u64 = val as _;
14789            self._bitfield_1.set_const::<19usize, 1u8>(val as u64)
14790        }
14791    }
14792    #[inline]
14793    pub unsafe fn exclude_host_raw(this: *const Self) -> __u64 {
14794        unsafe {
14795            ::std::mem::transmute(
14796                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<19usize, 1u8>(
14797                    ::std::ptr::addr_of!((*this)._bitfield_1),
14798                ) as u64,
14799            )
14800        }
14801    }
14802    #[inline]
14803    pub unsafe fn set_exclude_host_raw(this: *mut Self, val: __u64) {
14804        unsafe {
14805            let val: u64 = val as _;
14806            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<19usize, 1u8>(
14807                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14808                val as u64,
14809            )
14810        }
14811    }
14812    #[inline]
14813    pub fn exclude_guest(&self) -> __u64 {
14814        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<20usize, 1u8>() as u64) }
14815    }
14816    #[inline]
14817    pub fn set_exclude_guest(&mut self, val: __u64) {
14818        unsafe {
14819            let val: u64 = val as _;
14820            self._bitfield_1.set_const::<20usize, 1u8>(val as u64)
14821        }
14822    }
14823    #[inline]
14824    pub unsafe fn exclude_guest_raw(this: *const Self) -> __u64 {
14825        unsafe {
14826            ::std::mem::transmute(
14827                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<20usize, 1u8>(
14828                    ::std::ptr::addr_of!((*this)._bitfield_1),
14829                ) as u64,
14830            )
14831        }
14832    }
14833    #[inline]
14834    pub unsafe fn set_exclude_guest_raw(this: *mut Self, val: __u64) {
14835        unsafe {
14836            let val: u64 = val as _;
14837            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<20usize, 1u8>(
14838                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14839                val as u64,
14840            )
14841        }
14842    }
14843    #[inline]
14844    pub fn exclude_callchain_kernel(&self) -> __u64 {
14845        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<21usize, 1u8>() as u64) }
14846    }
14847    #[inline]
14848    pub fn set_exclude_callchain_kernel(&mut self, val: __u64) {
14849        unsafe {
14850            let val: u64 = val as _;
14851            self._bitfield_1.set_const::<21usize, 1u8>(val as u64)
14852        }
14853    }
14854    #[inline]
14855    pub unsafe fn exclude_callchain_kernel_raw(this: *const Self) -> __u64 {
14856        unsafe {
14857            ::std::mem::transmute(
14858                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<21usize, 1u8>(
14859                    ::std::ptr::addr_of!((*this)._bitfield_1),
14860                ) as u64,
14861            )
14862        }
14863    }
14864    #[inline]
14865    pub unsafe fn set_exclude_callchain_kernel_raw(this: *mut Self, val: __u64) {
14866        unsafe {
14867            let val: u64 = val as _;
14868            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<21usize, 1u8>(
14869                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14870                val as u64,
14871            )
14872        }
14873    }
14874    #[inline]
14875    pub fn exclude_callchain_user(&self) -> __u64 {
14876        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<22usize, 1u8>() as u64) }
14877    }
14878    #[inline]
14879    pub fn set_exclude_callchain_user(&mut self, val: __u64) {
14880        unsafe {
14881            let val: u64 = val as _;
14882            self._bitfield_1.set_const::<22usize, 1u8>(val as u64)
14883        }
14884    }
14885    #[inline]
14886    pub unsafe fn exclude_callchain_user_raw(this: *const Self) -> __u64 {
14887        unsafe {
14888            ::std::mem::transmute(
14889                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<22usize, 1u8>(
14890                    ::std::ptr::addr_of!((*this)._bitfield_1),
14891                ) as u64,
14892            )
14893        }
14894    }
14895    #[inline]
14896    pub unsafe fn set_exclude_callchain_user_raw(this: *mut Self, val: __u64) {
14897        unsafe {
14898            let val: u64 = val as _;
14899            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<22usize, 1u8>(
14900                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14901                val as u64,
14902            )
14903        }
14904    }
14905    #[inline]
14906    pub fn mmap2(&self) -> __u64 {
14907        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<23usize, 1u8>() as u64) }
14908    }
14909    #[inline]
14910    pub fn set_mmap2(&mut self, val: __u64) {
14911        unsafe {
14912            let val: u64 = val as _;
14913            self._bitfield_1.set_const::<23usize, 1u8>(val as u64)
14914        }
14915    }
14916    #[inline]
14917    pub unsafe fn mmap2_raw(this: *const Self) -> __u64 {
14918        unsafe {
14919            ::std::mem::transmute(
14920                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<23usize, 1u8>(
14921                    ::std::ptr::addr_of!((*this)._bitfield_1),
14922                ) as u64,
14923            )
14924        }
14925    }
14926    #[inline]
14927    pub unsafe fn set_mmap2_raw(this: *mut Self, val: __u64) {
14928        unsafe {
14929            let val: u64 = val as _;
14930            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<23usize, 1u8>(
14931                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14932                val as u64,
14933            )
14934        }
14935    }
14936    #[inline]
14937    pub fn comm_exec(&self) -> __u64 {
14938        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<24usize, 1u8>() as u64) }
14939    }
14940    #[inline]
14941    pub fn set_comm_exec(&mut self, val: __u64) {
14942        unsafe {
14943            let val: u64 = val as _;
14944            self._bitfield_1.set_const::<24usize, 1u8>(val as u64)
14945        }
14946    }
14947    #[inline]
14948    pub unsafe fn comm_exec_raw(this: *const Self) -> __u64 {
14949        unsafe {
14950            ::std::mem::transmute(
14951                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 1u8>(
14952                    ::std::ptr::addr_of!((*this)._bitfield_1),
14953                ) as u64,
14954            )
14955        }
14956    }
14957    #[inline]
14958    pub unsafe fn set_comm_exec_raw(this: *mut Self, val: __u64) {
14959        unsafe {
14960            let val: u64 = val as _;
14961            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 1u8>(
14962                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14963                val as u64,
14964            )
14965        }
14966    }
14967    #[inline]
14968    pub fn use_clockid(&self) -> __u64 {
14969        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<25usize, 1u8>() as u64) }
14970    }
14971    #[inline]
14972    pub fn set_use_clockid(&mut self, val: __u64) {
14973        unsafe {
14974            let val: u64 = val as _;
14975            self._bitfield_1.set_const::<25usize, 1u8>(val as u64)
14976        }
14977    }
14978    #[inline]
14979    pub unsafe fn use_clockid_raw(this: *const Self) -> __u64 {
14980        unsafe {
14981            ::std::mem::transmute(
14982                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<25usize, 1u8>(
14983                    ::std::ptr::addr_of!((*this)._bitfield_1),
14984                ) as u64,
14985            )
14986        }
14987    }
14988    #[inline]
14989    pub unsafe fn set_use_clockid_raw(this: *mut Self, val: __u64) {
14990        unsafe {
14991            let val: u64 = val as _;
14992            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<25usize, 1u8>(
14993                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14994                val as u64,
14995            )
14996        }
14997    }
14998    #[inline]
14999    pub fn context_switch(&self) -> __u64 {
15000        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<26usize, 1u8>() as u64) }
15001    }
15002    #[inline]
15003    pub fn set_context_switch(&mut self, val: __u64) {
15004        unsafe {
15005            let val: u64 = val as _;
15006            self._bitfield_1.set_const::<26usize, 1u8>(val as u64)
15007        }
15008    }
15009    #[inline]
15010    pub unsafe fn context_switch_raw(this: *const Self) -> __u64 {
15011        unsafe {
15012            ::std::mem::transmute(
15013                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 1u8>(
15014                    ::std::ptr::addr_of!((*this)._bitfield_1),
15015                ) as u64,
15016            )
15017        }
15018    }
15019    #[inline]
15020    pub unsafe fn set_context_switch_raw(this: *mut Self, val: __u64) {
15021        unsafe {
15022            let val: u64 = val as _;
15023            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 1u8>(
15024                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15025                val as u64,
15026            )
15027        }
15028    }
15029    #[inline]
15030    pub fn write_backward(&self) -> __u64 {
15031        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<27usize, 1u8>() as u64) }
15032    }
15033    #[inline]
15034    pub fn set_write_backward(&mut self, val: __u64) {
15035        unsafe {
15036            let val: u64 = val as _;
15037            self._bitfield_1.set_const::<27usize, 1u8>(val as u64)
15038        }
15039    }
15040    #[inline]
15041    pub unsafe fn write_backward_raw(this: *const Self) -> __u64 {
15042        unsafe {
15043            ::std::mem::transmute(
15044                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<27usize, 1u8>(
15045                    ::std::ptr::addr_of!((*this)._bitfield_1),
15046                ) as u64,
15047            )
15048        }
15049    }
15050    #[inline]
15051    pub unsafe fn set_write_backward_raw(this: *mut Self, val: __u64) {
15052        unsafe {
15053            let val: u64 = val as _;
15054            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<27usize, 1u8>(
15055                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15056                val as u64,
15057            )
15058        }
15059    }
15060    #[inline]
15061    pub fn namespaces(&self) -> __u64 {
15062        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<28usize, 1u8>() as u64) }
15063    }
15064    #[inline]
15065    pub fn set_namespaces(&mut self, val: __u64) {
15066        unsafe {
15067            let val: u64 = val as _;
15068            self._bitfield_1.set_const::<28usize, 1u8>(val as u64)
15069        }
15070    }
15071    #[inline]
15072    pub unsafe fn namespaces_raw(this: *const Self) -> __u64 {
15073        unsafe {
15074            ::std::mem::transmute(
15075                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<28usize, 1u8>(
15076                    ::std::ptr::addr_of!((*this)._bitfield_1),
15077                ) as u64,
15078            )
15079        }
15080    }
15081    #[inline]
15082    pub unsafe fn set_namespaces_raw(this: *mut Self, val: __u64) {
15083        unsafe {
15084            let val: u64 = val as _;
15085            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<28usize, 1u8>(
15086                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15087                val as u64,
15088            )
15089        }
15090    }
15091    #[inline]
15092    pub fn ksymbol(&self) -> __u64 {
15093        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<29usize, 1u8>() as u64) }
15094    }
15095    #[inline]
15096    pub fn set_ksymbol(&mut self, val: __u64) {
15097        unsafe {
15098            let val: u64 = val as _;
15099            self._bitfield_1.set_const::<29usize, 1u8>(val as u64)
15100        }
15101    }
15102    #[inline]
15103    pub unsafe fn ksymbol_raw(this: *const Self) -> __u64 {
15104        unsafe {
15105            ::std::mem::transmute(
15106                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<29usize, 1u8>(
15107                    ::std::ptr::addr_of!((*this)._bitfield_1),
15108                ) as u64,
15109            )
15110        }
15111    }
15112    #[inline]
15113    pub unsafe fn set_ksymbol_raw(this: *mut Self, val: __u64) {
15114        unsafe {
15115            let val: u64 = val as _;
15116            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<29usize, 1u8>(
15117                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15118                val as u64,
15119            )
15120        }
15121    }
15122    #[inline]
15123    pub fn bpf_event(&self) -> __u64 {
15124        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<30usize, 1u8>() as u64) }
15125    }
15126    #[inline]
15127    pub fn set_bpf_event(&mut self, val: __u64) {
15128        unsafe {
15129            let val: u64 = val as _;
15130            self._bitfield_1.set_const::<30usize, 1u8>(val as u64)
15131        }
15132    }
15133    #[inline]
15134    pub unsafe fn bpf_event_raw(this: *const Self) -> __u64 {
15135        unsafe {
15136            ::std::mem::transmute(
15137                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<30usize, 1u8>(
15138                    ::std::ptr::addr_of!((*this)._bitfield_1),
15139                ) as u64,
15140            )
15141        }
15142    }
15143    #[inline]
15144    pub unsafe fn set_bpf_event_raw(this: *mut Self, val: __u64) {
15145        unsafe {
15146            let val: u64 = val as _;
15147            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<30usize, 1u8>(
15148                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15149                val as u64,
15150            )
15151        }
15152    }
15153    #[inline]
15154    pub fn aux_output(&self) -> __u64 {
15155        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<31usize, 1u8>() as u64) }
15156    }
15157    #[inline]
15158    pub fn set_aux_output(&mut self, val: __u64) {
15159        unsafe {
15160            let val: u64 = val as _;
15161            self._bitfield_1.set_const::<31usize, 1u8>(val as u64)
15162        }
15163    }
15164    #[inline]
15165    pub unsafe fn aux_output_raw(this: *const Self) -> __u64 {
15166        unsafe {
15167            ::std::mem::transmute(
15168                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<31usize, 1u8>(
15169                    ::std::ptr::addr_of!((*this)._bitfield_1),
15170                ) as u64,
15171            )
15172        }
15173    }
15174    #[inline]
15175    pub unsafe fn set_aux_output_raw(this: *mut Self, val: __u64) {
15176        unsafe {
15177            let val: u64 = val as _;
15178            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<31usize, 1u8>(
15179                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15180                val as u64,
15181            )
15182        }
15183    }
15184    #[inline]
15185    pub fn cgroup(&self) -> __u64 {
15186        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<32usize, 1u8>() as u64) }
15187    }
15188    #[inline]
15189    pub fn set_cgroup(&mut self, val: __u64) {
15190        unsafe {
15191            let val: u64 = val as _;
15192            self._bitfield_1.set_const::<32usize, 1u8>(val as u64)
15193        }
15194    }
15195    #[inline]
15196    pub unsafe fn cgroup_raw(this: *const Self) -> __u64 {
15197        unsafe {
15198            ::std::mem::transmute(
15199                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<32usize, 1u8>(
15200                    ::std::ptr::addr_of!((*this)._bitfield_1),
15201                ) as u64,
15202            )
15203        }
15204    }
15205    #[inline]
15206    pub unsafe fn set_cgroup_raw(this: *mut Self, val: __u64) {
15207        unsafe {
15208            let val: u64 = val as _;
15209            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<32usize, 1u8>(
15210                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15211                val as u64,
15212            )
15213        }
15214    }
15215    #[inline]
15216    pub fn text_poke(&self) -> __u64 {
15217        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<33usize, 1u8>() as u64) }
15218    }
15219    #[inline]
15220    pub fn set_text_poke(&mut self, val: __u64) {
15221        unsafe {
15222            let val: u64 = val as _;
15223            self._bitfield_1.set_const::<33usize, 1u8>(val as u64)
15224        }
15225    }
15226    #[inline]
15227    pub unsafe fn text_poke_raw(this: *const Self) -> __u64 {
15228        unsafe {
15229            ::std::mem::transmute(
15230                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 1u8>(
15231                    ::std::ptr::addr_of!((*this)._bitfield_1),
15232                ) as u64,
15233            )
15234        }
15235    }
15236    #[inline]
15237    pub unsafe fn set_text_poke_raw(this: *mut Self, val: __u64) {
15238        unsafe {
15239            let val: u64 = val as _;
15240            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 1u8>(
15241                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15242                val as u64,
15243            )
15244        }
15245    }
15246    #[inline]
15247    pub fn build_id(&self) -> __u64 {
15248        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<34usize, 1u8>() as u64) }
15249    }
15250    #[inline]
15251    pub fn set_build_id(&mut self, val: __u64) {
15252        unsafe {
15253            let val: u64 = val as _;
15254            self._bitfield_1.set_const::<34usize, 1u8>(val as u64)
15255        }
15256    }
15257    #[inline]
15258    pub unsafe fn build_id_raw(this: *const Self) -> __u64 {
15259        unsafe {
15260            ::std::mem::transmute(
15261                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<34usize, 1u8>(
15262                    ::std::ptr::addr_of!((*this)._bitfield_1),
15263                ) as u64,
15264            )
15265        }
15266    }
15267    #[inline]
15268    pub unsafe fn set_build_id_raw(this: *mut Self, val: __u64) {
15269        unsafe {
15270            let val: u64 = val as _;
15271            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<34usize, 1u8>(
15272                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15273                val as u64,
15274            )
15275        }
15276    }
15277    #[inline]
15278    pub fn inherit_thread(&self) -> __u64 {
15279        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<35usize, 1u8>() as u64) }
15280    }
15281    #[inline]
15282    pub fn set_inherit_thread(&mut self, val: __u64) {
15283        unsafe {
15284            let val: u64 = val as _;
15285            self._bitfield_1.set_const::<35usize, 1u8>(val as u64)
15286        }
15287    }
15288    #[inline]
15289    pub unsafe fn inherit_thread_raw(this: *const Self) -> __u64 {
15290        unsafe {
15291            ::std::mem::transmute(
15292                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<35usize, 1u8>(
15293                    ::std::ptr::addr_of!((*this)._bitfield_1),
15294                ) as u64,
15295            )
15296        }
15297    }
15298    #[inline]
15299    pub unsafe fn set_inherit_thread_raw(this: *mut Self, val: __u64) {
15300        unsafe {
15301            let val: u64 = val as _;
15302            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<35usize, 1u8>(
15303                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15304                val as u64,
15305            )
15306        }
15307    }
15308    #[inline]
15309    pub fn remove_on_exec(&self) -> __u64 {
15310        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<36usize, 1u8>() as u64) }
15311    }
15312    #[inline]
15313    pub fn set_remove_on_exec(&mut self, val: __u64) {
15314        unsafe {
15315            let val: u64 = val as _;
15316            self._bitfield_1.set_const::<36usize, 1u8>(val as u64)
15317        }
15318    }
15319    #[inline]
15320    pub unsafe fn remove_on_exec_raw(this: *const Self) -> __u64 {
15321        unsafe {
15322            ::std::mem::transmute(
15323                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<36usize, 1u8>(
15324                    ::std::ptr::addr_of!((*this)._bitfield_1),
15325                ) as u64,
15326            )
15327        }
15328    }
15329    #[inline]
15330    pub unsafe fn set_remove_on_exec_raw(this: *mut Self, val: __u64) {
15331        unsafe {
15332            let val: u64 = val as _;
15333            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<36usize, 1u8>(
15334                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15335                val as u64,
15336            )
15337        }
15338    }
15339    #[inline]
15340    pub fn sigtrap(&self) -> __u64 {
15341        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<37usize, 1u8>() as u64) }
15342    }
15343    #[inline]
15344    pub fn set_sigtrap(&mut self, val: __u64) {
15345        unsafe {
15346            let val: u64 = val as _;
15347            self._bitfield_1.set_const::<37usize, 1u8>(val as u64)
15348        }
15349    }
15350    #[inline]
15351    pub unsafe fn sigtrap_raw(this: *const Self) -> __u64 {
15352        unsafe {
15353            ::std::mem::transmute(
15354                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<37usize, 1u8>(
15355                    ::std::ptr::addr_of!((*this)._bitfield_1),
15356                ) as u64,
15357            )
15358        }
15359    }
15360    #[inline]
15361    pub unsafe fn set_sigtrap_raw(this: *mut Self, val: __u64) {
15362        unsafe {
15363            let val: u64 = val as _;
15364            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<37usize, 1u8>(
15365                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15366                val as u64,
15367            )
15368        }
15369    }
15370    #[inline]
15371    pub fn __reserved_1(&self) -> __u64 {
15372        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<38usize, 26u8>() as u64) }
15373    }
15374    #[inline]
15375    pub fn set___reserved_1(&mut self, val: __u64) {
15376        unsafe {
15377            let val: u64 = val as _;
15378            self._bitfield_1.set_const::<38usize, 26u8>(val as u64)
15379        }
15380    }
15381    #[inline]
15382    pub unsafe fn __reserved_1_raw(this: *const Self) -> __u64 {
15383        unsafe {
15384            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<
15385                38usize,
15386                26u8,
15387            >(::std::ptr::addr_of!((*this)._bitfield_1)) as u64)
15388        }
15389    }
15390    #[inline]
15391    pub unsafe fn set___reserved_1_raw(this: *mut Self, val: __u64) {
15392        unsafe {
15393            let val: u64 = val as _;
15394            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<38usize, 26u8>(
15395                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15396                val as u64,
15397            )
15398        }
15399    }
15400    #[inline]
15401    pub fn new_bitfield_1(
15402        disabled: __u64,
15403        inherit: __u64,
15404        pinned: __u64,
15405        exclusive: __u64,
15406        exclude_user: __u64,
15407        exclude_kernel: __u64,
15408        exclude_hv: __u64,
15409        exclude_idle: __u64,
15410        mmap: __u64,
15411        comm: __u64,
15412        freq: __u64,
15413        inherit_stat: __u64,
15414        enable_on_exec: __u64,
15415        task: __u64,
15416        watermark: __u64,
15417        precise_ip: __u64,
15418        mmap_data: __u64,
15419        sample_id_all: __u64,
15420        exclude_host: __u64,
15421        exclude_guest: __u64,
15422        exclude_callchain_kernel: __u64,
15423        exclude_callchain_user: __u64,
15424        mmap2: __u64,
15425        comm_exec: __u64,
15426        use_clockid: __u64,
15427        context_switch: __u64,
15428        write_backward: __u64,
15429        namespaces: __u64,
15430        ksymbol: __u64,
15431        bpf_event: __u64,
15432        aux_output: __u64,
15433        cgroup: __u64,
15434        text_poke: __u64,
15435        build_id: __u64,
15436        inherit_thread: __u64,
15437        remove_on_exec: __u64,
15438        sigtrap: __u64,
15439        __reserved_1: __u64,
15440    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
15441        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
15442        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
15443            let disabled: u64 = disabled as _;
15444            disabled as u64
15445        });
15446        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
15447            let inherit: u64 = inherit as _;
15448            inherit as u64
15449        });
15450        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
15451            let pinned: u64 = pinned as _;
15452            pinned as u64
15453        });
15454        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
15455            let exclusive: u64 = exclusive as _;
15456            exclusive as u64
15457        });
15458        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
15459            let exclude_user: u64 = exclude_user as _;
15460            exclude_user as u64
15461        });
15462        __bindgen_bitfield_unit.set_const::<5usize, 1u8>({
15463            let exclude_kernel: u64 = exclude_kernel as _;
15464            exclude_kernel as u64
15465        });
15466        __bindgen_bitfield_unit.set_const::<6usize, 1u8>({
15467            let exclude_hv: u64 = exclude_hv as _;
15468            exclude_hv as u64
15469        });
15470        __bindgen_bitfield_unit.set_const::<7usize, 1u8>({
15471            let exclude_idle: u64 = exclude_idle as _;
15472            exclude_idle as u64
15473        });
15474        __bindgen_bitfield_unit.set_const::<8usize, 1u8>({
15475            let mmap: u64 = mmap as _;
15476            mmap as u64
15477        });
15478        __bindgen_bitfield_unit.set_const::<9usize, 1u8>({
15479            let comm: u64 = comm as _;
15480            comm as u64
15481        });
15482        __bindgen_bitfield_unit.set_const::<10usize, 1u8>({
15483            let freq: u64 = freq as _;
15484            freq as u64
15485        });
15486        __bindgen_bitfield_unit.set_const::<11usize, 1u8>({
15487            let inherit_stat: u64 = inherit_stat as _;
15488            inherit_stat as u64
15489        });
15490        __bindgen_bitfield_unit.set_const::<12usize, 1u8>({
15491            let enable_on_exec: u64 = enable_on_exec as _;
15492            enable_on_exec as u64
15493        });
15494        __bindgen_bitfield_unit.set_const::<13usize, 1u8>({
15495            let task: u64 = task as _;
15496            task as u64
15497        });
15498        __bindgen_bitfield_unit.set_const::<14usize, 1u8>({
15499            let watermark: u64 = watermark as _;
15500            watermark as u64
15501        });
15502        __bindgen_bitfield_unit.set_const::<15usize, 2u8>({
15503            let precise_ip: u64 = precise_ip as _;
15504            precise_ip as u64
15505        });
15506        __bindgen_bitfield_unit.set_const::<17usize, 1u8>({
15507            let mmap_data: u64 = mmap_data as _;
15508            mmap_data as u64
15509        });
15510        __bindgen_bitfield_unit.set_const::<18usize, 1u8>({
15511            let sample_id_all: u64 = sample_id_all as _;
15512            sample_id_all as u64
15513        });
15514        __bindgen_bitfield_unit.set_const::<19usize, 1u8>({
15515            let exclude_host: u64 = exclude_host as _;
15516            exclude_host as u64
15517        });
15518        __bindgen_bitfield_unit.set_const::<20usize, 1u8>({
15519            let exclude_guest: u64 = exclude_guest as _;
15520            exclude_guest as u64
15521        });
15522        __bindgen_bitfield_unit.set_const::<21usize, 1u8>({
15523            let exclude_callchain_kernel: u64 = exclude_callchain_kernel as _;
15524            exclude_callchain_kernel as u64
15525        });
15526        __bindgen_bitfield_unit.set_const::<22usize, 1u8>({
15527            let exclude_callchain_user: u64 = exclude_callchain_user as _;
15528            exclude_callchain_user as u64
15529        });
15530        __bindgen_bitfield_unit.set_const::<23usize, 1u8>({
15531            let mmap2: u64 = mmap2 as _;
15532            mmap2 as u64
15533        });
15534        __bindgen_bitfield_unit.set_const::<24usize, 1u8>({
15535            let comm_exec: u64 = comm_exec as _;
15536            comm_exec as u64
15537        });
15538        __bindgen_bitfield_unit.set_const::<25usize, 1u8>({
15539            let use_clockid: u64 = use_clockid as _;
15540            use_clockid as u64
15541        });
15542        __bindgen_bitfield_unit.set_const::<26usize, 1u8>({
15543            let context_switch: u64 = context_switch as _;
15544            context_switch as u64
15545        });
15546        __bindgen_bitfield_unit.set_const::<27usize, 1u8>({
15547            let write_backward: u64 = write_backward as _;
15548            write_backward as u64
15549        });
15550        __bindgen_bitfield_unit.set_const::<28usize, 1u8>({
15551            let namespaces: u64 = namespaces as _;
15552            namespaces as u64
15553        });
15554        __bindgen_bitfield_unit.set_const::<29usize, 1u8>({
15555            let ksymbol: u64 = ksymbol as _;
15556            ksymbol as u64
15557        });
15558        __bindgen_bitfield_unit.set_const::<30usize, 1u8>({
15559            let bpf_event: u64 = bpf_event as _;
15560            bpf_event as u64
15561        });
15562        __bindgen_bitfield_unit.set_const::<31usize, 1u8>({
15563            let aux_output: u64 = aux_output as _;
15564            aux_output as u64
15565        });
15566        __bindgen_bitfield_unit.set_const::<32usize, 1u8>({
15567            let cgroup: u64 = cgroup as _;
15568            cgroup as u64
15569        });
15570        __bindgen_bitfield_unit.set_const::<33usize, 1u8>({
15571            let text_poke: u64 = text_poke as _;
15572            text_poke as u64
15573        });
15574        __bindgen_bitfield_unit.set_const::<34usize, 1u8>({
15575            let build_id: u64 = build_id as _;
15576            build_id as u64
15577        });
15578        __bindgen_bitfield_unit.set_const::<35usize, 1u8>({
15579            let inherit_thread: u64 = inherit_thread as _;
15580            inherit_thread as u64
15581        });
15582        __bindgen_bitfield_unit.set_const::<36usize, 1u8>({
15583            let remove_on_exec: u64 = remove_on_exec as _;
15584            remove_on_exec as u64
15585        });
15586        __bindgen_bitfield_unit.set_const::<37usize, 1u8>({
15587            let sigtrap: u64 = sigtrap as _;
15588            sigtrap as u64
15589        });
15590        __bindgen_bitfield_unit.set_const::<38usize, 26u8>({
15591            let __reserved_1: u64 = __reserved_1 as _;
15592            __reserved_1 as u64
15593        });
15594        __bindgen_bitfield_unit
15595    }
15596}
15597#[repr(C)]
15598#[derive(Debug, Default)]
15599pub struct perf_event_query_bpf {
15600    pub ids_len: __u32,
15601    pub prog_cnt: __u32,
15602    pub ids: __IncompleteArrayField<__u32>,
15603}
15604pub const perf_event_ioc_flags_PERF_IOC_FLAG_GROUP: perf_event_ioc_flags = 1;
15605pub type perf_event_ioc_flags = crate::types::c_uint;
15606#[repr(C)]
15607#[derive(Clone, Copy, Immutable, IntoBytes)]
15608pub struct perf_event_mmap_page {
15609    pub version: __u32,
15610    pub compat_version: __u32,
15611    pub lock: __u32,
15612    pub index: __u32,
15613    pub offset: __s64,
15614    pub time_enabled: __u64,
15615    pub time_running: __u64,
15616    pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1,
15617    pub pmc_width: __u16,
15618    pub time_shift: __u16,
15619    pub time_mult: __u32,
15620    pub time_offset: __u64,
15621    pub time_zero: __u64,
15622    pub size: __u32,
15623    pub __reserved_1: __u32,
15624    pub time_cycles: __u64,
15625    pub time_mask: __u64,
15626    pub __reserved: [__u8; 928usize],
15627    pub data_head: __u64,
15628    pub data_tail: __u64,
15629    pub data_offset: __u64,
15630    pub data_size: __u64,
15631    pub aux_head: __u64,
15632    pub aux_tail: __u64,
15633    pub aux_offset: __u64,
15634    pub aux_size: __u64,
15635}
15636#[repr(C)]
15637#[derive(Clone, Copy, Immutable, IntoBytes)]
15638pub union perf_event_mmap_page__bindgen_ty_1 {
15639    pub capabilities: __u64,
15640    pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1,
15641}
15642#[repr(C)]
15643#[derive(Clone, Copy, Debug, Default, Immutable, IntoBytes)]
15644pub struct perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
15645    pub _bindgen_align: [u64; 0],
15646    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
15647}
15648impl perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
15649    #[inline]
15650    pub fn cap_bit0(&self) -> __u64 {
15651        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u64) }
15652    }
15653    #[inline]
15654    pub fn set_cap_bit0(&mut self, val: __u64) {
15655        unsafe {
15656            let val: u64 = val as _;
15657            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
15658        }
15659    }
15660    #[inline]
15661    pub unsafe fn cap_bit0_raw(this: *const Self) -> __u64 {
15662        unsafe {
15663            ::std::mem::transmute(
15664                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
15665                    ::std::ptr::addr_of!((*this)._bitfield_1),
15666                ) as u64,
15667            )
15668        }
15669    }
15670    #[inline]
15671    pub unsafe fn set_cap_bit0_raw(this: *mut Self, val: __u64) {
15672        unsafe {
15673            let val: u64 = val as _;
15674            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
15675                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15676                val as u64,
15677            )
15678        }
15679    }
15680    #[inline]
15681    pub fn cap_bit0_is_deprecated(&self) -> __u64 {
15682        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u64) }
15683    }
15684    #[inline]
15685    pub fn set_cap_bit0_is_deprecated(&mut self, val: __u64) {
15686        unsafe {
15687            let val: u64 = val as _;
15688            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
15689        }
15690    }
15691    #[inline]
15692    pub unsafe fn cap_bit0_is_deprecated_raw(this: *const Self) -> __u64 {
15693        unsafe {
15694            ::std::mem::transmute(
15695                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
15696                    ::std::ptr::addr_of!((*this)._bitfield_1),
15697                ) as u64,
15698            )
15699        }
15700    }
15701    #[inline]
15702    pub unsafe fn set_cap_bit0_is_deprecated_raw(this: *mut Self, val: __u64) {
15703        unsafe {
15704            let val: u64 = val as _;
15705            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
15706                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15707                val as u64,
15708            )
15709        }
15710    }
15711    #[inline]
15712    pub fn cap_user_rdpmc(&self) -> __u64 {
15713        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u64) }
15714    }
15715    #[inline]
15716    pub fn set_cap_user_rdpmc(&mut self, val: __u64) {
15717        unsafe {
15718            let val: u64 = val as _;
15719            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
15720        }
15721    }
15722    #[inline]
15723    pub unsafe fn cap_user_rdpmc_raw(this: *const Self) -> __u64 {
15724        unsafe {
15725            ::std::mem::transmute(
15726                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
15727                    ::std::ptr::addr_of!((*this)._bitfield_1),
15728                ) as u64,
15729            )
15730        }
15731    }
15732    #[inline]
15733    pub unsafe fn set_cap_user_rdpmc_raw(this: *mut Self, val: __u64) {
15734        unsafe {
15735            let val: u64 = val as _;
15736            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
15737                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15738                val as u64,
15739            )
15740        }
15741    }
15742    #[inline]
15743    pub fn cap_user_time(&self) -> __u64 {
15744        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u64) }
15745    }
15746    #[inline]
15747    pub fn set_cap_user_time(&mut self, val: __u64) {
15748        unsafe {
15749            let val: u64 = val as _;
15750            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
15751        }
15752    }
15753    #[inline]
15754    pub unsafe fn cap_user_time_raw(this: *const Self) -> __u64 {
15755        unsafe {
15756            ::std::mem::transmute(
15757                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
15758                    ::std::ptr::addr_of!((*this)._bitfield_1),
15759                ) as u64,
15760            )
15761        }
15762    }
15763    #[inline]
15764    pub unsafe fn set_cap_user_time_raw(this: *mut Self, val: __u64) {
15765        unsafe {
15766            let val: u64 = val as _;
15767            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
15768                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15769                val as u64,
15770            )
15771        }
15772    }
15773    #[inline]
15774    pub fn cap_user_time_zero(&self) -> __u64 {
15775        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 1u8>() as u64) }
15776    }
15777    #[inline]
15778    pub fn set_cap_user_time_zero(&mut self, val: __u64) {
15779        unsafe {
15780            let val: u64 = val as _;
15781            self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
15782        }
15783    }
15784    #[inline]
15785    pub unsafe fn cap_user_time_zero_raw(this: *const Self) -> __u64 {
15786        unsafe {
15787            ::std::mem::transmute(
15788                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 1u8>(
15789                    ::std::ptr::addr_of!((*this)._bitfield_1),
15790                ) as u64,
15791            )
15792        }
15793    }
15794    #[inline]
15795    pub unsafe fn set_cap_user_time_zero_raw(this: *mut Self, val: __u64) {
15796        unsafe {
15797            let val: u64 = val as _;
15798            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 1u8>(
15799                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15800                val as u64,
15801            )
15802        }
15803    }
15804    #[inline]
15805    pub fn cap_user_time_short(&self) -> __u64 {
15806        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 1u8>() as u64) }
15807    }
15808    #[inline]
15809    pub fn set_cap_user_time_short(&mut self, val: __u64) {
15810        unsafe {
15811            let val: u64 = val as _;
15812            self._bitfield_1.set_const::<5usize, 1u8>(val as u64)
15813        }
15814    }
15815    #[inline]
15816    pub unsafe fn cap_user_time_short_raw(this: *const Self) -> __u64 {
15817        unsafe {
15818            ::std::mem::transmute(
15819                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 1u8>(
15820                    ::std::ptr::addr_of!((*this)._bitfield_1),
15821                ) as u64,
15822            )
15823        }
15824    }
15825    #[inline]
15826    pub unsafe fn set_cap_user_time_short_raw(this: *mut Self, val: __u64) {
15827        unsafe {
15828            let val: u64 = val as _;
15829            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 1u8>(
15830                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15831                val as u64,
15832            )
15833        }
15834    }
15835    #[inline]
15836    pub fn cap_____res(&self) -> __u64 {
15837        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<6usize, 58u8>() as u64) }
15838    }
15839    #[inline]
15840    pub fn set_cap_____res(&mut self, val: __u64) {
15841        unsafe {
15842            let val: u64 = val as _;
15843            self._bitfield_1.set_const::<6usize, 58u8>(val as u64)
15844        }
15845    }
15846    #[inline]
15847    pub unsafe fn cap_____res_raw(this: *const Self) -> __u64 {
15848        unsafe {
15849            ::std::mem::transmute(
15850                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<6usize, 58u8>(
15851                    ::std::ptr::addr_of!((*this)._bitfield_1),
15852                ) as u64,
15853            )
15854        }
15855    }
15856    #[inline]
15857    pub unsafe fn set_cap_____res_raw(this: *mut Self, val: __u64) {
15858        unsafe {
15859            let val: u64 = val as _;
15860            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<6usize, 58u8>(
15861                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15862                val as u64,
15863            )
15864        }
15865    }
15866    #[inline]
15867    pub fn new_bitfield_1(
15868        cap_bit0: __u64,
15869        cap_bit0_is_deprecated: __u64,
15870        cap_user_rdpmc: __u64,
15871        cap_user_time: __u64,
15872        cap_user_time_zero: __u64,
15873        cap_user_time_short: __u64,
15874        cap_____res: __u64,
15875    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
15876        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
15877        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
15878            let cap_bit0: u64 = cap_bit0 as _;
15879            cap_bit0 as u64
15880        });
15881        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
15882            let cap_bit0_is_deprecated: u64 = cap_bit0_is_deprecated as _;
15883            cap_bit0_is_deprecated as u64
15884        });
15885        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
15886            let cap_user_rdpmc: u64 = cap_user_rdpmc as _;
15887            cap_user_rdpmc as u64
15888        });
15889        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
15890            let cap_user_time: u64 = cap_user_time as _;
15891            cap_user_time as u64
15892        });
15893        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
15894            let cap_user_time_zero: u64 = cap_user_time_zero as _;
15895            cap_user_time_zero as u64
15896        });
15897        __bindgen_bitfield_unit.set_const::<5usize, 1u8>({
15898            let cap_user_time_short: u64 = cap_user_time_short as _;
15899            cap_user_time_short as u64
15900        });
15901        __bindgen_bitfield_unit.set_const::<6usize, 58u8>({
15902            let cap_____res: u64 = cap_____res as _;
15903            cap_____res as u64
15904        });
15905        __bindgen_bitfield_unit
15906    }
15907}
15908impl Default for perf_event_mmap_page__bindgen_ty_1 {
15909    fn default() -> Self {
15910        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15911        unsafe {
15912            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15913            s.assume_init()
15914        }
15915    }
15916}
15917impl Default for perf_event_mmap_page {
15918    fn default() -> Self {
15919        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15920        unsafe {
15921            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15922            s.assume_init()
15923        }
15924    }
15925}
15926#[repr(C)]
15927#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15928pub struct perf_event_header {
15929    pub type_: __u32,
15930    pub misc: __u16,
15931    pub size: __u16,
15932}
15933#[repr(C)]
15934#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15935pub struct perf_ns_link_info {
15936    pub dev: __u64,
15937    pub ino: __u64,
15938}
15939pub const NET_NS_INDEX: _bindgen_ty_91 = 0;
15940pub const UTS_NS_INDEX: _bindgen_ty_91 = 1;
15941pub const IPC_NS_INDEX: _bindgen_ty_91 = 2;
15942pub const PID_NS_INDEX: _bindgen_ty_91 = 3;
15943pub const USER_NS_INDEX: _bindgen_ty_91 = 4;
15944pub const MNT_NS_INDEX: _bindgen_ty_91 = 5;
15945pub const CGROUP_NS_INDEX: _bindgen_ty_91 = 6;
15946pub const NR_NAMESPACES: _bindgen_ty_91 = 7;
15947pub type _bindgen_ty_91 = crate::types::c_uint;
15948pub const perf_event_type_PERF_RECORD_MMAP: perf_event_type = 1;
15949pub const perf_event_type_PERF_RECORD_LOST: perf_event_type = 2;
15950pub const perf_event_type_PERF_RECORD_COMM: perf_event_type = 3;
15951pub const perf_event_type_PERF_RECORD_EXIT: perf_event_type = 4;
15952pub const perf_event_type_PERF_RECORD_THROTTLE: perf_event_type = 5;
15953pub const perf_event_type_PERF_RECORD_UNTHROTTLE: perf_event_type = 6;
15954pub const perf_event_type_PERF_RECORD_FORK: perf_event_type = 7;
15955pub const perf_event_type_PERF_RECORD_READ: perf_event_type = 8;
15956pub const perf_event_type_PERF_RECORD_SAMPLE: perf_event_type = 9;
15957pub const perf_event_type_PERF_RECORD_MMAP2: perf_event_type = 10;
15958pub const perf_event_type_PERF_RECORD_AUX: perf_event_type = 11;
15959pub const perf_event_type_PERF_RECORD_ITRACE_START: perf_event_type = 12;
15960pub const perf_event_type_PERF_RECORD_LOST_SAMPLES: perf_event_type = 13;
15961pub const perf_event_type_PERF_RECORD_SWITCH: perf_event_type = 14;
15962pub const perf_event_type_PERF_RECORD_SWITCH_CPU_WIDE: perf_event_type = 15;
15963pub const perf_event_type_PERF_RECORD_NAMESPACES: perf_event_type = 16;
15964pub const perf_event_type_PERF_RECORD_KSYMBOL: perf_event_type = 17;
15965pub const perf_event_type_PERF_RECORD_BPF_EVENT: perf_event_type = 18;
15966pub const perf_event_type_PERF_RECORD_CGROUP: perf_event_type = 19;
15967pub const perf_event_type_PERF_RECORD_TEXT_POKE: perf_event_type = 20;
15968pub const perf_event_type_PERF_RECORD_AUX_OUTPUT_HW_ID: perf_event_type = 21;
15969pub const perf_event_type_PERF_RECORD_MAX: perf_event_type = 22;
15970pub type perf_event_type = crate::types::c_uint;
15971pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_UNKNOWN: perf_record_ksymbol_type = 0;
15972pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_BPF: perf_record_ksymbol_type = 1;
15973pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_OOL: perf_record_ksymbol_type = 2;
15974pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_MAX: perf_record_ksymbol_type = 3;
15975pub type perf_record_ksymbol_type = crate::types::c_uint;
15976pub const perf_bpf_event_type_PERF_BPF_EVENT_UNKNOWN: perf_bpf_event_type = 0;
15977pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_LOAD: perf_bpf_event_type = 1;
15978pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_UNLOAD: perf_bpf_event_type = 2;
15979pub const perf_bpf_event_type_PERF_BPF_EVENT_MAX: perf_bpf_event_type = 3;
15980pub type perf_bpf_event_type = crate::types::c_uint;
15981pub const perf_callchain_context_PERF_CONTEXT_HV: perf_callchain_context = 18446744073709551584;
15982pub const perf_callchain_context_PERF_CONTEXT_KERNEL: perf_callchain_context = 18446744073709551488;
15983pub const perf_callchain_context_PERF_CONTEXT_USER: perf_callchain_context = 18446744073709551104;
15984pub const perf_callchain_context_PERF_CONTEXT_GUEST: perf_callchain_context = 18446744073709549568;
15985pub const perf_callchain_context_PERF_CONTEXT_GUEST_KERNEL: perf_callchain_context =
15986    18446744073709549440;
15987pub const perf_callchain_context_PERF_CONTEXT_GUEST_USER: perf_callchain_context =
15988    18446744073709549056;
15989pub const perf_callchain_context_PERF_CONTEXT_MAX: perf_callchain_context = 18446744073709547521;
15990pub type perf_callchain_context = crate::types::c_ulong;
15991#[repr(C)]
15992#[derive(Copy, Clone)]
15993pub union perf_mem_data_src {
15994    pub val: __u64,
15995    pub __bindgen_anon_1: perf_mem_data_src__bindgen_ty_1,
15996}
15997#[repr(C)]
15998#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15999pub struct perf_mem_data_src__bindgen_ty_1 {
16000    pub _bindgen_align: [u64; 0],
16001    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
16002}
16003impl perf_mem_data_src__bindgen_ty_1 {
16004    #[inline]
16005    pub fn mem_op(&self) -> __u64 {
16006        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 5u8>() as u64) }
16007    }
16008    #[inline]
16009    pub fn set_mem_op(&mut self, val: __u64) {
16010        unsafe {
16011            let val: u64 = val as _;
16012            self._bitfield_1.set_const::<0usize, 5u8>(val as u64)
16013        }
16014    }
16015    #[inline]
16016    pub unsafe fn mem_op_raw(this: *const Self) -> __u64 {
16017        unsafe {
16018            ::std::mem::transmute(
16019                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 5u8>(
16020                    ::std::ptr::addr_of!((*this)._bitfield_1),
16021                ) as u64,
16022            )
16023        }
16024    }
16025    #[inline]
16026    pub unsafe fn set_mem_op_raw(this: *mut Self, val: __u64) {
16027        unsafe {
16028            let val: u64 = val as _;
16029            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 5u8>(
16030                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16031                val as u64,
16032            )
16033        }
16034    }
16035    #[inline]
16036    pub fn mem_lvl(&self) -> __u64 {
16037        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 14u8>() as u64) }
16038    }
16039    #[inline]
16040    pub fn set_mem_lvl(&mut self, val: __u64) {
16041        unsafe {
16042            let val: u64 = val as _;
16043            self._bitfield_1.set_const::<5usize, 14u8>(val as u64)
16044        }
16045    }
16046    #[inline]
16047    pub unsafe fn mem_lvl_raw(this: *const Self) -> __u64 {
16048        unsafe {
16049            ::std::mem::transmute(
16050                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 14u8>(
16051                    ::std::ptr::addr_of!((*this)._bitfield_1),
16052                ) as u64,
16053            )
16054        }
16055    }
16056    #[inline]
16057    pub unsafe fn set_mem_lvl_raw(this: *mut Self, val: __u64) {
16058        unsafe {
16059            let val: u64 = val as _;
16060            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 14u8>(
16061                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16062                val as u64,
16063            )
16064        }
16065    }
16066    #[inline]
16067    pub fn mem_snoop(&self) -> __u64 {
16068        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<19usize, 5u8>() as u64) }
16069    }
16070    #[inline]
16071    pub fn set_mem_snoop(&mut self, val: __u64) {
16072        unsafe {
16073            let val: u64 = val as _;
16074            self._bitfield_1.set_const::<19usize, 5u8>(val as u64)
16075        }
16076    }
16077    #[inline]
16078    pub unsafe fn mem_snoop_raw(this: *const Self) -> __u64 {
16079        unsafe {
16080            ::std::mem::transmute(
16081                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<19usize, 5u8>(
16082                    ::std::ptr::addr_of!((*this)._bitfield_1),
16083                ) as u64,
16084            )
16085        }
16086    }
16087    #[inline]
16088    pub unsafe fn set_mem_snoop_raw(this: *mut Self, val: __u64) {
16089        unsafe {
16090            let val: u64 = val as _;
16091            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<19usize, 5u8>(
16092                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16093                val as u64,
16094            )
16095        }
16096    }
16097    #[inline]
16098    pub fn mem_lock(&self) -> __u64 {
16099        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<24usize, 2u8>() as u64) }
16100    }
16101    #[inline]
16102    pub fn set_mem_lock(&mut self, val: __u64) {
16103        unsafe {
16104            let val: u64 = val as _;
16105            self._bitfield_1.set_const::<24usize, 2u8>(val as u64)
16106        }
16107    }
16108    #[inline]
16109    pub unsafe fn mem_lock_raw(this: *const Self) -> __u64 {
16110        unsafe {
16111            ::std::mem::transmute(
16112                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 2u8>(
16113                    ::std::ptr::addr_of!((*this)._bitfield_1),
16114                ) as u64,
16115            )
16116        }
16117    }
16118    #[inline]
16119    pub unsafe fn set_mem_lock_raw(this: *mut Self, val: __u64) {
16120        unsafe {
16121            let val: u64 = val as _;
16122            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 2u8>(
16123                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16124                val as u64,
16125            )
16126        }
16127    }
16128    #[inline]
16129    pub fn mem_dtlb(&self) -> __u64 {
16130        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<26usize, 7u8>() as u64) }
16131    }
16132    #[inline]
16133    pub fn set_mem_dtlb(&mut self, val: __u64) {
16134        unsafe {
16135            let val: u64 = val as _;
16136            self._bitfield_1.set_const::<26usize, 7u8>(val as u64)
16137        }
16138    }
16139    #[inline]
16140    pub unsafe fn mem_dtlb_raw(this: *const Self) -> __u64 {
16141        unsafe {
16142            ::std::mem::transmute(
16143                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 7u8>(
16144                    ::std::ptr::addr_of!((*this)._bitfield_1),
16145                ) as u64,
16146            )
16147        }
16148    }
16149    #[inline]
16150    pub unsafe fn set_mem_dtlb_raw(this: *mut Self, val: __u64) {
16151        unsafe {
16152            let val: u64 = val as _;
16153            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 7u8>(
16154                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16155                val as u64,
16156            )
16157        }
16158    }
16159    #[inline]
16160    pub fn mem_lvl_num(&self) -> __u64 {
16161        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<33usize, 4u8>() as u64) }
16162    }
16163    #[inline]
16164    pub fn set_mem_lvl_num(&mut self, val: __u64) {
16165        unsafe {
16166            let val: u64 = val as _;
16167            self._bitfield_1.set_const::<33usize, 4u8>(val as u64)
16168        }
16169    }
16170    #[inline]
16171    pub unsafe fn mem_lvl_num_raw(this: *const Self) -> __u64 {
16172        unsafe {
16173            ::std::mem::transmute(
16174                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 4u8>(
16175                    ::std::ptr::addr_of!((*this)._bitfield_1),
16176                ) as u64,
16177            )
16178        }
16179    }
16180    #[inline]
16181    pub unsafe fn set_mem_lvl_num_raw(this: *mut Self, val: __u64) {
16182        unsafe {
16183            let val: u64 = val as _;
16184            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 4u8>(
16185                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16186                val as u64,
16187            )
16188        }
16189    }
16190    #[inline]
16191    pub fn mem_remote(&self) -> __u64 {
16192        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<37usize, 1u8>() as u64) }
16193    }
16194    #[inline]
16195    pub fn set_mem_remote(&mut self, val: __u64) {
16196        unsafe {
16197            let val: u64 = val as _;
16198            self._bitfield_1.set_const::<37usize, 1u8>(val as u64)
16199        }
16200    }
16201    #[inline]
16202    pub unsafe fn mem_remote_raw(this: *const Self) -> __u64 {
16203        unsafe {
16204            ::std::mem::transmute(
16205                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<37usize, 1u8>(
16206                    ::std::ptr::addr_of!((*this)._bitfield_1),
16207                ) as u64,
16208            )
16209        }
16210    }
16211    #[inline]
16212    pub unsafe fn set_mem_remote_raw(this: *mut Self, val: __u64) {
16213        unsafe {
16214            let val: u64 = val as _;
16215            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<37usize, 1u8>(
16216                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16217                val as u64,
16218            )
16219        }
16220    }
16221    #[inline]
16222    pub fn mem_snoopx(&self) -> __u64 {
16223        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<38usize, 2u8>() as u64) }
16224    }
16225    #[inline]
16226    pub fn set_mem_snoopx(&mut self, val: __u64) {
16227        unsafe {
16228            let val: u64 = val as _;
16229            self._bitfield_1.set_const::<38usize, 2u8>(val as u64)
16230        }
16231    }
16232    #[inline]
16233    pub unsafe fn mem_snoopx_raw(this: *const Self) -> __u64 {
16234        unsafe {
16235            ::std::mem::transmute(
16236                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<38usize, 2u8>(
16237                    ::std::ptr::addr_of!((*this)._bitfield_1),
16238                ) as u64,
16239            )
16240        }
16241    }
16242    #[inline]
16243    pub unsafe fn set_mem_snoopx_raw(this: *mut Self, val: __u64) {
16244        unsafe {
16245            let val: u64 = val as _;
16246            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<38usize, 2u8>(
16247                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16248                val as u64,
16249            )
16250        }
16251    }
16252    #[inline]
16253    pub fn mem_blk(&self) -> __u64 {
16254        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<40usize, 3u8>() as u64) }
16255    }
16256    #[inline]
16257    pub fn set_mem_blk(&mut self, val: __u64) {
16258        unsafe {
16259            let val: u64 = val as _;
16260            self._bitfield_1.set_const::<40usize, 3u8>(val as u64)
16261        }
16262    }
16263    #[inline]
16264    pub unsafe fn mem_blk_raw(this: *const Self) -> __u64 {
16265        unsafe {
16266            ::std::mem::transmute(
16267                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<40usize, 3u8>(
16268                    ::std::ptr::addr_of!((*this)._bitfield_1),
16269                ) as u64,
16270            )
16271        }
16272    }
16273    #[inline]
16274    pub unsafe fn set_mem_blk_raw(this: *mut Self, val: __u64) {
16275        unsafe {
16276            let val: u64 = val as _;
16277            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<40usize, 3u8>(
16278                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16279                val as u64,
16280            )
16281        }
16282    }
16283    #[inline]
16284    pub fn mem_hops(&self) -> __u64 {
16285        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<43usize, 3u8>() as u64) }
16286    }
16287    #[inline]
16288    pub fn set_mem_hops(&mut self, val: __u64) {
16289        unsafe {
16290            let val: u64 = val as _;
16291            self._bitfield_1.set_const::<43usize, 3u8>(val as u64)
16292        }
16293    }
16294    #[inline]
16295    pub unsafe fn mem_hops_raw(this: *const Self) -> __u64 {
16296        unsafe {
16297            ::std::mem::transmute(
16298                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<43usize, 3u8>(
16299                    ::std::ptr::addr_of!((*this)._bitfield_1),
16300                ) as u64,
16301            )
16302        }
16303    }
16304    #[inline]
16305    pub unsafe fn set_mem_hops_raw(this: *mut Self, val: __u64) {
16306        unsafe {
16307            let val: u64 = val as _;
16308            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<43usize, 3u8>(
16309                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16310                val as u64,
16311            )
16312        }
16313    }
16314    #[inline]
16315    pub fn mem_rsvd(&self) -> __u64 {
16316        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<46usize, 18u8>() as u64) }
16317    }
16318    #[inline]
16319    pub fn set_mem_rsvd(&mut self, val: __u64) {
16320        unsafe {
16321            let val: u64 = val as _;
16322            self._bitfield_1.set_const::<46usize, 18u8>(val as u64)
16323        }
16324    }
16325    #[inline]
16326    pub unsafe fn mem_rsvd_raw(this: *const Self) -> __u64 {
16327        unsafe {
16328            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<
16329                46usize,
16330                18u8,
16331            >(::std::ptr::addr_of!((*this)._bitfield_1)) as u64)
16332        }
16333    }
16334    #[inline]
16335    pub unsafe fn set_mem_rsvd_raw(this: *mut Self, val: __u64) {
16336        unsafe {
16337            let val: u64 = val as _;
16338            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<46usize, 18u8>(
16339                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16340                val as u64,
16341            )
16342        }
16343    }
16344    #[inline]
16345    pub fn new_bitfield_1(
16346        mem_op: __u64,
16347        mem_lvl: __u64,
16348        mem_snoop: __u64,
16349        mem_lock: __u64,
16350        mem_dtlb: __u64,
16351        mem_lvl_num: __u64,
16352        mem_remote: __u64,
16353        mem_snoopx: __u64,
16354        mem_blk: __u64,
16355        mem_hops: __u64,
16356        mem_rsvd: __u64,
16357    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
16358        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
16359        __bindgen_bitfield_unit.set_const::<0usize, 5u8>({
16360            let mem_op: u64 = mem_op as _;
16361            mem_op as u64
16362        });
16363        __bindgen_bitfield_unit.set_const::<5usize, 14u8>({
16364            let mem_lvl: u64 = mem_lvl as _;
16365            mem_lvl as u64
16366        });
16367        __bindgen_bitfield_unit.set_const::<19usize, 5u8>({
16368            let mem_snoop: u64 = mem_snoop as _;
16369            mem_snoop as u64
16370        });
16371        __bindgen_bitfield_unit.set_const::<24usize, 2u8>({
16372            let mem_lock: u64 = mem_lock as _;
16373            mem_lock as u64
16374        });
16375        __bindgen_bitfield_unit.set_const::<26usize, 7u8>({
16376            let mem_dtlb: u64 = mem_dtlb as _;
16377            mem_dtlb as u64
16378        });
16379        __bindgen_bitfield_unit.set_const::<33usize, 4u8>({
16380            let mem_lvl_num: u64 = mem_lvl_num as _;
16381            mem_lvl_num as u64
16382        });
16383        __bindgen_bitfield_unit.set_const::<37usize, 1u8>({
16384            let mem_remote: u64 = mem_remote as _;
16385            mem_remote as u64
16386        });
16387        __bindgen_bitfield_unit.set_const::<38usize, 2u8>({
16388            let mem_snoopx: u64 = mem_snoopx as _;
16389            mem_snoopx as u64
16390        });
16391        __bindgen_bitfield_unit.set_const::<40usize, 3u8>({
16392            let mem_blk: u64 = mem_blk as _;
16393            mem_blk as u64
16394        });
16395        __bindgen_bitfield_unit.set_const::<43usize, 3u8>({
16396            let mem_hops: u64 = mem_hops as _;
16397            mem_hops as u64
16398        });
16399        __bindgen_bitfield_unit.set_const::<46usize, 18u8>({
16400            let mem_rsvd: u64 = mem_rsvd as _;
16401            mem_rsvd as u64
16402        });
16403        __bindgen_bitfield_unit
16404    }
16405}
16406impl Default for perf_mem_data_src {
16407    fn default() -> Self {
16408        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16409        unsafe {
16410            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16411            s.assume_init()
16412        }
16413    }
16414}
16415#[repr(C)]
16416#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16417pub struct perf_branch_entry {
16418    pub from: __u64,
16419    pub to: __u64,
16420    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
16421}
16422impl perf_branch_entry {
16423    #[inline]
16424    pub fn mispred(&self) -> __u64 {
16425        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u64) }
16426    }
16427    #[inline]
16428    pub fn set_mispred(&mut self, val: __u64) {
16429        unsafe {
16430            let val: u64 = val as _;
16431            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
16432        }
16433    }
16434    #[inline]
16435    pub unsafe fn mispred_raw(this: *const Self) -> __u64 {
16436        unsafe {
16437            ::std::mem::transmute(
16438                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
16439                    ::std::ptr::addr_of!((*this)._bitfield_1),
16440                ) as u64,
16441            )
16442        }
16443    }
16444    #[inline]
16445    pub unsafe fn set_mispred_raw(this: *mut Self, val: __u64) {
16446        unsafe {
16447            let val: u64 = val as _;
16448            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
16449                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16450                val as u64,
16451            )
16452        }
16453    }
16454    #[inline]
16455    pub fn predicted(&self) -> __u64 {
16456        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u64) }
16457    }
16458    #[inline]
16459    pub fn set_predicted(&mut self, val: __u64) {
16460        unsafe {
16461            let val: u64 = val as _;
16462            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
16463        }
16464    }
16465    #[inline]
16466    pub unsafe fn predicted_raw(this: *const Self) -> __u64 {
16467        unsafe {
16468            ::std::mem::transmute(
16469                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
16470                    ::std::ptr::addr_of!((*this)._bitfield_1),
16471                ) as u64,
16472            )
16473        }
16474    }
16475    #[inline]
16476    pub unsafe fn set_predicted_raw(this: *mut Self, val: __u64) {
16477        unsafe {
16478            let val: u64 = val as _;
16479            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
16480                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16481                val as u64,
16482            )
16483        }
16484    }
16485    #[inline]
16486    pub fn in_tx(&self) -> __u64 {
16487        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u64) }
16488    }
16489    #[inline]
16490    pub fn set_in_tx(&mut self, val: __u64) {
16491        unsafe {
16492            let val: u64 = val as _;
16493            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
16494        }
16495    }
16496    #[inline]
16497    pub unsafe fn in_tx_raw(this: *const Self) -> __u64 {
16498        unsafe {
16499            ::std::mem::transmute(
16500                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
16501                    ::std::ptr::addr_of!((*this)._bitfield_1),
16502                ) as u64,
16503            )
16504        }
16505    }
16506    #[inline]
16507    pub unsafe fn set_in_tx_raw(this: *mut Self, val: __u64) {
16508        unsafe {
16509            let val: u64 = val as _;
16510            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
16511                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16512                val as u64,
16513            )
16514        }
16515    }
16516    #[inline]
16517    pub fn abort(&self) -> __u64 {
16518        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u64) }
16519    }
16520    #[inline]
16521    pub fn set_abort(&mut self, val: __u64) {
16522        unsafe {
16523            let val: u64 = val as _;
16524            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
16525        }
16526    }
16527    #[inline]
16528    pub unsafe fn abort_raw(this: *const Self) -> __u64 {
16529        unsafe {
16530            ::std::mem::transmute(
16531                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
16532                    ::std::ptr::addr_of!((*this)._bitfield_1),
16533                ) as u64,
16534            )
16535        }
16536    }
16537    #[inline]
16538    pub unsafe fn set_abort_raw(this: *mut Self, val: __u64) {
16539        unsafe {
16540            let val: u64 = val as _;
16541            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
16542                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16543                val as u64,
16544            )
16545        }
16546    }
16547    #[inline]
16548    pub fn cycles(&self) -> __u64 {
16549        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 16u8>() as u64) }
16550    }
16551    #[inline]
16552    pub fn set_cycles(&mut self, val: __u64) {
16553        unsafe {
16554            let val: u64 = val as _;
16555            self._bitfield_1.set_const::<4usize, 16u8>(val as u64)
16556        }
16557    }
16558    #[inline]
16559    pub unsafe fn cycles_raw(this: *const Self) -> __u64 {
16560        unsafe {
16561            ::std::mem::transmute(
16562                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 16u8>(
16563                    ::std::ptr::addr_of!((*this)._bitfield_1),
16564                ) as u64,
16565            )
16566        }
16567    }
16568    #[inline]
16569    pub unsafe fn set_cycles_raw(this: *mut Self, val: __u64) {
16570        unsafe {
16571            let val: u64 = val as _;
16572            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 16u8>(
16573                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16574                val as u64,
16575            )
16576        }
16577    }
16578    #[inline]
16579    pub fn type_(&self) -> __u64 {
16580        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<20usize, 4u8>() as u64) }
16581    }
16582    #[inline]
16583    pub fn set_type(&mut self, val: __u64) {
16584        unsafe {
16585            let val: u64 = val as _;
16586            self._bitfield_1.set_const::<20usize, 4u8>(val as u64)
16587        }
16588    }
16589    #[inline]
16590    pub unsafe fn type__raw(this: *const Self) -> __u64 {
16591        unsafe {
16592            ::std::mem::transmute(
16593                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<20usize, 4u8>(
16594                    ::std::ptr::addr_of!((*this)._bitfield_1),
16595                ) as u64,
16596            )
16597        }
16598    }
16599    #[inline]
16600    pub unsafe fn set_type_raw(this: *mut Self, val: __u64) {
16601        unsafe {
16602            let val: u64 = val as _;
16603            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<20usize, 4u8>(
16604                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16605                val as u64,
16606            )
16607        }
16608    }
16609    #[inline]
16610    pub fn spec(&self) -> __u64 {
16611        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<24usize, 2u8>() as u64) }
16612    }
16613    #[inline]
16614    pub fn set_spec(&mut self, val: __u64) {
16615        unsafe {
16616            let val: u64 = val as _;
16617            self._bitfield_1.set_const::<24usize, 2u8>(val as u64)
16618        }
16619    }
16620    #[inline]
16621    pub unsafe fn spec_raw(this: *const Self) -> __u64 {
16622        unsafe {
16623            ::std::mem::transmute(
16624                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 2u8>(
16625                    ::std::ptr::addr_of!((*this)._bitfield_1),
16626                ) as u64,
16627            )
16628        }
16629    }
16630    #[inline]
16631    pub unsafe fn set_spec_raw(this: *mut Self, val: __u64) {
16632        unsafe {
16633            let val: u64 = val as _;
16634            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 2u8>(
16635                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16636                val as u64,
16637            )
16638        }
16639    }
16640    #[inline]
16641    pub fn new_type(&self) -> __u64 {
16642        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<26usize, 4u8>() as u64) }
16643    }
16644    #[inline]
16645    pub fn set_new_type(&mut self, val: __u64) {
16646        unsafe {
16647            let val: u64 = val as _;
16648            self._bitfield_1.set_const::<26usize, 4u8>(val as u64)
16649        }
16650    }
16651    #[inline]
16652    pub unsafe fn new_type_raw(this: *const Self) -> __u64 {
16653        unsafe {
16654            ::std::mem::transmute(
16655                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 4u8>(
16656                    ::std::ptr::addr_of!((*this)._bitfield_1),
16657                ) as u64,
16658            )
16659        }
16660    }
16661    #[inline]
16662    pub unsafe fn set_new_type_raw(this: *mut Self, val: __u64) {
16663        unsafe {
16664            let val: u64 = val as _;
16665            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 4u8>(
16666                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16667                val as u64,
16668            )
16669        }
16670    }
16671    #[inline]
16672    pub fn priv_(&self) -> __u64 {
16673        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<30usize, 3u8>() as u64) }
16674    }
16675    #[inline]
16676    pub fn set_priv(&mut self, val: __u64) {
16677        unsafe {
16678            let val: u64 = val as _;
16679            self._bitfield_1.set_const::<30usize, 3u8>(val as u64)
16680        }
16681    }
16682    #[inline]
16683    pub unsafe fn priv__raw(this: *const Self) -> __u64 {
16684        unsafe {
16685            ::std::mem::transmute(
16686                <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<30usize, 3u8>(
16687                    ::std::ptr::addr_of!((*this)._bitfield_1),
16688                ) as u64,
16689            )
16690        }
16691    }
16692    #[inline]
16693    pub unsafe fn set_priv_raw(this: *mut Self, val: __u64) {
16694        unsafe {
16695            let val: u64 = val as _;
16696            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<30usize, 3u8>(
16697                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16698                val as u64,
16699            )
16700        }
16701    }
16702    #[inline]
16703    pub fn reserved(&self) -> __u64 {
16704        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<33usize, 31u8>() as u64) }
16705    }
16706    #[inline]
16707    pub fn set_reserved(&mut self, val: __u64) {
16708        unsafe {
16709            let val: u64 = val as _;
16710            self._bitfield_1.set_const::<33usize, 31u8>(val as u64)
16711        }
16712    }
16713    #[inline]
16714    pub unsafe fn reserved_raw(this: *const Self) -> __u64 {
16715        unsafe {
16716            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<
16717                33usize,
16718                31u8,
16719            >(::std::ptr::addr_of!((*this)._bitfield_1)) as u64)
16720        }
16721    }
16722    #[inline]
16723    pub unsafe fn set_reserved_raw(this: *mut Self, val: __u64) {
16724        unsafe {
16725            let val: u64 = val as _;
16726            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 31u8>(
16727                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16728                val as u64,
16729            )
16730        }
16731    }
16732    #[inline]
16733    pub fn new_bitfield_1(
16734        mispred: __u64,
16735        predicted: __u64,
16736        in_tx: __u64,
16737        abort: __u64,
16738        cycles: __u64,
16739        type_: __u64,
16740        spec: __u64,
16741        new_type: __u64,
16742        priv_: __u64,
16743        reserved: __u64,
16744    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
16745        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
16746        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
16747            let mispred: u64 = mispred as _;
16748            mispred as u64
16749        });
16750        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
16751            let predicted: u64 = predicted as _;
16752            predicted as u64
16753        });
16754        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
16755            let in_tx: u64 = in_tx as _;
16756            in_tx as u64
16757        });
16758        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
16759            let abort: u64 = abort as _;
16760            abort as u64
16761        });
16762        __bindgen_bitfield_unit.set_const::<4usize, 16u8>({
16763            let cycles: u64 = cycles as _;
16764            cycles as u64
16765        });
16766        __bindgen_bitfield_unit.set_const::<20usize, 4u8>({
16767            let type_: u64 = type_ as _;
16768            type_ as u64
16769        });
16770        __bindgen_bitfield_unit.set_const::<24usize, 2u8>({
16771            let spec: u64 = spec as _;
16772            spec as u64
16773        });
16774        __bindgen_bitfield_unit.set_const::<26usize, 4u8>({
16775            let new_type: u64 = new_type as _;
16776            new_type as u64
16777        });
16778        __bindgen_bitfield_unit.set_const::<30usize, 3u8>({
16779            let priv_: u64 = priv_ as _;
16780            priv_ as u64
16781        });
16782        __bindgen_bitfield_unit.set_const::<33usize, 31u8>({
16783            let reserved: u64 = reserved as _;
16784            reserved as u64
16785        });
16786        __bindgen_bitfield_unit
16787    }
16788}
16789#[repr(C)]
16790#[derive(Copy, Clone)]
16791pub union perf_sample_weight {
16792    pub full: __u64,
16793    pub __bindgen_anon_1: perf_sample_weight__bindgen_ty_1,
16794}
16795#[repr(C)]
16796#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16797pub struct perf_sample_weight__bindgen_ty_1 {
16798    pub var1_dw: __u32,
16799    pub var2_w: __u16,
16800    pub var3_w: __u16,
16801}
16802impl Default for perf_sample_weight {
16803    fn default() -> Self {
16804        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16805        unsafe {
16806            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16807            s.assume_init()
16808        }
16809    }
16810}
16811pub const UNAME26: _bindgen_ty_92 = 131072;
16812pub const ADDR_NO_RANDOMIZE: _bindgen_ty_92 = 262144;
16813pub const FDPIC_FUNCPTRS: _bindgen_ty_92 = 524288;
16814pub const MMAP_PAGE_ZERO: _bindgen_ty_92 = 1048576;
16815pub const ADDR_COMPAT_LAYOUT: _bindgen_ty_92 = 2097152;
16816pub const READ_IMPLIES_EXEC: _bindgen_ty_92 = 4194304;
16817pub const ADDR_LIMIT_32BIT: _bindgen_ty_92 = 8388608;
16818pub const SHORT_INODE: _bindgen_ty_92 = 16777216;
16819pub const WHOLE_SECONDS: _bindgen_ty_92 = 33554432;
16820pub const STICKY_TIMEOUTS: _bindgen_ty_92 = 67108864;
16821pub const ADDR_LIMIT_3GB: _bindgen_ty_92 = 134217728;
16822pub type _bindgen_ty_92 = crate::types::c_uint;
16823pub const PER_LINUX: _bindgen_ty_93 = 0;
16824pub const PER_LINUX_32BIT: _bindgen_ty_93 = 8388608;
16825pub const PER_LINUX_FDPIC: _bindgen_ty_93 = 524288;
16826pub const PER_SVR4: _bindgen_ty_93 = 68157441;
16827pub const PER_SVR3: _bindgen_ty_93 = 83886082;
16828pub const PER_SCOSVR3: _bindgen_ty_93 = 117440515;
16829pub const PER_OSR5: _bindgen_ty_93 = 100663299;
16830pub const PER_WYSEV386: _bindgen_ty_93 = 83886084;
16831pub const PER_ISCR4: _bindgen_ty_93 = 67108869;
16832pub const PER_BSD: _bindgen_ty_93 = 6;
16833pub const PER_SUNOS: _bindgen_ty_93 = 67108870;
16834pub const PER_XENIX: _bindgen_ty_93 = 83886087;
16835pub const PER_LINUX32: _bindgen_ty_93 = 8;
16836pub const PER_LINUX32_3GB: _bindgen_ty_93 = 134217736;
16837pub const PER_IRIX32: _bindgen_ty_93 = 67108873;
16838pub const PER_IRIXN32: _bindgen_ty_93 = 67108874;
16839pub const PER_IRIX64: _bindgen_ty_93 = 67108875;
16840pub const PER_RISCOS: _bindgen_ty_93 = 12;
16841pub const PER_SOLARIS: _bindgen_ty_93 = 67108877;
16842pub const PER_UW7: _bindgen_ty_93 = 68157454;
16843pub const PER_OSF4: _bindgen_ty_93 = 15;
16844pub const PER_HPUX: _bindgen_ty_93 = 16;
16845pub const PER_MASK: _bindgen_ty_93 = 255;
16846pub type _bindgen_ty_93 = crate::types::c_uint;
16847#[repr(C, packed)]
16848#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16849pub struct sadb_msg {
16850    pub sadb_msg_version: __u8,
16851    pub sadb_msg_type: __u8,
16852    pub sadb_msg_errno: __u8,
16853    pub sadb_msg_satype: __u8,
16854    pub sadb_msg_len: __u16,
16855    pub sadb_msg_reserved: __u16,
16856    pub sadb_msg_seq: __u32,
16857    pub sadb_msg_pid: __u32,
16858}
16859#[repr(C, packed)]
16860#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16861pub struct sadb_ext {
16862    pub sadb_ext_len: __u16,
16863    pub sadb_ext_type: __u16,
16864}
16865#[repr(C, packed)]
16866#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16867pub struct sadb_sa {
16868    pub sadb_sa_len: __u16,
16869    pub sadb_sa_exttype: __u16,
16870    pub sadb_sa_spi: __be32,
16871    pub sadb_sa_replay: __u8,
16872    pub sadb_sa_state: __u8,
16873    pub sadb_sa_auth: __u8,
16874    pub sadb_sa_encrypt: __u8,
16875    pub sadb_sa_flags: __u32,
16876}
16877#[repr(C, packed)]
16878#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16879pub struct sadb_lifetime {
16880    pub sadb_lifetime_len: __u16,
16881    pub sadb_lifetime_exttype: __u16,
16882    pub sadb_lifetime_allocations: __u32,
16883    pub sadb_lifetime_bytes: __u64,
16884    pub sadb_lifetime_addtime: __u64,
16885    pub sadb_lifetime_usetime: __u64,
16886}
16887#[repr(C, packed)]
16888#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16889pub struct sadb_address {
16890    pub sadb_address_len: __u16,
16891    pub sadb_address_exttype: __u16,
16892    pub sadb_address_proto: __u8,
16893    pub sadb_address_prefixlen: __u8,
16894    pub sadb_address_reserved: __u16,
16895}
16896#[repr(C, packed)]
16897#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16898pub struct sadb_key {
16899    pub sadb_key_len: __u16,
16900    pub sadb_key_exttype: __u16,
16901    pub sadb_key_bits: __u16,
16902    pub sadb_key_reserved: __u16,
16903}
16904#[repr(C, packed)]
16905#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16906pub struct sadb_ident {
16907    pub sadb_ident_len: __u16,
16908    pub sadb_ident_exttype: __u16,
16909    pub sadb_ident_type: __u16,
16910    pub sadb_ident_reserved: __u16,
16911    pub sadb_ident_id: __u64,
16912}
16913#[repr(C, packed)]
16914#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16915pub struct sadb_sens {
16916    pub sadb_sens_len: __u16,
16917    pub sadb_sens_exttype: __u16,
16918    pub sadb_sens_dpd: __u32,
16919    pub sadb_sens_sens_level: __u8,
16920    pub sadb_sens_sens_len: __u8,
16921    pub sadb_sens_integ_level: __u8,
16922    pub sadb_sens_integ_len: __u8,
16923    pub sadb_sens_reserved: __u32,
16924}
16925#[repr(C, packed)]
16926#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16927pub struct sadb_prop {
16928    pub sadb_prop_len: __u16,
16929    pub sadb_prop_exttype: __u16,
16930    pub sadb_prop_replay: __u8,
16931    pub sadb_prop_reserved: [__u8; 3usize],
16932}
16933#[repr(C, packed)]
16934#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16935pub struct sadb_comb {
16936    pub sadb_comb_auth: __u8,
16937    pub sadb_comb_encrypt: __u8,
16938    pub sadb_comb_flags: __u16,
16939    pub sadb_comb_auth_minbits: __u16,
16940    pub sadb_comb_auth_maxbits: __u16,
16941    pub sadb_comb_encrypt_minbits: __u16,
16942    pub sadb_comb_encrypt_maxbits: __u16,
16943    pub sadb_comb_reserved: __u32,
16944    pub sadb_comb_soft_allocations: __u32,
16945    pub sadb_comb_hard_allocations: __u32,
16946    pub sadb_comb_soft_bytes: __u64,
16947    pub sadb_comb_hard_bytes: __u64,
16948    pub sadb_comb_soft_addtime: __u64,
16949    pub sadb_comb_hard_addtime: __u64,
16950    pub sadb_comb_soft_usetime: __u64,
16951    pub sadb_comb_hard_usetime: __u64,
16952}
16953#[repr(C, packed)]
16954#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16955pub struct sadb_supported {
16956    pub sadb_supported_len: __u16,
16957    pub sadb_supported_exttype: __u16,
16958    pub sadb_supported_reserved: __u32,
16959}
16960#[repr(C, packed)]
16961#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16962pub struct sadb_alg {
16963    pub sadb_alg_id: __u8,
16964    pub sadb_alg_ivlen: __u8,
16965    pub sadb_alg_minbits: __u16,
16966    pub sadb_alg_maxbits: __u16,
16967    pub sadb_alg_reserved: __u16,
16968}
16969#[repr(C, packed)]
16970#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16971pub struct sadb_spirange {
16972    pub sadb_spirange_len: __u16,
16973    pub sadb_spirange_exttype: __u16,
16974    pub sadb_spirange_min: __u32,
16975    pub sadb_spirange_max: __u32,
16976    pub sadb_spirange_reserved: __u32,
16977}
16978#[repr(C, packed)]
16979#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16980pub struct sadb_x_kmprivate {
16981    pub sadb_x_kmprivate_len: __u16,
16982    pub sadb_x_kmprivate_exttype: __u16,
16983    pub sadb_x_kmprivate_reserved: __u32,
16984}
16985#[repr(C, packed)]
16986#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16987pub struct sadb_x_sa2 {
16988    pub sadb_x_sa2_len: __u16,
16989    pub sadb_x_sa2_exttype: __u16,
16990    pub sadb_x_sa2_mode: __u8,
16991    pub sadb_x_sa2_reserved1: __u8,
16992    pub sadb_x_sa2_reserved2: __u16,
16993    pub sadb_x_sa2_sequence: __u32,
16994    pub sadb_x_sa2_reqid: __u32,
16995}
16996#[repr(C, packed)]
16997#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16998pub struct sadb_x_policy {
16999    pub sadb_x_policy_len: __u16,
17000    pub sadb_x_policy_exttype: __u16,
17001    pub sadb_x_policy_type: __u16,
17002    pub sadb_x_policy_dir: __u8,
17003    pub sadb_x_policy_reserved: __u8,
17004    pub sadb_x_policy_id: __u32,
17005    pub sadb_x_policy_priority: __u32,
17006}
17007#[repr(C, packed)]
17008#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17009pub struct sadb_x_ipsecrequest {
17010    pub sadb_x_ipsecrequest_len: __u16,
17011    pub sadb_x_ipsecrequest_proto: __u16,
17012    pub sadb_x_ipsecrequest_mode: __u8,
17013    pub sadb_x_ipsecrequest_level: __u8,
17014    pub sadb_x_ipsecrequest_reserved1: __u16,
17015    pub sadb_x_ipsecrequest_reqid: __u32,
17016    pub sadb_x_ipsecrequest_reserved2: __u32,
17017}
17018#[repr(C, packed)]
17019#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17020pub struct sadb_x_nat_t_type {
17021    pub sadb_x_nat_t_type_len: __u16,
17022    pub sadb_x_nat_t_type_exttype: __u16,
17023    pub sadb_x_nat_t_type_type: __u8,
17024    pub sadb_x_nat_t_type_reserved: [__u8; 3usize],
17025}
17026#[repr(C, packed)]
17027#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17028pub struct sadb_x_nat_t_port {
17029    pub sadb_x_nat_t_port_len: __u16,
17030    pub sadb_x_nat_t_port_exttype: __u16,
17031    pub sadb_x_nat_t_port_port: __be16,
17032    pub sadb_x_nat_t_port_reserved: __u16,
17033}
17034#[repr(C, packed)]
17035#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17036pub struct sadb_x_sec_ctx {
17037    pub sadb_x_sec_len: __u16,
17038    pub sadb_x_sec_exttype: __u16,
17039    pub sadb_x_ctx_alg: __u8,
17040    pub sadb_x_ctx_doi: __u8,
17041    pub sadb_x_ctx_len: __u16,
17042}
17043#[repr(C, packed)]
17044#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17045pub struct sadb_x_kmaddress {
17046    pub sadb_x_kmaddress_len: __u16,
17047    pub sadb_x_kmaddress_exttype: __u16,
17048    pub sadb_x_kmaddress_reserved: __u32,
17049}
17050#[repr(C, packed)]
17051#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17052pub struct sadb_x_filter {
17053    pub sadb_x_filter_len: __u16,
17054    pub sadb_x_filter_exttype: __u16,
17055    pub sadb_x_filter_saddr: [__u32; 4usize],
17056    pub sadb_x_filter_daddr: [__u32; 4usize],
17057    pub sadb_x_filter_family: __u16,
17058    pub sadb_x_filter_splen: __u8,
17059    pub sadb_x_filter_dplen: __u8,
17060}
17061#[repr(C)]
17062#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17063pub struct prctl_mm_map {
17064    pub start_code: __u64,
17065    pub end_code: __u64,
17066    pub start_data: __u64,
17067    pub end_data: __u64,
17068    pub start_brk: __u64,
17069    pub brk: __u64,
17070    pub start_stack: __u64,
17071    pub arg_start: __u64,
17072    pub arg_end: __u64,
17073    pub env_start: __u64,
17074    pub env_end: __u64,
17075    pub auxv: uref<__u64>,
17076    pub auxv_size: __u32,
17077    pub exe_fd: __u32,
17078}
17079impl Default for prctl_mm_map {
17080    fn default() -> Self {
17081        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17082        unsafe {
17083            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17084            s.assume_init()
17085        }
17086    }
17087}
17088#[repr(C)]
17089#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17090pub struct ptrace_peeksiginfo_args {
17091    pub off: __u64,
17092    pub flags: __u32,
17093    pub nr: __s32,
17094}
17095#[repr(C)]
17096#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17097pub struct seccomp_metadata {
17098    pub filter_off: __u64,
17099    pub flags: __u64,
17100}
17101#[repr(C)]
17102#[derive(Copy, Clone)]
17103pub struct ptrace_syscall_info {
17104    pub op: __u8,
17105    pub pad: [__u8; 3usize],
17106    pub arch: __u32,
17107    pub instruction_pointer: __u64,
17108    pub stack_pointer: __u64,
17109    pub __bindgen_anon_1: ptrace_syscall_info__bindgen_ty_1,
17110}
17111#[repr(C)]
17112#[derive(Copy, Clone)]
17113pub union ptrace_syscall_info__bindgen_ty_1 {
17114    pub entry: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1,
17115    pub exit: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2,
17116    pub seccomp: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3,
17117}
17118#[repr(C)]
17119#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17120pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1 {
17121    pub nr: __u64,
17122    pub args: [__u64; 6usize],
17123}
17124#[repr(C)]
17125#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17126pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2 {
17127    pub rval: __s64,
17128    pub is_error: __u8,
17129    pub __bindgen_padding_0: [u8; 7usize],
17130}
17131#[repr(C)]
17132#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17133pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3 {
17134    pub nr: __u64,
17135    pub args: [__u64; 6usize],
17136    pub ret_data: __u32,
17137    pub __bindgen_padding_0: [u8; 4usize],
17138}
17139impl Default for ptrace_syscall_info__bindgen_ty_1 {
17140    fn default() -> Self {
17141        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17142        unsafe {
17143            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17144            s.assume_init()
17145        }
17146    }
17147}
17148impl Default for ptrace_syscall_info {
17149    fn default() -> Self {
17150        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17151        unsafe {
17152            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17153            s.assume_init()
17154        }
17155    }
17156}
17157#[repr(C)]
17158#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17159pub struct ptrace_rseq_configuration {
17160    pub rseq_abi_pointer: __u64,
17161    pub rseq_abi_size: __u32,
17162    pub signature: __u32,
17163    pub flags: __u32,
17164    pub pad: __u32,
17165}
17166#[repr(C)]
17167#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17168pub struct ptrace_sud_config {
17169    pub mode: __u64,
17170    pub selector: __u64,
17171    pub offset: __u64,
17172    pub len: __u64,
17173}
17174#[repr(C)]
17175#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17176pub struct pt_regs {
17177    pub r15: crate::types::c_ulong,
17178    pub r14: crate::types::c_ulong,
17179    pub r13: crate::types::c_ulong,
17180    pub r12: crate::types::c_ulong,
17181    pub rbp: crate::types::c_ulong,
17182    pub rbx: crate::types::c_ulong,
17183    pub r11: crate::types::c_ulong,
17184    pub r10: crate::types::c_ulong,
17185    pub r9: crate::types::c_ulong,
17186    pub r8: crate::types::c_ulong,
17187    pub rax: crate::types::c_ulong,
17188    pub rcx: crate::types::c_ulong,
17189    pub rdx: crate::types::c_ulong,
17190    pub rsi: crate::types::c_ulong,
17191    pub rdi: crate::types::c_ulong,
17192    pub orig_rax: crate::types::c_ulong,
17193    pub rip: crate::types::c_ulong,
17194    pub cs: crate::types::c_ulong,
17195    pub eflags: crate::types::c_ulong,
17196    pub rsp: crate::types::c_ulong,
17197    pub ss: crate::types::c_ulong,
17198}
17199#[repr(C)]
17200#[derive(Debug, Default)]
17201pub struct rand_pool_info {
17202    pub entropy_count: crate::types::c_int,
17203    pub buf_size: crate::types::c_int,
17204    pub buf: __IncompleteArrayField<__u32>,
17205}
17206#[repr(C)]
17207#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17208pub struct vgetrandom_opaque_params {
17209    pub size_of_opaque_state: __u32,
17210    pub mmap_prot: __u32,
17211    pub mmap_flags: __u32,
17212    pub reserved: [__u32; 13usize],
17213}
17214#[repr(C)]
17215#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17216pub struct rusage {
17217    pub ru_utime: timeval,
17218    pub ru_stime: timeval,
17219    pub ru_maxrss: __kernel_long_t,
17220    pub ru_ixrss: __kernel_long_t,
17221    pub ru_idrss: __kernel_long_t,
17222    pub ru_isrss: __kernel_long_t,
17223    pub ru_minflt: __kernel_long_t,
17224    pub ru_majflt: __kernel_long_t,
17225    pub ru_nswap: __kernel_long_t,
17226    pub ru_inblock: __kernel_long_t,
17227    pub ru_oublock: __kernel_long_t,
17228    pub ru_msgsnd: __kernel_long_t,
17229    pub ru_msgrcv: __kernel_long_t,
17230    pub ru_nsignals: __kernel_long_t,
17231    pub ru_nvcsw: __kernel_long_t,
17232    pub ru_nivcsw: __kernel_long_t,
17233}
17234#[repr(C)]
17235#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17236pub struct rlimit {
17237    pub rlim_cur: __kernel_ulong_t,
17238    pub rlim_max: __kernel_ulong_t,
17239}
17240#[repr(C)]
17241#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17242pub struct rlimit64 {
17243    pub rlim_cur: __u64,
17244    pub rlim_max: __u64,
17245}
17246#[repr(C)]
17247#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17248pub struct rtc_time {
17249    pub tm_sec: crate::types::c_int,
17250    pub tm_min: crate::types::c_int,
17251    pub tm_hour: crate::types::c_int,
17252    pub tm_mday: crate::types::c_int,
17253    pub tm_mon: crate::types::c_int,
17254    pub tm_year: crate::types::c_int,
17255    pub tm_wday: crate::types::c_int,
17256    pub tm_yday: crate::types::c_int,
17257    pub tm_isdst: crate::types::c_int,
17258}
17259#[repr(C)]
17260#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17261pub struct rtc_wkalrm {
17262    pub enabled: crate::types::c_uchar,
17263    pub pending: crate::types::c_uchar,
17264    pub __bindgen_padding_0: [u8; 2usize],
17265    pub time: rtc_time,
17266}
17267#[repr(C)]
17268#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17269pub struct rtc_pll_info {
17270    pub pll_ctrl: crate::types::c_int,
17271    pub pll_value: crate::types::c_int,
17272    pub pll_max: crate::types::c_int,
17273    pub pll_min: crate::types::c_int,
17274    pub pll_posmult: crate::types::c_int,
17275    pub pll_negmult: crate::types::c_int,
17276    pub pll_clock: crate::types::c_long,
17277}
17278#[repr(C)]
17279#[derive(Copy, Clone)]
17280pub struct rtc_param {
17281    pub param: __u64,
17282    pub __bindgen_anon_1: rtc_param__bindgen_ty_1,
17283    pub index: __u32,
17284    pub __pad: __u32,
17285}
17286#[repr(C)]
17287#[derive(Copy, Clone)]
17288pub union rtc_param__bindgen_ty_1 {
17289    pub uvalue: __u64,
17290    pub svalue: __s64,
17291    pub ptr: __u64,
17292}
17293impl Default for rtc_param__bindgen_ty_1 {
17294    fn default() -> Self {
17295        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17296        unsafe {
17297            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17298            s.assume_init()
17299        }
17300    }
17301}
17302impl Default for rtc_param {
17303    fn default() -> Self {
17304        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17305        unsafe {
17306            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17307            s.assume_init()
17308        }
17309    }
17310}
17311#[repr(C)]
17312#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17313pub struct clone_args {
17314    pub flags: __u64,
17315    pub pidfd: __u64,
17316    pub child_tid: __u64,
17317    pub parent_tid: __u64,
17318    pub exit_signal: __u64,
17319    pub stack: __u64,
17320    pub stack_size: __u64,
17321    pub tls: __u64,
17322    pub set_tid: __u64,
17323    pub set_tid_size: __u64,
17324    pub cgroup: __u64,
17325}
17326#[repr(C)]
17327#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17328pub struct sched_attr {
17329    pub size: __u32,
17330    pub sched_policy: __u32,
17331    pub sched_flags: __u64,
17332    pub sched_nice: __s32,
17333    pub sched_priority: __u32,
17334    pub sched_runtime: __u64,
17335    pub sched_deadline: __u64,
17336    pub sched_period: __u64,
17337    pub sched_util_min: __u32,
17338    pub sched_util_max: __u32,
17339}
17340#[repr(C)]
17341#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17342pub struct seccomp_data {
17343    pub nr: crate::types::c_int,
17344    pub arch: __u32,
17345    pub instruction_pointer: __u64,
17346    pub args: [__u64; 6usize],
17347}
17348#[repr(C)]
17349#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17350pub struct seccomp_notif_sizes {
17351    pub seccomp_notif: __u16,
17352    pub seccomp_notif_resp: __u16,
17353    pub seccomp_data: __u16,
17354}
17355#[repr(C)]
17356#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17357pub struct seccomp_notif {
17358    pub id: __u64,
17359    pub pid: __u32,
17360    pub flags: __u32,
17361    pub data: seccomp_data,
17362}
17363#[repr(C)]
17364#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17365pub struct seccomp_notif_resp {
17366    pub id: __u64,
17367    pub val: __s64,
17368    pub error: __s32,
17369    pub flags: __u32,
17370}
17371#[repr(C)]
17372#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17373pub struct seccomp_notif_addfd {
17374    pub id: __u64,
17375    pub flags: __u32,
17376    pub srcfd: __u32,
17377    pub newfd: __u32,
17378    pub newfd_flags: __u32,
17379}
17380#[repr(C)]
17381#[repr(align(8))]
17382#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
17383pub union sigval {
17384    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 8usize]>,
17385}
17386impl Default for sigval {
17387    fn default() -> Self {
17388        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17389        unsafe {
17390            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17391            s.assume_init()
17392        }
17393    }
17394}
17395pub type sigval_t = sigval;
17396#[repr(C)]
17397#[derive(Copy, Clone)]
17398pub union __sifields {
17399    pub _kill: __sifields__bindgen_ty_1,
17400    pub _timer: __sifields__bindgen_ty_2,
17401    pub _rt: __sifields__bindgen_ty_3,
17402    pub _sigchld: __sifields__bindgen_ty_4,
17403    pub _sigfault: __sifields__bindgen_ty_5,
17404    pub _sigpoll: __sifields__bindgen_ty_6,
17405    pub _sigsys: __sifields__bindgen_ty_7,
17406}
17407#[repr(C)]
17408#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17409pub struct __sifields__bindgen_ty_1 {
17410    pub _pid: __kernel_pid_t,
17411    pub _uid: __kernel_uid32_t,
17412}
17413#[repr(C)]
17414#[derive(Clone, Copy, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
17415pub struct __sifields__bindgen_ty_2 {
17416    pub _tid: __kernel_timer_t,
17417    pub _overrun: crate::types::c_int,
17418    pub _sigval: sigval_t,
17419    pub _sys_private: crate::types::c_int,
17420    pub __bindgen_padding_0: [u8; 4usize],
17421}
17422#[repr(C)]
17423#[derive(Clone, Copy, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
17424pub struct __sifields__bindgen_ty_3 {
17425    pub _pid: __kernel_pid_t,
17426    pub _uid: __kernel_uid32_t,
17427    pub _sigval: sigval_t,
17428}
17429#[repr(C)]
17430#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17431pub struct __sifields__bindgen_ty_4 {
17432    pub _pid: __kernel_pid_t,
17433    pub _uid: __kernel_uid32_t,
17434    pub _status: crate::types::c_int,
17435    pub __bindgen_padding_0: [u8; 4usize],
17436    pub _utime: __kernel_clock_t,
17437    pub _stime: __kernel_clock_t,
17438}
17439#[repr(C)]
17440#[derive(Copy, Clone)]
17441pub struct __sifields__bindgen_ty_5 {
17442    pub _addr: uaddr,
17443    pub __bindgen_anon_1: __sifields__bindgen_ty_5__bindgen_ty_1,
17444}
17445#[repr(C)]
17446#[derive(Copy, Clone)]
17447pub union __sifields__bindgen_ty_5__bindgen_ty_1 {
17448    pub _trapno: crate::types::c_int,
17449    pub _addr_lsb: crate::types::c_short,
17450    pub _addr_bnd: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
17451    pub _addr_pkey: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2,
17452    pub _perf: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3,
17453}
17454#[repr(C)]
17455#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17456pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
17457    pub _dummy_bnd: [crate::types::c_char; 8usize],
17458    pub _lower: uaddr,
17459    pub _upper: uaddr,
17460}
17461impl Default for __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
17462    fn default() -> Self {
17463        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17464        unsafe {
17465            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17466            s.assume_init()
17467        }
17468    }
17469}
17470#[repr(C)]
17471#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17472pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 {
17473    pub _dummy_pkey: [crate::types::c_char; 8usize],
17474    pub _pkey: __u32,
17475}
17476#[repr(C)]
17477#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17478pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 {
17479    pub _data: crate::types::c_ulong,
17480    pub _type: __u32,
17481    pub _flags: __u32,
17482}
17483impl Default for __sifields__bindgen_ty_5__bindgen_ty_1 {
17484    fn default() -> Self {
17485        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17486        unsafe {
17487            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17488            s.assume_init()
17489        }
17490    }
17491}
17492impl Default for __sifields__bindgen_ty_5 {
17493    fn default() -> Self {
17494        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17495        unsafe {
17496            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17497            s.assume_init()
17498        }
17499    }
17500}
17501#[repr(C)]
17502#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17503pub struct __sifields__bindgen_ty_6 {
17504    pub _band: crate::types::c_long,
17505    pub _fd: crate::types::c_int,
17506    pub __bindgen_padding_0: [u8; 4usize],
17507}
17508#[repr(C)]
17509#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
17510pub struct __sifields__bindgen_ty_7 {
17511    pub _call_addr: uaddr,
17512    pub _syscall: crate::types::c_int,
17513    pub _arch: crate::types::c_uint,
17514}
17515impl Default for __sifields__bindgen_ty_7 {
17516    fn default() -> Self {
17517        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17518        unsafe {
17519            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17520            s.assume_init()
17521        }
17522    }
17523}
17524impl Default for __sifields {
17525    fn default() -> Self {
17526        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17527        unsafe {
17528            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17529            s.assume_init()
17530        }
17531    }
17532}
17533#[repr(C)]
17534#[derive(Copy, Clone)]
17535pub struct siginfo {
17536    pub __bindgen_anon_1: siginfo__bindgen_ty_1,
17537}
17538#[repr(C)]
17539#[derive(Copy, Clone)]
17540pub union siginfo__bindgen_ty_1 {
17541    pub __bindgen_anon_1: siginfo__bindgen_ty_1__bindgen_ty_1,
17542    pub _si_pad: [crate::types::c_int; 32usize],
17543}
17544#[repr(C)]
17545#[derive(Copy, Clone)]
17546pub struct siginfo__bindgen_ty_1__bindgen_ty_1 {
17547    pub si_signo: crate::types::c_int,
17548    pub si_errno: crate::types::c_int,
17549    pub si_code: crate::types::c_int,
17550    pub __bindgen_padding_0: [u8; 4usize],
17551    pub _sifields: __sifields,
17552}
17553impl Default for siginfo__bindgen_ty_1__bindgen_ty_1 {
17554    fn default() -> Self {
17555        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17556        unsafe {
17557            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17558            s.assume_init()
17559        }
17560    }
17561}
17562impl Default for siginfo__bindgen_ty_1 {
17563    fn default() -> Self {
17564        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17565        unsafe {
17566            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17567            s.assume_init()
17568        }
17569    }
17570}
17571impl Default for siginfo {
17572    fn default() -> Self {
17573        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17574        unsafe {
17575            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17576            s.assume_init()
17577        }
17578    }
17579}
17580pub type siginfo_t = siginfo;
17581#[repr(C)]
17582#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
17583pub struct sigevent {
17584    pub sigev_value: sigval_t,
17585    pub sigev_signo: crate::types::c_int,
17586    pub sigev_notify: crate::types::c_int,
17587    pub _sigev_un: sigevent__bindgen_ty_1,
17588}
17589#[repr(C)]
17590#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
17591pub union sigevent__bindgen_ty_1 {
17592    pub _pad: [crate::types::c_int; 12usize],
17593    pub _tid: crate::types::c_int,
17594    pub _sigev_thread: sigevent__bindgen_ty_1__bindgen_ty_1,
17595}
17596#[repr(C)]
17597#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
17598pub struct sigevent__bindgen_ty_1__bindgen_ty_1 {
17599    pub _function: uaddr,
17600    pub _attribute: uaddr,
17601}
17602impl Default for sigevent__bindgen_ty_1__bindgen_ty_1 {
17603    fn default() -> Self {
17604        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17605        unsafe {
17606            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17607            s.assume_init()
17608        }
17609    }
17610}
17611impl Default for sigevent__bindgen_ty_1 {
17612    fn default() -> Self {
17613        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17614        unsafe {
17615            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17616            s.assume_init()
17617        }
17618    }
17619}
17620impl Default for sigevent {
17621    fn default() -> Self {
17622        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17623        unsafe {
17624            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17625            s.assume_init()
17626        }
17627    }
17628}
17629pub type sigevent_t = sigevent;
17630#[repr(C)]
17631#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17632pub struct signalfd_siginfo {
17633    pub ssi_signo: __u32,
17634    pub ssi_errno: __s32,
17635    pub ssi_code: __s32,
17636    pub ssi_pid: __u32,
17637    pub ssi_uid: __u32,
17638    pub ssi_fd: __s32,
17639    pub ssi_tid: __u32,
17640    pub ssi_band: __u32,
17641    pub ssi_overrun: __u32,
17642    pub ssi_trapno: __u32,
17643    pub ssi_status: __s32,
17644    pub ssi_int: __s32,
17645    pub ssi_ptr: __u64,
17646    pub ssi_utime: __u64,
17647    pub ssi_stime: __u64,
17648    pub ssi_addr: __u64,
17649    pub ssi_addr_lsb: __u16,
17650    pub __pad2: __u16,
17651    pub ssi_syscall: __s32,
17652    pub ssi_call_addr: __u64,
17653    pub ssi_arch: __u32,
17654    pub __pad: [__u8; 28usize],
17655}
17656#[repr(C)]
17657#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17658pub struct sock_diag_req {
17659    pub sdiag_family: __u8,
17660    pub sdiag_protocol: __u8,
17661}
17662pub const SK_MEMINFO_RMEM_ALLOC: _bindgen_ty_94 = 0;
17663pub const SK_MEMINFO_RCVBUF: _bindgen_ty_94 = 1;
17664pub const SK_MEMINFO_WMEM_ALLOC: _bindgen_ty_94 = 2;
17665pub const SK_MEMINFO_SNDBUF: _bindgen_ty_94 = 3;
17666pub const SK_MEMINFO_FWD_ALLOC: _bindgen_ty_94 = 4;
17667pub const SK_MEMINFO_WMEM_QUEUED: _bindgen_ty_94 = 5;
17668pub const SK_MEMINFO_OPTMEM: _bindgen_ty_94 = 6;
17669pub const SK_MEMINFO_BACKLOG: _bindgen_ty_94 = 7;
17670pub const SK_MEMINFO_DROPS: _bindgen_ty_94 = 8;
17671pub const SK_MEMINFO_VARS: _bindgen_ty_94 = 9;
17672pub type _bindgen_ty_94 = crate::types::c_uint;
17673pub const sknetlink_groups_SKNLGRP_NONE: sknetlink_groups = 0;
17674pub const sknetlink_groups_SKNLGRP_INET_TCP_DESTROY: sknetlink_groups = 1;
17675pub const sknetlink_groups_SKNLGRP_INET_UDP_DESTROY: sknetlink_groups = 2;
17676pub const sknetlink_groups_SKNLGRP_INET6_TCP_DESTROY: sknetlink_groups = 3;
17677pub const sknetlink_groups_SKNLGRP_INET6_UDP_DESTROY: sknetlink_groups = 4;
17678pub const sknetlink_groups___SKNLGRP_MAX: sknetlink_groups = 5;
17679pub type sknetlink_groups = crate::types::c_uint;
17680pub const SK_DIAG_BPF_STORAGE_REQ_NONE: _bindgen_ty_95 = 0;
17681pub const SK_DIAG_BPF_STORAGE_REQ_MAP_FD: _bindgen_ty_95 = 1;
17682pub const __SK_DIAG_BPF_STORAGE_REQ_MAX: _bindgen_ty_95 = 2;
17683pub type _bindgen_ty_95 = crate::types::c_uint;
17684pub const SK_DIAG_BPF_STORAGE_REP_NONE: _bindgen_ty_96 = 0;
17685pub const SK_DIAG_BPF_STORAGE: _bindgen_ty_96 = 1;
17686pub const __SK_DIAG_BPF_STORAGE_REP_MAX: _bindgen_ty_96 = 2;
17687pub type _bindgen_ty_96 = crate::types::c_uint;
17688pub const SK_DIAG_BPF_STORAGE_NONE: _bindgen_ty_97 = 0;
17689pub const SK_DIAG_BPF_STORAGE_PAD: _bindgen_ty_97 = 1;
17690pub const SK_DIAG_BPF_STORAGE_MAP_ID: _bindgen_ty_97 = 2;
17691pub const SK_DIAG_BPF_STORAGE_MAP_VALUE: _bindgen_ty_97 = 3;
17692pub const __SK_DIAG_BPF_STORAGE_MAX: _bindgen_ty_97 = 4;
17693pub type _bindgen_ty_97 = crate::types::c_uint;
17694#[repr(C)]
17695#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17696pub struct statx_timestamp {
17697    pub tv_sec: __s64,
17698    pub tv_nsec: __u32,
17699    pub __reserved: __s32,
17700}
17701#[repr(C)]
17702#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17703pub struct statx {
17704    pub stx_mask: __u32,
17705    pub stx_blksize: __u32,
17706    pub stx_attributes: __u64,
17707    pub stx_nlink: __u32,
17708    pub stx_uid: __u32,
17709    pub stx_gid: __u32,
17710    pub stx_mode: __u16,
17711    pub __spare0: [__u16; 1usize],
17712    pub stx_ino: __u64,
17713    pub stx_size: __u64,
17714    pub stx_blocks: __u64,
17715    pub stx_attributes_mask: __u64,
17716    pub stx_atime: statx_timestamp,
17717    pub stx_btime: statx_timestamp,
17718    pub stx_ctime: statx_timestamp,
17719    pub stx_mtime: statx_timestamp,
17720    pub stx_rdev_major: __u32,
17721    pub stx_rdev_minor: __u32,
17722    pub stx_dev_major: __u32,
17723    pub stx_dev_minor: __u32,
17724    pub stx_mnt_id: __u64,
17725    pub stx_dio_mem_align: __u32,
17726    pub stx_dio_offset_align: __u32,
17727    pub stx_subvol: __u64,
17728    pub stx_atomic_write_unit_min: __u32,
17729    pub stx_atomic_write_unit_max: __u32,
17730    pub stx_atomic_write_segments_max: __u32,
17731    pub __spare1: [__u32; 1usize],
17732    pub __spare3: [__u64; 9usize],
17733}
17734#[repr(C)]
17735#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17736pub struct sync_merge_data {
17737    pub name: [crate::types::c_char; 32usize],
17738    pub fd2: __s32,
17739    pub fence: __s32,
17740    pub flags: __u32,
17741    pub pad: __u32,
17742}
17743#[repr(C)]
17744#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17745pub struct sync_fence_info {
17746    pub obj_name: [crate::types::c_char; 32usize],
17747    pub driver_name: [crate::types::c_char; 32usize],
17748    pub status: __s32,
17749    pub flags: __u32,
17750    pub timestamp_ns: __u64,
17751}
17752#[repr(C)]
17753#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17754pub struct sync_file_info {
17755    pub name: [crate::types::c_char; 32usize],
17756    pub status: __s32,
17757    pub flags: __u32,
17758    pub num_fences: __u32,
17759    pub pad: __u32,
17760    pub sync_fence_info: __u64,
17761}
17762#[repr(C)]
17763#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17764pub struct sync_set_deadline {
17765    pub deadline_ns: __u64,
17766    pub pad: __u64,
17767}
17768#[repr(C)]
17769#[derive(Debug, Default, Immutable, IntoBytes, KnownLayout)]
17770pub struct sysinfo {
17771    pub uptime: __kernel_long_t,
17772    pub loads: [__kernel_ulong_t; 3usize],
17773    pub totalram: __kernel_ulong_t,
17774    pub freeram: __kernel_ulong_t,
17775    pub sharedram: __kernel_ulong_t,
17776    pub bufferram: __kernel_ulong_t,
17777    pub totalswap: __kernel_ulong_t,
17778    pub freeswap: __kernel_ulong_t,
17779    pub procs: __u16,
17780    pub pad: __u16,
17781    pub __bindgen_padding_0: [u8; 4usize],
17782    pub totalhigh: __kernel_ulong_t,
17783    pub freehigh: __kernel_ulong_t,
17784    pub mem_unit: __u32,
17785    pub _f: __IncompleteArrayField<crate::types::c_char>,
17786    pub __bindgen_padding_1: [u8; 4usize],
17787}
17788#[repr(C)]
17789#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17790pub struct taskstats {
17791    pub version: __u16,
17792    pub __bindgen_padding_0: [u8; 2usize],
17793    pub ac_exitcode: __u32,
17794    pub ac_flag: __u8,
17795    pub ac_nice: __u8,
17796    pub __bindgen_padding_1: [u8; 6usize],
17797    pub cpu_count: __u64,
17798    pub cpu_delay_total: __u64,
17799    pub blkio_count: __u64,
17800    pub blkio_delay_total: __u64,
17801    pub swapin_count: __u64,
17802    pub swapin_delay_total: __u64,
17803    pub cpu_run_real_total: __u64,
17804    pub cpu_run_virtual_total: __u64,
17805    pub ac_comm: [crate::types::c_char; 32usize],
17806    pub ac_sched: __u8,
17807    pub ac_pad: [__u8; 3usize],
17808    pub __bindgen_padding_2: [u8; 4usize],
17809    pub ac_uid: __u32,
17810    pub ac_gid: __u32,
17811    pub ac_pid: __u32,
17812    pub ac_ppid: __u32,
17813    pub ac_btime: __u32,
17814    pub __bindgen_padding_3: [u8; 4usize],
17815    pub ac_etime: __u64,
17816    pub ac_utime: __u64,
17817    pub ac_stime: __u64,
17818    pub ac_minflt: __u64,
17819    pub ac_majflt: __u64,
17820    pub coremem: __u64,
17821    pub virtmem: __u64,
17822    pub hiwater_rss: __u64,
17823    pub hiwater_vm: __u64,
17824    pub read_char: __u64,
17825    pub write_char: __u64,
17826    pub read_syscalls: __u64,
17827    pub write_syscalls: __u64,
17828    pub read_bytes: __u64,
17829    pub write_bytes: __u64,
17830    pub cancelled_write_bytes: __u64,
17831    pub nvcsw: __u64,
17832    pub nivcsw: __u64,
17833    pub ac_utimescaled: __u64,
17834    pub ac_stimescaled: __u64,
17835    pub cpu_scaled_run_real_total: __u64,
17836    pub freepages_count: __u64,
17837    pub freepages_delay_total: __u64,
17838    pub thrashing_count: __u64,
17839    pub thrashing_delay_total: __u64,
17840    pub ac_btime64: __u64,
17841    pub compact_count: __u64,
17842    pub compact_delay_total: __u64,
17843    pub ac_tgid: __u32,
17844    pub __bindgen_padding_4: [u8; 4usize],
17845    pub ac_tgetime: __u64,
17846    pub ac_exe_dev: __u64,
17847    pub ac_exe_inode: __u64,
17848    pub wpcopy_count: __u64,
17849    pub wpcopy_delay_total: __u64,
17850    pub irq_count: __u64,
17851    pub irq_delay_total: __u64,
17852}
17853pub const TASKSTATS_CMD_UNSPEC: _bindgen_ty_98 = 0;
17854pub const TASKSTATS_CMD_GET: _bindgen_ty_98 = 1;
17855pub const TASKSTATS_CMD_NEW: _bindgen_ty_98 = 2;
17856pub const __TASKSTATS_CMD_MAX: _bindgen_ty_98 = 3;
17857pub type _bindgen_ty_98 = crate::types::c_uint;
17858pub const TASKSTATS_TYPE_UNSPEC: _bindgen_ty_99 = 0;
17859pub const TASKSTATS_TYPE_PID: _bindgen_ty_99 = 1;
17860pub const TASKSTATS_TYPE_TGID: _bindgen_ty_99 = 2;
17861pub const TASKSTATS_TYPE_STATS: _bindgen_ty_99 = 3;
17862pub const TASKSTATS_TYPE_AGGR_PID: _bindgen_ty_99 = 4;
17863pub const TASKSTATS_TYPE_AGGR_TGID: _bindgen_ty_99 = 5;
17864pub const TASKSTATS_TYPE_NULL: _bindgen_ty_99 = 6;
17865pub const __TASKSTATS_TYPE_MAX: _bindgen_ty_99 = 7;
17866pub type _bindgen_ty_99 = crate::types::c_uint;
17867pub const TASKSTATS_CMD_ATTR_UNSPEC: _bindgen_ty_100 = 0;
17868pub const TASKSTATS_CMD_ATTR_PID: _bindgen_ty_100 = 1;
17869pub const TASKSTATS_CMD_ATTR_TGID: _bindgen_ty_100 = 2;
17870pub const TASKSTATS_CMD_ATTR_REGISTER_CPUMASK: _bindgen_ty_100 = 3;
17871pub const TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK: _bindgen_ty_100 = 4;
17872pub const __TASKSTATS_CMD_ATTR_MAX: _bindgen_ty_100 = 5;
17873pub type _bindgen_ty_100 = crate::types::c_uint;
17874pub type cc_t = crate::types::c_uchar;
17875pub type speed_t = crate::types::c_uint;
17876pub type tcflag_t = crate::types::c_uint;
17877#[repr(C)]
17878#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17879pub struct termios {
17880    pub c_iflag: tcflag_t,
17881    pub c_oflag: tcflag_t,
17882    pub c_cflag: tcflag_t,
17883    pub c_lflag: tcflag_t,
17884    pub c_line: cc_t,
17885    pub c_cc: [cc_t; 19usize],
17886}
17887#[repr(C)]
17888#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17889pub struct termios2 {
17890    pub c_iflag: tcflag_t,
17891    pub c_oflag: tcflag_t,
17892    pub c_cflag: tcflag_t,
17893    pub c_lflag: tcflag_t,
17894    pub c_line: cc_t,
17895    pub c_cc: [cc_t; 19usize],
17896    pub c_ispeed: speed_t,
17897    pub c_ospeed: speed_t,
17898}
17899#[repr(C)]
17900#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17901pub struct ktermios {
17902    pub c_iflag: tcflag_t,
17903    pub c_oflag: tcflag_t,
17904    pub c_cflag: tcflag_t,
17905    pub c_lflag: tcflag_t,
17906    pub c_line: cc_t,
17907    pub c_cc: [cc_t; 19usize],
17908    pub c_ispeed: speed_t,
17909    pub c_ospeed: speed_t,
17910}
17911#[repr(C)]
17912#[derive(
17913    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
17914)]
17915pub struct winsize {
17916    pub ws_row: crate::types::c_ushort,
17917    pub ws_col: crate::types::c_ushort,
17918    pub ws_xpixel: crate::types::c_ushort,
17919    pub ws_ypixel: crate::types::c_ushort,
17920}
17921#[repr(C)]
17922#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17923pub struct termio {
17924    pub c_iflag: crate::types::c_ushort,
17925    pub c_oflag: crate::types::c_ushort,
17926    pub c_cflag: crate::types::c_ushort,
17927    pub c_lflag: crate::types::c_ushort,
17928    pub c_line: crate::types::c_uchar,
17929    pub c_cc: [crate::types::c_uchar; 8usize],
17930    pub __bindgen_padding_0: u8,
17931}
17932pub const thermal_device_mode_THERMAL_DEVICE_DISABLED: thermal_device_mode = 0;
17933pub const thermal_device_mode_THERMAL_DEVICE_ENABLED: thermal_device_mode = 1;
17934pub type thermal_device_mode = crate::types::c_uint;
17935pub const thermal_trip_type_THERMAL_TRIP_ACTIVE: thermal_trip_type = 0;
17936pub const thermal_trip_type_THERMAL_TRIP_PASSIVE: thermal_trip_type = 1;
17937pub const thermal_trip_type_THERMAL_TRIP_HOT: thermal_trip_type = 2;
17938pub const thermal_trip_type_THERMAL_TRIP_CRITICAL: thermal_trip_type = 3;
17939pub type thermal_trip_type = crate::types::c_uint;
17940pub const thermal_genl_attr_THERMAL_GENL_ATTR_UNSPEC: thermal_genl_attr = 0;
17941pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ: thermal_genl_attr = 1;
17942pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_ID: thermal_genl_attr = 2;
17943pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TEMP: thermal_genl_attr = 3;
17944pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP: thermal_genl_attr = 4;
17945pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_ID: thermal_genl_attr = 5;
17946pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_TYPE: thermal_genl_attr = 6;
17947pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_TEMP: thermal_genl_attr = 7;
17948pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_HYST: thermal_genl_attr = 8;
17949pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_MODE: thermal_genl_attr = 9;
17950pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_NAME: thermal_genl_attr = 10;
17951pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_CDEV_WEIGHT: thermal_genl_attr = 11;
17952pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_GOV: thermal_genl_attr = 12;
17953pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_GOV_NAME: thermal_genl_attr = 13;
17954pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV: thermal_genl_attr = 14;
17955pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_ID: thermal_genl_attr = 15;
17956pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_CUR_STATE: thermal_genl_attr = 16;
17957pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_MAX_STATE: thermal_genl_attr = 17;
17958pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_NAME: thermal_genl_attr = 18;
17959pub const thermal_genl_attr_THERMAL_GENL_ATTR_GOV_NAME: thermal_genl_attr = 19;
17960pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY: thermal_genl_attr = 20;
17961pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_ID: thermal_genl_attr = 21;
17962pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_PERFORMANCE: thermal_genl_attr = 22;
17963pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_EFFICIENCY: thermal_genl_attr = 23;
17964pub const thermal_genl_attr___THERMAL_GENL_ATTR_MAX: thermal_genl_attr = 24;
17965pub type thermal_genl_attr = crate::types::c_uint;
17966pub const thermal_genl_sampling_THERMAL_GENL_SAMPLING_TEMP: thermal_genl_sampling = 0;
17967pub const thermal_genl_sampling___THERMAL_GENL_SAMPLING_MAX: thermal_genl_sampling = 1;
17968pub type thermal_genl_sampling = crate::types::c_uint;
17969pub const thermal_genl_event_THERMAL_GENL_EVENT_UNSPEC: thermal_genl_event = 0;
17970pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_CREATE: thermal_genl_event = 1;
17971pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_DELETE: thermal_genl_event = 2;
17972pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_DISABLE: thermal_genl_event = 3;
17973pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_ENABLE: thermal_genl_event = 4;
17974pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_UP: thermal_genl_event = 5;
17975pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_DOWN: thermal_genl_event = 6;
17976pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_CHANGE: thermal_genl_event = 7;
17977pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_ADD: thermal_genl_event = 8;
17978pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_DELETE: thermal_genl_event = 9;
17979pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_ADD: thermal_genl_event = 10;
17980pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_DELETE: thermal_genl_event = 11;
17981pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_STATE_UPDATE: thermal_genl_event = 12;
17982pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_GOV_CHANGE: thermal_genl_event = 13;
17983pub const thermal_genl_event_THERMAL_GENL_EVENT_CPU_CAPABILITY_CHANGE: thermal_genl_event = 14;
17984pub const thermal_genl_event___THERMAL_GENL_EVENT_MAX: thermal_genl_event = 15;
17985pub type thermal_genl_event = crate::types::c_uint;
17986pub const thermal_genl_cmd_THERMAL_GENL_CMD_UNSPEC: thermal_genl_cmd = 0;
17987pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_ID: thermal_genl_cmd = 1;
17988pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_TRIP: thermal_genl_cmd = 2;
17989pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_TEMP: thermal_genl_cmd = 3;
17990pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_GOV: thermal_genl_cmd = 4;
17991pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_MODE: thermal_genl_cmd = 5;
17992pub const thermal_genl_cmd_THERMAL_GENL_CMD_CDEV_GET: thermal_genl_cmd = 6;
17993pub const thermal_genl_cmd___THERMAL_GENL_CMD_MAX: thermal_genl_cmd = 7;
17994pub type thermal_genl_cmd = crate::types::c_uint;
17995#[repr(C)]
17996#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17997pub struct tms {
17998    pub tms_utime: __kernel_clock_t,
17999    pub tms_stime: __kernel_clock_t,
18000    pub tms_cutime: __kernel_clock_t,
18001    pub tms_cstime: __kernel_clock_t,
18002}
18003#[repr(C)]
18004#[derive(Copy, Clone)]
18005pub struct uinput_ff_upload {
18006    pub request_id: __u32,
18007    pub retval: __s32,
18008    pub effect: ff_effect,
18009    pub old: ff_effect,
18010}
18011impl Default for uinput_ff_upload {
18012    fn default() -> Self {
18013        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18014        unsafe {
18015            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18016            s.assume_init()
18017        }
18018    }
18019}
18020#[repr(C)]
18021#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18022pub struct uinput_ff_erase {
18023    pub request_id: __u32,
18024    pub retval: __s32,
18025    pub effect_id: __u32,
18026}
18027#[repr(C)]
18028#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18029pub struct uinput_setup {
18030    pub id: input_id,
18031    pub name: [crate::types::c_char; 80usize],
18032    pub ff_effects_max: __u32,
18033}
18034impl Default for uinput_setup {
18035    fn default() -> Self {
18036        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18037        unsafe {
18038            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18039            s.assume_init()
18040        }
18041    }
18042}
18043#[repr(C)]
18044#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18045pub struct uinput_abs_setup {
18046    pub code: __u16,
18047    pub __bindgen_padding_0: [u8; 2usize],
18048    pub absinfo: input_absinfo,
18049}
18050#[repr(C)]
18051#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18052pub struct uinput_user_dev {
18053    pub name: [crate::types::c_char; 80usize],
18054    pub id: input_id,
18055    pub ff_effects_max: __u32,
18056    pub absmax: [__s32; 64usize],
18057    pub absmin: [__s32; 64usize],
18058    pub absfuzz: [__s32; 64usize],
18059    pub absflat: [__s32; 64usize],
18060}
18061impl Default for uinput_user_dev {
18062    fn default() -> Self {
18063        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18064        unsafe {
18065            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18066            s.assume_init()
18067        }
18068    }
18069}
18070#[repr(C)]
18071#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18072pub struct iovec {
18073    pub iov_base: uaddr,
18074    pub iov_len: __kernel_size_t,
18075}
18076impl Default for iovec {
18077    fn default() -> Self {
18078        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18079        unsafe {
18080            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18081            s.assume_init()
18082        }
18083    }
18084}
18085#[repr(C)]
18086#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18087pub struct dmabuf_cmsg {
18088    pub frag_offset: __u64,
18089    pub frag_size: __u32,
18090    pub frag_token: __u32,
18091    pub dmabuf_id: __u32,
18092    pub flags: __u32,
18093}
18094#[repr(C)]
18095#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18096pub struct dmabuf_token {
18097    pub token_start: __u32,
18098    pub token_count: __u32,
18099}
18100#[repr(C)]
18101#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18102pub struct sockaddr_un {
18103    pub sun_family: __kernel_sa_family_t,
18104    pub sun_path: [crate::types::c_char; 108usize],
18105}
18106impl Default for sockaddr_un {
18107    fn default() -> Self {
18108        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18109        unsafe {
18110            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18111            s.assume_init()
18112        }
18113    }
18114}
18115#[repr(C, packed)]
18116#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18117pub struct usb_ctrlrequest {
18118    pub bRequestType: __u8,
18119    pub bRequest: __u8,
18120    pub wValue: __le16,
18121    pub wIndex: __le16,
18122    pub wLength: __le16,
18123}
18124#[repr(C, packed)]
18125#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18126pub struct usb_descriptor_header {
18127    pub bLength: __u8,
18128    pub bDescriptorType: __u8,
18129}
18130#[repr(C, packed)]
18131#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18132pub struct usb_device_descriptor {
18133    pub bLength: __u8,
18134    pub bDescriptorType: __u8,
18135    pub bcdUSB: __le16,
18136    pub bDeviceClass: __u8,
18137    pub bDeviceSubClass: __u8,
18138    pub bDeviceProtocol: __u8,
18139    pub bMaxPacketSize0: __u8,
18140    pub idVendor: __le16,
18141    pub idProduct: __le16,
18142    pub bcdDevice: __le16,
18143    pub iManufacturer: __u8,
18144    pub iProduct: __u8,
18145    pub iSerialNumber: __u8,
18146    pub bNumConfigurations: __u8,
18147}
18148#[repr(C, packed)]
18149#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18150pub struct usb_config_descriptor {
18151    pub bLength: __u8,
18152    pub bDescriptorType: __u8,
18153    pub wTotalLength: __le16,
18154    pub bNumInterfaces: __u8,
18155    pub bConfigurationValue: __u8,
18156    pub iConfiguration: __u8,
18157    pub bmAttributes: __u8,
18158    pub bMaxPower: __u8,
18159}
18160#[repr(C, packed)]
18161pub struct usb_string_descriptor {
18162    pub bLength: __u8,
18163    pub bDescriptorType: __u8,
18164    pub __bindgen_anon_1: usb_string_descriptor__bindgen_ty_1,
18165}
18166#[repr(C)]
18167pub struct usb_string_descriptor__bindgen_ty_1 {
18168    pub legacy_padding: __BindgenUnionField<__le16>,
18169    pub __bindgen_anon_1: __BindgenUnionField<usb_string_descriptor__bindgen_ty_1__bindgen_ty_1>,
18170    pub bindgen_union_field: u16,
18171}
18172#[repr(C)]
18173#[derive(Debug, Default)]
18174pub struct usb_string_descriptor__bindgen_ty_1__bindgen_ty_1 {
18175    pub __empty_wData: usb_string_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18176    pub wData: __IncompleteArrayField<__le16>,
18177}
18178#[repr(C)]
18179#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18180pub struct usb_string_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
18181impl Default for usb_string_descriptor__bindgen_ty_1 {
18182    fn default() -> Self {
18183        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18184        unsafe {
18185            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18186            s.assume_init()
18187        }
18188    }
18189}
18190impl Default for usb_string_descriptor {
18191    fn default() -> Self {
18192        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18193        unsafe {
18194            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18195            s.assume_init()
18196        }
18197    }
18198}
18199#[repr(C, packed)]
18200#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18201pub struct usb_interface_descriptor {
18202    pub bLength: __u8,
18203    pub bDescriptorType: __u8,
18204    pub bInterfaceNumber: __u8,
18205    pub bAlternateSetting: __u8,
18206    pub bNumEndpoints: __u8,
18207    pub bInterfaceClass: __u8,
18208    pub bInterfaceSubClass: __u8,
18209    pub bInterfaceProtocol: __u8,
18210    pub iInterface: __u8,
18211}
18212#[repr(C, packed)]
18213#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18214pub struct usb_endpoint_descriptor {
18215    pub bLength: __u8,
18216    pub bDescriptorType: __u8,
18217    pub bEndpointAddress: __u8,
18218    pub bmAttributes: __u8,
18219    pub wMaxPacketSize: __le16,
18220    pub bInterval: __u8,
18221    pub bRefresh: __u8,
18222    pub bSynchAddress: __u8,
18223}
18224#[repr(C, packed)]
18225#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18226pub struct usb_ssp_isoc_ep_comp_descriptor {
18227    pub bLength: __u8,
18228    pub bDescriptorType: __u8,
18229    pub wReseved: __le16,
18230    pub dwBytesPerInterval: __le32,
18231}
18232#[repr(C, packed)]
18233#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18234pub struct usb_ss_ep_comp_descriptor {
18235    pub bLength: __u8,
18236    pub bDescriptorType: __u8,
18237    pub bMaxBurst: __u8,
18238    pub bmAttributes: __u8,
18239    pub wBytesPerInterval: __le16,
18240}
18241#[repr(C, packed)]
18242#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18243pub struct usb_qualifier_descriptor {
18244    pub bLength: __u8,
18245    pub bDescriptorType: __u8,
18246    pub bcdUSB: __le16,
18247    pub bDeviceClass: __u8,
18248    pub bDeviceSubClass: __u8,
18249    pub bDeviceProtocol: __u8,
18250    pub bMaxPacketSize0: __u8,
18251    pub bNumConfigurations: __u8,
18252    pub bRESERVED: __u8,
18253}
18254#[repr(C, packed)]
18255#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18256pub struct usb_otg_descriptor {
18257    pub bLength: __u8,
18258    pub bDescriptorType: __u8,
18259    pub bmAttributes: __u8,
18260}
18261#[repr(C, packed)]
18262#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18263pub struct usb_otg20_descriptor {
18264    pub bLength: __u8,
18265    pub bDescriptorType: __u8,
18266    pub bmAttributes: __u8,
18267    pub bcdOTG: __le16,
18268}
18269#[repr(C, packed)]
18270#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18271pub struct usb_debug_descriptor {
18272    pub bLength: __u8,
18273    pub bDescriptorType: __u8,
18274    pub bDebugInEndpoint: __u8,
18275    pub bDebugOutEndpoint: __u8,
18276}
18277#[repr(C, packed)]
18278#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18279pub struct usb_interface_assoc_descriptor {
18280    pub bLength: __u8,
18281    pub bDescriptorType: __u8,
18282    pub bFirstInterface: __u8,
18283    pub bInterfaceCount: __u8,
18284    pub bFunctionClass: __u8,
18285    pub bFunctionSubClass: __u8,
18286    pub bFunctionProtocol: __u8,
18287    pub iFunction: __u8,
18288}
18289#[repr(C, packed)]
18290#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18291pub struct usb_security_descriptor {
18292    pub bLength: __u8,
18293    pub bDescriptorType: __u8,
18294    pub wTotalLength: __le16,
18295    pub bNumEncryptionTypes: __u8,
18296}
18297#[repr(C, packed)]
18298pub struct usb_key_descriptor {
18299    pub bLength: __u8,
18300    pub bDescriptorType: __u8,
18301    pub tTKID: [__u8; 3usize],
18302    pub bReserved: __u8,
18303    pub bKeyData: __IncompleteArrayField<__u8>,
18304}
18305impl Default for usb_key_descriptor {
18306    fn default() -> Self {
18307        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18308        unsafe {
18309            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18310            s.assume_init()
18311        }
18312    }
18313}
18314#[repr(C, packed)]
18315#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18316pub struct usb_encryption_descriptor {
18317    pub bLength: __u8,
18318    pub bDescriptorType: __u8,
18319    pub bEncryptionType: __u8,
18320    pub bEncryptionValue: __u8,
18321    pub bAuthKeyIndex: __u8,
18322}
18323#[repr(C, packed)]
18324#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18325pub struct usb_bos_descriptor {
18326    pub bLength: __u8,
18327    pub bDescriptorType: __u8,
18328    pub wTotalLength: __le16,
18329    pub bNumDeviceCaps: __u8,
18330}
18331#[repr(C, packed)]
18332#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18333pub struct usb_dev_cap_header {
18334    pub bLength: __u8,
18335    pub bDescriptorType: __u8,
18336    pub bDevCapabilityType: __u8,
18337}
18338#[repr(C, packed)]
18339#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18340pub struct usb_wireless_cap_descriptor {
18341    pub bLength: __u8,
18342    pub bDescriptorType: __u8,
18343    pub bDevCapabilityType: __u8,
18344    pub bmAttributes: __u8,
18345    pub wPHYRates: __le16,
18346    pub bmTFITXPowerInfo: __u8,
18347    pub bmFFITXPowerInfo: __u8,
18348    pub bmBandGroup: __le16,
18349    pub bReserved: __u8,
18350}
18351#[repr(C, packed)]
18352#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18353pub struct usb_ext_cap_descriptor {
18354    pub bLength: __u8,
18355    pub bDescriptorType: __u8,
18356    pub bDevCapabilityType: __u8,
18357    pub bmAttributes: __le32,
18358}
18359#[repr(C, packed)]
18360#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18361pub struct usb_ss_cap_descriptor {
18362    pub bLength: __u8,
18363    pub bDescriptorType: __u8,
18364    pub bDevCapabilityType: __u8,
18365    pub bmAttributes: __u8,
18366    pub wSpeedSupported: __le16,
18367    pub bFunctionalitySupport: __u8,
18368    pub bU1devExitLat: __u8,
18369    pub bU2DevExitLat: __le16,
18370}
18371#[repr(C, packed)]
18372#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18373pub struct usb_ss_container_id_descriptor {
18374    pub bLength: __u8,
18375    pub bDescriptorType: __u8,
18376    pub bDevCapabilityType: __u8,
18377    pub bReserved: __u8,
18378    pub ContainerID: [__u8; 16usize],
18379}
18380#[repr(C, packed)]
18381pub struct usb_plat_dev_cap_descriptor {
18382    pub bLength: __u8,
18383    pub bDescriptorType: __u8,
18384    pub bDevCapabilityType: __u8,
18385    pub bReserved: __u8,
18386    pub UUID: [__u8; 16usize],
18387    pub CapabilityData: __IncompleteArrayField<__u8>,
18388}
18389impl Default for usb_plat_dev_cap_descriptor {
18390    fn default() -> Self {
18391        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18392        unsafe {
18393            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18394            s.assume_init()
18395        }
18396    }
18397}
18398#[repr(C, packed)]
18399pub struct usb_ssp_cap_descriptor {
18400    pub bLength: __u8,
18401    pub bDescriptorType: __u8,
18402    pub bDevCapabilityType: __u8,
18403    pub bReserved: __u8,
18404    pub bmAttributes: __le32,
18405    pub wFunctionalitySupport: __le16,
18406    pub wReserved: __le16,
18407    pub __bindgen_anon_1: usb_ssp_cap_descriptor__bindgen_ty_1,
18408}
18409#[repr(C)]
18410pub struct usb_ssp_cap_descriptor__bindgen_ty_1 {
18411    pub legacy_padding: __BindgenUnionField<__le32>,
18412    pub __bindgen_anon_1: __BindgenUnionField<usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1>,
18413    pub bindgen_union_field: u32,
18414}
18415#[repr(C)]
18416#[derive(Debug, Default)]
18417pub struct usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1 {
18418    pub __empty_bmSublinkSpeedAttr:
18419        usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18420    pub bmSublinkSpeedAttr: __IncompleteArrayField<__le32>,
18421}
18422#[repr(C)]
18423#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18424pub struct usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
18425impl Default for usb_ssp_cap_descriptor__bindgen_ty_1 {
18426    fn default() -> Self {
18427        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18428        unsafe {
18429            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18430            s.assume_init()
18431        }
18432    }
18433}
18434impl Default for usb_ssp_cap_descriptor {
18435    fn default() -> Self {
18436        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18437        unsafe {
18438            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18439            s.assume_init()
18440        }
18441    }
18442}
18443#[repr(C, packed)]
18444#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18445pub struct usb_pd_cap_descriptor {
18446    pub bLength: __u8,
18447    pub bDescriptorType: __u8,
18448    pub bDevCapabilityType: __u8,
18449    pub bReserved: __u8,
18450    pub bmAttributes: __le32,
18451    pub bmProviderPorts: __le16,
18452    pub bmConsumerPorts: __le16,
18453    pub bcdBCVersion: __le16,
18454    pub bcdPDVersion: __le16,
18455    pub bcdUSBTypeCVersion: __le16,
18456}
18457#[repr(C, packed)]
18458#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18459pub struct usb_pd_cap_battery_info_descriptor {
18460    pub bLength: __u8,
18461    pub bDescriptorType: __u8,
18462    pub bDevCapabilityType: __u8,
18463    pub iBattery: __u8,
18464    pub iSerial: __u8,
18465    pub iManufacturer: __u8,
18466    pub bBatteryId: __u8,
18467    pub bReserved: __u8,
18468    pub dwChargedThreshold: __le32,
18469    pub dwWeakThreshold: __le32,
18470    pub dwBatteryDesignCapacity: __le32,
18471    pub dwBatteryLastFullchargeCapacity: __le32,
18472}
18473#[repr(C, packed)]
18474#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18475pub struct usb_pd_cap_consumer_port_descriptor {
18476    pub bLength: __u8,
18477    pub bDescriptorType: __u8,
18478    pub bDevCapabilityType: __u8,
18479    pub bReserved: __u8,
18480    pub bmCapabilities: __u8,
18481    pub wMinVoltage: __le16,
18482    pub wMaxVoltage: __le16,
18483    pub wReserved: __u16,
18484    pub dwMaxOperatingPower: __le32,
18485    pub dwMaxPeakPower: __le32,
18486    pub dwMaxPeakPowerTime: __le32,
18487}
18488#[repr(C, packed)]
18489pub struct usb_pd_cap_provider_port_descriptor {
18490    pub bLength: __u8,
18491    pub bDescriptorType: __u8,
18492    pub bDevCapabilityType: __u8,
18493    pub bReserved1: __u8,
18494    pub bmCapabilities: __u8,
18495    pub bNumOfPDObjects: __u8,
18496    pub bReserved2: __u8,
18497    pub wPowerDataObject: __IncompleteArrayField<__le32>,
18498}
18499impl Default for usb_pd_cap_provider_port_descriptor {
18500    fn default() -> Self {
18501        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18502        unsafe {
18503            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18504            s.assume_init()
18505        }
18506    }
18507}
18508#[repr(C, packed)]
18509#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18510pub struct usb_ptm_cap_descriptor {
18511    pub bLength: __u8,
18512    pub bDescriptorType: __u8,
18513    pub bDevCapabilityType: __u8,
18514}
18515#[repr(C, packed)]
18516#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18517pub struct usb_wireless_ep_comp_descriptor {
18518    pub bLength: __u8,
18519    pub bDescriptorType: __u8,
18520    pub bMaxBurst: __u8,
18521    pub bMaxSequence: __u8,
18522    pub wMaxStreamDelay: __le16,
18523    pub wOverTheAirPacketSize: __le16,
18524    pub bOverTheAirInterval: __u8,
18525    pub bmCompAttributes: __u8,
18526}
18527#[repr(C, packed)]
18528#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18529pub struct usb_handshake {
18530    pub bMessageNumber: __u8,
18531    pub bStatus: __u8,
18532    pub tTKID: [__u8; 3usize],
18533    pub bReserved: __u8,
18534    pub CDID: [__u8; 16usize],
18535    pub nonce: [__u8; 16usize],
18536    pub MIC: [__u8; 8usize],
18537}
18538#[repr(C, packed)]
18539#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18540pub struct usb_connection_context {
18541    pub CHID: [__u8; 16usize],
18542    pub CDID: [__u8; 16usize],
18543    pub CK: [__u8; 16usize],
18544}
18545pub const usb_device_speed_USB_SPEED_UNKNOWN: usb_device_speed = 0;
18546pub const usb_device_speed_USB_SPEED_LOW: usb_device_speed = 1;
18547pub const usb_device_speed_USB_SPEED_FULL: usb_device_speed = 2;
18548pub const usb_device_speed_USB_SPEED_HIGH: usb_device_speed = 3;
18549pub const usb_device_speed_USB_SPEED_WIRELESS: usb_device_speed = 4;
18550pub const usb_device_speed_USB_SPEED_SUPER: usb_device_speed = 5;
18551pub const usb_device_speed_USB_SPEED_SUPER_PLUS: usb_device_speed = 6;
18552pub type usb_device_speed = crate::types::c_uint;
18553pub const usb_device_state_USB_STATE_NOTATTACHED: usb_device_state = 0;
18554pub const usb_device_state_USB_STATE_ATTACHED: usb_device_state = 1;
18555pub const usb_device_state_USB_STATE_POWERED: usb_device_state = 2;
18556pub const usb_device_state_USB_STATE_RECONNECTING: usb_device_state = 3;
18557pub const usb_device_state_USB_STATE_UNAUTHENTICATED: usb_device_state = 4;
18558pub const usb_device_state_USB_STATE_DEFAULT: usb_device_state = 5;
18559pub const usb_device_state_USB_STATE_ADDRESS: usb_device_state = 6;
18560pub const usb_device_state_USB_STATE_CONFIGURED: usb_device_state = 7;
18561pub const usb_device_state_USB_STATE_SUSPENDED: usb_device_state = 8;
18562pub type usb_device_state = crate::types::c_uint;
18563pub const usb3_link_state_USB3_LPM_U0: usb3_link_state = 0;
18564pub const usb3_link_state_USB3_LPM_U1: usb3_link_state = 1;
18565pub const usb3_link_state_USB3_LPM_U2: usb3_link_state = 2;
18566pub const usb3_link_state_USB3_LPM_U3: usb3_link_state = 3;
18567pub type usb3_link_state = crate::types::c_uint;
18568#[repr(C, packed)]
18569#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18570pub struct usb_set_sel_req {
18571    pub u1_sel: __u8,
18572    pub u1_pel: __u8,
18573    pub u2_sel: __le16,
18574    pub u2_pel: __le16,
18575}
18576pub const FUNCTIONFS_DESCRIPTORS_MAGIC: _bindgen_ty_101 = 1;
18577pub const FUNCTIONFS_STRINGS_MAGIC: _bindgen_ty_101 = 2;
18578pub const FUNCTIONFS_DESCRIPTORS_MAGIC_V2: _bindgen_ty_101 = 3;
18579pub type _bindgen_ty_101 = crate::types::c_uint;
18580pub const functionfs_flags_FUNCTIONFS_HAS_FS_DESC: functionfs_flags = 1;
18581pub const functionfs_flags_FUNCTIONFS_HAS_HS_DESC: functionfs_flags = 2;
18582pub const functionfs_flags_FUNCTIONFS_HAS_SS_DESC: functionfs_flags = 4;
18583pub const functionfs_flags_FUNCTIONFS_HAS_MS_OS_DESC: functionfs_flags = 8;
18584pub const functionfs_flags_FUNCTIONFS_VIRTUAL_ADDR: functionfs_flags = 16;
18585pub const functionfs_flags_FUNCTIONFS_EVENTFD: functionfs_flags = 32;
18586pub const functionfs_flags_FUNCTIONFS_ALL_CTRL_RECIP: functionfs_flags = 64;
18587pub const functionfs_flags_FUNCTIONFS_CONFIG0_SETUP: functionfs_flags = 128;
18588pub type functionfs_flags = crate::types::c_uint;
18589#[repr(C, packed)]
18590#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18591pub struct usb_endpoint_descriptor_no_audio {
18592    pub bLength: __u8,
18593    pub bDescriptorType: __u8,
18594    pub bEndpointAddress: __u8,
18595    pub bmAttributes: __u8,
18596    pub wMaxPacketSize: __le16,
18597    pub bInterval: __u8,
18598}
18599#[repr(C, packed)]
18600#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18601pub struct usb_dfu_functional_descriptor {
18602    pub bLength: __u8,
18603    pub bDescriptorType: __u8,
18604    pub bmAttributes: __u8,
18605    pub wDetachTimeOut: __le16,
18606    pub wTransferSize: __le16,
18607    pub bcdDFUVersion: __le16,
18608}
18609#[repr(C, packed)]
18610#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18611pub struct usb_functionfs_descs_head_v2 {
18612    pub magic: __le32,
18613    pub length: __le32,
18614    pub flags: __le32,
18615}
18616#[repr(C, packed)]
18617#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18618pub struct usb_functionfs_descs_head {
18619    pub magic: __le32,
18620    pub length: __le32,
18621    pub fs_count: __le32,
18622    pub hs_count: __le32,
18623}
18624#[repr(C, packed)]
18625#[derive(Copy, Clone)]
18626pub struct usb_os_desc_header {
18627    pub interface: __u8,
18628    pub dwLength: __le32,
18629    pub bcdVersion: __le16,
18630    pub wIndex: __le16,
18631    pub __bindgen_anon_1: usb_os_desc_header__bindgen_ty_1,
18632}
18633#[repr(C)]
18634#[derive(Copy, Clone)]
18635pub union usb_os_desc_header__bindgen_ty_1 {
18636    pub __bindgen_anon_1: usb_os_desc_header__bindgen_ty_1__bindgen_ty_1,
18637    pub wCount: __le16,
18638}
18639#[repr(C)]
18640#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18641pub struct usb_os_desc_header__bindgen_ty_1__bindgen_ty_1 {
18642    pub bCount: __u8,
18643    pub Reserved: __u8,
18644}
18645impl Default for usb_os_desc_header__bindgen_ty_1 {
18646    fn default() -> Self {
18647        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18648        unsafe {
18649            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18650            s.assume_init()
18651        }
18652    }
18653}
18654impl Default for usb_os_desc_header {
18655    fn default() -> Self {
18656        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18657        unsafe {
18658            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18659            s.assume_init()
18660        }
18661    }
18662}
18663#[repr(C)]
18664#[derive(Copy, Clone)]
18665pub struct usb_ext_compat_desc {
18666    pub bFirstInterfaceNumber: __u8,
18667    pub Reserved1: __u8,
18668    pub __bindgen_anon_1: usb_ext_compat_desc__bindgen_ty_1,
18669    pub Reserved2: [__u8; 6usize],
18670}
18671#[repr(C)]
18672#[derive(Copy, Clone)]
18673pub union usb_ext_compat_desc__bindgen_ty_1 {
18674    pub __bindgen_anon_1: usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_1,
18675    pub IDs: usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_2,
18676}
18677#[repr(C)]
18678#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18679pub struct usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_1 {
18680    pub CompatibleID: [__u8; 8usize],
18681    pub SubCompatibleID: [__u8; 8usize],
18682}
18683#[repr(C)]
18684#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18685pub struct usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_2 {
18686    pub CompatibleID: [__u8; 8usize],
18687    pub SubCompatibleID: [__u8; 8usize],
18688}
18689impl Default for usb_ext_compat_desc__bindgen_ty_1 {
18690    fn default() -> Self {
18691        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18692        unsafe {
18693            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18694            s.assume_init()
18695        }
18696    }
18697}
18698impl Default for usb_ext_compat_desc {
18699    fn default() -> Self {
18700        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18701        unsafe {
18702            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18703            s.assume_init()
18704        }
18705    }
18706}
18707#[repr(C, packed)]
18708#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18709pub struct usb_ext_prop_desc {
18710    pub dwSize: __le32,
18711    pub dwPropertyDataType: __le32,
18712    pub wPropertyNameLength: __le16,
18713}
18714#[repr(C, packed)]
18715#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18716pub struct usb_ffs_dmabuf_transfer_req {
18717    pub fd: crate::types::c_int,
18718    pub flags: __u32,
18719    pub length: __u64,
18720}
18721#[repr(C, packed)]
18722#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18723pub struct usb_functionfs_strings_head {
18724    pub magic: __le32,
18725    pub length: __le32,
18726    pub str_count: __le32,
18727    pub lang_count: __le32,
18728}
18729pub const usb_functionfs_event_type_FUNCTIONFS_BIND: usb_functionfs_event_type = 0;
18730pub const usb_functionfs_event_type_FUNCTIONFS_UNBIND: usb_functionfs_event_type = 1;
18731pub const usb_functionfs_event_type_FUNCTIONFS_ENABLE: usb_functionfs_event_type = 2;
18732pub const usb_functionfs_event_type_FUNCTIONFS_DISABLE: usb_functionfs_event_type = 3;
18733pub const usb_functionfs_event_type_FUNCTIONFS_SETUP: usb_functionfs_event_type = 4;
18734pub const usb_functionfs_event_type_FUNCTIONFS_SUSPEND: usb_functionfs_event_type = 5;
18735pub const usb_functionfs_event_type_FUNCTIONFS_RESUME: usb_functionfs_event_type = 6;
18736pub type usb_functionfs_event_type = crate::types::c_uint;
18737#[repr(C, packed)]
18738#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
18739pub struct usb_functionfs_event {
18740    pub u: usb_functionfs_event__bindgen_ty_1,
18741    pub type_: __u8,
18742    pub _pad: [__u8; 3usize],
18743}
18744#[repr(C, packed)]
18745#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
18746pub union usb_functionfs_event__bindgen_ty_1 {
18747    pub setup: usb_ctrlrequest,
18748}
18749impl Default for usb_functionfs_event__bindgen_ty_1 {
18750    fn default() -> Self {
18751        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18752        unsafe {
18753            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18754            s.assume_init()
18755        }
18756    }
18757}
18758impl Default for usb_functionfs_event {
18759    fn default() -> Self {
18760        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18761        unsafe {
18762            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18763            s.assume_init()
18764        }
18765    }
18766}
18767#[repr(C, packed)]
18768#[derive(Copy, Clone)]
18769pub struct uffd_msg {
18770    pub event: __u8,
18771    pub reserved1: __u8,
18772    pub reserved2: __u16,
18773    pub reserved3: __u32,
18774    pub arg: uffd_msg__bindgen_ty_1,
18775}
18776#[repr(C)]
18777#[derive(Copy, Clone)]
18778pub union uffd_msg__bindgen_ty_1 {
18779    pub pagefault: uffd_msg__bindgen_ty_1__bindgen_ty_1,
18780    pub fork: uffd_msg__bindgen_ty_1__bindgen_ty_2,
18781    pub remap: uffd_msg__bindgen_ty_1__bindgen_ty_3,
18782    pub remove: uffd_msg__bindgen_ty_1__bindgen_ty_4,
18783    pub reserved: uffd_msg__bindgen_ty_1__bindgen_ty_5,
18784}
18785#[repr(C)]
18786#[derive(Copy, Clone)]
18787pub struct uffd_msg__bindgen_ty_1__bindgen_ty_1 {
18788    pub flags: __u64,
18789    pub address: __u64,
18790    pub feat: uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18791    pub __bindgen_padding_0: [u8; 4usize],
18792}
18793#[repr(C)]
18794#[derive(Copy, Clone)]
18795pub union uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
18796    pub ptid: __u32,
18797}
18798impl Default for uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
18799    fn default() -> Self {
18800        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18801        unsafe {
18802            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18803            s.assume_init()
18804        }
18805    }
18806}
18807impl Default for uffd_msg__bindgen_ty_1__bindgen_ty_1 {
18808    fn default() -> Self {
18809        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18810        unsafe {
18811            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18812            s.assume_init()
18813        }
18814    }
18815}
18816#[repr(C)]
18817#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18818pub struct uffd_msg__bindgen_ty_1__bindgen_ty_2 {
18819    pub ufd: __u32,
18820}
18821#[repr(C)]
18822#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18823pub struct uffd_msg__bindgen_ty_1__bindgen_ty_3 {
18824    pub from: __u64,
18825    pub to: __u64,
18826    pub len: __u64,
18827}
18828#[repr(C)]
18829#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18830pub struct uffd_msg__bindgen_ty_1__bindgen_ty_4 {
18831    pub start: __u64,
18832    pub end: __u64,
18833}
18834#[repr(C)]
18835#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18836pub struct uffd_msg__bindgen_ty_1__bindgen_ty_5 {
18837    pub reserved1: __u64,
18838    pub reserved2: __u64,
18839    pub reserved3: __u64,
18840}
18841impl Default for uffd_msg__bindgen_ty_1 {
18842    fn default() -> Self {
18843        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18844        unsafe {
18845            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18846            s.assume_init()
18847        }
18848    }
18849}
18850impl Default for uffd_msg {
18851    fn default() -> Self {
18852        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18853        unsafe {
18854            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18855            s.assume_init()
18856        }
18857    }
18858}
18859#[repr(C)]
18860#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18861pub struct uffdio_api {
18862    pub api: __u64,
18863    pub features: __u64,
18864    pub ioctls: __u64,
18865}
18866#[repr(C)]
18867#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18868pub struct uffdio_range {
18869    pub start: __u64,
18870    pub len: __u64,
18871}
18872#[repr(C)]
18873#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18874pub struct uffdio_register {
18875    pub range: uffdio_range,
18876    pub mode: __u64,
18877    pub ioctls: __u64,
18878}
18879#[repr(C)]
18880#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18881pub struct uffdio_copy {
18882    pub dst: __u64,
18883    pub src: __u64,
18884    pub len: __u64,
18885    pub mode: __u64,
18886    pub copy: __s64,
18887}
18888#[repr(C)]
18889#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18890pub struct uffdio_zeropage {
18891    pub range: uffdio_range,
18892    pub mode: __u64,
18893    pub zeropage: __s64,
18894}
18895#[repr(C)]
18896#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18897pub struct uffdio_writeprotect {
18898    pub range: uffdio_range,
18899    pub mode: __u64,
18900}
18901#[repr(C)]
18902#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18903pub struct uffdio_continue {
18904    pub range: uffdio_range,
18905    pub mode: __u64,
18906    pub mapped: __s64,
18907}
18908#[repr(C)]
18909#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18910pub struct uffdio_poison {
18911    pub range: uffdio_range,
18912    pub mode: __u64,
18913    pub updated: __s64,
18914}
18915#[repr(C)]
18916#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18917pub struct uffdio_move {
18918    pub dst: __u64,
18919    pub src: __u64,
18920    pub len: __u64,
18921    pub mode: __u64,
18922    pub move_: __s64,
18923}
18924#[repr(C)]
18925#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18926pub struct oldold_utsname {
18927    pub sysname: [crate::types::c_char; 9usize],
18928    pub nodename: [crate::types::c_char; 9usize],
18929    pub release: [crate::types::c_char; 9usize],
18930    pub version: [crate::types::c_char; 9usize],
18931    pub machine: [crate::types::c_char; 9usize],
18932}
18933#[repr(C)]
18934#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18935pub struct old_utsname {
18936    pub sysname: [crate::types::c_char; 65usize],
18937    pub nodename: [crate::types::c_char; 65usize],
18938    pub release: [crate::types::c_char; 65usize],
18939    pub version: [crate::types::c_char; 65usize],
18940    pub machine: [crate::types::c_char; 65usize],
18941}
18942impl Default for old_utsname {
18943    fn default() -> Self {
18944        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18945        unsafe {
18946            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18947            s.assume_init()
18948        }
18949    }
18950}
18951#[repr(C)]
18952#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18953pub struct new_utsname {
18954    pub sysname: [crate::types::c_char; 65usize],
18955    pub nodename: [crate::types::c_char; 65usize],
18956    pub release: [crate::types::c_char; 65usize],
18957    pub version: [crate::types::c_char; 65usize],
18958    pub machine: [crate::types::c_char; 65usize],
18959    pub domainname: [crate::types::c_char; 65usize],
18960}
18961impl Default for new_utsname {
18962    fn default() -> Self {
18963        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18964        unsafe {
18965            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18966            s.assume_init()
18967        }
18968    }
18969}
18970#[repr(C)]
18971#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18972pub struct sockaddr_vm {
18973    pub svm_family: __kernel_sa_family_t,
18974    pub svm_reserved1: crate::types::c_ushort,
18975    pub svm_port: crate::types::c_uint,
18976    pub svm_cid: crate::types::c_uint,
18977    pub svm_flags: __u8,
18978    pub svm_zero: [crate::types::c_uchar; 3usize],
18979}
18980#[repr(C)]
18981#[derive(Copy, Clone)]
18982pub union xfrm_address_t {
18983    pub a4: __be32,
18984    pub a6: [__be32; 4usize],
18985    pub in6: in6_addr,
18986}
18987impl Default for xfrm_address_t {
18988    fn default() -> Self {
18989        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18990        unsafe {
18991            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18992            s.assume_init()
18993        }
18994    }
18995}
18996#[repr(C)]
18997#[derive(Copy, Clone)]
18998pub struct xfrm_id {
18999    pub daddr: xfrm_address_t,
19000    pub spi: __be32,
19001    pub proto: __u8,
19002    pub __bindgen_padding_0: [u8; 3usize],
19003}
19004impl Default for xfrm_id {
19005    fn default() -> Self {
19006        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19007        unsafe {
19008            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19009            s.assume_init()
19010        }
19011    }
19012}
19013#[repr(C)]
19014#[derive(Debug, Default)]
19015pub struct xfrm_sec_ctx {
19016    pub ctx_doi: __u8,
19017    pub ctx_alg: __u8,
19018    pub ctx_len: __u16,
19019    pub ctx_sid: __u32,
19020    pub ctx_str: __IncompleteArrayField<crate::types::c_char>,
19021}
19022#[repr(C)]
19023#[derive(Copy, Clone)]
19024pub struct xfrm_selector {
19025    pub daddr: xfrm_address_t,
19026    pub saddr: xfrm_address_t,
19027    pub dport: __be16,
19028    pub dport_mask: __be16,
19029    pub sport: __be16,
19030    pub sport_mask: __be16,
19031    pub family: __u16,
19032    pub prefixlen_d: __u8,
19033    pub prefixlen_s: __u8,
19034    pub proto: __u8,
19035    pub __bindgen_padding_0: [u8; 3usize],
19036    pub ifindex: crate::types::c_int,
19037    pub user: __kernel_uid32_t,
19038}
19039impl Default for xfrm_selector {
19040    fn default() -> Self {
19041        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19042        unsafe {
19043            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19044            s.assume_init()
19045        }
19046    }
19047}
19048#[repr(C)]
19049#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19050pub struct xfrm_lifetime_cfg {
19051    pub soft_byte_limit: __u64,
19052    pub hard_byte_limit: __u64,
19053    pub soft_packet_limit: __u64,
19054    pub hard_packet_limit: __u64,
19055    pub soft_add_expires_seconds: __u64,
19056    pub hard_add_expires_seconds: __u64,
19057    pub soft_use_expires_seconds: __u64,
19058    pub hard_use_expires_seconds: __u64,
19059}
19060#[repr(C)]
19061#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19062pub struct xfrm_lifetime_cur {
19063    pub bytes: __u64,
19064    pub packets: __u64,
19065    pub add_time: __u64,
19066    pub use_time: __u64,
19067}
19068#[repr(C)]
19069#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19070pub struct xfrm_replay_state {
19071    pub oseq: __u32,
19072    pub seq: __u32,
19073    pub bitmap: __u32,
19074}
19075#[repr(C)]
19076#[derive(Debug, Default)]
19077pub struct xfrm_replay_state_esn {
19078    pub bmp_len: crate::types::c_uint,
19079    pub oseq: __u32,
19080    pub seq: __u32,
19081    pub oseq_hi: __u32,
19082    pub seq_hi: __u32,
19083    pub replay_window: __u32,
19084    pub bmp: __IncompleteArrayField<__u32>,
19085}
19086#[repr(C)]
19087#[derive(Debug)]
19088pub struct xfrm_algo {
19089    pub alg_name: [crate::types::c_char; 64usize],
19090    pub alg_key_len: crate::types::c_uint,
19091    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19092}
19093impl Default for xfrm_algo {
19094    fn default() -> Self {
19095        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19096        unsafe {
19097            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19098            s.assume_init()
19099        }
19100    }
19101}
19102#[repr(C)]
19103#[derive(Debug)]
19104pub struct xfrm_algo_auth {
19105    pub alg_name: [crate::types::c_char; 64usize],
19106    pub alg_key_len: crate::types::c_uint,
19107    pub alg_trunc_len: crate::types::c_uint,
19108    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19109}
19110impl Default for xfrm_algo_auth {
19111    fn default() -> Self {
19112        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19113        unsafe {
19114            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19115            s.assume_init()
19116        }
19117    }
19118}
19119#[repr(C)]
19120#[derive(Debug)]
19121pub struct xfrm_algo_aead {
19122    pub alg_name: [crate::types::c_char; 64usize],
19123    pub alg_key_len: crate::types::c_uint,
19124    pub alg_icv_len: crate::types::c_uint,
19125    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19126}
19127impl Default for xfrm_algo_aead {
19128    fn default() -> Self {
19129        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19130        unsafe {
19131            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19132            s.assume_init()
19133        }
19134    }
19135}
19136#[repr(C)]
19137#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19138pub struct xfrm_stats {
19139    pub replay_window: __u32,
19140    pub replay: __u32,
19141    pub integrity_failed: __u32,
19142}
19143pub const XFRM_POLICY_TYPE_MAIN: _bindgen_ty_102 = 0;
19144pub const XFRM_POLICY_TYPE_SUB: _bindgen_ty_102 = 1;
19145pub const XFRM_POLICY_TYPE_MAX: _bindgen_ty_102 = 2;
19146pub const XFRM_POLICY_TYPE_ANY: _bindgen_ty_102 = 255;
19147pub type _bindgen_ty_102 = crate::types::c_uint;
19148pub const XFRM_POLICY_IN: _bindgen_ty_103 = 0;
19149pub const XFRM_POLICY_OUT: _bindgen_ty_103 = 1;
19150pub const XFRM_POLICY_FWD: _bindgen_ty_103 = 2;
19151pub const XFRM_POLICY_MASK: _bindgen_ty_103 = 3;
19152pub const XFRM_POLICY_MAX: _bindgen_ty_103 = 3;
19153pub type _bindgen_ty_103 = crate::types::c_uint;
19154pub const xfrm_sa_dir_XFRM_SA_DIR_IN: xfrm_sa_dir = 1;
19155pub const xfrm_sa_dir_XFRM_SA_DIR_OUT: xfrm_sa_dir = 2;
19156pub type xfrm_sa_dir = crate::types::c_uint;
19157pub const XFRM_SHARE_ANY: _bindgen_ty_104 = 0;
19158pub const XFRM_SHARE_SESSION: _bindgen_ty_104 = 1;
19159pub const XFRM_SHARE_USER: _bindgen_ty_104 = 2;
19160pub const XFRM_SHARE_UNIQUE: _bindgen_ty_104 = 3;
19161pub type _bindgen_ty_104 = crate::types::c_uint;
19162pub const XFRM_MSG_BASE: _bindgen_ty_105 = 16;
19163pub const XFRM_MSG_NEWSA: _bindgen_ty_105 = 16;
19164pub const XFRM_MSG_DELSA: _bindgen_ty_105 = 17;
19165pub const XFRM_MSG_GETSA: _bindgen_ty_105 = 18;
19166pub const XFRM_MSG_NEWPOLICY: _bindgen_ty_105 = 19;
19167pub const XFRM_MSG_DELPOLICY: _bindgen_ty_105 = 20;
19168pub const XFRM_MSG_GETPOLICY: _bindgen_ty_105 = 21;
19169pub const XFRM_MSG_ALLOCSPI: _bindgen_ty_105 = 22;
19170pub const XFRM_MSG_ACQUIRE: _bindgen_ty_105 = 23;
19171pub const XFRM_MSG_EXPIRE: _bindgen_ty_105 = 24;
19172pub const XFRM_MSG_UPDPOLICY: _bindgen_ty_105 = 25;
19173pub const XFRM_MSG_UPDSA: _bindgen_ty_105 = 26;
19174pub const XFRM_MSG_POLEXPIRE: _bindgen_ty_105 = 27;
19175pub const XFRM_MSG_FLUSHSA: _bindgen_ty_105 = 28;
19176pub const XFRM_MSG_FLUSHPOLICY: _bindgen_ty_105 = 29;
19177pub const XFRM_MSG_NEWAE: _bindgen_ty_105 = 30;
19178pub const XFRM_MSG_GETAE: _bindgen_ty_105 = 31;
19179pub const XFRM_MSG_REPORT: _bindgen_ty_105 = 32;
19180pub const XFRM_MSG_MIGRATE: _bindgen_ty_105 = 33;
19181pub const XFRM_MSG_NEWSADINFO: _bindgen_ty_105 = 34;
19182pub const XFRM_MSG_GETSADINFO: _bindgen_ty_105 = 35;
19183pub const XFRM_MSG_NEWSPDINFO: _bindgen_ty_105 = 36;
19184pub const XFRM_MSG_GETSPDINFO: _bindgen_ty_105 = 37;
19185pub const XFRM_MSG_MAPPING: _bindgen_ty_105 = 38;
19186pub const XFRM_MSG_SETDEFAULT: _bindgen_ty_105 = 39;
19187pub const XFRM_MSG_GETDEFAULT: _bindgen_ty_105 = 40;
19188pub const __XFRM_MSG_MAX: _bindgen_ty_105 = 41;
19189pub type _bindgen_ty_105 = crate::types::c_uint;
19190#[repr(C)]
19191#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19192pub struct xfrm_user_sec_ctx {
19193    pub len: __u16,
19194    pub exttype: __u16,
19195    pub ctx_alg: __u8,
19196    pub ctx_doi: __u8,
19197    pub ctx_len: __u16,
19198}
19199#[repr(C)]
19200#[derive(Copy, Clone)]
19201pub struct xfrm_user_tmpl {
19202    pub id: xfrm_id,
19203    pub family: __u16,
19204    pub __bindgen_padding_0: [u8; 2usize],
19205    pub saddr: xfrm_address_t,
19206    pub reqid: __u32,
19207    pub mode: __u8,
19208    pub share: __u8,
19209    pub optional: __u8,
19210    pub __bindgen_padding_1: u8,
19211    pub aalgos: __u32,
19212    pub ealgos: __u32,
19213    pub calgos: __u32,
19214}
19215impl Default for xfrm_user_tmpl {
19216    fn default() -> Self {
19217        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19218        unsafe {
19219            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19220            s.assume_init()
19221        }
19222    }
19223}
19224#[repr(C)]
19225#[derive(Copy, Clone)]
19226pub struct xfrm_encap_tmpl {
19227    pub encap_type: __u16,
19228    pub encap_sport: __be16,
19229    pub encap_dport: __be16,
19230    pub __bindgen_padding_0: [u8; 2usize],
19231    pub encap_oa: xfrm_address_t,
19232}
19233impl Default for xfrm_encap_tmpl {
19234    fn default() -> Self {
19235        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19236        unsafe {
19237            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19238            s.assume_init()
19239        }
19240    }
19241}
19242pub const xfrm_ae_ftype_t_XFRM_AE_UNSPEC: xfrm_ae_ftype_t = 0;
19243pub const xfrm_ae_ftype_t_XFRM_AE_RTHR: xfrm_ae_ftype_t = 1;
19244pub const xfrm_ae_ftype_t_XFRM_AE_RVAL: xfrm_ae_ftype_t = 2;
19245pub const xfrm_ae_ftype_t_XFRM_AE_LVAL: xfrm_ae_ftype_t = 4;
19246pub const xfrm_ae_ftype_t_XFRM_AE_ETHR: xfrm_ae_ftype_t = 8;
19247pub const xfrm_ae_ftype_t_XFRM_AE_CR: xfrm_ae_ftype_t = 16;
19248pub const xfrm_ae_ftype_t_XFRM_AE_CE: xfrm_ae_ftype_t = 32;
19249pub const xfrm_ae_ftype_t_XFRM_AE_CU: xfrm_ae_ftype_t = 64;
19250pub const xfrm_ae_ftype_t___XFRM_AE_MAX: xfrm_ae_ftype_t = 65;
19251pub type xfrm_ae_ftype_t = crate::types::c_uint;
19252#[repr(C)]
19253#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19254pub struct xfrm_userpolicy_type {
19255    pub type_: __u8,
19256    pub __bindgen_padding_0: u8,
19257    pub reserved1: __u16,
19258    pub reserved2: __u8,
19259    pub __bindgen_padding_1: u8,
19260}
19261pub const xfrm_attr_type_t_XFRMA_UNSPEC: xfrm_attr_type_t = 0;
19262pub const xfrm_attr_type_t_XFRMA_ALG_AUTH: xfrm_attr_type_t = 1;
19263pub const xfrm_attr_type_t_XFRMA_ALG_CRYPT: xfrm_attr_type_t = 2;
19264pub const xfrm_attr_type_t_XFRMA_ALG_COMP: xfrm_attr_type_t = 3;
19265pub const xfrm_attr_type_t_XFRMA_ENCAP: xfrm_attr_type_t = 4;
19266pub const xfrm_attr_type_t_XFRMA_TMPL: xfrm_attr_type_t = 5;
19267pub const xfrm_attr_type_t_XFRMA_SA: xfrm_attr_type_t = 6;
19268pub const xfrm_attr_type_t_XFRMA_POLICY: xfrm_attr_type_t = 7;
19269pub const xfrm_attr_type_t_XFRMA_SEC_CTX: xfrm_attr_type_t = 8;
19270pub const xfrm_attr_type_t_XFRMA_LTIME_VAL: xfrm_attr_type_t = 9;
19271pub const xfrm_attr_type_t_XFRMA_REPLAY_VAL: xfrm_attr_type_t = 10;
19272pub const xfrm_attr_type_t_XFRMA_REPLAY_THRESH: xfrm_attr_type_t = 11;
19273pub const xfrm_attr_type_t_XFRMA_ETIMER_THRESH: xfrm_attr_type_t = 12;
19274pub const xfrm_attr_type_t_XFRMA_SRCADDR: xfrm_attr_type_t = 13;
19275pub const xfrm_attr_type_t_XFRMA_COADDR: xfrm_attr_type_t = 14;
19276pub const xfrm_attr_type_t_XFRMA_LASTUSED: xfrm_attr_type_t = 15;
19277pub const xfrm_attr_type_t_XFRMA_POLICY_TYPE: xfrm_attr_type_t = 16;
19278pub const xfrm_attr_type_t_XFRMA_MIGRATE: xfrm_attr_type_t = 17;
19279pub const xfrm_attr_type_t_XFRMA_ALG_AEAD: xfrm_attr_type_t = 18;
19280pub const xfrm_attr_type_t_XFRMA_KMADDRESS: xfrm_attr_type_t = 19;
19281pub const xfrm_attr_type_t_XFRMA_ALG_AUTH_TRUNC: xfrm_attr_type_t = 20;
19282pub const xfrm_attr_type_t_XFRMA_MARK: xfrm_attr_type_t = 21;
19283pub const xfrm_attr_type_t_XFRMA_TFCPAD: xfrm_attr_type_t = 22;
19284pub const xfrm_attr_type_t_XFRMA_REPLAY_ESN_VAL: xfrm_attr_type_t = 23;
19285pub const xfrm_attr_type_t_XFRMA_SA_EXTRA_FLAGS: xfrm_attr_type_t = 24;
19286pub const xfrm_attr_type_t_XFRMA_PROTO: xfrm_attr_type_t = 25;
19287pub const xfrm_attr_type_t_XFRMA_ADDRESS_FILTER: xfrm_attr_type_t = 26;
19288pub const xfrm_attr_type_t_XFRMA_PAD: xfrm_attr_type_t = 27;
19289pub const xfrm_attr_type_t_XFRMA_OFFLOAD_DEV: xfrm_attr_type_t = 28;
19290pub const xfrm_attr_type_t_XFRMA_SET_MARK: xfrm_attr_type_t = 29;
19291pub const xfrm_attr_type_t_XFRMA_SET_MARK_MASK: xfrm_attr_type_t = 30;
19292pub const xfrm_attr_type_t_XFRMA_IF_ID: xfrm_attr_type_t = 31;
19293pub const xfrm_attr_type_t_XFRMA_MTIMER_THRESH: xfrm_attr_type_t = 32;
19294pub const xfrm_attr_type_t_XFRMA_SA_DIR: xfrm_attr_type_t = 33;
19295pub const xfrm_attr_type_t_XFRMA_NAT_KEEPALIVE_INTERVAL: xfrm_attr_type_t = 34;
19296pub const xfrm_attr_type_t___XFRMA_MAX: xfrm_attr_type_t = 35;
19297pub type xfrm_attr_type_t = crate::types::c_uint;
19298#[repr(C)]
19299#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19300pub struct xfrm_mark {
19301    pub v: __u32,
19302    pub m: __u32,
19303}
19304pub const xfrm_sadattr_type_t_XFRMA_SAD_UNSPEC: xfrm_sadattr_type_t = 0;
19305pub const xfrm_sadattr_type_t_XFRMA_SAD_CNT: xfrm_sadattr_type_t = 1;
19306pub const xfrm_sadattr_type_t_XFRMA_SAD_HINFO: xfrm_sadattr_type_t = 2;
19307pub const xfrm_sadattr_type_t___XFRMA_SAD_MAX: xfrm_sadattr_type_t = 3;
19308pub type xfrm_sadattr_type_t = crate::types::c_uint;
19309#[repr(C)]
19310#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19311pub struct xfrmu_sadhinfo {
19312    pub sadhcnt: __u32,
19313    pub sadhmcnt: __u32,
19314}
19315pub const xfrm_spdattr_type_t_XFRMA_SPD_UNSPEC: xfrm_spdattr_type_t = 0;
19316pub const xfrm_spdattr_type_t_XFRMA_SPD_INFO: xfrm_spdattr_type_t = 1;
19317pub const xfrm_spdattr_type_t_XFRMA_SPD_HINFO: xfrm_spdattr_type_t = 2;
19318pub const xfrm_spdattr_type_t_XFRMA_SPD_IPV4_HTHRESH: xfrm_spdattr_type_t = 3;
19319pub const xfrm_spdattr_type_t_XFRMA_SPD_IPV6_HTHRESH: xfrm_spdattr_type_t = 4;
19320pub const xfrm_spdattr_type_t___XFRMA_SPD_MAX: xfrm_spdattr_type_t = 5;
19321pub type xfrm_spdattr_type_t = crate::types::c_uint;
19322#[repr(C)]
19323#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19324pub struct xfrmu_spdinfo {
19325    pub incnt: __u32,
19326    pub outcnt: __u32,
19327    pub fwdcnt: __u32,
19328    pub inscnt: __u32,
19329    pub outscnt: __u32,
19330    pub fwdscnt: __u32,
19331}
19332#[repr(C)]
19333#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19334pub struct xfrmu_spdhinfo {
19335    pub spdhcnt: __u32,
19336    pub spdhmcnt: __u32,
19337}
19338#[repr(C)]
19339#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19340pub struct xfrmu_spdhthresh {
19341    pub lbits: __u8,
19342    pub rbits: __u8,
19343}
19344#[repr(C)]
19345#[derive(Copy, Clone)]
19346pub struct xfrm_usersa_info {
19347    pub sel: xfrm_selector,
19348    pub id: xfrm_id,
19349    pub saddr: xfrm_address_t,
19350    pub lft: xfrm_lifetime_cfg,
19351    pub curlft: xfrm_lifetime_cur,
19352    pub stats: xfrm_stats,
19353    pub seq: __u32,
19354    pub reqid: __u32,
19355    pub family: __u16,
19356    pub mode: __u8,
19357    pub replay_window: __u8,
19358    pub flags: __u8,
19359    pub __bindgen_padding_0: [u8; 7usize],
19360}
19361impl Default for xfrm_usersa_info {
19362    fn default() -> Self {
19363        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19364        unsafe {
19365            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19366            s.assume_init()
19367        }
19368    }
19369}
19370#[repr(C)]
19371#[derive(Copy, Clone)]
19372pub struct xfrm_usersa_id {
19373    pub daddr: xfrm_address_t,
19374    pub spi: __be32,
19375    pub family: __u16,
19376    pub proto: __u8,
19377    pub __bindgen_padding_0: u8,
19378}
19379impl Default for xfrm_usersa_id {
19380    fn default() -> Self {
19381        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19382        unsafe {
19383            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19384            s.assume_init()
19385        }
19386    }
19387}
19388#[repr(C)]
19389#[derive(Copy, Clone)]
19390pub struct xfrm_aevent_id {
19391    pub sa_id: xfrm_usersa_id,
19392    pub saddr: xfrm_address_t,
19393    pub flags: __u32,
19394    pub reqid: __u32,
19395}
19396impl Default for xfrm_aevent_id {
19397    fn default() -> Self {
19398        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19399        unsafe {
19400            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19401            s.assume_init()
19402        }
19403    }
19404}
19405#[repr(C)]
19406#[derive(Copy, Clone)]
19407pub struct xfrm_userspi_info {
19408    pub info: xfrm_usersa_info,
19409    pub min: __u32,
19410    pub max: __u32,
19411}
19412impl Default for xfrm_userspi_info {
19413    fn default() -> Self {
19414        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19415        unsafe {
19416            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19417            s.assume_init()
19418        }
19419    }
19420}
19421#[repr(C)]
19422#[derive(Copy, Clone)]
19423pub struct xfrm_userpolicy_info {
19424    pub sel: xfrm_selector,
19425    pub lft: xfrm_lifetime_cfg,
19426    pub curlft: xfrm_lifetime_cur,
19427    pub priority: __u32,
19428    pub index: __u32,
19429    pub dir: __u8,
19430    pub action: __u8,
19431    pub flags: __u8,
19432    pub share: __u8,
19433    pub __bindgen_padding_0: [u8; 4usize],
19434}
19435impl Default for xfrm_userpolicy_info {
19436    fn default() -> Self {
19437        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19438        unsafe {
19439            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19440            s.assume_init()
19441        }
19442    }
19443}
19444#[repr(C)]
19445#[derive(Copy, Clone)]
19446pub struct xfrm_userpolicy_id {
19447    pub sel: xfrm_selector,
19448    pub index: __u32,
19449    pub dir: __u8,
19450    pub __bindgen_padding_0: [u8; 3usize],
19451}
19452impl Default for xfrm_userpolicy_id {
19453    fn default() -> Self {
19454        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19455        unsafe {
19456            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19457            s.assume_init()
19458        }
19459    }
19460}
19461#[repr(C)]
19462#[derive(Copy, Clone)]
19463pub struct xfrm_user_acquire {
19464    pub id: xfrm_id,
19465    pub saddr: xfrm_address_t,
19466    pub sel: xfrm_selector,
19467    pub policy: xfrm_userpolicy_info,
19468    pub aalgos: __u32,
19469    pub ealgos: __u32,
19470    pub calgos: __u32,
19471    pub seq: __u32,
19472}
19473impl Default for xfrm_user_acquire {
19474    fn default() -> Self {
19475        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19476        unsafe {
19477            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19478            s.assume_init()
19479        }
19480    }
19481}
19482#[repr(C)]
19483#[derive(Copy, Clone)]
19484pub struct xfrm_user_expire {
19485    pub state: xfrm_usersa_info,
19486    pub hard: __u8,
19487    pub __bindgen_padding_0: [u8; 7usize],
19488}
19489impl Default for xfrm_user_expire {
19490    fn default() -> Self {
19491        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19492        unsafe {
19493            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19494            s.assume_init()
19495        }
19496    }
19497}
19498#[repr(C)]
19499#[derive(Copy, Clone)]
19500pub struct xfrm_user_polexpire {
19501    pub pol: xfrm_userpolicy_info,
19502    pub hard: __u8,
19503    pub __bindgen_padding_0: [u8; 7usize],
19504}
19505impl Default for xfrm_user_polexpire {
19506    fn default() -> Self {
19507        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19508        unsafe {
19509            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19510            s.assume_init()
19511        }
19512    }
19513}
19514#[repr(C)]
19515#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19516pub struct xfrm_usersa_flush {
19517    pub proto: __u8,
19518}
19519#[repr(C)]
19520#[derive(Copy, Clone)]
19521pub struct xfrm_user_report {
19522    pub proto: __u8,
19523    pub __bindgen_padding_0: [u8; 3usize],
19524    pub sel: xfrm_selector,
19525}
19526impl Default for xfrm_user_report {
19527    fn default() -> Self {
19528        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19529        unsafe {
19530            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19531            s.assume_init()
19532        }
19533    }
19534}
19535#[repr(C)]
19536#[derive(Copy, Clone)]
19537pub struct xfrm_user_kmaddress {
19538    pub local: xfrm_address_t,
19539    pub remote: xfrm_address_t,
19540    pub reserved: __u32,
19541    pub family: __u16,
19542    pub __bindgen_padding_0: [u8; 2usize],
19543}
19544impl Default for xfrm_user_kmaddress {
19545    fn default() -> Self {
19546        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19547        unsafe {
19548            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19549            s.assume_init()
19550        }
19551    }
19552}
19553#[repr(C)]
19554#[derive(Copy, Clone)]
19555pub struct xfrm_user_migrate {
19556    pub old_daddr: xfrm_address_t,
19557    pub old_saddr: xfrm_address_t,
19558    pub new_daddr: xfrm_address_t,
19559    pub new_saddr: xfrm_address_t,
19560    pub proto: __u8,
19561    pub mode: __u8,
19562    pub reserved: __u16,
19563    pub reqid: __u32,
19564    pub old_family: __u16,
19565    pub new_family: __u16,
19566}
19567impl Default for xfrm_user_migrate {
19568    fn default() -> Self {
19569        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19570        unsafe {
19571            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19572            s.assume_init()
19573        }
19574    }
19575}
19576#[repr(C)]
19577#[derive(Copy, Clone)]
19578pub struct xfrm_user_mapping {
19579    pub id: xfrm_usersa_id,
19580    pub reqid: __u32,
19581    pub old_saddr: xfrm_address_t,
19582    pub new_saddr: xfrm_address_t,
19583    pub old_sport: __be16,
19584    pub new_sport: __be16,
19585}
19586impl Default for xfrm_user_mapping {
19587    fn default() -> Self {
19588        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19589        unsafe {
19590            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19591            s.assume_init()
19592        }
19593    }
19594}
19595#[repr(C)]
19596#[derive(Copy, Clone)]
19597pub struct xfrm_address_filter {
19598    pub saddr: xfrm_address_t,
19599    pub daddr: xfrm_address_t,
19600    pub family: __u16,
19601    pub splen: __u8,
19602    pub dplen: __u8,
19603}
19604impl Default for xfrm_address_filter {
19605    fn default() -> Self {
19606        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19607        unsafe {
19608            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19609            s.assume_init()
19610        }
19611    }
19612}
19613#[repr(C)]
19614#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19615pub struct xfrm_user_offload {
19616    pub ifindex: crate::types::c_int,
19617    pub flags: __u8,
19618    pub __bindgen_padding_0: [u8; 3usize],
19619}
19620#[repr(C)]
19621#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19622pub struct xfrm_userpolicy_default {
19623    pub in_: __u8,
19624    pub fwd: __u8,
19625    pub out: __u8,
19626}
19627pub const xfrm_nlgroups_XFRMNLGRP_NONE: xfrm_nlgroups = 0;
19628pub const xfrm_nlgroups_XFRMNLGRP_ACQUIRE: xfrm_nlgroups = 1;
19629pub const xfrm_nlgroups_XFRMNLGRP_EXPIRE: xfrm_nlgroups = 2;
19630pub const xfrm_nlgroups_XFRMNLGRP_SA: xfrm_nlgroups = 3;
19631pub const xfrm_nlgroups_XFRMNLGRP_POLICY: xfrm_nlgroups = 4;
19632pub const xfrm_nlgroups_XFRMNLGRP_AEVENTS: xfrm_nlgroups = 5;
19633pub const xfrm_nlgroups_XFRMNLGRP_REPORT: xfrm_nlgroups = 6;
19634pub const xfrm_nlgroups_XFRMNLGRP_MIGRATE: xfrm_nlgroups = 7;
19635pub const xfrm_nlgroups_XFRMNLGRP_MAPPING: xfrm_nlgroups = 8;
19636pub const xfrm_nlgroups___XFRMNLGRP_MAX: xfrm_nlgroups = 9;
19637pub type xfrm_nlgroups = crate::types::c_uint;
19638#[repr(C)]
19639#[derive(Copy, Clone)]
19640pub struct ucontext {
19641    pub uc_flags: crate::types::c_ulong,
19642    pub uc_link: uref<ucontext>,
19643    pub uc_stack: stack_t,
19644    pub uc_mcontext: sigcontext,
19645    pub uc_sigmask: sigset_t,
19646}
19647impl Default for ucontext {
19648    fn default() -> Self {
19649        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19650        unsafe {
19651            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19652            s.assume_init()
19653        }
19654    }
19655}
19656pub const bpf_cond_pseudo_jmp_BPF_MAY_GOTO: bpf_cond_pseudo_jmp = 0;
19657pub type bpf_cond_pseudo_jmp = crate::types::c_uint;
19658pub const BPF_REG_0: _bindgen_ty_106 = 0;
19659pub const BPF_REG_1: _bindgen_ty_106 = 1;
19660pub const BPF_REG_2: _bindgen_ty_106 = 2;
19661pub const BPF_REG_3: _bindgen_ty_106 = 3;
19662pub const BPF_REG_4: _bindgen_ty_106 = 4;
19663pub const BPF_REG_5: _bindgen_ty_106 = 5;
19664pub const BPF_REG_6: _bindgen_ty_106 = 6;
19665pub const BPF_REG_7: _bindgen_ty_106 = 7;
19666pub const BPF_REG_8: _bindgen_ty_106 = 8;
19667pub const BPF_REG_9: _bindgen_ty_106 = 9;
19668pub const BPF_REG_10: _bindgen_ty_106 = 10;
19669pub const __MAX_BPF_REG: _bindgen_ty_106 = 11;
19670pub type _bindgen_ty_106 = crate::types::c_uint;
19671#[repr(C)]
19672#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
19673pub struct bpf_insn {
19674    pub code: __u8,
19675    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
19676    pub off: __s16,
19677    pub imm: __s32,
19678}
19679impl bpf_insn {
19680    #[inline]
19681    pub fn dst_reg(&self) -> __u8 {
19682        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 4u8>() as u8) }
19683    }
19684    #[inline]
19685    pub fn set_dst_reg(&mut self, val: __u8) {
19686        unsafe {
19687            let val: u8 = val as _;
19688            self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
19689        }
19690    }
19691    #[inline]
19692    pub unsafe fn dst_reg_raw(this: *const Self) -> __u8 {
19693        unsafe {
19694            ::std::mem::transmute(
19695                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
19696                    ::std::ptr::addr_of!((*this)._bitfield_1),
19697                ) as u8,
19698            )
19699        }
19700    }
19701    #[inline]
19702    pub unsafe fn set_dst_reg_raw(this: *mut Self, val: __u8) {
19703        unsafe {
19704            let val: u8 = val as _;
19705            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
19706                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19707                val as u64,
19708            )
19709        }
19710    }
19711    #[inline]
19712    pub fn src_reg(&self) -> __u8 {
19713        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 4u8>() as u8) }
19714    }
19715    #[inline]
19716    pub fn set_src_reg(&mut self, val: __u8) {
19717        unsafe {
19718            let val: u8 = val as _;
19719            self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
19720        }
19721    }
19722    #[inline]
19723    pub unsafe fn src_reg_raw(this: *const Self) -> __u8 {
19724        unsafe {
19725            ::std::mem::transmute(
19726                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
19727                    ::std::ptr::addr_of!((*this)._bitfield_1),
19728                ) as u8,
19729            )
19730        }
19731    }
19732    #[inline]
19733    pub unsafe fn set_src_reg_raw(this: *mut Self, val: __u8) {
19734        unsafe {
19735            let val: u8 = val as _;
19736            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
19737                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19738                val as u64,
19739            )
19740        }
19741    }
19742    #[inline]
19743    pub fn new_bitfield_1(dst_reg: __u8, src_reg: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
19744        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
19745        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
19746            let dst_reg: u8 = dst_reg as _;
19747            dst_reg as u64
19748        });
19749        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
19750            let src_reg: u8 = src_reg as _;
19751            src_reg as u64
19752        });
19753        __bindgen_bitfield_unit
19754    }
19755}
19756#[repr(C)]
19757#[derive(Debug, Default)]
19758pub struct bpf_lpm_trie_key {
19759    pub prefixlen: __u32,
19760    pub data: __IncompleteArrayField<__u8>,
19761}
19762#[repr(C)]
19763#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19764pub struct bpf_lpm_trie_key_hdr {
19765    pub prefixlen: __u32,
19766}
19767#[repr(C)]
19768pub struct bpf_lpm_trie_key_u8 {
19769    pub __bindgen_anon_1: bpf_lpm_trie_key_u8__bindgen_ty_1,
19770    pub data: __IncompleteArrayField<__u8>,
19771}
19772#[repr(C)]
19773#[derive(Copy, Clone)]
19774pub union bpf_lpm_trie_key_u8__bindgen_ty_1 {
19775    pub hdr: bpf_lpm_trie_key_hdr,
19776    pub prefixlen: __u32,
19777}
19778impl Default for bpf_lpm_trie_key_u8__bindgen_ty_1 {
19779    fn default() -> Self {
19780        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19781        unsafe {
19782            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19783            s.assume_init()
19784        }
19785    }
19786}
19787impl Default for bpf_lpm_trie_key_u8 {
19788    fn default() -> Self {
19789        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19790        unsafe {
19791            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19792            s.assume_init()
19793        }
19794    }
19795}
19796#[repr(C)]
19797#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19798pub struct bpf_cgroup_storage_key {
19799    pub cgroup_inode_id: __u64,
19800    pub attach_type: __u32,
19801    pub __bindgen_padding_0: [u8; 4usize],
19802}
19803pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_ORDER_UNSPEC: bpf_cgroup_iter_order = 0;
19804pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_SELF_ONLY: bpf_cgroup_iter_order = 1;
19805pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_DESCENDANTS_PRE: bpf_cgroup_iter_order = 2;
19806pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_DESCENDANTS_POST: bpf_cgroup_iter_order = 3;
19807pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_ANCESTORS_UP: bpf_cgroup_iter_order = 4;
19808pub type bpf_cgroup_iter_order = crate::types::c_uint;
19809#[repr(C)]
19810#[derive(Copy, Clone)]
19811pub union bpf_iter_link_info {
19812    pub map: bpf_iter_link_info__bindgen_ty_1,
19813    pub cgroup: bpf_iter_link_info__bindgen_ty_2,
19814    pub task: bpf_iter_link_info__bindgen_ty_3,
19815}
19816#[repr(C)]
19817#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19818pub struct bpf_iter_link_info__bindgen_ty_1 {
19819    pub map_fd: __u32,
19820}
19821#[repr(C)]
19822#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19823pub struct bpf_iter_link_info__bindgen_ty_2 {
19824    pub order: bpf_cgroup_iter_order,
19825    pub cgroup_fd: __u32,
19826    pub cgroup_id: __u64,
19827}
19828impl Default for bpf_iter_link_info__bindgen_ty_2 {
19829    fn default() -> Self {
19830        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19831        unsafe {
19832            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19833            s.assume_init()
19834        }
19835    }
19836}
19837#[repr(C)]
19838#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19839pub struct bpf_iter_link_info__bindgen_ty_3 {
19840    pub tid: __u32,
19841    pub pid: __u32,
19842    pub pid_fd: __u32,
19843}
19844impl Default for bpf_iter_link_info {
19845    fn default() -> Self {
19846        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19847        unsafe {
19848            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19849            s.assume_init()
19850        }
19851    }
19852}
19853pub const bpf_cmd_BPF_MAP_CREATE: bpf_cmd = 0;
19854pub const bpf_cmd_BPF_MAP_LOOKUP_ELEM: bpf_cmd = 1;
19855pub const bpf_cmd_BPF_MAP_UPDATE_ELEM: bpf_cmd = 2;
19856pub const bpf_cmd_BPF_MAP_DELETE_ELEM: bpf_cmd = 3;
19857pub const bpf_cmd_BPF_MAP_GET_NEXT_KEY: bpf_cmd = 4;
19858pub const bpf_cmd_BPF_PROG_LOAD: bpf_cmd = 5;
19859pub const bpf_cmd_BPF_OBJ_PIN: bpf_cmd = 6;
19860pub const bpf_cmd_BPF_OBJ_GET: bpf_cmd = 7;
19861pub const bpf_cmd_BPF_PROG_ATTACH: bpf_cmd = 8;
19862pub const bpf_cmd_BPF_PROG_DETACH: bpf_cmd = 9;
19863pub const bpf_cmd_BPF_PROG_TEST_RUN: bpf_cmd = 10;
19864pub const bpf_cmd_BPF_PROG_RUN: bpf_cmd = 10;
19865pub const bpf_cmd_BPF_PROG_GET_NEXT_ID: bpf_cmd = 11;
19866pub const bpf_cmd_BPF_MAP_GET_NEXT_ID: bpf_cmd = 12;
19867pub const bpf_cmd_BPF_PROG_GET_FD_BY_ID: bpf_cmd = 13;
19868pub const bpf_cmd_BPF_MAP_GET_FD_BY_ID: bpf_cmd = 14;
19869pub const bpf_cmd_BPF_OBJ_GET_INFO_BY_FD: bpf_cmd = 15;
19870pub const bpf_cmd_BPF_PROG_QUERY: bpf_cmd = 16;
19871pub const bpf_cmd_BPF_RAW_TRACEPOINT_OPEN: bpf_cmd = 17;
19872pub const bpf_cmd_BPF_BTF_LOAD: bpf_cmd = 18;
19873pub const bpf_cmd_BPF_BTF_GET_FD_BY_ID: bpf_cmd = 19;
19874pub const bpf_cmd_BPF_TASK_FD_QUERY: bpf_cmd = 20;
19875pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_ELEM: bpf_cmd = 21;
19876pub const bpf_cmd_BPF_MAP_FREEZE: bpf_cmd = 22;
19877pub const bpf_cmd_BPF_BTF_GET_NEXT_ID: bpf_cmd = 23;
19878pub const bpf_cmd_BPF_MAP_LOOKUP_BATCH: bpf_cmd = 24;
19879pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_BATCH: bpf_cmd = 25;
19880pub const bpf_cmd_BPF_MAP_UPDATE_BATCH: bpf_cmd = 26;
19881pub const bpf_cmd_BPF_MAP_DELETE_BATCH: bpf_cmd = 27;
19882pub const bpf_cmd_BPF_LINK_CREATE: bpf_cmd = 28;
19883pub const bpf_cmd_BPF_LINK_UPDATE: bpf_cmd = 29;
19884pub const bpf_cmd_BPF_LINK_GET_FD_BY_ID: bpf_cmd = 30;
19885pub const bpf_cmd_BPF_LINK_GET_NEXT_ID: bpf_cmd = 31;
19886pub const bpf_cmd_BPF_ENABLE_STATS: bpf_cmd = 32;
19887pub const bpf_cmd_BPF_ITER_CREATE: bpf_cmd = 33;
19888pub const bpf_cmd_BPF_LINK_DETACH: bpf_cmd = 34;
19889pub const bpf_cmd_BPF_PROG_BIND_MAP: bpf_cmd = 35;
19890pub const bpf_cmd_BPF_TOKEN_CREATE: bpf_cmd = 36;
19891pub const bpf_cmd___MAX_BPF_CMD: bpf_cmd = 37;
19892pub type bpf_cmd = crate::types::c_uint;
19893pub const bpf_map_type_BPF_MAP_TYPE_UNSPEC: bpf_map_type = 0;
19894pub const bpf_map_type_BPF_MAP_TYPE_HASH: bpf_map_type = 1;
19895pub const bpf_map_type_BPF_MAP_TYPE_ARRAY: bpf_map_type = 2;
19896pub const bpf_map_type_BPF_MAP_TYPE_PROG_ARRAY: bpf_map_type = 3;
19897pub const bpf_map_type_BPF_MAP_TYPE_PERF_EVENT_ARRAY: bpf_map_type = 4;
19898pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_HASH: bpf_map_type = 5;
19899pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_ARRAY: bpf_map_type = 6;
19900pub const bpf_map_type_BPF_MAP_TYPE_STACK_TRACE: bpf_map_type = 7;
19901pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_ARRAY: bpf_map_type = 8;
19902pub const bpf_map_type_BPF_MAP_TYPE_LRU_HASH: bpf_map_type = 9;
19903pub const bpf_map_type_BPF_MAP_TYPE_LRU_PERCPU_HASH: bpf_map_type = 10;
19904pub const bpf_map_type_BPF_MAP_TYPE_LPM_TRIE: bpf_map_type = 11;
19905pub const bpf_map_type_BPF_MAP_TYPE_ARRAY_OF_MAPS: bpf_map_type = 12;
19906pub const bpf_map_type_BPF_MAP_TYPE_HASH_OF_MAPS: bpf_map_type = 13;
19907pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP: bpf_map_type = 14;
19908pub const bpf_map_type_BPF_MAP_TYPE_SOCKMAP: bpf_map_type = 15;
19909pub const bpf_map_type_BPF_MAP_TYPE_CPUMAP: bpf_map_type = 16;
19910pub const bpf_map_type_BPF_MAP_TYPE_XSKMAP: bpf_map_type = 17;
19911pub const bpf_map_type_BPF_MAP_TYPE_SOCKHASH: bpf_map_type = 18;
19912pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED: bpf_map_type = 19;
19913pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE: bpf_map_type = 19;
19914pub const bpf_map_type_BPF_MAP_TYPE_REUSEPORT_SOCKARRAY: bpf_map_type = 20;
19915pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE_DEPRECATED: bpf_map_type = 21;
19916pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE: bpf_map_type = 21;
19917pub const bpf_map_type_BPF_MAP_TYPE_QUEUE: bpf_map_type = 22;
19918pub const bpf_map_type_BPF_MAP_TYPE_STACK: bpf_map_type = 23;
19919pub const bpf_map_type_BPF_MAP_TYPE_SK_STORAGE: bpf_map_type = 24;
19920pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP_HASH: bpf_map_type = 25;
19921pub const bpf_map_type_BPF_MAP_TYPE_STRUCT_OPS: bpf_map_type = 26;
19922pub const bpf_map_type_BPF_MAP_TYPE_RINGBUF: bpf_map_type = 27;
19923pub const bpf_map_type_BPF_MAP_TYPE_INODE_STORAGE: bpf_map_type = 28;
19924pub const bpf_map_type_BPF_MAP_TYPE_TASK_STORAGE: bpf_map_type = 29;
19925pub const bpf_map_type_BPF_MAP_TYPE_BLOOM_FILTER: bpf_map_type = 30;
19926pub const bpf_map_type_BPF_MAP_TYPE_USER_RINGBUF: bpf_map_type = 31;
19927pub const bpf_map_type_BPF_MAP_TYPE_CGRP_STORAGE: bpf_map_type = 32;
19928pub const bpf_map_type_BPF_MAP_TYPE_ARENA: bpf_map_type = 33;
19929pub const bpf_map_type___MAX_BPF_MAP_TYPE: bpf_map_type = 34;
19930pub type bpf_map_type = crate::types::c_uint;
19931pub const bpf_prog_type_BPF_PROG_TYPE_UNSPEC: bpf_prog_type = 0;
19932pub const bpf_prog_type_BPF_PROG_TYPE_SOCKET_FILTER: bpf_prog_type = 1;
19933pub const bpf_prog_type_BPF_PROG_TYPE_KPROBE: bpf_prog_type = 2;
19934pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_CLS: bpf_prog_type = 3;
19935pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_ACT: bpf_prog_type = 4;
19936pub const bpf_prog_type_BPF_PROG_TYPE_TRACEPOINT: bpf_prog_type = 5;
19937pub const bpf_prog_type_BPF_PROG_TYPE_XDP: bpf_prog_type = 6;
19938pub const bpf_prog_type_BPF_PROG_TYPE_PERF_EVENT: bpf_prog_type = 7;
19939pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SKB: bpf_prog_type = 8;
19940pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK: bpf_prog_type = 9;
19941pub const bpf_prog_type_BPF_PROG_TYPE_LWT_IN: bpf_prog_type = 10;
19942pub const bpf_prog_type_BPF_PROG_TYPE_LWT_OUT: bpf_prog_type = 11;
19943pub const bpf_prog_type_BPF_PROG_TYPE_LWT_XMIT: bpf_prog_type = 12;
19944pub const bpf_prog_type_BPF_PROG_TYPE_SOCK_OPS: bpf_prog_type = 13;
19945pub const bpf_prog_type_BPF_PROG_TYPE_SK_SKB: bpf_prog_type = 14;
19946pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_DEVICE: bpf_prog_type = 15;
19947pub const bpf_prog_type_BPF_PROG_TYPE_SK_MSG: bpf_prog_type = 16;
19948pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT: bpf_prog_type = 17;
19949pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK_ADDR: bpf_prog_type = 18;
19950pub const bpf_prog_type_BPF_PROG_TYPE_LWT_SEG6LOCAL: bpf_prog_type = 19;
19951pub const bpf_prog_type_BPF_PROG_TYPE_LIRC_MODE2: bpf_prog_type = 20;
19952pub const bpf_prog_type_BPF_PROG_TYPE_SK_REUSEPORT: bpf_prog_type = 21;
19953pub const bpf_prog_type_BPF_PROG_TYPE_FLOW_DISSECTOR: bpf_prog_type = 22;
19954pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SYSCTL: bpf_prog_type = 23;
19955pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE: bpf_prog_type = 24;
19956pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCKOPT: bpf_prog_type = 25;
19957pub const bpf_prog_type_BPF_PROG_TYPE_TRACING: bpf_prog_type = 26;
19958pub const bpf_prog_type_BPF_PROG_TYPE_STRUCT_OPS: bpf_prog_type = 27;
19959pub const bpf_prog_type_BPF_PROG_TYPE_EXT: bpf_prog_type = 28;
19960pub const bpf_prog_type_BPF_PROG_TYPE_LSM: bpf_prog_type = 29;
19961pub const bpf_prog_type_BPF_PROG_TYPE_SK_LOOKUP: bpf_prog_type = 30;
19962pub const bpf_prog_type_BPF_PROG_TYPE_SYSCALL: bpf_prog_type = 31;
19963pub const bpf_prog_type_BPF_PROG_TYPE_NETFILTER: bpf_prog_type = 32;
19964pub const bpf_prog_type___MAX_BPF_PROG_TYPE: bpf_prog_type = 33;
19965pub type bpf_prog_type = crate::types::c_uint;
19966pub const bpf_attach_type_BPF_CGROUP_INET_INGRESS: bpf_attach_type = 0;
19967pub const bpf_attach_type_BPF_CGROUP_INET_EGRESS: bpf_attach_type = 1;
19968pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_CREATE: bpf_attach_type = 2;
19969pub const bpf_attach_type_BPF_CGROUP_SOCK_OPS: bpf_attach_type = 3;
19970pub const bpf_attach_type_BPF_SK_SKB_STREAM_PARSER: bpf_attach_type = 4;
19971pub const bpf_attach_type_BPF_SK_SKB_STREAM_VERDICT: bpf_attach_type = 5;
19972pub const bpf_attach_type_BPF_CGROUP_DEVICE: bpf_attach_type = 6;
19973pub const bpf_attach_type_BPF_SK_MSG_VERDICT: bpf_attach_type = 7;
19974pub const bpf_attach_type_BPF_CGROUP_INET4_BIND: bpf_attach_type = 8;
19975pub const bpf_attach_type_BPF_CGROUP_INET6_BIND: bpf_attach_type = 9;
19976pub const bpf_attach_type_BPF_CGROUP_INET4_CONNECT: bpf_attach_type = 10;
19977pub const bpf_attach_type_BPF_CGROUP_INET6_CONNECT: bpf_attach_type = 11;
19978pub const bpf_attach_type_BPF_CGROUP_INET4_POST_BIND: bpf_attach_type = 12;
19979pub const bpf_attach_type_BPF_CGROUP_INET6_POST_BIND: bpf_attach_type = 13;
19980pub const bpf_attach_type_BPF_CGROUP_UDP4_SENDMSG: bpf_attach_type = 14;
19981pub const bpf_attach_type_BPF_CGROUP_UDP6_SENDMSG: bpf_attach_type = 15;
19982pub const bpf_attach_type_BPF_LIRC_MODE2: bpf_attach_type = 16;
19983pub const bpf_attach_type_BPF_FLOW_DISSECTOR: bpf_attach_type = 17;
19984pub const bpf_attach_type_BPF_CGROUP_SYSCTL: bpf_attach_type = 18;
19985pub const bpf_attach_type_BPF_CGROUP_UDP4_RECVMSG: bpf_attach_type = 19;
19986pub const bpf_attach_type_BPF_CGROUP_UDP6_RECVMSG: bpf_attach_type = 20;
19987pub const bpf_attach_type_BPF_CGROUP_GETSOCKOPT: bpf_attach_type = 21;
19988pub const bpf_attach_type_BPF_CGROUP_SETSOCKOPT: bpf_attach_type = 22;
19989pub const bpf_attach_type_BPF_TRACE_RAW_TP: bpf_attach_type = 23;
19990pub const bpf_attach_type_BPF_TRACE_FENTRY: bpf_attach_type = 24;
19991pub const bpf_attach_type_BPF_TRACE_FEXIT: bpf_attach_type = 25;
19992pub const bpf_attach_type_BPF_MODIFY_RETURN: bpf_attach_type = 26;
19993pub const bpf_attach_type_BPF_LSM_MAC: bpf_attach_type = 27;
19994pub const bpf_attach_type_BPF_TRACE_ITER: bpf_attach_type = 28;
19995pub const bpf_attach_type_BPF_CGROUP_INET4_GETPEERNAME: bpf_attach_type = 29;
19996pub const bpf_attach_type_BPF_CGROUP_INET6_GETPEERNAME: bpf_attach_type = 30;
19997pub const bpf_attach_type_BPF_CGROUP_INET4_GETSOCKNAME: bpf_attach_type = 31;
19998pub const bpf_attach_type_BPF_CGROUP_INET6_GETSOCKNAME: bpf_attach_type = 32;
19999pub const bpf_attach_type_BPF_XDP_DEVMAP: bpf_attach_type = 33;
20000pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_RELEASE: bpf_attach_type = 34;
20001pub const bpf_attach_type_BPF_XDP_CPUMAP: bpf_attach_type = 35;
20002pub const bpf_attach_type_BPF_SK_LOOKUP: bpf_attach_type = 36;
20003pub const bpf_attach_type_BPF_XDP: bpf_attach_type = 37;
20004pub const bpf_attach_type_BPF_SK_SKB_VERDICT: bpf_attach_type = 38;
20005pub const bpf_attach_type_BPF_SK_REUSEPORT_SELECT: bpf_attach_type = 39;
20006pub const bpf_attach_type_BPF_SK_REUSEPORT_SELECT_OR_MIGRATE: bpf_attach_type = 40;
20007pub const bpf_attach_type_BPF_PERF_EVENT: bpf_attach_type = 41;
20008pub const bpf_attach_type_BPF_TRACE_KPROBE_MULTI: bpf_attach_type = 42;
20009pub const bpf_attach_type_BPF_LSM_CGROUP: bpf_attach_type = 43;
20010pub const bpf_attach_type_BPF_STRUCT_OPS: bpf_attach_type = 44;
20011pub const bpf_attach_type_BPF_NETFILTER: bpf_attach_type = 45;
20012pub const bpf_attach_type_BPF_TCX_INGRESS: bpf_attach_type = 46;
20013pub const bpf_attach_type_BPF_TCX_EGRESS: bpf_attach_type = 47;
20014pub const bpf_attach_type_BPF_TRACE_UPROBE_MULTI: bpf_attach_type = 48;
20015pub const bpf_attach_type_BPF_CGROUP_UNIX_CONNECT: bpf_attach_type = 49;
20016pub const bpf_attach_type_BPF_CGROUP_UNIX_SENDMSG: bpf_attach_type = 50;
20017pub const bpf_attach_type_BPF_CGROUP_UNIX_RECVMSG: bpf_attach_type = 51;
20018pub const bpf_attach_type_BPF_CGROUP_UNIX_GETPEERNAME: bpf_attach_type = 52;
20019pub const bpf_attach_type_BPF_CGROUP_UNIX_GETSOCKNAME: bpf_attach_type = 53;
20020pub const bpf_attach_type_BPF_NETKIT_PRIMARY: bpf_attach_type = 54;
20021pub const bpf_attach_type_BPF_NETKIT_PEER: bpf_attach_type = 55;
20022pub const bpf_attach_type_BPF_TRACE_KPROBE_SESSION: bpf_attach_type = 56;
20023pub const bpf_attach_type___MAX_BPF_ATTACH_TYPE: bpf_attach_type = 57;
20024pub type bpf_attach_type = crate::types::c_uint;
20025pub const bpf_link_type_BPF_LINK_TYPE_UNSPEC: bpf_link_type = 0;
20026pub const bpf_link_type_BPF_LINK_TYPE_RAW_TRACEPOINT: bpf_link_type = 1;
20027pub const bpf_link_type_BPF_LINK_TYPE_TRACING: bpf_link_type = 2;
20028pub const bpf_link_type_BPF_LINK_TYPE_CGROUP: bpf_link_type = 3;
20029pub const bpf_link_type_BPF_LINK_TYPE_ITER: bpf_link_type = 4;
20030pub const bpf_link_type_BPF_LINK_TYPE_NETNS: bpf_link_type = 5;
20031pub const bpf_link_type_BPF_LINK_TYPE_XDP: bpf_link_type = 6;
20032pub const bpf_link_type_BPF_LINK_TYPE_PERF_EVENT: bpf_link_type = 7;
20033pub const bpf_link_type_BPF_LINK_TYPE_KPROBE_MULTI: bpf_link_type = 8;
20034pub const bpf_link_type_BPF_LINK_TYPE_STRUCT_OPS: bpf_link_type = 9;
20035pub const bpf_link_type_BPF_LINK_TYPE_NETFILTER: bpf_link_type = 10;
20036pub const bpf_link_type_BPF_LINK_TYPE_TCX: bpf_link_type = 11;
20037pub const bpf_link_type_BPF_LINK_TYPE_UPROBE_MULTI: bpf_link_type = 12;
20038pub const bpf_link_type_BPF_LINK_TYPE_NETKIT: bpf_link_type = 13;
20039pub const bpf_link_type_BPF_LINK_TYPE_SOCKMAP: bpf_link_type = 14;
20040pub const bpf_link_type___MAX_BPF_LINK_TYPE: bpf_link_type = 15;
20041pub type bpf_link_type = crate::types::c_uint;
20042pub const bpf_perf_event_type_BPF_PERF_EVENT_UNSPEC: bpf_perf_event_type = 0;
20043pub const bpf_perf_event_type_BPF_PERF_EVENT_UPROBE: bpf_perf_event_type = 1;
20044pub const bpf_perf_event_type_BPF_PERF_EVENT_URETPROBE: bpf_perf_event_type = 2;
20045pub const bpf_perf_event_type_BPF_PERF_EVENT_KPROBE: bpf_perf_event_type = 3;
20046pub const bpf_perf_event_type_BPF_PERF_EVENT_KRETPROBE: bpf_perf_event_type = 4;
20047pub const bpf_perf_event_type_BPF_PERF_EVENT_TRACEPOINT: bpf_perf_event_type = 5;
20048pub const bpf_perf_event_type_BPF_PERF_EVENT_EVENT: bpf_perf_event_type = 6;
20049pub type bpf_perf_event_type = crate::types::c_uint;
20050pub const BPF_F_KPROBE_MULTI_RETURN: _bindgen_ty_107 = 1;
20051pub type _bindgen_ty_107 = crate::types::c_uint;
20052pub const BPF_F_UPROBE_MULTI_RETURN: _bindgen_ty_108 = 1;
20053pub type _bindgen_ty_108 = crate::types::c_uint;
20054pub const bpf_addr_space_cast_BPF_ADDR_SPACE_CAST: bpf_addr_space_cast = 1;
20055pub type bpf_addr_space_cast = crate::types::c_uint;
20056pub const BPF_ANY: _bindgen_ty_109 = 0;
20057pub const BPF_NOEXIST: _bindgen_ty_109 = 1;
20058pub const BPF_EXIST: _bindgen_ty_109 = 2;
20059pub const BPF_F_LOCK: _bindgen_ty_109 = 4;
20060pub type _bindgen_ty_109 = crate::types::c_uint;
20061pub const BPF_F_NO_PREALLOC: _bindgen_ty_110 = 1;
20062pub const BPF_F_NO_COMMON_LRU: _bindgen_ty_110 = 2;
20063pub const BPF_F_NUMA_NODE: _bindgen_ty_110 = 4;
20064pub const BPF_F_RDONLY: _bindgen_ty_110 = 8;
20065pub const BPF_F_WRONLY: _bindgen_ty_110 = 16;
20066pub const BPF_F_STACK_BUILD_ID: _bindgen_ty_110 = 32;
20067pub const BPF_F_ZERO_SEED: _bindgen_ty_110 = 64;
20068pub const BPF_F_RDONLY_PROG: _bindgen_ty_110 = 128;
20069pub const BPF_F_WRONLY_PROG: _bindgen_ty_110 = 256;
20070pub const BPF_F_CLONE: _bindgen_ty_110 = 512;
20071pub const BPF_F_MMAPABLE: _bindgen_ty_110 = 1024;
20072pub const BPF_F_PRESERVE_ELEMS: _bindgen_ty_110 = 2048;
20073pub const BPF_F_INNER_MAP: _bindgen_ty_110 = 4096;
20074pub const BPF_F_LINK: _bindgen_ty_110 = 8192;
20075pub const BPF_F_PATH_FD: _bindgen_ty_110 = 16384;
20076pub const BPF_F_VTYPE_BTF_OBJ_FD: _bindgen_ty_110 = 32768;
20077pub const BPF_F_TOKEN_FD: _bindgen_ty_110 = 65536;
20078pub const BPF_F_SEGV_ON_FAULT: _bindgen_ty_110 = 131072;
20079pub const BPF_F_NO_USER_CONV: _bindgen_ty_110 = 262144;
20080pub type _bindgen_ty_110 = crate::types::c_uint;
20081pub const bpf_stats_type_BPF_STATS_RUN_TIME: bpf_stats_type = 0;
20082pub type bpf_stats_type = crate::types::c_uint;
20083pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_EMPTY: bpf_stack_build_id_status = 0;
20084pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_VALID: bpf_stack_build_id_status = 1;
20085pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_IP: bpf_stack_build_id_status = 2;
20086pub type bpf_stack_build_id_status = crate::types::c_uint;
20087#[repr(C)]
20088#[derive(Copy, Clone)]
20089pub struct bpf_stack_build_id {
20090    pub status: __s32,
20091    pub build_id: [crate::types::c_uchar; 20usize],
20092    pub __bindgen_anon_1: bpf_stack_build_id__bindgen_ty_1,
20093}
20094#[repr(C)]
20095#[derive(Copy, Clone)]
20096pub union bpf_stack_build_id__bindgen_ty_1 {
20097    pub offset: __u64,
20098    pub ip: __u64,
20099}
20100impl Default for bpf_stack_build_id__bindgen_ty_1 {
20101    fn default() -> Self {
20102        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20103        unsafe {
20104            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20105            s.assume_init()
20106        }
20107    }
20108}
20109impl Default for bpf_stack_build_id {
20110    fn default() -> Self {
20111        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20112        unsafe {
20113            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20114            s.assume_init()
20115        }
20116    }
20117}
20118#[repr(C)]
20119#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20120pub union bpf_attr {
20121    pub __bindgen_anon_1: bpf_attr__bindgen_ty_1,
20122    pub __bindgen_anon_2: bpf_attr__bindgen_ty_2,
20123    pub batch: bpf_attr__bindgen_ty_3,
20124    pub __bindgen_anon_3: bpf_attr__bindgen_ty_4,
20125    pub __bindgen_anon_4: bpf_attr__bindgen_ty_5,
20126    pub __bindgen_anon_5: bpf_attr__bindgen_ty_6,
20127    pub test: bpf_attr__bindgen_ty_7,
20128    pub __bindgen_anon_6: bpf_attr__bindgen_ty_8,
20129    pub info: bpf_attr__bindgen_ty_9,
20130    pub query: bpf_attr__bindgen_ty_10,
20131    pub raw_tracepoint: bpf_attr__bindgen_ty_11,
20132    pub __bindgen_anon_7: bpf_attr__bindgen_ty_12,
20133    pub task_fd_query: bpf_attr__bindgen_ty_13,
20134    pub link_create: bpf_attr__bindgen_ty_14,
20135    pub link_update: bpf_attr__bindgen_ty_15,
20136    pub link_detach: bpf_attr__bindgen_ty_16,
20137    pub enable_stats: bpf_attr__bindgen_ty_17,
20138    pub iter_create: bpf_attr__bindgen_ty_18,
20139    pub prog_bind_map: bpf_attr__bindgen_ty_19,
20140    pub token_create: bpf_attr__bindgen_ty_20,
20141}
20142#[repr(C)]
20143#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20144pub struct bpf_attr__bindgen_ty_1 {
20145    pub map_type: __u32,
20146    pub key_size: __u32,
20147    pub value_size: __u32,
20148    pub max_entries: __u32,
20149    pub map_flags: __u32,
20150    pub inner_map_fd: __u32,
20151    pub numa_node: __u32,
20152    pub map_name: [crate::types::c_char; 16usize],
20153    pub map_ifindex: __u32,
20154    pub btf_fd: __u32,
20155    pub btf_key_type_id: __u32,
20156    pub btf_value_type_id: __u32,
20157    pub btf_vmlinux_value_type_id: __u32,
20158    pub map_extra: __u64,
20159    pub value_type_btf_obj_fd: __s32,
20160    pub map_token_fd: __s32,
20161}
20162#[repr(C)]
20163#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20164pub struct bpf_attr__bindgen_ty_2 {
20165    pub map_fd: __u32,
20166    pub __bindgen_padding_0: [u8; 4usize],
20167    pub key: __u64,
20168    pub __bindgen_anon_1: bpf_attr__bindgen_ty_2__bindgen_ty_1,
20169    pub flags: __u64,
20170}
20171#[repr(C)]
20172#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20173pub union bpf_attr__bindgen_ty_2__bindgen_ty_1 {
20174    pub value: __u64,
20175    pub next_key: __u64,
20176}
20177impl Default for bpf_attr__bindgen_ty_2__bindgen_ty_1 {
20178    fn default() -> Self {
20179        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20180        unsafe {
20181            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20182            s.assume_init()
20183        }
20184    }
20185}
20186impl Default for bpf_attr__bindgen_ty_2 {
20187    fn default() -> Self {
20188        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20189        unsafe {
20190            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20191            s.assume_init()
20192        }
20193    }
20194}
20195#[repr(C)]
20196#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20197pub struct bpf_attr__bindgen_ty_3 {
20198    pub in_batch: __u64,
20199    pub out_batch: __u64,
20200    pub keys: __u64,
20201    pub values: __u64,
20202    pub count: __u32,
20203    pub map_fd: __u32,
20204    pub elem_flags: __u64,
20205    pub flags: __u64,
20206}
20207#[repr(C)]
20208#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20209pub struct bpf_attr__bindgen_ty_4 {
20210    pub prog_type: __u32,
20211    pub insn_cnt: __u32,
20212    pub insns: __u64,
20213    pub license: __u64,
20214    pub log_level: __u32,
20215    pub log_size: __u32,
20216    pub log_buf: __u64,
20217    pub kern_version: __u32,
20218    pub prog_flags: __u32,
20219    pub prog_name: [crate::types::c_char; 16usize],
20220    pub prog_ifindex: __u32,
20221    pub expected_attach_type: __u32,
20222    pub prog_btf_fd: __u32,
20223    pub func_info_rec_size: __u32,
20224    pub func_info: __u64,
20225    pub func_info_cnt: __u32,
20226    pub line_info_rec_size: __u32,
20227    pub line_info: __u64,
20228    pub line_info_cnt: __u32,
20229    pub attach_btf_id: __u32,
20230    pub __bindgen_anon_1: bpf_attr__bindgen_ty_4__bindgen_ty_1,
20231    pub core_relo_cnt: __u32,
20232    pub fd_array: __u64,
20233    pub core_relos: __u64,
20234    pub core_relo_rec_size: __u32,
20235    pub log_true_size: __u32,
20236    pub prog_token_fd: __s32,
20237    pub __bindgen_padding_0: [u8; 4usize],
20238}
20239#[repr(C)]
20240#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20241pub union bpf_attr__bindgen_ty_4__bindgen_ty_1 {
20242    pub attach_prog_fd: __u32,
20243    pub attach_btf_obj_fd: __u32,
20244}
20245impl Default for bpf_attr__bindgen_ty_4__bindgen_ty_1 {
20246    fn default() -> Self {
20247        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20248        unsafe {
20249            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20250            s.assume_init()
20251        }
20252    }
20253}
20254impl Default for bpf_attr__bindgen_ty_4 {
20255    fn default() -> Self {
20256        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20257        unsafe {
20258            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20259            s.assume_init()
20260        }
20261    }
20262}
20263#[repr(C)]
20264#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20265pub struct bpf_attr__bindgen_ty_5 {
20266    pub pathname: __u64,
20267    pub bpf_fd: __u32,
20268    pub file_flags: __u32,
20269    pub path_fd: __s32,
20270    pub __bindgen_padding_0: [u8; 4usize],
20271}
20272#[repr(C)]
20273#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20274pub struct bpf_attr__bindgen_ty_6 {
20275    pub __bindgen_anon_1: bpf_attr__bindgen_ty_6__bindgen_ty_1,
20276    pub attach_bpf_fd: __u32,
20277    pub attach_type: __u32,
20278    pub attach_flags: __u32,
20279    pub replace_bpf_fd: __u32,
20280    pub __bindgen_anon_2: bpf_attr__bindgen_ty_6__bindgen_ty_2,
20281    pub expected_revision: __u64,
20282}
20283#[repr(C)]
20284#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20285pub union bpf_attr__bindgen_ty_6__bindgen_ty_1 {
20286    pub target_fd: __u32,
20287    pub target_ifindex: __u32,
20288}
20289impl Default for bpf_attr__bindgen_ty_6__bindgen_ty_1 {
20290    fn default() -> Self {
20291        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20292        unsafe {
20293            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20294            s.assume_init()
20295        }
20296    }
20297}
20298#[repr(C)]
20299#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20300pub union bpf_attr__bindgen_ty_6__bindgen_ty_2 {
20301    pub relative_fd: __u32,
20302    pub relative_id: __u32,
20303}
20304impl Default for bpf_attr__bindgen_ty_6__bindgen_ty_2 {
20305    fn default() -> Self {
20306        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20307        unsafe {
20308            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20309            s.assume_init()
20310        }
20311    }
20312}
20313impl Default for bpf_attr__bindgen_ty_6 {
20314    fn default() -> Self {
20315        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20316        unsafe {
20317            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20318            s.assume_init()
20319        }
20320    }
20321}
20322#[repr(C)]
20323#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20324pub struct bpf_attr__bindgen_ty_7 {
20325    pub prog_fd: __u32,
20326    pub retval: __u32,
20327    pub data_size_in: __u32,
20328    pub data_size_out: __u32,
20329    pub data_in: __u64,
20330    pub data_out: __u64,
20331    pub repeat: __u32,
20332    pub duration: __u32,
20333    pub ctx_size_in: __u32,
20334    pub ctx_size_out: __u32,
20335    pub ctx_in: __u64,
20336    pub ctx_out: __u64,
20337    pub flags: __u32,
20338    pub cpu: __u32,
20339    pub batch_size: __u32,
20340    pub __bindgen_padding_0: [u8; 4usize],
20341}
20342#[repr(C)]
20343#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20344pub struct bpf_attr__bindgen_ty_8 {
20345    pub __bindgen_anon_1: bpf_attr__bindgen_ty_8__bindgen_ty_1,
20346    pub next_id: __u32,
20347    pub open_flags: __u32,
20348}
20349#[repr(C)]
20350#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20351pub union bpf_attr__bindgen_ty_8__bindgen_ty_1 {
20352    pub start_id: __u32,
20353    pub prog_id: __u32,
20354    pub map_id: __u32,
20355    pub btf_id: __u32,
20356    pub link_id: __u32,
20357}
20358impl Default for bpf_attr__bindgen_ty_8__bindgen_ty_1 {
20359    fn default() -> Self {
20360        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20361        unsafe {
20362            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20363            s.assume_init()
20364        }
20365    }
20366}
20367impl Default for bpf_attr__bindgen_ty_8 {
20368    fn default() -> Self {
20369        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20370        unsafe {
20371            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20372            s.assume_init()
20373        }
20374    }
20375}
20376#[repr(C)]
20377#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20378pub struct bpf_attr__bindgen_ty_9 {
20379    pub bpf_fd: __u32,
20380    pub info_len: __u32,
20381    pub info: __u64,
20382}
20383#[repr(C)]
20384#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20385pub struct bpf_attr__bindgen_ty_10 {
20386    pub __bindgen_anon_1: bpf_attr__bindgen_ty_10__bindgen_ty_1,
20387    pub attach_type: __u32,
20388    pub query_flags: __u32,
20389    pub attach_flags: __u32,
20390    pub prog_ids: __u64,
20391    pub __bindgen_anon_2: bpf_attr__bindgen_ty_10__bindgen_ty_2,
20392    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
20393    pub prog_attach_flags: __u64,
20394    pub link_ids: __u64,
20395    pub link_attach_flags: __u64,
20396    pub revision: __u64,
20397}
20398#[repr(C)]
20399#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20400pub union bpf_attr__bindgen_ty_10__bindgen_ty_1 {
20401    pub target_fd: __u32,
20402    pub target_ifindex: __u32,
20403}
20404impl Default for bpf_attr__bindgen_ty_10__bindgen_ty_1 {
20405    fn default() -> Self {
20406        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20407        unsafe {
20408            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20409            s.assume_init()
20410        }
20411    }
20412}
20413#[repr(C)]
20414#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20415pub union bpf_attr__bindgen_ty_10__bindgen_ty_2 {
20416    pub prog_cnt: __u32,
20417    pub count: __u32,
20418}
20419impl Default for bpf_attr__bindgen_ty_10__bindgen_ty_2 {
20420    fn default() -> Self {
20421        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20422        unsafe {
20423            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20424            s.assume_init()
20425        }
20426    }
20427}
20428impl Default for bpf_attr__bindgen_ty_10 {
20429    fn default() -> Self {
20430        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20431        unsafe {
20432            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20433            s.assume_init()
20434        }
20435    }
20436}
20437impl bpf_attr__bindgen_ty_10 {
20438    #[inline]
20439    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
20440        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
20441        __bindgen_bitfield_unit
20442    }
20443}
20444#[repr(C)]
20445#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20446pub struct bpf_attr__bindgen_ty_11 {
20447    pub name: __u64,
20448    pub prog_fd: __u32,
20449    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
20450    pub cookie: __u64,
20451}
20452impl bpf_attr__bindgen_ty_11 {
20453    #[inline]
20454    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
20455        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
20456        __bindgen_bitfield_unit
20457    }
20458}
20459#[repr(C)]
20460#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20461pub struct bpf_attr__bindgen_ty_12 {
20462    pub btf: __u64,
20463    pub btf_log_buf: __u64,
20464    pub btf_size: __u32,
20465    pub btf_log_size: __u32,
20466    pub btf_log_level: __u32,
20467    pub btf_log_true_size: __u32,
20468    pub btf_flags: __u32,
20469    pub btf_token_fd: __s32,
20470}
20471#[repr(C)]
20472#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20473pub struct bpf_attr__bindgen_ty_13 {
20474    pub pid: __u32,
20475    pub fd: __u32,
20476    pub flags: __u32,
20477    pub buf_len: __u32,
20478    pub buf: __u64,
20479    pub prog_id: __u32,
20480    pub fd_type: __u32,
20481    pub probe_offset: __u64,
20482    pub probe_addr: __u64,
20483}
20484#[repr(C)]
20485#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20486pub struct bpf_attr__bindgen_ty_14 {
20487    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_1,
20488    pub __bindgen_anon_2: bpf_attr__bindgen_ty_14__bindgen_ty_2,
20489    pub attach_type: __u32,
20490    pub flags: __u32,
20491    pub __bindgen_anon_3: bpf_attr__bindgen_ty_14__bindgen_ty_3,
20492}
20493#[repr(C)]
20494#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20495pub union bpf_attr__bindgen_ty_14__bindgen_ty_1 {
20496    pub prog_fd: __u32,
20497    pub map_fd: __u32,
20498}
20499impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_1 {
20500    fn default() -> Self {
20501        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20502        unsafe {
20503            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20504            s.assume_init()
20505        }
20506    }
20507}
20508#[repr(C)]
20509#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20510pub union bpf_attr__bindgen_ty_14__bindgen_ty_2 {
20511    pub target_fd: __u32,
20512    pub target_ifindex: __u32,
20513}
20514impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_2 {
20515    fn default() -> Self {
20516        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20517        unsafe {
20518            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20519            s.assume_init()
20520        }
20521    }
20522}
20523#[repr(C)]
20524#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20525pub union bpf_attr__bindgen_ty_14__bindgen_ty_3 {
20526    pub target_btf_id: __u32,
20527    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_1,
20528    pub perf_event: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_2,
20529    pub kprobe_multi: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_3,
20530    pub tracing: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_4,
20531    pub netfilter: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_5,
20532    pub tcx: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6,
20533    pub uprobe_multi: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_7,
20534    pub netkit: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8,
20535}
20536#[repr(C)]
20537#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20538pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_1 {
20539    pub iter_info: __u64,
20540    pub iter_info_len: __u32,
20541    pub __bindgen_padding_0: [u8; 4usize],
20542}
20543#[repr(C)]
20544#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20545pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_2 {
20546    pub bpf_cookie: __u64,
20547}
20548#[repr(C)]
20549#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20550pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_3 {
20551    pub flags: __u32,
20552    pub cnt: __u32,
20553    pub syms: __u64,
20554    pub addrs: __u64,
20555    pub cookies: __u64,
20556}
20557#[repr(C)]
20558#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20559pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_4 {
20560    pub target_btf_id: __u32,
20561    pub __bindgen_padding_0: [u8; 4usize],
20562    pub cookie: __u64,
20563}
20564#[repr(C)]
20565#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20566pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_5 {
20567    pub pf: __u32,
20568    pub hooknum: __u32,
20569    pub priority: __s32,
20570    pub flags: __u32,
20571}
20572#[repr(C)]
20573#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20574pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6 {
20575    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1,
20576    pub __bindgen_padding_0: [u8; 4usize],
20577    pub expected_revision: __u64,
20578}
20579#[repr(C)]
20580#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20581pub union bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1 {
20582    pub relative_fd: __u32,
20583    pub relative_id: __u32,
20584}
20585impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1 {
20586    fn default() -> Self {
20587        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20588        unsafe {
20589            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20590            s.assume_init()
20591        }
20592    }
20593}
20594impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6 {
20595    fn default() -> Self {
20596        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20597        unsafe {
20598            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20599            s.assume_init()
20600        }
20601    }
20602}
20603#[repr(C)]
20604#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20605pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_7 {
20606    pub path: __u64,
20607    pub offsets: __u64,
20608    pub ref_ctr_offsets: __u64,
20609    pub cookies: __u64,
20610    pub cnt: __u32,
20611    pub flags: __u32,
20612    pub pid: __u32,
20613    pub __bindgen_padding_0: [u8; 4usize],
20614}
20615#[repr(C)]
20616#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20617pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8 {
20618    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1,
20619    pub __bindgen_padding_0: [u8; 4usize],
20620    pub expected_revision: __u64,
20621}
20622#[repr(C)]
20623#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20624pub union bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1 {
20625    pub relative_fd: __u32,
20626    pub relative_id: __u32,
20627}
20628impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1 {
20629    fn default() -> Self {
20630        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20631        unsafe {
20632            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20633            s.assume_init()
20634        }
20635    }
20636}
20637impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8 {
20638    fn default() -> Self {
20639        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20640        unsafe {
20641            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20642            s.assume_init()
20643        }
20644    }
20645}
20646impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3 {
20647    fn default() -> Self {
20648        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20649        unsafe {
20650            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20651            s.assume_init()
20652        }
20653    }
20654}
20655impl Default for bpf_attr__bindgen_ty_14 {
20656    fn default() -> Self {
20657        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20658        unsafe {
20659            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20660            s.assume_init()
20661        }
20662    }
20663}
20664#[repr(C)]
20665#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20666pub struct bpf_attr__bindgen_ty_15 {
20667    pub link_fd: __u32,
20668    pub __bindgen_anon_1: bpf_attr__bindgen_ty_15__bindgen_ty_1,
20669    pub flags: __u32,
20670    pub __bindgen_anon_2: bpf_attr__bindgen_ty_15__bindgen_ty_2,
20671}
20672#[repr(C)]
20673#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20674pub union bpf_attr__bindgen_ty_15__bindgen_ty_1 {
20675    pub new_prog_fd: __u32,
20676    pub new_map_fd: __u32,
20677}
20678impl Default for bpf_attr__bindgen_ty_15__bindgen_ty_1 {
20679    fn default() -> Self {
20680        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20681        unsafe {
20682            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20683            s.assume_init()
20684        }
20685    }
20686}
20687#[repr(C)]
20688#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20689pub union bpf_attr__bindgen_ty_15__bindgen_ty_2 {
20690    pub old_prog_fd: __u32,
20691    pub old_map_fd: __u32,
20692}
20693impl Default for bpf_attr__bindgen_ty_15__bindgen_ty_2 {
20694    fn default() -> Self {
20695        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20696        unsafe {
20697            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20698            s.assume_init()
20699        }
20700    }
20701}
20702impl Default for bpf_attr__bindgen_ty_15 {
20703    fn default() -> Self {
20704        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20705        unsafe {
20706            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20707            s.assume_init()
20708        }
20709    }
20710}
20711#[repr(C)]
20712#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20713pub struct bpf_attr__bindgen_ty_16 {
20714    pub link_fd: __u32,
20715}
20716#[repr(C)]
20717#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20718pub struct bpf_attr__bindgen_ty_17 {
20719    pub type_: __u32,
20720}
20721#[repr(C)]
20722#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20723pub struct bpf_attr__bindgen_ty_18 {
20724    pub link_fd: __u32,
20725    pub flags: __u32,
20726}
20727#[repr(C)]
20728#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20729pub struct bpf_attr__bindgen_ty_19 {
20730    pub prog_fd: __u32,
20731    pub map_fd: __u32,
20732    pub flags: __u32,
20733}
20734#[repr(C)]
20735#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20736pub struct bpf_attr__bindgen_ty_20 {
20737    pub flags: __u32,
20738    pub bpffs_fd: __u32,
20739}
20740impl Default for bpf_attr {
20741    fn default() -> Self {
20742        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20743        unsafe {
20744            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20745            s.assume_init()
20746        }
20747    }
20748}
20749pub const bpf_func_id_BPF_FUNC_unspec: bpf_func_id = 0;
20750pub const bpf_func_id_BPF_FUNC_map_lookup_elem: bpf_func_id = 1;
20751pub const bpf_func_id_BPF_FUNC_map_update_elem: bpf_func_id = 2;
20752pub const bpf_func_id_BPF_FUNC_map_delete_elem: bpf_func_id = 3;
20753pub const bpf_func_id_BPF_FUNC_probe_read: bpf_func_id = 4;
20754pub const bpf_func_id_BPF_FUNC_ktime_get_ns: bpf_func_id = 5;
20755pub const bpf_func_id_BPF_FUNC_trace_printk: bpf_func_id = 6;
20756pub const bpf_func_id_BPF_FUNC_get_prandom_u32: bpf_func_id = 7;
20757pub const bpf_func_id_BPF_FUNC_get_smp_processor_id: bpf_func_id = 8;
20758pub const bpf_func_id_BPF_FUNC_skb_store_bytes: bpf_func_id = 9;
20759pub const bpf_func_id_BPF_FUNC_l3_csum_replace: bpf_func_id = 10;
20760pub const bpf_func_id_BPF_FUNC_l4_csum_replace: bpf_func_id = 11;
20761pub const bpf_func_id_BPF_FUNC_tail_call: bpf_func_id = 12;
20762pub const bpf_func_id_BPF_FUNC_clone_redirect: bpf_func_id = 13;
20763pub const bpf_func_id_BPF_FUNC_get_current_pid_tgid: bpf_func_id = 14;
20764pub const bpf_func_id_BPF_FUNC_get_current_uid_gid: bpf_func_id = 15;
20765pub const bpf_func_id_BPF_FUNC_get_current_comm: bpf_func_id = 16;
20766pub const bpf_func_id_BPF_FUNC_get_cgroup_classid: bpf_func_id = 17;
20767pub const bpf_func_id_BPF_FUNC_skb_vlan_push: bpf_func_id = 18;
20768pub const bpf_func_id_BPF_FUNC_skb_vlan_pop: bpf_func_id = 19;
20769pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_key: bpf_func_id = 20;
20770pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_key: bpf_func_id = 21;
20771pub const bpf_func_id_BPF_FUNC_perf_event_read: bpf_func_id = 22;
20772pub const bpf_func_id_BPF_FUNC_redirect: bpf_func_id = 23;
20773pub const bpf_func_id_BPF_FUNC_get_route_realm: bpf_func_id = 24;
20774pub const bpf_func_id_BPF_FUNC_perf_event_output: bpf_func_id = 25;
20775pub const bpf_func_id_BPF_FUNC_skb_load_bytes: bpf_func_id = 26;
20776pub const bpf_func_id_BPF_FUNC_get_stackid: bpf_func_id = 27;
20777pub const bpf_func_id_BPF_FUNC_csum_diff: bpf_func_id = 28;
20778pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_opt: bpf_func_id = 29;
20779pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_opt: bpf_func_id = 30;
20780pub const bpf_func_id_BPF_FUNC_skb_change_proto: bpf_func_id = 31;
20781pub const bpf_func_id_BPF_FUNC_skb_change_type: bpf_func_id = 32;
20782pub const bpf_func_id_BPF_FUNC_skb_under_cgroup: bpf_func_id = 33;
20783pub const bpf_func_id_BPF_FUNC_get_hash_recalc: bpf_func_id = 34;
20784pub const bpf_func_id_BPF_FUNC_get_current_task: bpf_func_id = 35;
20785pub const bpf_func_id_BPF_FUNC_probe_write_user: bpf_func_id = 36;
20786pub const bpf_func_id_BPF_FUNC_current_task_under_cgroup: bpf_func_id = 37;
20787pub const bpf_func_id_BPF_FUNC_skb_change_tail: bpf_func_id = 38;
20788pub const bpf_func_id_BPF_FUNC_skb_pull_data: bpf_func_id = 39;
20789pub const bpf_func_id_BPF_FUNC_csum_update: bpf_func_id = 40;
20790pub const bpf_func_id_BPF_FUNC_set_hash_invalid: bpf_func_id = 41;
20791pub const bpf_func_id_BPF_FUNC_get_numa_node_id: bpf_func_id = 42;
20792pub const bpf_func_id_BPF_FUNC_skb_change_head: bpf_func_id = 43;
20793pub const bpf_func_id_BPF_FUNC_xdp_adjust_head: bpf_func_id = 44;
20794pub const bpf_func_id_BPF_FUNC_probe_read_str: bpf_func_id = 45;
20795pub const bpf_func_id_BPF_FUNC_get_socket_cookie: bpf_func_id = 46;
20796pub const bpf_func_id_BPF_FUNC_get_socket_uid: bpf_func_id = 47;
20797pub const bpf_func_id_BPF_FUNC_set_hash: bpf_func_id = 48;
20798pub const bpf_func_id_BPF_FUNC_setsockopt: bpf_func_id = 49;
20799pub const bpf_func_id_BPF_FUNC_skb_adjust_room: bpf_func_id = 50;
20800pub const bpf_func_id_BPF_FUNC_redirect_map: bpf_func_id = 51;
20801pub const bpf_func_id_BPF_FUNC_sk_redirect_map: bpf_func_id = 52;
20802pub const bpf_func_id_BPF_FUNC_sock_map_update: bpf_func_id = 53;
20803pub const bpf_func_id_BPF_FUNC_xdp_adjust_meta: bpf_func_id = 54;
20804pub const bpf_func_id_BPF_FUNC_perf_event_read_value: bpf_func_id = 55;
20805pub const bpf_func_id_BPF_FUNC_perf_prog_read_value: bpf_func_id = 56;
20806pub const bpf_func_id_BPF_FUNC_getsockopt: bpf_func_id = 57;
20807pub const bpf_func_id_BPF_FUNC_override_return: bpf_func_id = 58;
20808pub const bpf_func_id_BPF_FUNC_sock_ops_cb_flags_set: bpf_func_id = 59;
20809pub const bpf_func_id_BPF_FUNC_msg_redirect_map: bpf_func_id = 60;
20810pub const bpf_func_id_BPF_FUNC_msg_apply_bytes: bpf_func_id = 61;
20811pub const bpf_func_id_BPF_FUNC_msg_cork_bytes: bpf_func_id = 62;
20812pub const bpf_func_id_BPF_FUNC_msg_pull_data: bpf_func_id = 63;
20813pub const bpf_func_id_BPF_FUNC_bind: bpf_func_id = 64;
20814pub const bpf_func_id_BPF_FUNC_xdp_adjust_tail: bpf_func_id = 65;
20815pub const bpf_func_id_BPF_FUNC_skb_get_xfrm_state: bpf_func_id = 66;
20816pub const bpf_func_id_BPF_FUNC_get_stack: bpf_func_id = 67;
20817pub const bpf_func_id_BPF_FUNC_skb_load_bytes_relative: bpf_func_id = 68;
20818pub const bpf_func_id_BPF_FUNC_fib_lookup: bpf_func_id = 69;
20819pub const bpf_func_id_BPF_FUNC_sock_hash_update: bpf_func_id = 70;
20820pub const bpf_func_id_BPF_FUNC_msg_redirect_hash: bpf_func_id = 71;
20821pub const bpf_func_id_BPF_FUNC_sk_redirect_hash: bpf_func_id = 72;
20822pub const bpf_func_id_BPF_FUNC_lwt_push_encap: bpf_func_id = 73;
20823pub const bpf_func_id_BPF_FUNC_lwt_seg6_store_bytes: bpf_func_id = 74;
20824pub const bpf_func_id_BPF_FUNC_lwt_seg6_adjust_srh: bpf_func_id = 75;
20825pub const bpf_func_id_BPF_FUNC_lwt_seg6_action: bpf_func_id = 76;
20826pub const bpf_func_id_BPF_FUNC_rc_repeat: bpf_func_id = 77;
20827pub const bpf_func_id_BPF_FUNC_rc_keydown: bpf_func_id = 78;
20828pub const bpf_func_id_BPF_FUNC_skb_cgroup_id: bpf_func_id = 79;
20829pub const bpf_func_id_BPF_FUNC_get_current_cgroup_id: bpf_func_id = 80;
20830pub const bpf_func_id_BPF_FUNC_get_local_storage: bpf_func_id = 81;
20831pub const bpf_func_id_BPF_FUNC_sk_select_reuseport: bpf_func_id = 82;
20832pub const bpf_func_id_BPF_FUNC_skb_ancestor_cgroup_id: bpf_func_id = 83;
20833pub const bpf_func_id_BPF_FUNC_sk_lookup_tcp: bpf_func_id = 84;
20834pub const bpf_func_id_BPF_FUNC_sk_lookup_udp: bpf_func_id = 85;
20835pub const bpf_func_id_BPF_FUNC_sk_release: bpf_func_id = 86;
20836pub const bpf_func_id_BPF_FUNC_map_push_elem: bpf_func_id = 87;
20837pub const bpf_func_id_BPF_FUNC_map_pop_elem: bpf_func_id = 88;
20838pub const bpf_func_id_BPF_FUNC_map_peek_elem: bpf_func_id = 89;
20839pub const bpf_func_id_BPF_FUNC_msg_push_data: bpf_func_id = 90;
20840pub const bpf_func_id_BPF_FUNC_msg_pop_data: bpf_func_id = 91;
20841pub const bpf_func_id_BPF_FUNC_rc_pointer_rel: bpf_func_id = 92;
20842pub const bpf_func_id_BPF_FUNC_spin_lock: bpf_func_id = 93;
20843pub const bpf_func_id_BPF_FUNC_spin_unlock: bpf_func_id = 94;
20844pub const bpf_func_id_BPF_FUNC_sk_fullsock: bpf_func_id = 95;
20845pub const bpf_func_id_BPF_FUNC_tcp_sock: bpf_func_id = 96;
20846pub const bpf_func_id_BPF_FUNC_skb_ecn_set_ce: bpf_func_id = 97;
20847pub const bpf_func_id_BPF_FUNC_get_listener_sock: bpf_func_id = 98;
20848pub const bpf_func_id_BPF_FUNC_skc_lookup_tcp: bpf_func_id = 99;
20849pub const bpf_func_id_BPF_FUNC_tcp_check_syncookie: bpf_func_id = 100;
20850pub const bpf_func_id_BPF_FUNC_sysctl_get_name: bpf_func_id = 101;
20851pub const bpf_func_id_BPF_FUNC_sysctl_get_current_value: bpf_func_id = 102;
20852pub const bpf_func_id_BPF_FUNC_sysctl_get_new_value: bpf_func_id = 103;
20853pub const bpf_func_id_BPF_FUNC_sysctl_set_new_value: bpf_func_id = 104;
20854pub const bpf_func_id_BPF_FUNC_strtol: bpf_func_id = 105;
20855pub const bpf_func_id_BPF_FUNC_strtoul: bpf_func_id = 106;
20856pub const bpf_func_id_BPF_FUNC_sk_storage_get: bpf_func_id = 107;
20857pub const bpf_func_id_BPF_FUNC_sk_storage_delete: bpf_func_id = 108;
20858pub const bpf_func_id_BPF_FUNC_send_signal: bpf_func_id = 109;
20859pub const bpf_func_id_BPF_FUNC_tcp_gen_syncookie: bpf_func_id = 110;
20860pub const bpf_func_id_BPF_FUNC_skb_output: bpf_func_id = 111;
20861pub const bpf_func_id_BPF_FUNC_probe_read_user: bpf_func_id = 112;
20862pub const bpf_func_id_BPF_FUNC_probe_read_kernel: bpf_func_id = 113;
20863pub const bpf_func_id_BPF_FUNC_probe_read_user_str: bpf_func_id = 114;
20864pub const bpf_func_id_BPF_FUNC_probe_read_kernel_str: bpf_func_id = 115;
20865pub const bpf_func_id_BPF_FUNC_tcp_send_ack: bpf_func_id = 116;
20866pub const bpf_func_id_BPF_FUNC_send_signal_thread: bpf_func_id = 117;
20867pub const bpf_func_id_BPF_FUNC_jiffies64: bpf_func_id = 118;
20868pub const bpf_func_id_BPF_FUNC_read_branch_records: bpf_func_id = 119;
20869pub const bpf_func_id_BPF_FUNC_get_ns_current_pid_tgid: bpf_func_id = 120;
20870pub const bpf_func_id_BPF_FUNC_xdp_output: bpf_func_id = 121;
20871pub const bpf_func_id_BPF_FUNC_get_netns_cookie: bpf_func_id = 122;
20872pub const bpf_func_id_BPF_FUNC_get_current_ancestor_cgroup_id: bpf_func_id = 123;
20873pub const bpf_func_id_BPF_FUNC_sk_assign: bpf_func_id = 124;
20874pub const bpf_func_id_BPF_FUNC_ktime_get_boot_ns: bpf_func_id = 125;
20875pub const bpf_func_id_BPF_FUNC_seq_printf: bpf_func_id = 126;
20876pub const bpf_func_id_BPF_FUNC_seq_write: bpf_func_id = 127;
20877pub const bpf_func_id_BPF_FUNC_sk_cgroup_id: bpf_func_id = 128;
20878pub const bpf_func_id_BPF_FUNC_sk_ancestor_cgroup_id: bpf_func_id = 129;
20879pub const bpf_func_id_BPF_FUNC_ringbuf_output: bpf_func_id = 130;
20880pub const bpf_func_id_BPF_FUNC_ringbuf_reserve: bpf_func_id = 131;
20881pub const bpf_func_id_BPF_FUNC_ringbuf_submit: bpf_func_id = 132;
20882pub const bpf_func_id_BPF_FUNC_ringbuf_discard: bpf_func_id = 133;
20883pub const bpf_func_id_BPF_FUNC_ringbuf_query: bpf_func_id = 134;
20884pub const bpf_func_id_BPF_FUNC_csum_level: bpf_func_id = 135;
20885pub const bpf_func_id_BPF_FUNC_skc_to_tcp6_sock: bpf_func_id = 136;
20886pub const bpf_func_id_BPF_FUNC_skc_to_tcp_sock: bpf_func_id = 137;
20887pub const bpf_func_id_BPF_FUNC_skc_to_tcp_timewait_sock: bpf_func_id = 138;
20888pub const bpf_func_id_BPF_FUNC_skc_to_tcp_request_sock: bpf_func_id = 139;
20889pub const bpf_func_id_BPF_FUNC_skc_to_udp6_sock: bpf_func_id = 140;
20890pub const bpf_func_id_BPF_FUNC_get_task_stack: bpf_func_id = 141;
20891pub const bpf_func_id_BPF_FUNC_load_hdr_opt: bpf_func_id = 142;
20892pub const bpf_func_id_BPF_FUNC_store_hdr_opt: bpf_func_id = 143;
20893pub const bpf_func_id_BPF_FUNC_reserve_hdr_opt: bpf_func_id = 144;
20894pub const bpf_func_id_BPF_FUNC_inode_storage_get: bpf_func_id = 145;
20895pub const bpf_func_id_BPF_FUNC_inode_storage_delete: bpf_func_id = 146;
20896pub const bpf_func_id_BPF_FUNC_d_path: bpf_func_id = 147;
20897pub const bpf_func_id_BPF_FUNC_copy_from_user: bpf_func_id = 148;
20898pub const bpf_func_id_BPF_FUNC_snprintf_btf: bpf_func_id = 149;
20899pub const bpf_func_id_BPF_FUNC_seq_printf_btf: bpf_func_id = 150;
20900pub const bpf_func_id_BPF_FUNC_skb_cgroup_classid: bpf_func_id = 151;
20901pub const bpf_func_id_BPF_FUNC_redirect_neigh: bpf_func_id = 152;
20902pub const bpf_func_id_BPF_FUNC_per_cpu_ptr: bpf_func_id = 153;
20903pub const bpf_func_id_BPF_FUNC_this_cpu_ptr: bpf_func_id = 154;
20904pub const bpf_func_id_BPF_FUNC_redirect_peer: bpf_func_id = 155;
20905pub const bpf_func_id_BPF_FUNC_task_storage_get: bpf_func_id = 156;
20906pub const bpf_func_id_BPF_FUNC_task_storage_delete: bpf_func_id = 157;
20907pub const bpf_func_id_BPF_FUNC_get_current_task_btf: bpf_func_id = 158;
20908pub const bpf_func_id_BPF_FUNC_bprm_opts_set: bpf_func_id = 159;
20909pub const bpf_func_id_BPF_FUNC_ktime_get_coarse_ns: bpf_func_id = 160;
20910pub const bpf_func_id_BPF_FUNC_ima_inode_hash: bpf_func_id = 161;
20911pub const bpf_func_id_BPF_FUNC_sock_from_file: bpf_func_id = 162;
20912pub const bpf_func_id_BPF_FUNC_check_mtu: bpf_func_id = 163;
20913pub const bpf_func_id_BPF_FUNC_for_each_map_elem: bpf_func_id = 164;
20914pub const bpf_func_id_BPF_FUNC_snprintf: bpf_func_id = 165;
20915pub const bpf_func_id_BPF_FUNC_sys_bpf: bpf_func_id = 166;
20916pub const bpf_func_id_BPF_FUNC_btf_find_by_name_kind: bpf_func_id = 167;
20917pub const bpf_func_id_BPF_FUNC_sys_close: bpf_func_id = 168;
20918pub const bpf_func_id_BPF_FUNC_timer_init: bpf_func_id = 169;
20919pub const bpf_func_id_BPF_FUNC_timer_set_callback: bpf_func_id = 170;
20920pub const bpf_func_id_BPF_FUNC_timer_start: bpf_func_id = 171;
20921pub const bpf_func_id_BPF_FUNC_timer_cancel: bpf_func_id = 172;
20922pub const bpf_func_id_BPF_FUNC_get_func_ip: bpf_func_id = 173;
20923pub const bpf_func_id_BPF_FUNC_get_attach_cookie: bpf_func_id = 174;
20924pub const bpf_func_id_BPF_FUNC_task_pt_regs: bpf_func_id = 175;
20925pub const bpf_func_id_BPF_FUNC_get_branch_snapshot: bpf_func_id = 176;
20926pub const bpf_func_id_BPF_FUNC_trace_vprintk: bpf_func_id = 177;
20927pub const bpf_func_id_BPF_FUNC_skc_to_unix_sock: bpf_func_id = 178;
20928pub const bpf_func_id_BPF_FUNC_kallsyms_lookup_name: bpf_func_id = 179;
20929pub const bpf_func_id_BPF_FUNC_find_vma: bpf_func_id = 180;
20930pub const bpf_func_id_BPF_FUNC_loop: bpf_func_id = 181;
20931pub const bpf_func_id_BPF_FUNC_strncmp: bpf_func_id = 182;
20932pub const bpf_func_id_BPF_FUNC_get_func_arg: bpf_func_id = 183;
20933pub const bpf_func_id_BPF_FUNC_get_func_ret: bpf_func_id = 184;
20934pub const bpf_func_id_BPF_FUNC_get_func_arg_cnt: bpf_func_id = 185;
20935pub const bpf_func_id_BPF_FUNC_get_retval: bpf_func_id = 186;
20936pub const bpf_func_id_BPF_FUNC_set_retval: bpf_func_id = 187;
20937pub const bpf_func_id_BPF_FUNC_xdp_get_buff_len: bpf_func_id = 188;
20938pub const bpf_func_id_BPF_FUNC_xdp_load_bytes: bpf_func_id = 189;
20939pub const bpf_func_id_BPF_FUNC_xdp_store_bytes: bpf_func_id = 190;
20940pub const bpf_func_id_BPF_FUNC_copy_from_user_task: bpf_func_id = 191;
20941pub const bpf_func_id_BPF_FUNC_skb_set_tstamp: bpf_func_id = 192;
20942pub const bpf_func_id_BPF_FUNC_ima_file_hash: bpf_func_id = 193;
20943pub const bpf_func_id_BPF_FUNC_kptr_xchg: bpf_func_id = 194;
20944pub const bpf_func_id_BPF_FUNC_map_lookup_percpu_elem: bpf_func_id = 195;
20945pub const bpf_func_id_BPF_FUNC_skc_to_mptcp_sock: bpf_func_id = 196;
20946pub const bpf_func_id_BPF_FUNC_dynptr_from_mem: bpf_func_id = 197;
20947pub const bpf_func_id_BPF_FUNC_ringbuf_reserve_dynptr: bpf_func_id = 198;
20948pub const bpf_func_id_BPF_FUNC_ringbuf_submit_dynptr: bpf_func_id = 199;
20949pub const bpf_func_id_BPF_FUNC_ringbuf_discard_dynptr: bpf_func_id = 200;
20950pub const bpf_func_id_BPF_FUNC_dynptr_read: bpf_func_id = 201;
20951pub const bpf_func_id_BPF_FUNC_dynptr_write: bpf_func_id = 202;
20952pub const bpf_func_id_BPF_FUNC_dynptr_data: bpf_func_id = 203;
20953pub const bpf_func_id_BPF_FUNC_tcp_raw_gen_syncookie_ipv4: bpf_func_id = 204;
20954pub const bpf_func_id_BPF_FUNC_tcp_raw_gen_syncookie_ipv6: bpf_func_id = 205;
20955pub const bpf_func_id_BPF_FUNC_tcp_raw_check_syncookie_ipv4: bpf_func_id = 206;
20956pub const bpf_func_id_BPF_FUNC_tcp_raw_check_syncookie_ipv6: bpf_func_id = 207;
20957pub const bpf_func_id_BPF_FUNC_ktime_get_tai_ns: bpf_func_id = 208;
20958pub const bpf_func_id_BPF_FUNC_user_ringbuf_drain: bpf_func_id = 209;
20959pub const bpf_func_id_BPF_FUNC_cgrp_storage_get: bpf_func_id = 210;
20960pub const bpf_func_id_BPF_FUNC_cgrp_storage_delete: bpf_func_id = 211;
20961pub const bpf_func_id___BPF_FUNC_MAX_ID: bpf_func_id = 212;
20962pub type bpf_func_id = crate::types::c_uint;
20963pub const BPF_F_RECOMPUTE_CSUM: _bindgen_ty_111 = 1;
20964pub const BPF_F_INVALIDATE_HASH: _bindgen_ty_111 = 2;
20965pub type _bindgen_ty_111 = crate::types::c_uint;
20966pub const BPF_F_HDR_FIELD_MASK: _bindgen_ty_112 = 15;
20967pub type _bindgen_ty_112 = crate::types::c_uint;
20968pub const BPF_F_PSEUDO_HDR: _bindgen_ty_113 = 16;
20969pub const BPF_F_MARK_MANGLED_0: _bindgen_ty_113 = 32;
20970pub const BPF_F_MARK_ENFORCE: _bindgen_ty_113 = 64;
20971pub type _bindgen_ty_113 = crate::types::c_uint;
20972pub const BPF_F_TUNINFO_IPV6: _bindgen_ty_114 = 1;
20973pub type _bindgen_ty_114 = crate::types::c_uint;
20974pub const BPF_F_SKIP_FIELD_MASK: _bindgen_ty_115 = 255;
20975pub const BPF_F_USER_STACK: _bindgen_ty_115 = 256;
20976pub const BPF_F_FAST_STACK_CMP: _bindgen_ty_115 = 512;
20977pub const BPF_F_REUSE_STACKID: _bindgen_ty_115 = 1024;
20978pub const BPF_F_USER_BUILD_ID: _bindgen_ty_115 = 2048;
20979pub type _bindgen_ty_115 = crate::types::c_uint;
20980pub const BPF_F_ZERO_CSUM_TX: _bindgen_ty_116 = 2;
20981pub const BPF_F_DONT_FRAGMENT: _bindgen_ty_116 = 4;
20982pub const BPF_F_SEQ_NUMBER: _bindgen_ty_116 = 8;
20983pub const BPF_F_NO_TUNNEL_KEY: _bindgen_ty_116 = 16;
20984pub type _bindgen_ty_116 = crate::types::c_uint;
20985pub const BPF_F_TUNINFO_FLAGS: _bindgen_ty_117 = 16;
20986pub type _bindgen_ty_117 = crate::types::c_uint;
20987pub const BPF_F_INDEX_MASK: _bindgen_ty_118 = 4294967295;
20988pub const BPF_F_CURRENT_CPU: _bindgen_ty_118 = 4294967295;
20989pub const BPF_F_CTXLEN_MASK: _bindgen_ty_118 = 4503595332403200;
20990pub type _bindgen_ty_118 = crate::types::c_ulong;
20991pub const BPF_F_CURRENT_NETNS: _bindgen_ty_119 = -1;
20992pub type _bindgen_ty_119 = crate::types::c_int;
20993pub const BPF_CSUM_LEVEL_QUERY: _bindgen_ty_120 = 0;
20994pub const BPF_CSUM_LEVEL_INC: _bindgen_ty_120 = 1;
20995pub const BPF_CSUM_LEVEL_DEC: _bindgen_ty_120 = 2;
20996pub const BPF_CSUM_LEVEL_RESET: _bindgen_ty_120 = 3;
20997pub type _bindgen_ty_120 = crate::types::c_uint;
20998pub const BPF_F_ADJ_ROOM_FIXED_GSO: _bindgen_ty_121 = 1;
20999pub const BPF_F_ADJ_ROOM_ENCAP_L3_IPV4: _bindgen_ty_121 = 2;
21000pub const BPF_F_ADJ_ROOM_ENCAP_L3_IPV6: _bindgen_ty_121 = 4;
21001pub const BPF_F_ADJ_ROOM_ENCAP_L4_GRE: _bindgen_ty_121 = 8;
21002pub const BPF_F_ADJ_ROOM_ENCAP_L4_UDP: _bindgen_ty_121 = 16;
21003pub const BPF_F_ADJ_ROOM_NO_CSUM_RESET: _bindgen_ty_121 = 32;
21004pub const BPF_F_ADJ_ROOM_ENCAP_L2_ETH: _bindgen_ty_121 = 64;
21005pub const BPF_F_ADJ_ROOM_DECAP_L3_IPV4: _bindgen_ty_121 = 128;
21006pub const BPF_F_ADJ_ROOM_DECAP_L3_IPV6: _bindgen_ty_121 = 256;
21007pub type _bindgen_ty_121 = crate::types::c_uint;
21008pub const BPF_ADJ_ROOM_ENCAP_L2_MASK: _bindgen_ty_122 = 255;
21009pub const BPF_ADJ_ROOM_ENCAP_L2_SHIFT: _bindgen_ty_122 = 56;
21010pub type _bindgen_ty_122 = crate::types::c_uint;
21011pub const BPF_F_SYSCTL_BASE_NAME: _bindgen_ty_123 = 1;
21012pub type _bindgen_ty_123 = crate::types::c_uint;
21013pub const BPF_LOCAL_STORAGE_GET_F_CREATE: _bindgen_ty_124 = 1;
21014pub const BPF_SK_STORAGE_GET_F_CREATE: _bindgen_ty_124 = 1;
21015pub type _bindgen_ty_124 = crate::types::c_uint;
21016pub const BPF_F_GET_BRANCH_RECORDS_SIZE: _bindgen_ty_125 = 1;
21017pub type _bindgen_ty_125 = crate::types::c_uint;
21018pub const BPF_RB_NO_WAKEUP: _bindgen_ty_126 = 1;
21019pub const BPF_RB_FORCE_WAKEUP: _bindgen_ty_126 = 2;
21020pub type _bindgen_ty_126 = crate::types::c_uint;
21021pub const BPF_RB_AVAIL_DATA: _bindgen_ty_127 = 0;
21022pub const BPF_RB_RING_SIZE: _bindgen_ty_127 = 1;
21023pub const BPF_RB_CONS_POS: _bindgen_ty_127 = 2;
21024pub const BPF_RB_PROD_POS: _bindgen_ty_127 = 3;
21025pub type _bindgen_ty_127 = crate::types::c_uint;
21026pub const BPF_RINGBUF_BUSY_BIT: _bindgen_ty_128 = 2147483648;
21027pub const BPF_RINGBUF_DISCARD_BIT: _bindgen_ty_128 = 1073741824;
21028pub const BPF_RINGBUF_HDR_SZ: _bindgen_ty_128 = 8;
21029pub type _bindgen_ty_128 = crate::types::c_uint;
21030pub const BPF_SK_LOOKUP_F_REPLACE: _bindgen_ty_129 = 1;
21031pub const BPF_SK_LOOKUP_F_NO_REUSEPORT: _bindgen_ty_129 = 2;
21032pub type _bindgen_ty_129 = crate::types::c_uint;
21033pub const bpf_adj_room_mode_BPF_ADJ_ROOM_NET: bpf_adj_room_mode = 0;
21034pub const bpf_adj_room_mode_BPF_ADJ_ROOM_MAC: bpf_adj_room_mode = 1;
21035pub type bpf_adj_room_mode = crate::types::c_uint;
21036pub const bpf_hdr_start_off_BPF_HDR_START_MAC: bpf_hdr_start_off = 0;
21037pub const bpf_hdr_start_off_BPF_HDR_START_NET: bpf_hdr_start_off = 1;
21038pub type bpf_hdr_start_off = crate::types::c_uint;
21039pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_SEG6: bpf_lwt_encap_mode = 0;
21040pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_SEG6_INLINE: bpf_lwt_encap_mode = 1;
21041pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_IP: bpf_lwt_encap_mode = 2;
21042pub type bpf_lwt_encap_mode = crate::types::c_uint;
21043pub const BPF_F_BPRM_SECUREEXEC: _bindgen_ty_130 = 1;
21044pub type _bindgen_ty_130 = crate::types::c_uint;
21045pub const BPF_F_INGRESS: _bindgen_ty_131 = 1;
21046pub const BPF_F_BROADCAST: _bindgen_ty_131 = 8;
21047pub const BPF_F_EXCLUDE_INGRESS: _bindgen_ty_131 = 16;
21048pub type _bindgen_ty_131 = crate::types::c_uint;
21049pub const BPF_SKB_TSTAMP_UNSPEC: _bindgen_ty_132 = 0;
21050pub const BPF_SKB_TSTAMP_DELIVERY_MONO: _bindgen_ty_132 = 1;
21051pub const BPF_SKB_CLOCK_REALTIME: _bindgen_ty_132 = 0;
21052pub const BPF_SKB_CLOCK_MONOTONIC: _bindgen_ty_132 = 1;
21053pub const BPF_SKB_CLOCK_TAI: _bindgen_ty_132 = 2;
21054pub type _bindgen_ty_132 = crate::types::c_uint;
21055#[repr(C)]
21056#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21057pub struct __sk_buff {
21058    pub len: __u32,
21059    pub pkt_type: __u32,
21060    pub mark: __u32,
21061    pub queue_mapping: __u32,
21062    pub protocol: __u32,
21063    pub vlan_present: __u32,
21064    pub vlan_tci: __u32,
21065    pub vlan_proto: __u32,
21066    pub priority: __u32,
21067    pub ingress_ifindex: __u32,
21068    pub ifindex: __u32,
21069    pub tc_index: __u32,
21070    pub cb: [__u32; 5usize],
21071    pub hash: __u32,
21072    pub tc_classid: __u32,
21073    pub data: __u32,
21074    pub data_end: __u32,
21075    pub napi_id: __u32,
21076    pub family: __u32,
21077    pub remote_ip4: __u32,
21078    pub local_ip4: __u32,
21079    pub remote_ip6: [__u32; 4usize],
21080    pub local_ip6: [__u32; 4usize],
21081    pub remote_port: __u32,
21082    pub local_port: __u32,
21083    pub data_meta: __u32,
21084    pub __bindgen_anon_1: __sk_buff__bindgen_ty_1,
21085    pub tstamp: __u64,
21086    pub wire_len: __u32,
21087    pub gso_segs: __u32,
21088    pub __bindgen_anon_2: __sk_buff__bindgen_ty_2,
21089    pub gso_size: __u32,
21090    pub tstamp_type: __u8,
21091    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 3usize]>,
21092    pub hwtstamp: __u64,
21093}
21094#[repr(C)]
21095#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21096pub union __sk_buff__bindgen_ty_1 {
21097    pub flow_keys: uref<bpf_flow_keys>,
21098    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21099}
21100impl Default for __sk_buff__bindgen_ty_1 {
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_1 {
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}
21116#[repr(C)]
21117#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21118pub union __sk_buff__bindgen_ty_2 {
21119    pub sk: uref<bpf_sock>,
21120    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21121}
21122impl Default for __sk_buff__bindgen_ty_2 {
21123    fn default() -> Self {
21124        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21125        unsafe {
21126            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21127            s.assume_init()
21128        }
21129    }
21130}
21131impl __sk_buff__bindgen_ty_2 {
21132    #[inline]
21133    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21134        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21135        __bindgen_bitfield_unit
21136    }
21137}
21138impl Default for __sk_buff {
21139    fn default() -> Self {
21140        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21141        unsafe {
21142            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21143            s.assume_init()
21144        }
21145    }
21146}
21147impl __sk_buff {
21148    #[inline]
21149    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 3usize]> {
21150        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 3usize]> = Default::default();
21151        __bindgen_bitfield_unit
21152    }
21153}
21154#[repr(C)]
21155#[derive(Copy, Clone)]
21156pub struct bpf_tunnel_key {
21157    pub tunnel_id: __u32,
21158    pub __bindgen_anon_1: bpf_tunnel_key__bindgen_ty_1,
21159    pub tunnel_tos: __u8,
21160    pub tunnel_ttl: __u8,
21161    pub __bindgen_anon_2: bpf_tunnel_key__bindgen_ty_2,
21162    pub tunnel_label: __u32,
21163    pub __bindgen_anon_3: bpf_tunnel_key__bindgen_ty_3,
21164}
21165#[repr(C)]
21166#[derive(Copy, Clone)]
21167pub union bpf_tunnel_key__bindgen_ty_1 {
21168    pub remote_ipv4: __u32,
21169    pub remote_ipv6: [__u32; 4usize],
21170}
21171impl Default for bpf_tunnel_key__bindgen_ty_1 {
21172    fn default() -> Self {
21173        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21174        unsafe {
21175            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21176            s.assume_init()
21177        }
21178    }
21179}
21180#[repr(C)]
21181#[derive(Copy, Clone)]
21182pub union bpf_tunnel_key__bindgen_ty_2 {
21183    pub tunnel_ext: __u16,
21184    pub tunnel_flags: __be16,
21185}
21186impl Default for bpf_tunnel_key__bindgen_ty_2 {
21187    fn default() -> Self {
21188        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21189        unsafe {
21190            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21191            s.assume_init()
21192        }
21193    }
21194}
21195#[repr(C)]
21196#[derive(Copy, Clone)]
21197pub union bpf_tunnel_key__bindgen_ty_3 {
21198    pub local_ipv4: __u32,
21199    pub local_ipv6: [__u32; 4usize],
21200}
21201impl Default for bpf_tunnel_key__bindgen_ty_3 {
21202    fn default() -> Self {
21203        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21204        unsafe {
21205            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21206            s.assume_init()
21207        }
21208    }
21209}
21210impl Default for bpf_tunnel_key {
21211    fn default() -> Self {
21212        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21213        unsafe {
21214            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21215            s.assume_init()
21216        }
21217    }
21218}
21219#[repr(C)]
21220#[derive(Copy, Clone)]
21221pub struct bpf_xfrm_state {
21222    pub reqid: __u32,
21223    pub spi: __u32,
21224    pub family: __u16,
21225    pub ext: __u16,
21226    pub __bindgen_anon_1: bpf_xfrm_state__bindgen_ty_1,
21227}
21228#[repr(C)]
21229#[derive(Copy, Clone)]
21230pub union bpf_xfrm_state__bindgen_ty_1 {
21231    pub remote_ipv4: __u32,
21232    pub remote_ipv6: [__u32; 4usize],
21233}
21234impl Default for bpf_xfrm_state__bindgen_ty_1 {
21235    fn default() -> Self {
21236        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21237        unsafe {
21238            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21239            s.assume_init()
21240        }
21241    }
21242}
21243impl Default for bpf_xfrm_state {
21244    fn default() -> Self {
21245        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21246        unsafe {
21247            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21248            s.assume_init()
21249        }
21250    }
21251}
21252pub const bpf_ret_code_BPF_OK: bpf_ret_code = 0;
21253pub const bpf_ret_code_BPF_DROP: bpf_ret_code = 2;
21254pub const bpf_ret_code_BPF_REDIRECT: bpf_ret_code = 7;
21255pub const bpf_ret_code_BPF_LWT_REROUTE: bpf_ret_code = 128;
21256pub const bpf_ret_code_BPF_FLOW_DISSECTOR_CONTINUE: bpf_ret_code = 129;
21257pub type bpf_ret_code = crate::types::c_uint;
21258#[repr(C)]
21259#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21260pub struct bpf_sock {
21261    pub bound_dev_if: __u32,
21262    pub family: __u32,
21263    pub type_: __u32,
21264    pub protocol: __u32,
21265    pub mark: __u32,
21266    pub priority: __u32,
21267    pub src_ip4: __u32,
21268    pub src_ip6: [__u32; 4usize],
21269    pub src_port: __u32,
21270    pub dst_port: __be16,
21271    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
21272    pub dst_ip4: __u32,
21273    pub dst_ip6: [__u32; 4usize],
21274    pub state: __u32,
21275    pub rx_queue_mapping: __s32,
21276}
21277impl bpf_sock {
21278    #[inline]
21279    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 2usize]> {
21280        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
21281        __bindgen_bitfield_unit
21282    }
21283}
21284#[repr(C)]
21285#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21286pub struct bpf_tcp_sock {
21287    pub snd_cwnd: __u32,
21288    pub srtt_us: __u32,
21289    pub rtt_min: __u32,
21290    pub snd_ssthresh: __u32,
21291    pub rcv_nxt: __u32,
21292    pub snd_nxt: __u32,
21293    pub snd_una: __u32,
21294    pub mss_cache: __u32,
21295    pub ecn_flags: __u32,
21296    pub rate_delivered: __u32,
21297    pub rate_interval_us: __u32,
21298    pub packets_out: __u32,
21299    pub retrans_out: __u32,
21300    pub total_retrans: __u32,
21301    pub segs_in: __u32,
21302    pub data_segs_in: __u32,
21303    pub segs_out: __u32,
21304    pub data_segs_out: __u32,
21305    pub lost_out: __u32,
21306    pub sacked_out: __u32,
21307    pub bytes_received: __u64,
21308    pub bytes_acked: __u64,
21309    pub dsack_dups: __u32,
21310    pub delivered: __u32,
21311    pub delivered_ce: __u32,
21312    pub icsk_retransmits: __u32,
21313}
21314#[repr(C)]
21315#[derive(Copy, Clone)]
21316pub struct bpf_sock_tuple {
21317    pub __bindgen_anon_1: bpf_sock_tuple__bindgen_ty_1,
21318}
21319#[repr(C)]
21320#[derive(Copy, Clone)]
21321pub union bpf_sock_tuple__bindgen_ty_1 {
21322    pub ipv4: bpf_sock_tuple__bindgen_ty_1__bindgen_ty_1,
21323    pub ipv6: bpf_sock_tuple__bindgen_ty_1__bindgen_ty_2,
21324}
21325#[repr(C)]
21326#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21327pub struct bpf_sock_tuple__bindgen_ty_1__bindgen_ty_1 {
21328    pub saddr: __be32,
21329    pub daddr: __be32,
21330    pub sport: __be16,
21331    pub dport: __be16,
21332}
21333#[repr(C)]
21334#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21335pub struct bpf_sock_tuple__bindgen_ty_1__bindgen_ty_2 {
21336    pub saddr: [__be32; 4usize],
21337    pub daddr: [__be32; 4usize],
21338    pub sport: __be16,
21339    pub dport: __be16,
21340}
21341impl Default for bpf_sock_tuple__bindgen_ty_1 {
21342    fn default() -> Self {
21343        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21344        unsafe {
21345            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21346            s.assume_init()
21347        }
21348    }
21349}
21350impl Default for bpf_sock_tuple {
21351    fn default() -> Self {
21352        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21353        unsafe {
21354            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21355            s.assume_init()
21356        }
21357    }
21358}
21359pub const tcx_action_base_TCX_NEXT: tcx_action_base = -1;
21360pub const tcx_action_base_TCX_PASS: tcx_action_base = 0;
21361pub const tcx_action_base_TCX_DROP: tcx_action_base = 2;
21362pub const tcx_action_base_TCX_REDIRECT: tcx_action_base = 7;
21363pub type tcx_action_base = crate::types::c_int;
21364#[repr(C)]
21365#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21366pub struct bpf_xdp_sock {
21367    pub queue_id: __u32,
21368}
21369pub const xdp_action_XDP_ABORTED: xdp_action = 0;
21370pub const xdp_action_XDP_DROP: xdp_action = 1;
21371pub const xdp_action_XDP_PASS: xdp_action = 2;
21372pub const xdp_action_XDP_TX: xdp_action = 3;
21373pub const xdp_action_XDP_REDIRECT: xdp_action = 4;
21374pub type xdp_action = crate::types::c_uint;
21375#[repr(C)]
21376#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21377pub struct xdp_md {
21378    pub data: __u32,
21379    pub data_end: __u32,
21380    pub data_meta: __u32,
21381    pub ingress_ifindex: __u32,
21382    pub rx_queue_index: __u32,
21383    pub egress_ifindex: __u32,
21384}
21385#[repr(C)]
21386#[derive(Copy, Clone)]
21387pub struct bpf_devmap_val {
21388    pub ifindex: __u32,
21389    pub bpf_prog: bpf_devmap_val__bindgen_ty_1,
21390}
21391#[repr(C)]
21392#[derive(Copy, Clone)]
21393pub union bpf_devmap_val__bindgen_ty_1 {
21394    pub fd: crate::types::c_int,
21395    pub id: __u32,
21396}
21397impl Default for bpf_devmap_val__bindgen_ty_1 {
21398    fn default() -> Self {
21399        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21400        unsafe {
21401            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21402            s.assume_init()
21403        }
21404    }
21405}
21406impl Default for bpf_devmap_val {
21407    fn default() -> Self {
21408        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21409        unsafe {
21410            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21411            s.assume_init()
21412        }
21413    }
21414}
21415#[repr(C)]
21416#[derive(Copy, Clone)]
21417pub struct bpf_cpumap_val {
21418    pub qsize: __u32,
21419    pub bpf_prog: bpf_cpumap_val__bindgen_ty_1,
21420}
21421#[repr(C)]
21422#[derive(Copy, Clone)]
21423pub union bpf_cpumap_val__bindgen_ty_1 {
21424    pub fd: crate::types::c_int,
21425    pub id: __u32,
21426}
21427impl Default for bpf_cpumap_val__bindgen_ty_1 {
21428    fn default() -> Self {
21429        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21430        unsafe {
21431            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21432            s.assume_init()
21433        }
21434    }
21435}
21436impl Default for bpf_cpumap_val {
21437    fn default() -> Self {
21438        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21439        unsafe {
21440            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21441            s.assume_init()
21442        }
21443    }
21444}
21445pub const sk_action_SK_DROP: sk_action = 0;
21446pub const sk_action_SK_PASS: sk_action = 1;
21447pub type sk_action = crate::types::c_uint;
21448#[repr(C)]
21449#[derive(Copy, Clone)]
21450pub struct sk_msg_md {
21451    pub __bindgen_anon_1: sk_msg_md__bindgen_ty_1,
21452    pub __bindgen_anon_2: sk_msg_md__bindgen_ty_2,
21453    pub family: __u32,
21454    pub remote_ip4: __u32,
21455    pub local_ip4: __u32,
21456    pub remote_ip6: [__u32; 4usize],
21457    pub local_ip6: [__u32; 4usize],
21458    pub remote_port: __u32,
21459    pub local_port: __u32,
21460    pub size: __u32,
21461    pub __bindgen_anon_3: sk_msg_md__bindgen_ty_3,
21462}
21463#[repr(C)]
21464#[derive(Copy, Clone)]
21465pub union sk_msg_md__bindgen_ty_1 {
21466    pub data: uaddr,
21467    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21468}
21469impl Default for sk_msg_md__bindgen_ty_1 {
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_1 {
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_2 {
21488    pub data_end: uaddr,
21489    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21490}
21491impl Default for sk_msg_md__bindgen_ty_2 {
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_2 {
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}
21507#[repr(C)]
21508#[derive(Copy, Clone)]
21509pub union sk_msg_md__bindgen_ty_3 {
21510    pub sk: uref<bpf_sock>,
21511    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21512}
21513impl Default for sk_msg_md__bindgen_ty_3 {
21514    fn default() -> Self {
21515        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21516        unsafe {
21517            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21518            s.assume_init()
21519        }
21520    }
21521}
21522impl sk_msg_md__bindgen_ty_3 {
21523    #[inline]
21524    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21525        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21526        __bindgen_bitfield_unit
21527    }
21528}
21529impl Default for sk_msg_md {
21530    fn default() -> Self {
21531        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21532        unsafe {
21533            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21534            s.assume_init()
21535        }
21536    }
21537}
21538#[repr(C)]
21539#[derive(Copy, Clone)]
21540pub struct sk_reuseport_md {
21541    pub __bindgen_anon_1: sk_reuseport_md__bindgen_ty_1,
21542    pub __bindgen_anon_2: sk_reuseport_md__bindgen_ty_2,
21543    pub len: __u32,
21544    pub eth_protocol: __u32,
21545    pub ip_protocol: __u32,
21546    pub bind_inany: __u32,
21547    pub hash: __u32,
21548    pub __bindgen_padding_0: [u8; 4usize],
21549    pub __bindgen_anon_3: sk_reuseport_md__bindgen_ty_3,
21550    pub __bindgen_anon_4: sk_reuseport_md__bindgen_ty_4,
21551}
21552#[repr(C)]
21553#[derive(Copy, Clone)]
21554pub union sk_reuseport_md__bindgen_ty_1 {
21555    pub data: uaddr,
21556    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21557}
21558impl Default for sk_reuseport_md__bindgen_ty_1 {
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_1 {
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_2 {
21577    pub data_end: uaddr,
21578    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21579}
21580impl Default for sk_reuseport_md__bindgen_ty_2 {
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_2 {
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_3 {
21599    pub sk: uref<bpf_sock>,
21600    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21601}
21602impl Default for sk_reuseport_md__bindgen_ty_3 {
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_3 {
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}
21618#[repr(C)]
21619#[derive(Copy, Clone)]
21620pub union sk_reuseport_md__bindgen_ty_4 {
21621    pub migrating_sk: uref<bpf_sock>,
21622    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21623}
21624impl Default for sk_reuseport_md__bindgen_ty_4 {
21625    fn default() -> Self {
21626        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21627        unsafe {
21628            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21629            s.assume_init()
21630        }
21631    }
21632}
21633impl sk_reuseport_md__bindgen_ty_4 {
21634    #[inline]
21635    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21636        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21637        __bindgen_bitfield_unit
21638    }
21639}
21640impl Default for sk_reuseport_md {
21641    fn default() -> Self {
21642        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21643        unsafe {
21644            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21645            s.assume_init()
21646        }
21647    }
21648}
21649#[repr(C)]
21650#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
21651pub struct bpf_prog_info {
21652    pub type_: __u32,
21653    pub id: __u32,
21654    pub tag: [__u8; 8usize],
21655    pub jited_prog_len: __u32,
21656    pub xlated_prog_len: __u32,
21657    pub jited_prog_insns: __u64,
21658    pub xlated_prog_insns: __u64,
21659    pub load_time: __u64,
21660    pub created_by_uid: __u32,
21661    pub nr_map_ids: __u32,
21662    pub map_ids: __u64,
21663    pub name: [crate::types::c_char; 16usize],
21664    pub ifindex: __u32,
21665    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21666    pub netns_dev: __u64,
21667    pub netns_ino: __u64,
21668    pub nr_jited_ksyms: __u32,
21669    pub nr_jited_func_lens: __u32,
21670    pub jited_ksyms: __u64,
21671    pub jited_func_lens: __u64,
21672    pub btf_id: __u32,
21673    pub func_info_rec_size: __u32,
21674    pub func_info: __u64,
21675    pub nr_func_info: __u32,
21676    pub nr_line_info: __u32,
21677    pub line_info: __u64,
21678    pub jited_line_info: __u64,
21679    pub nr_jited_line_info: __u32,
21680    pub line_info_rec_size: __u32,
21681    pub jited_line_info_rec_size: __u32,
21682    pub nr_prog_tags: __u32,
21683    pub prog_tags: __u64,
21684    pub run_time_ns: __u64,
21685    pub run_cnt: __u64,
21686    pub recursion_misses: __u64,
21687    pub verified_insns: __u32,
21688    pub attach_btf_obj_id: __u32,
21689    pub attach_btf_id: __u32,
21690    pub __bindgen_padding_0: [u8; 4usize],
21691}
21692impl bpf_prog_info {
21693    #[inline]
21694    pub fn gpl_compatible(&self) -> __u32 {
21695        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u32) }
21696    }
21697    #[inline]
21698    pub fn set_gpl_compatible(&mut self, val: __u32) {
21699        unsafe {
21700            let val: u32 = val as _;
21701            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
21702        }
21703    }
21704    #[inline]
21705    pub unsafe fn gpl_compatible_raw(this: *const Self) -> __u32 {
21706        unsafe {
21707            ::std::mem::transmute(
21708                <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<0usize, 1u8>(
21709                    ::std::ptr::addr_of!((*this)._bitfield_1),
21710                ) as u32,
21711            )
21712        }
21713    }
21714    #[inline]
21715    pub unsafe fn set_gpl_compatible_raw(this: *mut Self, val: __u32) {
21716        unsafe {
21717            let val: u32 = val as _;
21718            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<0usize, 1u8>(
21719                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
21720                val as u64,
21721            )
21722        }
21723    }
21724    #[inline]
21725    pub fn new_bitfield_1(gpl_compatible: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
21726        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21727        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
21728            let gpl_compatible: u32 = gpl_compatible as _;
21729            gpl_compatible as u64
21730        });
21731        __bindgen_bitfield_unit
21732    }
21733}
21734#[repr(C)]
21735#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21736pub struct bpf_map_info {
21737    pub type_: __u32,
21738    pub id: __u32,
21739    pub key_size: __u32,
21740    pub value_size: __u32,
21741    pub max_entries: __u32,
21742    pub map_flags: __u32,
21743    pub name: [crate::types::c_char; 16usize],
21744    pub ifindex: __u32,
21745    pub btf_vmlinux_value_type_id: __u32,
21746    pub netns_dev: __u64,
21747    pub netns_ino: __u64,
21748    pub btf_id: __u32,
21749    pub btf_key_type_id: __u32,
21750    pub btf_value_type_id: __u32,
21751    pub btf_vmlinux_id: __u32,
21752    pub map_extra: __u64,
21753}
21754#[repr(C)]
21755#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21756pub struct bpf_btf_info {
21757    pub btf: __u64,
21758    pub btf_size: __u32,
21759    pub id: __u32,
21760    pub name: __u64,
21761    pub name_len: __u32,
21762    pub kernel_btf: __u32,
21763}
21764#[repr(C)]
21765#[derive(Copy, Clone)]
21766pub struct bpf_link_info {
21767    pub type_: __u32,
21768    pub id: __u32,
21769    pub prog_id: __u32,
21770    pub __bindgen_padding_0: [u8; 4usize],
21771    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1,
21772}
21773#[repr(C)]
21774#[derive(Copy, Clone)]
21775pub union bpf_link_info__bindgen_ty_1 {
21776    pub raw_tracepoint: bpf_link_info__bindgen_ty_1__bindgen_ty_1,
21777    pub tracing: bpf_link_info__bindgen_ty_1__bindgen_ty_2,
21778    pub cgroup: bpf_link_info__bindgen_ty_1__bindgen_ty_3,
21779    pub iter: bpf_link_info__bindgen_ty_1__bindgen_ty_4,
21780    pub netns: bpf_link_info__bindgen_ty_1__bindgen_ty_5,
21781    pub xdp: bpf_link_info__bindgen_ty_1__bindgen_ty_6,
21782    pub struct_ops: bpf_link_info__bindgen_ty_1__bindgen_ty_7,
21783    pub netfilter: bpf_link_info__bindgen_ty_1__bindgen_ty_8,
21784    pub kprobe_multi: bpf_link_info__bindgen_ty_1__bindgen_ty_9,
21785    pub uprobe_multi: bpf_link_info__bindgen_ty_1__bindgen_ty_10,
21786    pub perf_event: bpf_link_info__bindgen_ty_1__bindgen_ty_11,
21787    pub tcx: bpf_link_info__bindgen_ty_1__bindgen_ty_12,
21788    pub netkit: bpf_link_info__bindgen_ty_1__bindgen_ty_13,
21789    pub sockmap: bpf_link_info__bindgen_ty_1__bindgen_ty_14,
21790}
21791#[repr(C)]
21792#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21793pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_1 {
21794    pub tp_name: __u64,
21795    pub tp_name_len: __u32,
21796    pub __bindgen_padding_0: [u8; 4usize],
21797}
21798#[repr(C)]
21799#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21800pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_2 {
21801    pub attach_type: __u32,
21802    pub target_obj_id: __u32,
21803    pub target_btf_id: __u32,
21804}
21805#[repr(C)]
21806#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21807pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_3 {
21808    pub cgroup_id: __u64,
21809    pub attach_type: __u32,
21810    pub __bindgen_padding_0: [u8; 4usize],
21811}
21812#[repr(C)]
21813#[derive(Copy, Clone)]
21814pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4 {
21815    pub target_name: __u64,
21816    pub target_name_len: __u32,
21817    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1,
21818    pub __bindgen_anon_2: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2,
21819}
21820#[repr(C)]
21821#[derive(Copy, Clone)]
21822pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 {
21823    pub map: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1,
21824}
21825#[repr(C)]
21826#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21827pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 {
21828    pub map_id: __u32,
21829}
21830impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 {
21831    fn default() -> Self {
21832        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21833        unsafe {
21834            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21835            s.assume_init()
21836        }
21837    }
21838}
21839#[repr(C)]
21840#[derive(Copy, Clone)]
21841pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2 {
21842    pub cgroup: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_1,
21843    pub task: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_2,
21844}
21845#[repr(C)]
21846#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21847pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_1 {
21848    pub cgroup_id: __u64,
21849    pub order: __u32,
21850    pub __bindgen_padding_0: [u8; 4usize],
21851}
21852#[repr(C)]
21853#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21854pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_2 {
21855    pub tid: __u32,
21856    pub pid: __u32,
21857}
21858impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2 {
21859    fn default() -> Self {
21860        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21861        unsafe {
21862            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21863            s.assume_init()
21864        }
21865    }
21866}
21867impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4 {
21868    fn default() -> Self {
21869        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21870        unsafe {
21871            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21872            s.assume_init()
21873        }
21874    }
21875}
21876#[repr(C)]
21877#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21878pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_5 {
21879    pub netns_ino: __u32,
21880    pub attach_type: __u32,
21881}
21882#[repr(C)]
21883#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21884pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_6 {
21885    pub ifindex: __u32,
21886}
21887#[repr(C)]
21888#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21889pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_7 {
21890    pub map_id: __u32,
21891}
21892#[repr(C)]
21893#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21894pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_8 {
21895    pub pf: __u32,
21896    pub hooknum: __u32,
21897    pub priority: __s32,
21898    pub flags: __u32,
21899}
21900#[repr(C)]
21901#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21902pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_9 {
21903    pub addrs: __u64,
21904    pub count: __u32,
21905    pub flags: __u32,
21906    pub missed: __u64,
21907    pub cookies: __u64,
21908}
21909#[repr(C)]
21910#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21911pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_10 {
21912    pub path: __u64,
21913    pub offsets: __u64,
21914    pub ref_ctr_offsets: __u64,
21915    pub cookies: __u64,
21916    pub path_size: __u32,
21917    pub count: __u32,
21918    pub flags: __u32,
21919    pub pid: __u32,
21920}
21921#[repr(C)]
21922#[derive(Copy, Clone)]
21923pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
21924    pub type_: __u32,
21925    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21926    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1,
21927}
21928#[repr(C)]
21929#[derive(Copy, Clone)]
21930pub union bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1 {
21931    pub uprobe: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_1,
21932    pub kprobe: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_2,
21933    pub tracepoint: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3,
21934    pub event: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4,
21935}
21936#[repr(C)]
21937#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21938pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_1 {
21939    pub file_name: __u64,
21940    pub name_len: __u32,
21941    pub offset: __u32,
21942    pub cookie: __u64,
21943}
21944#[repr(C)]
21945#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21946pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_2 {
21947    pub func_name: __u64,
21948    pub name_len: __u32,
21949    pub offset: __u32,
21950    pub addr: __u64,
21951    pub missed: __u64,
21952    pub cookie: __u64,
21953}
21954#[repr(C)]
21955#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21956pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3 {
21957    pub tp_name: __u64,
21958    pub name_len: __u32,
21959    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21960    pub cookie: __u64,
21961}
21962impl bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3 {
21963    #[inline]
21964    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
21965        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21966        __bindgen_bitfield_unit
21967    }
21968}
21969#[repr(C)]
21970#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21971pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4 {
21972    pub config: __u64,
21973    pub type_: __u32,
21974    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21975    pub cookie: __u64,
21976}
21977impl bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4 {
21978    #[inline]
21979    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
21980        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21981        __bindgen_bitfield_unit
21982    }
21983}
21984impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1 {
21985    fn default() -> Self {
21986        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21987        unsafe {
21988            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21989            s.assume_init()
21990        }
21991    }
21992}
21993impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
21994    fn default() -> Self {
21995        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21996        unsafe {
21997            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21998            s.assume_init()
21999        }
22000    }
22001}
22002impl bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
22003    #[inline]
22004    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
22005        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
22006        __bindgen_bitfield_unit
22007    }
22008}
22009#[repr(C)]
22010#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22011pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_12 {
22012    pub ifindex: __u32,
22013    pub attach_type: __u32,
22014}
22015#[repr(C)]
22016#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22017pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_13 {
22018    pub ifindex: __u32,
22019    pub attach_type: __u32,
22020}
22021#[repr(C)]
22022#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22023pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_14 {
22024    pub map_id: __u32,
22025    pub attach_type: __u32,
22026}
22027impl Default for bpf_link_info__bindgen_ty_1 {
22028    fn default() -> Self {
22029        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22030        unsafe {
22031            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22032            s.assume_init()
22033        }
22034    }
22035}
22036impl Default for bpf_link_info {
22037    fn default() -> Self {
22038        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22039        unsafe {
22040            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22041            s.assume_init()
22042        }
22043    }
22044}
22045#[repr(C)]
22046#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22047pub struct bpf_sock_addr {
22048    pub user_family: __u32,
22049    pub user_ip4: __u32,
22050    pub user_ip6: [__u32; 4usize],
22051    pub user_port: __u32,
22052    pub family: __u32,
22053    pub type_: __u32,
22054    pub protocol: __u32,
22055    pub msg_src_ip4: __u32,
22056    pub msg_src_ip6: [__u32; 4usize],
22057    pub __bindgen_padding_0: [u8; 4usize],
22058    pub __bindgen_anon_1: bpf_sock_addr__bindgen_ty_1,
22059}
22060#[repr(C)]
22061#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22062pub union bpf_sock_addr__bindgen_ty_1 {
22063    pub sk: uref<bpf_sock>,
22064    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22065}
22066impl Default for bpf_sock_addr__bindgen_ty_1 {
22067    fn default() -> Self {
22068        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22069        unsafe {
22070            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22071            s.assume_init()
22072        }
22073    }
22074}
22075impl bpf_sock_addr__bindgen_ty_1 {
22076    #[inline]
22077    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22078        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22079        __bindgen_bitfield_unit
22080    }
22081}
22082impl Default for bpf_sock_addr {
22083    fn default() -> Self {
22084        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22085        unsafe {
22086            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22087            s.assume_init()
22088        }
22089    }
22090}
22091#[repr(C)]
22092#[derive(Copy, Clone)]
22093pub struct bpf_sock_ops {
22094    pub op: __u32,
22095    pub __bindgen_anon_1: bpf_sock_ops__bindgen_ty_1,
22096    pub family: __u32,
22097    pub remote_ip4: __u32,
22098    pub local_ip4: __u32,
22099    pub remote_ip6: [__u32; 4usize],
22100    pub local_ip6: [__u32; 4usize],
22101    pub remote_port: __u32,
22102    pub local_port: __u32,
22103    pub is_fullsock: __u32,
22104    pub snd_cwnd: __u32,
22105    pub srtt_us: __u32,
22106    pub bpf_sock_ops_cb_flags: __u32,
22107    pub state: __u32,
22108    pub rtt_min: __u32,
22109    pub snd_ssthresh: __u32,
22110    pub rcv_nxt: __u32,
22111    pub snd_nxt: __u32,
22112    pub snd_una: __u32,
22113    pub mss_cache: __u32,
22114    pub ecn_flags: __u32,
22115    pub rate_delivered: __u32,
22116    pub rate_interval_us: __u32,
22117    pub packets_out: __u32,
22118    pub retrans_out: __u32,
22119    pub total_retrans: __u32,
22120    pub segs_in: __u32,
22121    pub data_segs_in: __u32,
22122    pub segs_out: __u32,
22123    pub data_segs_out: __u32,
22124    pub lost_out: __u32,
22125    pub sacked_out: __u32,
22126    pub sk_txhash: __u32,
22127    pub bytes_received: __u64,
22128    pub bytes_acked: __u64,
22129    pub __bindgen_anon_2: bpf_sock_ops__bindgen_ty_2,
22130    pub __bindgen_anon_3: bpf_sock_ops__bindgen_ty_3,
22131    pub __bindgen_anon_4: bpf_sock_ops__bindgen_ty_4,
22132    pub skb_len: __u32,
22133    pub skb_tcp_flags: __u32,
22134    pub skb_hwtstamp: __u64,
22135}
22136#[repr(C)]
22137#[derive(Copy, Clone)]
22138pub union bpf_sock_ops__bindgen_ty_1 {
22139    pub args: [__u32; 4usize],
22140    pub reply: __u32,
22141    pub replylong: [__u32; 4usize],
22142}
22143impl Default for bpf_sock_ops__bindgen_ty_1 {
22144    fn default() -> Self {
22145        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22146        unsafe {
22147            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22148            s.assume_init()
22149        }
22150    }
22151}
22152#[repr(C)]
22153#[derive(Copy, Clone)]
22154pub union bpf_sock_ops__bindgen_ty_2 {
22155    pub sk: uref<bpf_sock>,
22156    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22157}
22158impl Default for bpf_sock_ops__bindgen_ty_2 {
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_2 {
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_3 {
22177    pub skb_data: uaddr,
22178    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22179}
22180impl Default for bpf_sock_ops__bindgen_ty_3 {
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_3 {
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}
22196#[repr(C)]
22197#[derive(Copy, Clone)]
22198pub union bpf_sock_ops__bindgen_ty_4 {
22199    pub skb_data_end: uaddr,
22200    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22201}
22202impl Default for bpf_sock_ops__bindgen_ty_4 {
22203    fn default() -> Self {
22204        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22205        unsafe {
22206            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22207            s.assume_init()
22208        }
22209    }
22210}
22211impl bpf_sock_ops__bindgen_ty_4 {
22212    #[inline]
22213    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22214        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22215        __bindgen_bitfield_unit
22216    }
22217}
22218impl Default for bpf_sock_ops {
22219    fn default() -> Self {
22220        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22221        unsafe {
22222            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22223            s.assume_init()
22224        }
22225    }
22226}
22227pub const BPF_SOCK_OPS_RTO_CB_FLAG: _bindgen_ty_133 = 1;
22228pub const BPF_SOCK_OPS_RETRANS_CB_FLAG: _bindgen_ty_133 = 2;
22229pub const BPF_SOCK_OPS_STATE_CB_FLAG: _bindgen_ty_133 = 4;
22230pub const BPF_SOCK_OPS_RTT_CB_FLAG: _bindgen_ty_133 = 8;
22231pub const BPF_SOCK_OPS_PARSE_ALL_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 16;
22232pub const BPF_SOCK_OPS_PARSE_UNKNOWN_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 32;
22233pub const BPF_SOCK_OPS_WRITE_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 64;
22234pub const BPF_SOCK_OPS_ALL_CB_FLAGS: _bindgen_ty_133 = 127;
22235pub type _bindgen_ty_133 = crate::types::c_uint;
22236pub const BPF_SOCK_OPS_VOID: _bindgen_ty_134 = 0;
22237pub const BPF_SOCK_OPS_TIMEOUT_INIT: _bindgen_ty_134 = 1;
22238pub const BPF_SOCK_OPS_RWND_INIT: _bindgen_ty_134 = 2;
22239pub const BPF_SOCK_OPS_TCP_CONNECT_CB: _bindgen_ty_134 = 3;
22240pub const BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB: _bindgen_ty_134 = 4;
22241pub const BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB: _bindgen_ty_134 = 5;
22242pub const BPF_SOCK_OPS_NEEDS_ECN: _bindgen_ty_134 = 6;
22243pub const BPF_SOCK_OPS_BASE_RTT: _bindgen_ty_134 = 7;
22244pub const BPF_SOCK_OPS_RTO_CB: _bindgen_ty_134 = 8;
22245pub const BPF_SOCK_OPS_RETRANS_CB: _bindgen_ty_134 = 9;
22246pub const BPF_SOCK_OPS_STATE_CB: _bindgen_ty_134 = 10;
22247pub const BPF_SOCK_OPS_TCP_LISTEN_CB: _bindgen_ty_134 = 11;
22248pub const BPF_SOCK_OPS_RTT_CB: _bindgen_ty_134 = 12;
22249pub const BPF_SOCK_OPS_PARSE_HDR_OPT_CB: _bindgen_ty_134 = 13;
22250pub const BPF_SOCK_OPS_HDR_OPT_LEN_CB: _bindgen_ty_134 = 14;
22251pub const BPF_SOCK_OPS_WRITE_HDR_OPT_CB: _bindgen_ty_134 = 15;
22252pub type _bindgen_ty_134 = crate::types::c_uint;
22253pub const BPF_TCP_ESTABLISHED: _bindgen_ty_135 = 1;
22254pub const BPF_TCP_SYN_SENT: _bindgen_ty_135 = 2;
22255pub const BPF_TCP_SYN_RECV: _bindgen_ty_135 = 3;
22256pub const BPF_TCP_FIN_WAIT1: _bindgen_ty_135 = 4;
22257pub const BPF_TCP_FIN_WAIT2: _bindgen_ty_135 = 5;
22258pub const BPF_TCP_TIME_WAIT: _bindgen_ty_135 = 6;
22259pub const BPF_TCP_CLOSE: _bindgen_ty_135 = 7;
22260pub const BPF_TCP_CLOSE_WAIT: _bindgen_ty_135 = 8;
22261pub const BPF_TCP_LAST_ACK: _bindgen_ty_135 = 9;
22262pub const BPF_TCP_LISTEN: _bindgen_ty_135 = 10;
22263pub const BPF_TCP_CLOSING: _bindgen_ty_135 = 11;
22264pub const BPF_TCP_NEW_SYN_RECV: _bindgen_ty_135 = 12;
22265pub const BPF_TCP_BOUND_INACTIVE: _bindgen_ty_135 = 13;
22266pub const BPF_TCP_MAX_STATES: _bindgen_ty_135 = 14;
22267pub type _bindgen_ty_135 = crate::types::c_uint;
22268pub const TCP_BPF_IW: _bindgen_ty_136 = 1001;
22269pub const TCP_BPF_SNDCWND_CLAMP: _bindgen_ty_136 = 1002;
22270pub const TCP_BPF_DELACK_MAX: _bindgen_ty_136 = 1003;
22271pub const TCP_BPF_RTO_MIN: _bindgen_ty_136 = 1004;
22272pub const TCP_BPF_SYN: _bindgen_ty_136 = 1005;
22273pub const TCP_BPF_SYN_IP: _bindgen_ty_136 = 1006;
22274pub const TCP_BPF_SYN_MAC: _bindgen_ty_136 = 1007;
22275pub const TCP_BPF_SOCK_OPS_CB_FLAGS: _bindgen_ty_136 = 1008;
22276pub type _bindgen_ty_136 = crate::types::c_uint;
22277pub const BPF_LOAD_HDR_OPT_TCP_SYN: _bindgen_ty_137 = 1;
22278pub type _bindgen_ty_137 = crate::types::c_uint;
22279pub const BPF_WRITE_HDR_TCP_CURRENT_MSS: _bindgen_ty_138 = 1;
22280pub const BPF_WRITE_HDR_TCP_SYNACK_COOKIE: _bindgen_ty_138 = 2;
22281pub type _bindgen_ty_138 = crate::types::c_uint;
22282#[repr(C)]
22283#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22284pub struct bpf_perf_event_value {
22285    pub counter: __u64,
22286    pub enabled: __u64,
22287    pub running: __u64,
22288}
22289pub const BPF_DEVCG_ACC_MKNOD: _bindgen_ty_139 = 1;
22290pub const BPF_DEVCG_ACC_READ: _bindgen_ty_139 = 2;
22291pub const BPF_DEVCG_ACC_WRITE: _bindgen_ty_139 = 4;
22292pub type _bindgen_ty_139 = crate::types::c_uint;
22293pub const BPF_DEVCG_DEV_BLOCK: _bindgen_ty_140 = 1;
22294pub const BPF_DEVCG_DEV_CHAR: _bindgen_ty_140 = 2;
22295pub type _bindgen_ty_140 = crate::types::c_uint;
22296#[repr(C)]
22297#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22298pub struct bpf_cgroup_dev_ctx {
22299    pub access_type: __u32,
22300    pub major: __u32,
22301    pub minor: __u32,
22302}
22303#[repr(C)]
22304#[derive(Debug, Default)]
22305pub struct bpf_raw_tracepoint_args {
22306    pub args: __IncompleteArrayField<__u64>,
22307}
22308pub const BPF_FIB_LOOKUP_DIRECT: _bindgen_ty_141 = 1;
22309pub const BPF_FIB_LOOKUP_OUTPUT: _bindgen_ty_141 = 2;
22310pub const BPF_FIB_LOOKUP_SKIP_NEIGH: _bindgen_ty_141 = 4;
22311pub const BPF_FIB_LOOKUP_TBID: _bindgen_ty_141 = 8;
22312pub const BPF_FIB_LOOKUP_SRC: _bindgen_ty_141 = 16;
22313pub const BPF_FIB_LOOKUP_MARK: _bindgen_ty_141 = 32;
22314pub type _bindgen_ty_141 = crate::types::c_uint;
22315pub const BPF_FIB_LKUP_RET_SUCCESS: _bindgen_ty_142 = 0;
22316pub const BPF_FIB_LKUP_RET_BLACKHOLE: _bindgen_ty_142 = 1;
22317pub const BPF_FIB_LKUP_RET_UNREACHABLE: _bindgen_ty_142 = 2;
22318pub const BPF_FIB_LKUP_RET_PROHIBIT: _bindgen_ty_142 = 3;
22319pub const BPF_FIB_LKUP_RET_NOT_FWDED: _bindgen_ty_142 = 4;
22320pub const BPF_FIB_LKUP_RET_FWD_DISABLED: _bindgen_ty_142 = 5;
22321pub const BPF_FIB_LKUP_RET_UNSUPP_LWT: _bindgen_ty_142 = 6;
22322pub const BPF_FIB_LKUP_RET_NO_NEIGH: _bindgen_ty_142 = 7;
22323pub const BPF_FIB_LKUP_RET_FRAG_NEEDED: _bindgen_ty_142 = 8;
22324pub const BPF_FIB_LKUP_RET_NO_SRC_ADDR: _bindgen_ty_142 = 9;
22325pub type _bindgen_ty_142 = crate::types::c_uint;
22326#[repr(C)]
22327#[derive(Copy, Clone)]
22328pub struct bpf_fib_lookup {
22329    pub family: __u8,
22330    pub l4_protocol: __u8,
22331    pub sport: __be16,
22332    pub dport: __be16,
22333    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_1,
22334    pub ifindex: __u32,
22335    pub __bindgen_anon_2: bpf_fib_lookup__bindgen_ty_2,
22336    pub __bindgen_anon_3: bpf_fib_lookup__bindgen_ty_3,
22337    pub __bindgen_anon_4: bpf_fib_lookup__bindgen_ty_4,
22338    pub __bindgen_anon_5: bpf_fib_lookup__bindgen_ty_5,
22339    pub __bindgen_anon_6: bpf_fib_lookup__bindgen_ty_6,
22340}
22341#[repr(C, packed(2))]
22342#[derive(Copy, Clone)]
22343pub union bpf_fib_lookup__bindgen_ty_1 {
22344    pub tot_len: __u16,
22345    pub mtu_result: __u16,
22346}
22347impl Default for bpf_fib_lookup__bindgen_ty_1 {
22348    fn default() -> Self {
22349        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22350        unsafe {
22351            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22352            s.assume_init()
22353        }
22354    }
22355}
22356#[repr(C)]
22357#[derive(Copy, Clone)]
22358pub union bpf_fib_lookup__bindgen_ty_2 {
22359    pub tos: __u8,
22360    pub flowinfo: __be32,
22361    pub rt_metric: __u32,
22362}
22363impl Default for bpf_fib_lookup__bindgen_ty_2 {
22364    fn default() -> Self {
22365        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22366        unsafe {
22367            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22368            s.assume_init()
22369        }
22370    }
22371}
22372#[repr(C)]
22373#[derive(Copy, Clone)]
22374pub union bpf_fib_lookup__bindgen_ty_3 {
22375    pub ipv4_src: __be32,
22376    pub ipv6_src: [__u32; 4usize],
22377}
22378impl Default for bpf_fib_lookup__bindgen_ty_3 {
22379    fn default() -> Self {
22380        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22381        unsafe {
22382            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22383            s.assume_init()
22384        }
22385    }
22386}
22387#[repr(C)]
22388#[derive(Copy, Clone)]
22389pub union bpf_fib_lookup__bindgen_ty_4 {
22390    pub ipv4_dst: __be32,
22391    pub ipv6_dst: [__u32; 4usize],
22392}
22393impl Default for bpf_fib_lookup__bindgen_ty_4 {
22394    fn default() -> Self {
22395        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22396        unsafe {
22397            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22398            s.assume_init()
22399        }
22400    }
22401}
22402#[repr(C)]
22403#[derive(Copy, Clone)]
22404pub union bpf_fib_lookup__bindgen_ty_5 {
22405    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_5__bindgen_ty_1,
22406    pub tbid: __u32,
22407}
22408#[repr(C)]
22409#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22410pub struct bpf_fib_lookup__bindgen_ty_5__bindgen_ty_1 {
22411    pub h_vlan_proto: __be16,
22412    pub h_vlan_TCI: __be16,
22413}
22414impl Default for bpf_fib_lookup__bindgen_ty_5 {
22415    fn default() -> Self {
22416        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22417        unsafe {
22418            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22419            s.assume_init()
22420        }
22421    }
22422}
22423#[repr(C)]
22424#[derive(Copy, Clone)]
22425pub union bpf_fib_lookup__bindgen_ty_6 {
22426    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_6__bindgen_ty_1,
22427    pub __bindgen_anon_2: bpf_fib_lookup__bindgen_ty_6__bindgen_ty_2,
22428}
22429#[repr(C)]
22430#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22431pub struct bpf_fib_lookup__bindgen_ty_6__bindgen_ty_1 {
22432    pub mark: __u32,
22433}
22434#[repr(C)]
22435#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22436pub struct bpf_fib_lookup__bindgen_ty_6__bindgen_ty_2 {
22437    pub smac: [__u8; 6usize],
22438    pub dmac: [__u8; 6usize],
22439}
22440impl Default for bpf_fib_lookup__bindgen_ty_6 {
22441    fn default() -> Self {
22442        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22443        unsafe {
22444            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22445            s.assume_init()
22446        }
22447    }
22448}
22449impl Default for bpf_fib_lookup {
22450    fn default() -> Self {
22451        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22452        unsafe {
22453            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22454            s.assume_init()
22455        }
22456    }
22457}
22458#[repr(C)]
22459#[derive(Copy, Clone)]
22460pub struct bpf_redir_neigh {
22461    pub nh_family: __u32,
22462    pub __bindgen_anon_1: bpf_redir_neigh__bindgen_ty_1,
22463}
22464#[repr(C)]
22465#[derive(Copy, Clone)]
22466pub union bpf_redir_neigh__bindgen_ty_1 {
22467    pub ipv4_nh: __be32,
22468    pub ipv6_nh: [__u32; 4usize],
22469}
22470impl Default for bpf_redir_neigh__bindgen_ty_1 {
22471    fn default() -> Self {
22472        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22473        unsafe {
22474            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22475            s.assume_init()
22476        }
22477    }
22478}
22479impl Default for bpf_redir_neigh {
22480    fn default() -> Self {
22481        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22482        unsafe {
22483            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22484            s.assume_init()
22485        }
22486    }
22487}
22488pub const bpf_check_mtu_flags_BPF_MTU_CHK_SEGS: bpf_check_mtu_flags = 1;
22489pub type bpf_check_mtu_flags = crate::types::c_uint;
22490pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_SUCCESS: bpf_check_mtu_ret = 0;
22491pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_FRAG_NEEDED: bpf_check_mtu_ret = 1;
22492pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_SEGS_TOOBIG: bpf_check_mtu_ret = 2;
22493pub type bpf_check_mtu_ret = crate::types::c_uint;
22494pub const bpf_task_fd_type_BPF_FD_TYPE_RAW_TRACEPOINT: bpf_task_fd_type = 0;
22495pub const bpf_task_fd_type_BPF_FD_TYPE_TRACEPOINT: bpf_task_fd_type = 1;
22496pub const bpf_task_fd_type_BPF_FD_TYPE_KPROBE: bpf_task_fd_type = 2;
22497pub const bpf_task_fd_type_BPF_FD_TYPE_KRETPROBE: bpf_task_fd_type = 3;
22498pub const bpf_task_fd_type_BPF_FD_TYPE_UPROBE: bpf_task_fd_type = 4;
22499pub const bpf_task_fd_type_BPF_FD_TYPE_URETPROBE: bpf_task_fd_type = 5;
22500pub type bpf_task_fd_type = crate::types::c_uint;
22501pub const BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG: _bindgen_ty_143 = 1;
22502pub const BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL: _bindgen_ty_143 = 2;
22503pub const BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP: _bindgen_ty_143 = 4;
22504pub type _bindgen_ty_143 = crate::types::c_uint;
22505#[repr(C)]
22506#[derive(Copy, Clone)]
22507pub struct bpf_flow_keys {
22508    pub nhoff: __u16,
22509    pub thoff: __u16,
22510    pub addr_proto: __u16,
22511    pub is_frag: __u8,
22512    pub is_first_frag: __u8,
22513    pub is_encap: __u8,
22514    pub ip_proto: __u8,
22515    pub n_proto: __be16,
22516    pub sport: __be16,
22517    pub dport: __be16,
22518    pub __bindgen_anon_1: bpf_flow_keys__bindgen_ty_1,
22519    pub flags: __u32,
22520    pub flow_label: __be32,
22521}
22522#[repr(C)]
22523#[derive(Copy, Clone)]
22524pub union bpf_flow_keys__bindgen_ty_1 {
22525    pub __bindgen_anon_1: bpf_flow_keys__bindgen_ty_1__bindgen_ty_1,
22526    pub __bindgen_anon_2: bpf_flow_keys__bindgen_ty_1__bindgen_ty_2,
22527}
22528#[repr(C)]
22529#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22530pub struct bpf_flow_keys__bindgen_ty_1__bindgen_ty_1 {
22531    pub ipv4_src: __be32,
22532    pub ipv4_dst: __be32,
22533}
22534#[repr(C)]
22535#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22536pub struct bpf_flow_keys__bindgen_ty_1__bindgen_ty_2 {
22537    pub ipv6_src: [__u32; 4usize],
22538    pub ipv6_dst: [__u32; 4usize],
22539}
22540impl Default for bpf_flow_keys__bindgen_ty_1 {
22541    fn default() -> Self {
22542        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22543        unsafe {
22544            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22545            s.assume_init()
22546        }
22547    }
22548}
22549impl Default for bpf_flow_keys {
22550    fn default() -> Self {
22551        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22552        unsafe {
22553            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22554            s.assume_init()
22555        }
22556    }
22557}
22558#[repr(C)]
22559#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22560pub struct bpf_func_info {
22561    pub insn_off: __u32,
22562    pub type_id: __u32,
22563}
22564#[repr(C)]
22565#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22566pub struct bpf_line_info {
22567    pub insn_off: __u32,
22568    pub file_name_off: __u32,
22569    pub line_off: __u32,
22570    pub line_col: __u32,
22571}
22572#[repr(C)]
22573#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22574pub struct bpf_spin_lock {
22575    pub val: __u32,
22576}
22577#[repr(C)]
22578#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22579pub struct bpf_timer {
22580    pub __opaque: [__u64; 2usize],
22581}
22582#[repr(C)]
22583#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22584pub struct bpf_wq {
22585    pub __opaque: [__u64; 2usize],
22586}
22587#[repr(C)]
22588#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22589pub struct bpf_dynptr {
22590    pub __opaque: [__u64; 2usize],
22591}
22592#[repr(C)]
22593#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22594pub struct bpf_list_head {
22595    pub __opaque: [__u64; 2usize],
22596}
22597#[repr(C)]
22598#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22599pub struct bpf_list_node {
22600    pub __opaque: [__u64; 3usize],
22601}
22602#[repr(C)]
22603#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22604pub struct bpf_rb_root {
22605    pub __opaque: [__u64; 2usize],
22606}
22607#[repr(C)]
22608#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22609pub struct bpf_rb_node {
22610    pub __opaque: [__u64; 4usize],
22611}
22612#[repr(C)]
22613#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22614pub struct bpf_refcount {
22615    pub __opaque: [__u32; 1usize],
22616}
22617#[repr(C)]
22618#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22619pub struct bpf_sysctl {
22620    pub write: __u32,
22621    pub file_pos: __u32,
22622}
22623#[repr(C)]
22624#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22625pub struct bpf_sockopt {
22626    pub __bindgen_anon_1: bpf_sockopt__bindgen_ty_1,
22627    pub __bindgen_anon_2: bpf_sockopt__bindgen_ty_2,
22628    pub __bindgen_anon_3: bpf_sockopt__bindgen_ty_3,
22629    pub level: __s32,
22630    pub optname: __s32,
22631    pub optlen: __s32,
22632    pub retval: __s32,
22633}
22634#[repr(C)]
22635#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22636pub union bpf_sockopt__bindgen_ty_1 {
22637    pub sk: uref<bpf_sock>,
22638    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22639}
22640impl Default for bpf_sockopt__bindgen_ty_1 {
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_1 {
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_2 {
22659    pub optval: uaddr,
22660    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22661}
22662impl Default for bpf_sockopt__bindgen_ty_2 {
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_2 {
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}
22678#[repr(C)]
22679#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22680pub union bpf_sockopt__bindgen_ty_3 {
22681    pub optval_end: uaddr,
22682    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22683}
22684impl Default for bpf_sockopt__bindgen_ty_3 {
22685    fn default() -> Self {
22686        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22687        unsafe {
22688            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22689            s.assume_init()
22690        }
22691    }
22692}
22693impl bpf_sockopt__bindgen_ty_3 {
22694    #[inline]
22695    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22696        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22697        __bindgen_bitfield_unit
22698    }
22699}
22700impl Default for bpf_sockopt {
22701    fn default() -> Self {
22702        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22703        unsafe {
22704            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22705            s.assume_init()
22706        }
22707    }
22708}
22709#[repr(C)]
22710#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22711pub struct bpf_pidns_info {
22712    pub pid: __u32,
22713    pub tgid: __u32,
22714}
22715#[repr(C)]
22716#[derive(Copy, Clone)]
22717pub struct bpf_sk_lookup {
22718    pub __bindgen_anon_1: bpf_sk_lookup__bindgen_ty_1,
22719    pub family: __u32,
22720    pub protocol: __u32,
22721    pub remote_ip4: __u32,
22722    pub remote_ip6: [__u32; 4usize],
22723    pub remote_port: __be16,
22724    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
22725    pub local_ip4: __u32,
22726    pub local_ip6: [__u32; 4usize],
22727    pub local_port: __u32,
22728    pub ingress_ifindex: __u32,
22729    pub __bindgen_padding_0: [u8; 4usize],
22730}
22731#[repr(C)]
22732#[derive(Copy, Clone)]
22733pub union bpf_sk_lookup__bindgen_ty_1 {
22734    pub __bindgen_anon_1: bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1,
22735    pub cookie: __u64,
22736}
22737#[repr(C)]
22738#[derive(Copy, Clone)]
22739pub union bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22740    pub sk: uref<bpf_sock>,
22741    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22742}
22743impl Default for bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22744    fn default() -> Self {
22745        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22746        unsafe {
22747            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22748            s.assume_init()
22749        }
22750    }
22751}
22752impl bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22753    #[inline]
22754    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22755        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22756        __bindgen_bitfield_unit
22757    }
22758}
22759impl Default for bpf_sk_lookup__bindgen_ty_1 {
22760    fn default() -> Self {
22761        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22762        unsafe {
22763            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22764            s.assume_init()
22765        }
22766    }
22767}
22768impl Default for bpf_sk_lookup {
22769    fn default() -> Self {
22770        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22771        unsafe {
22772            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22773            s.assume_init()
22774        }
22775    }
22776}
22777impl bpf_sk_lookup {
22778    #[inline]
22779    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 2usize]> {
22780        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
22781        __bindgen_bitfield_unit
22782    }
22783}
22784#[repr(C)]
22785#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22786pub struct btf_ptr {
22787    pub ptr: uaddr,
22788    pub type_id: __u32,
22789    pub flags: __u32,
22790}
22791impl Default for btf_ptr {
22792    fn default() -> Self {
22793        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22794        unsafe {
22795            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22796            s.assume_init()
22797        }
22798    }
22799}
22800pub const BTF_F_COMPACT: _bindgen_ty_144 = 1;
22801pub const BTF_F_NONAME: _bindgen_ty_144 = 2;
22802pub const BTF_F_PTR_RAW: _bindgen_ty_144 = 4;
22803pub const BTF_F_ZERO: _bindgen_ty_144 = 8;
22804pub type _bindgen_ty_144 = crate::types::c_uint;
22805pub const bpf_core_relo_kind_BPF_CORE_FIELD_BYTE_OFFSET: bpf_core_relo_kind = 0;
22806pub const bpf_core_relo_kind_BPF_CORE_FIELD_BYTE_SIZE: bpf_core_relo_kind = 1;
22807pub const bpf_core_relo_kind_BPF_CORE_FIELD_EXISTS: bpf_core_relo_kind = 2;
22808pub const bpf_core_relo_kind_BPF_CORE_FIELD_SIGNED: bpf_core_relo_kind = 3;
22809pub const bpf_core_relo_kind_BPF_CORE_FIELD_LSHIFT_U64: bpf_core_relo_kind = 4;
22810pub const bpf_core_relo_kind_BPF_CORE_FIELD_RSHIFT_U64: bpf_core_relo_kind = 5;
22811pub const bpf_core_relo_kind_BPF_CORE_TYPE_ID_LOCAL: bpf_core_relo_kind = 6;
22812pub const bpf_core_relo_kind_BPF_CORE_TYPE_ID_TARGET: bpf_core_relo_kind = 7;
22813pub const bpf_core_relo_kind_BPF_CORE_TYPE_EXISTS: bpf_core_relo_kind = 8;
22814pub const bpf_core_relo_kind_BPF_CORE_TYPE_SIZE: bpf_core_relo_kind = 9;
22815pub const bpf_core_relo_kind_BPF_CORE_ENUMVAL_EXISTS: bpf_core_relo_kind = 10;
22816pub const bpf_core_relo_kind_BPF_CORE_ENUMVAL_VALUE: bpf_core_relo_kind = 11;
22817pub const bpf_core_relo_kind_BPF_CORE_TYPE_MATCHES: bpf_core_relo_kind = 12;
22818pub type bpf_core_relo_kind = crate::types::c_uint;
22819#[repr(C)]
22820#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22821pub struct bpf_core_relo {
22822    pub insn_off: __u32,
22823    pub type_id: __u32,
22824    pub access_str_off: __u32,
22825    pub kind: bpf_core_relo_kind,
22826}
22827impl Default for bpf_core_relo {
22828    fn default() -> Self {
22829        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22830        unsafe {
22831            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22832            s.assume_init()
22833        }
22834    }
22835}
22836pub const BPF_F_TIMER_ABS: _bindgen_ty_145 = 1;
22837pub const BPF_F_TIMER_CPU_PIN: _bindgen_ty_145 = 2;
22838pub type _bindgen_ty_145 = crate::types::c_uint;
22839#[repr(C)]
22840#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22841pub struct bpf_iter_num {
22842    pub __opaque: [__u64; 1usize],
22843}
22844pub const bpf_kfunc_flags_BPF_F_PAD_ZEROS: bpf_kfunc_flags = 1;
22845pub type bpf_kfunc_flags = crate::types::c_uint;
22846pub type bpf_user_pt_regs_t = pt_regs;
22847#[repr(C)]
22848#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22849pub struct bpf_perf_event_data {
22850    pub regs: bpf_user_pt_regs_t,
22851    pub sample_period: __u64,
22852    pub addr: __u64,
22853}
22854#[repr(C)]
22855#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22856pub struct fuse_attr {
22857    pub ino: u64,
22858    pub size: u64,
22859    pub blocks: u64,
22860    pub atime: u64,
22861    pub mtime: u64,
22862    pub ctime: u64,
22863    pub atimensec: u32,
22864    pub mtimensec: u32,
22865    pub ctimensec: u32,
22866    pub mode: u32,
22867    pub nlink: u32,
22868    pub uid: u32,
22869    pub gid: u32,
22870    pub rdev: u32,
22871    pub blksize: u32,
22872    pub flags: u32,
22873}
22874#[repr(C)]
22875#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22876pub struct fuse_sx_time {
22877    pub tv_sec: i64,
22878    pub tv_nsec: u32,
22879    pub __reserved: i32,
22880}
22881#[repr(C)]
22882#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22883pub struct fuse_statx {
22884    pub mask: u32,
22885    pub blksize: u32,
22886    pub attributes: u64,
22887    pub nlink: u32,
22888    pub uid: u32,
22889    pub gid: u32,
22890    pub mode: u16,
22891    pub __spare0: [u16; 1usize],
22892    pub ino: u64,
22893    pub size: u64,
22894    pub blocks: u64,
22895    pub attributes_mask: u64,
22896    pub atime: fuse_sx_time,
22897    pub btime: fuse_sx_time,
22898    pub ctime: fuse_sx_time,
22899    pub mtime: fuse_sx_time,
22900    pub rdev_major: u32,
22901    pub rdev_minor: u32,
22902    pub dev_major: u32,
22903    pub dev_minor: u32,
22904    pub __spare2: [u64; 14usize],
22905}
22906#[repr(C)]
22907#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22908pub struct fuse_kstatfs {
22909    pub blocks: u64,
22910    pub bfree: u64,
22911    pub bavail: u64,
22912    pub files: u64,
22913    pub ffree: u64,
22914    pub bsize: u32,
22915    pub namelen: u32,
22916    pub frsize: u32,
22917    pub padding: u32,
22918    pub spare: [u32; 6usize],
22919}
22920#[repr(C)]
22921#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22922pub struct fuse_file_lock {
22923    pub start: u64,
22924    pub end: u64,
22925    pub type_: u32,
22926    pub pid: u32,
22927}
22928pub const fuse_ext_type_FUSE_MAX_NR_SECCTX: fuse_ext_type = 31;
22929pub const fuse_ext_type_FUSE_EXT_GROUPS: fuse_ext_type = 32;
22930#[doc = " extension type\n FUSE_MAX_NR_SECCTX: maximum value of &fuse_secctx_header.nr_secctx\n FUSE_EXT_GROUPS: &fuse_supp_groups extension"]
22931pub type fuse_ext_type = crate::types::c_uint;
22932pub const fuse_opcode_FUSE_LOOKUP: fuse_opcode = 1;
22933pub const fuse_opcode_FUSE_FORGET: fuse_opcode = 2;
22934pub const fuse_opcode_FUSE_GETATTR: fuse_opcode = 3;
22935pub const fuse_opcode_FUSE_SETATTR: fuse_opcode = 4;
22936pub const fuse_opcode_FUSE_READLINK: fuse_opcode = 5;
22937pub const fuse_opcode_FUSE_SYMLINK: fuse_opcode = 6;
22938pub const fuse_opcode_FUSE_MKNOD: fuse_opcode = 8;
22939pub const fuse_opcode_FUSE_MKDIR: fuse_opcode = 9;
22940pub const fuse_opcode_FUSE_UNLINK: fuse_opcode = 10;
22941pub const fuse_opcode_FUSE_RMDIR: fuse_opcode = 11;
22942pub const fuse_opcode_FUSE_RENAME: fuse_opcode = 12;
22943pub const fuse_opcode_FUSE_LINK: fuse_opcode = 13;
22944pub const fuse_opcode_FUSE_OPEN: fuse_opcode = 14;
22945pub const fuse_opcode_FUSE_READ: fuse_opcode = 15;
22946pub const fuse_opcode_FUSE_WRITE: fuse_opcode = 16;
22947pub const fuse_opcode_FUSE_STATFS: fuse_opcode = 17;
22948pub const fuse_opcode_FUSE_RELEASE: fuse_opcode = 18;
22949pub const fuse_opcode_FUSE_FSYNC: fuse_opcode = 20;
22950pub const fuse_opcode_FUSE_SETXATTR: fuse_opcode = 21;
22951pub const fuse_opcode_FUSE_GETXATTR: fuse_opcode = 22;
22952pub const fuse_opcode_FUSE_LISTXATTR: fuse_opcode = 23;
22953pub const fuse_opcode_FUSE_REMOVEXATTR: fuse_opcode = 24;
22954pub const fuse_opcode_FUSE_FLUSH: fuse_opcode = 25;
22955pub const fuse_opcode_FUSE_INIT: fuse_opcode = 26;
22956pub const fuse_opcode_FUSE_OPENDIR: fuse_opcode = 27;
22957pub const fuse_opcode_FUSE_READDIR: fuse_opcode = 28;
22958pub const fuse_opcode_FUSE_RELEASEDIR: fuse_opcode = 29;
22959pub const fuse_opcode_FUSE_FSYNCDIR: fuse_opcode = 30;
22960pub const fuse_opcode_FUSE_GETLK: fuse_opcode = 31;
22961pub const fuse_opcode_FUSE_SETLK: fuse_opcode = 32;
22962pub const fuse_opcode_FUSE_SETLKW: fuse_opcode = 33;
22963pub const fuse_opcode_FUSE_ACCESS: fuse_opcode = 34;
22964pub const fuse_opcode_FUSE_CREATE: fuse_opcode = 35;
22965pub const fuse_opcode_FUSE_INTERRUPT: fuse_opcode = 36;
22966pub const fuse_opcode_FUSE_BMAP: fuse_opcode = 37;
22967pub const fuse_opcode_FUSE_DESTROY: fuse_opcode = 38;
22968pub const fuse_opcode_FUSE_IOCTL: fuse_opcode = 39;
22969pub const fuse_opcode_FUSE_POLL: fuse_opcode = 40;
22970pub const fuse_opcode_FUSE_NOTIFY_REPLY: fuse_opcode = 41;
22971pub const fuse_opcode_FUSE_BATCH_FORGET: fuse_opcode = 42;
22972pub const fuse_opcode_FUSE_FALLOCATE: fuse_opcode = 43;
22973pub const fuse_opcode_FUSE_READDIRPLUS: fuse_opcode = 44;
22974pub const fuse_opcode_FUSE_RENAME2: fuse_opcode = 45;
22975pub const fuse_opcode_FUSE_LSEEK: fuse_opcode = 46;
22976pub const fuse_opcode_FUSE_COPY_FILE_RANGE: fuse_opcode = 47;
22977pub const fuse_opcode_FUSE_SETUPMAPPING: fuse_opcode = 48;
22978pub const fuse_opcode_FUSE_REMOVEMAPPING: fuse_opcode = 49;
22979pub const fuse_opcode_FUSE_SYNCFS: fuse_opcode = 50;
22980pub const fuse_opcode_FUSE_TMPFILE: fuse_opcode = 51;
22981pub const fuse_opcode_FUSE_STATX: fuse_opcode = 52;
22982pub const fuse_opcode_FUSE_CANONICAL_PATH: fuse_opcode = 2016;
22983pub const fuse_opcode_CUSE_INIT: fuse_opcode = 4096;
22984pub const fuse_opcode_CUSE_INIT_BSWAP_RESERVED: fuse_opcode = 1048576;
22985pub const fuse_opcode_FUSE_INIT_BSWAP_RESERVED: fuse_opcode = 436207616;
22986pub type fuse_opcode = crate::types::c_uint;
22987pub const fuse_notify_code_FUSE_NOTIFY_POLL: fuse_notify_code = 1;
22988pub const fuse_notify_code_FUSE_NOTIFY_INVAL_INODE: fuse_notify_code = 2;
22989pub const fuse_notify_code_FUSE_NOTIFY_INVAL_ENTRY: fuse_notify_code = 3;
22990pub const fuse_notify_code_FUSE_NOTIFY_STORE: fuse_notify_code = 4;
22991pub const fuse_notify_code_FUSE_NOTIFY_RETRIEVE: fuse_notify_code = 5;
22992pub const fuse_notify_code_FUSE_NOTIFY_DELETE: fuse_notify_code = 6;
22993pub const fuse_notify_code_FUSE_NOTIFY_CODE_MAX: fuse_notify_code = 7;
22994pub type fuse_notify_code = crate::types::c_uint;
22995#[repr(C)]
22996#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22997pub struct fuse_entry_out {
22998    pub nodeid: u64,
22999    pub generation: u64,
23000    pub entry_valid: u64,
23001    pub attr_valid: u64,
23002    pub entry_valid_nsec: u32,
23003    pub attr_valid_nsec: u32,
23004    pub attr: fuse_attr,
23005}
23006#[repr(C)]
23007#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23008pub struct fuse_entry_bpf_out {
23009    pub backing_action: u64,
23010    pub backing_fd: u64,
23011    pub bpf_action: u64,
23012    pub bpf_fd: u64,
23013}
23014#[repr(C)]
23015#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23016pub struct fuse_forget_in {
23017    pub nlookup: u64,
23018}
23019#[repr(C)]
23020#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23021pub struct fuse_forget_one {
23022    pub nodeid: u64,
23023    pub nlookup: u64,
23024}
23025#[repr(C)]
23026#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23027pub struct fuse_batch_forget_in {
23028    pub count: u32,
23029    pub dummy: u32,
23030}
23031#[repr(C)]
23032#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23033pub struct fuse_getattr_in {
23034    pub getattr_flags: u32,
23035    pub dummy: u32,
23036    pub fh: u64,
23037}
23038#[repr(C)]
23039#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23040pub struct fuse_attr_out {
23041    pub attr_valid: u64,
23042    pub attr_valid_nsec: u32,
23043    pub dummy: u32,
23044    pub attr: fuse_attr,
23045}
23046#[repr(C)]
23047#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23048pub struct fuse_statx_in {
23049    pub getattr_flags: u32,
23050    pub reserved: u32,
23051    pub fh: u64,
23052    pub sx_flags: u32,
23053    pub sx_mask: u32,
23054}
23055#[repr(C)]
23056#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23057pub struct fuse_statx_out {
23058    pub attr_valid: u64,
23059    pub attr_valid_nsec: u32,
23060    pub flags: u32,
23061    pub spare: [u64; 2usize],
23062    pub stat: fuse_statx,
23063}
23064#[repr(C)]
23065#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23066pub struct fuse_mknod_in {
23067    pub mode: u32,
23068    pub rdev: u32,
23069    pub umask: u32,
23070    pub padding: u32,
23071}
23072#[repr(C)]
23073#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23074pub struct fuse_mkdir_in {
23075    pub mode: u32,
23076    pub umask: u32,
23077}
23078#[repr(C)]
23079#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23080pub struct fuse_rename_in {
23081    pub newdir: u64,
23082}
23083#[repr(C)]
23084#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23085pub struct fuse_rename2_in {
23086    pub newdir: u64,
23087    pub flags: u32,
23088    pub padding: u32,
23089}
23090#[repr(C)]
23091#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23092pub struct fuse_link_in {
23093    pub oldnodeid: u64,
23094}
23095#[repr(C)]
23096#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23097pub struct fuse_setattr_in {
23098    pub valid: u32,
23099    pub padding: u32,
23100    pub fh: u64,
23101    pub size: u64,
23102    pub lock_owner: u64,
23103    pub atime: u64,
23104    pub mtime: u64,
23105    pub ctime: u64,
23106    pub atimensec: u32,
23107    pub mtimensec: u32,
23108    pub ctimensec: u32,
23109    pub mode: u32,
23110    pub unused4: u32,
23111    pub uid: u32,
23112    pub gid: u32,
23113    pub unused5: u32,
23114}
23115#[repr(C)]
23116#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23117pub struct fuse_open_in {
23118    pub flags: u32,
23119    pub open_flags: u32,
23120}
23121#[repr(C)]
23122#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23123pub struct fuse_create_in {
23124    pub flags: u32,
23125    pub mode: u32,
23126    pub umask: u32,
23127    pub open_flags: u32,
23128}
23129#[repr(C)]
23130#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
23131pub struct fuse_open_out {
23132    pub fh: u64,
23133    pub open_flags: u32,
23134    pub __bindgen_anon_1: fuse_open_out__bindgen_ty_1,
23135}
23136#[repr(C)]
23137#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
23138pub union fuse_open_out__bindgen_ty_1 {
23139    pub passthrough_fh: u32,
23140    pub backing_id: i32,
23141}
23142impl Default for fuse_open_out__bindgen_ty_1 {
23143    fn default() -> Self {
23144        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23145        unsafe {
23146            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23147            s.assume_init()
23148        }
23149    }
23150}
23151impl Default for fuse_open_out {
23152    fn default() -> Self {
23153        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23154        unsafe {
23155            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23156            s.assume_init()
23157        }
23158    }
23159}
23160#[repr(C)]
23161#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23162pub struct fuse_release_in {
23163    pub fh: u64,
23164    pub flags: u32,
23165    pub release_flags: u32,
23166    pub lock_owner: u64,
23167}
23168#[repr(C)]
23169#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23170pub struct fuse_flush_in {
23171    pub fh: u64,
23172    pub unused: u32,
23173    pub padding: u32,
23174    pub lock_owner: u64,
23175}
23176#[repr(C)]
23177#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23178pub struct fuse_read_in {
23179    pub fh: u64,
23180    pub offset: u64,
23181    pub size: u32,
23182    pub read_flags: u32,
23183    pub lock_owner: u64,
23184    pub flags: u32,
23185    pub padding: u32,
23186}
23187#[repr(C)]
23188#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23189pub struct fuse_read_out {
23190    pub offset: u64,
23191    pub again: u32,
23192    pub padding: u32,
23193}
23194#[repr(C)]
23195#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23196pub struct fuse_passthrough_out_v0 {
23197    pub fd: u32,
23198    pub len: u32,
23199    pub vec: uaddr,
23200}
23201impl Default for fuse_passthrough_out_v0 {
23202    fn default() -> Self {
23203        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23204        unsafe {
23205            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23206            s.assume_init()
23207        }
23208    }
23209}
23210#[repr(C)]
23211#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23212pub struct fuse_write_in {
23213    pub fh: u64,
23214    pub offset: u64,
23215    pub size: u32,
23216    pub write_flags: u32,
23217    pub lock_owner: u64,
23218    pub flags: u32,
23219    pub padding: u32,
23220}
23221#[repr(C)]
23222#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23223pub struct fuse_write_out {
23224    pub size: u32,
23225    pub padding: u32,
23226}
23227#[repr(C)]
23228#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23229pub struct fuse_statfs_out {
23230    pub st: fuse_kstatfs,
23231}
23232#[repr(C)]
23233#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23234pub struct fuse_fsync_in {
23235    pub fh: u64,
23236    pub fsync_flags: u32,
23237    pub padding: u32,
23238}
23239#[repr(C)]
23240#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23241pub struct fuse_setxattr_in {
23242    pub size: u32,
23243    pub flags: u32,
23244    pub setxattr_flags: u32,
23245    pub padding: u32,
23246}
23247#[repr(C)]
23248#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23249pub struct fuse_getxattr_in {
23250    pub size: u32,
23251    pub padding: u32,
23252}
23253#[repr(C)]
23254#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23255pub struct fuse_getxattr_out {
23256    pub size: u32,
23257    pub padding: u32,
23258}
23259#[repr(C)]
23260#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23261pub struct fuse_lk_in {
23262    pub fh: u64,
23263    pub owner: u64,
23264    pub lk: fuse_file_lock,
23265    pub lk_flags: u32,
23266    pub padding: u32,
23267}
23268#[repr(C)]
23269#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23270pub struct fuse_lk_out {
23271    pub lk: fuse_file_lock,
23272}
23273#[repr(C)]
23274#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23275pub struct fuse_access_in {
23276    pub mask: u32,
23277    pub padding: u32,
23278}
23279#[repr(C)]
23280#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23281pub struct fuse_init_in {
23282    pub major: u32,
23283    pub minor: u32,
23284    pub max_readahead: u32,
23285    pub flags: u32,
23286    pub flags2: u32,
23287    pub unused: [u32; 11usize],
23288}
23289#[repr(C)]
23290#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23291pub struct fuse_init_out {
23292    pub major: u32,
23293    pub minor: u32,
23294    pub max_readahead: u32,
23295    pub flags: u32,
23296    pub max_background: u16,
23297    pub congestion_threshold: u16,
23298    pub max_write: u32,
23299    pub time_gran: u32,
23300    pub max_pages: u16,
23301    pub map_alignment: u16,
23302    pub flags2: u32,
23303    pub max_stack_depth: u32,
23304    pub unused: [u32; 6usize],
23305}
23306#[repr(C)]
23307#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23308pub struct cuse_init_in {
23309    pub major: u32,
23310    pub minor: u32,
23311    pub unused: u32,
23312    pub flags: u32,
23313}
23314#[repr(C)]
23315#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23316pub struct cuse_init_out {
23317    pub major: u32,
23318    pub minor: u32,
23319    pub unused: u32,
23320    pub flags: u32,
23321    pub max_read: u32,
23322    pub max_write: u32,
23323    pub dev_major: u32,
23324    pub dev_minor: u32,
23325    pub spare: [u32; 10usize],
23326}
23327#[repr(C)]
23328#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23329pub struct fuse_interrupt_in {
23330    pub unique: u64,
23331}
23332#[repr(C)]
23333#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23334pub struct fuse_bmap_in {
23335    pub block: u64,
23336    pub blocksize: u32,
23337    pub padding: u32,
23338}
23339#[repr(C)]
23340#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23341pub struct fuse_bmap_out {
23342    pub block: u64,
23343}
23344#[repr(C)]
23345#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23346pub struct fuse_ioctl_in {
23347    pub fh: u64,
23348    pub flags: u32,
23349    pub cmd: u32,
23350    pub arg: u64,
23351    pub in_size: u32,
23352    pub out_size: u32,
23353}
23354#[repr(C)]
23355#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23356pub struct fuse_ioctl_iovec {
23357    pub base: u64,
23358    pub len: u64,
23359}
23360#[repr(C)]
23361#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23362pub struct fuse_ioctl_out {
23363    pub result: i32,
23364    pub flags: u32,
23365    pub in_iovs: u32,
23366    pub out_iovs: u32,
23367}
23368#[repr(C)]
23369#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23370pub struct fuse_poll_in {
23371    pub fh: u64,
23372    pub kh: u64,
23373    pub flags: u32,
23374    pub events: u32,
23375}
23376#[repr(C)]
23377#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23378pub struct fuse_poll_out {
23379    pub revents: u32,
23380    pub padding: u32,
23381}
23382#[repr(C)]
23383#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23384pub struct fuse_notify_poll_wakeup_out {
23385    pub kh: u64,
23386}
23387#[repr(C)]
23388#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23389pub struct fuse_fallocate_in {
23390    pub fh: u64,
23391    pub offset: u64,
23392    pub length: u64,
23393    pub mode: u32,
23394    pub padding: u32,
23395}
23396#[repr(C)]
23397#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
23398pub struct fuse_in_header {
23399    pub len: u32,
23400    pub opcode: u32,
23401    pub unique: u64,
23402    pub nodeid: u64,
23403    pub uid: u32,
23404    pub gid: u32,
23405    pub pid: u32,
23406    pub __bindgen_anon_1: fuse_in_header__bindgen_ty_1,
23407}
23408#[repr(C)]
23409#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
23410pub union fuse_in_header__bindgen_ty_1 {
23411    pub error_in: u32,
23412    pub __bindgen_anon_1: fuse_in_header__bindgen_ty_1__bindgen_ty_1,
23413}
23414#[repr(C)]
23415#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23416pub struct fuse_in_header__bindgen_ty_1__bindgen_ty_1 {
23417    pub total_extlen: u16,
23418    pub padding: u16,
23419}
23420impl Default for fuse_in_header__bindgen_ty_1 {
23421    fn default() -> Self {
23422        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23423        unsafe {
23424            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23425            s.assume_init()
23426        }
23427    }
23428}
23429impl Default for fuse_in_header {
23430    fn default() -> Self {
23431        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23432        unsafe {
23433            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23434            s.assume_init()
23435        }
23436    }
23437}
23438#[repr(C)]
23439#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23440pub struct fuse_out_header {
23441    pub len: u32,
23442    pub error: i32,
23443    pub unique: u64,
23444}
23445#[repr(C)]
23446#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23447pub struct fuse_dirent {
23448    pub ino: u64,
23449    pub off: u64,
23450    pub namelen: u32,
23451    pub type_: u32,
23452    pub name: __IncompleteArrayField<crate::types::c_char>,
23453}
23454#[repr(C)]
23455#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23456pub struct fuse_direntplus {
23457    pub entry_out: fuse_entry_out,
23458    pub dirent: fuse_dirent,
23459}
23460#[repr(C)]
23461#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23462pub struct fuse_notify_inval_inode_out {
23463    pub ino: u64,
23464    pub off: i64,
23465    pub len: i64,
23466}
23467#[repr(C)]
23468#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23469pub struct fuse_notify_inval_entry_out {
23470    pub parent: u64,
23471    pub namelen: u32,
23472    pub flags: u32,
23473}
23474#[repr(C)]
23475#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23476pub struct fuse_notify_delete_out {
23477    pub parent: u64,
23478    pub child: u64,
23479    pub namelen: u32,
23480    pub padding: u32,
23481}
23482#[repr(C)]
23483#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23484pub struct fuse_notify_store_out {
23485    pub nodeid: u64,
23486    pub offset: u64,
23487    pub size: u32,
23488    pub padding: u32,
23489}
23490#[repr(C)]
23491#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23492pub struct fuse_notify_retrieve_out {
23493    pub notify_unique: u64,
23494    pub nodeid: u64,
23495    pub offset: u64,
23496    pub size: u32,
23497    pub padding: u32,
23498}
23499#[repr(C)]
23500#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23501pub struct fuse_notify_retrieve_in {
23502    pub dummy1: u64,
23503    pub offset: u64,
23504    pub size: u32,
23505    pub dummy2: u32,
23506    pub dummy3: u64,
23507    pub dummy4: u64,
23508}
23509#[repr(C)]
23510#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23511pub struct fuse_backing_map {
23512    pub fd: i32,
23513    pub flags: u32,
23514    pub padding: u64,
23515}
23516#[repr(C)]
23517#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23518pub struct fuse_lseek_in {
23519    pub fh: u64,
23520    pub offset: u64,
23521    pub whence: u32,
23522    pub padding: u32,
23523}
23524#[repr(C)]
23525#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23526pub struct fuse_lseek_out {
23527    pub offset: u64,
23528}
23529#[repr(C)]
23530#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23531pub struct fuse_copy_file_range_in {
23532    pub fh_in: u64,
23533    pub off_in: u64,
23534    pub nodeid_out: u64,
23535    pub fh_out: u64,
23536    pub off_out: u64,
23537    pub len: u64,
23538    pub flags: u64,
23539}
23540#[repr(C)]
23541#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23542pub struct fuse_setupmapping_in {
23543    pub fh: u64,
23544    pub foffset: u64,
23545    pub len: u64,
23546    pub flags: u64,
23547    pub moffset: u64,
23548}
23549#[repr(C)]
23550#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23551pub struct fuse_removemapping_in {
23552    pub count: u32,
23553}
23554#[repr(C)]
23555#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23556pub struct fuse_removemapping_one {
23557    pub moffset: u64,
23558    pub len: u64,
23559}
23560#[repr(C)]
23561#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23562pub struct fuse_syncfs_in {
23563    pub padding: u64,
23564}
23565#[repr(C)]
23566#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23567pub struct fuse_secctx {
23568    pub size: u32,
23569    pub padding: u32,
23570}
23571#[repr(C)]
23572#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23573pub struct fuse_secctx_header {
23574    pub size: u32,
23575    pub nr_secctx: u32,
23576}
23577#[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"]
23578#[repr(C)]
23579#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23580pub struct fuse_ext_header {
23581    pub size: u32,
23582    pub type_: u32,
23583}
23584#[doc = " struct fuse_supp_groups - Supplementary group extension\n @nr_groups: number of supplementary groups\n @groups: flexible array of group IDs"]
23585#[repr(C)]
23586#[derive(Debug, Default)]
23587pub struct fuse_supp_groups {
23588    pub nr_groups: u32,
23589    pub groups: __IncompleteArrayField<u32>,
23590}
23591#[repr(C)]
23592#[derive(Debug)]
23593pub struct fuse_mount {
23594    _unused: [u8; 0],
23595}
23596#[doc = " One input argument of a request"]
23597#[repr(C)]
23598#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23599pub struct fuse_bpf_in_arg {
23600    pub size: u32,
23601    pub __bindgen_padding_0: [u8; 4usize],
23602    pub value: uaddr,
23603    pub end_offset: uaddr,
23604}
23605impl Default for fuse_bpf_in_arg {
23606    fn default() -> Self {
23607        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23608        unsafe {
23609            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23610            s.assume_init()
23611        }
23612    }
23613}
23614#[doc = " One output argument of a request"]
23615#[repr(C)]
23616#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23617pub struct fuse_bpf_arg {
23618    pub size: u32,
23619    pub __bindgen_padding_0: [u8; 4usize],
23620    pub value: uaddr,
23621    pub end_offset: uaddr,
23622}
23623impl Default for fuse_bpf_arg {
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}
23632#[repr(C)]
23633#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23634pub struct fuse_bpf_args {
23635    pub nodeid: u64,
23636    pub opcode: u32,
23637    pub error_in: u32,
23638    pub in_numargs: u32,
23639    pub out_numargs: u32,
23640    pub flags: u32,
23641    pub __bindgen_padding_0: [u8; 4usize],
23642    pub in_args: [fuse_bpf_in_arg; 5usize],
23643    pub out_args: [fuse_bpf_arg; 3usize],
23644}
23645impl Default for fuse_bpf_args {
23646    fn default() -> Self {
23647        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23648        unsafe {
23649            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23650            s.assume_init()
23651        }
23652    }
23653}
23654pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_PMEM: kgsl_user_mem_type = 0;
23655pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ASHMEM: kgsl_user_mem_type = 1;
23656pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ADDR: kgsl_user_mem_type = 2;
23657pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ION: kgsl_user_mem_type = 3;
23658pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_DMABUF: kgsl_user_mem_type = 3;
23659pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_MAX: kgsl_user_mem_type = 7;
23660pub type kgsl_user_mem_type = crate::types::c_uint;
23661pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_NO_ERROR: kgsl_ctx_reset_stat = 0;
23662pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_GUILTY_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 1;
23663pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_INNOCENT_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 2;
23664pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_UNKNOWN_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 3;
23665pub type kgsl_ctx_reset_stat = crate::types::c_uint;
23666#[repr(C)]
23667#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23668pub struct kgsl_devinfo {
23669    pub device_id: crate::types::c_uint,
23670    pub chip_id: crate::types::c_uint,
23671    pub mmu_enabled: crate::types::c_uint,
23672    pub __bindgen_padding_0: [u8; 4usize],
23673    pub gmem_gpubaseaddr: crate::types::c_ulong,
23674    pub gpu_id: crate::types::c_uint,
23675    pub __bindgen_padding_1: [u8; 4usize],
23676    pub gmem_sizebytes: __kernel_size_t,
23677}
23678#[repr(C)]
23679#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23680pub struct kgsl_devmemstore {
23681    pub soptimestamp: crate::types::c_uint,
23682    pub sbz: crate::types::c_uint,
23683    pub eoptimestamp: crate::types::c_uint,
23684    pub sbz2: crate::types::c_uint,
23685    pub preempted: crate::types::c_uint,
23686    pub sbz3: crate::types::c_uint,
23687    pub ref_wait_ts: crate::types::c_uint,
23688    pub sbz4: crate::types::c_uint,
23689    pub current_context: crate::types::c_uint,
23690    pub sbz5: crate::types::c_uint,
23691}
23692pub const kgsl_timestamp_type_KGSL_TIMESTAMP_CONSUMED: kgsl_timestamp_type = 1;
23693pub const kgsl_timestamp_type_KGSL_TIMESTAMP_RETIRED: kgsl_timestamp_type = 2;
23694pub const kgsl_timestamp_type_KGSL_TIMESTAMP_QUEUED: kgsl_timestamp_type = 3;
23695pub type kgsl_timestamp_type = crate::types::c_uint;
23696#[repr(C)]
23697#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23698pub struct kgsl_capabilities_properties {
23699    pub list: __u64,
23700    pub count: __u32,
23701    pub __bindgen_padding_0: [u8; 4usize],
23702}
23703#[repr(C)]
23704#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23705pub struct kgsl_capabilities {
23706    pub data: __u64,
23707    pub size: __u64,
23708    pub querytype: __u32,
23709    pub __bindgen_padding_0: [u8; 4usize],
23710}
23711#[repr(C)]
23712#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23713pub struct kgsl_shadowprop {
23714    pub gpuaddr: crate::types::c_ulong,
23715    pub size: __kernel_size_t,
23716    pub flags: crate::types::c_uint,
23717    pub __bindgen_padding_0: [u8; 4usize],
23718}
23719#[repr(C)]
23720#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23721pub struct kgsl_qdss_stm_prop {
23722    pub gpuaddr: __u64,
23723    pub size: __u64,
23724}
23725#[repr(C)]
23726#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23727pub struct kgsl_qtimer_prop {
23728    pub gpuaddr: __u64,
23729    pub size: __u64,
23730}
23731#[repr(C)]
23732#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23733pub struct kgsl_version {
23734    pub drv_major: crate::types::c_uint,
23735    pub drv_minor: crate::types::c_uint,
23736    pub dev_major: crate::types::c_uint,
23737    pub dev_minor: crate::types::c_uint,
23738}
23739#[repr(C)]
23740#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23741pub struct kgsl_sp_generic_mem {
23742    pub local: __u64,
23743    pub pvt: __u64,
23744}
23745#[repr(C)]
23746#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23747pub struct kgsl_ucode_version {
23748    pub pfp: crate::types::c_uint,
23749    pub pm4: crate::types::c_uint,
23750}
23751#[repr(C)]
23752#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23753pub struct kgsl_gpmu_version {
23754    pub major: crate::types::c_uint,
23755    pub minor: crate::types::c_uint,
23756    pub features: crate::types::c_uint,
23757}
23758#[repr(C)]
23759#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23760pub struct kgsl_context_property {
23761    pub data: __u64,
23762    pub size: __u32,
23763    pub type_: __u32,
23764    pub contextid: __u32,
23765    pub __bindgen_padding_0: [u8; 4usize],
23766}
23767#[repr(C)]
23768#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23769pub struct kgsl_context_property_fault {
23770    pub faults: __s32,
23771    pub timestamp: __u32,
23772}
23773#[repr(C)]
23774#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23775pub struct kgsl_gpu_model {
23776    pub gpu_model: [crate::types::c_char; 32usize],
23777}
23778#[repr(C)]
23779#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23780pub struct kgsl_ibdesc {
23781    pub gpuaddr: crate::types::c_ulong,
23782    pub __pad: crate::types::c_ulong,
23783    pub sizedwords: __kernel_size_t,
23784    pub ctrl: crate::types::c_uint,
23785    pub __bindgen_padding_0: [u8; 4usize],
23786}
23787#[repr(C)]
23788#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23789pub struct kgsl_cmdbatch_profiling_buffer {
23790    pub wall_clock_s: __u64,
23791    pub wall_clock_ns: __u64,
23792    pub gpu_ticks_queued: __u64,
23793    pub gpu_ticks_submitted: __u64,
23794    pub gpu_ticks_retired: __u64,
23795}
23796#[repr(C)]
23797#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23798pub struct kgsl_device_getproperty {
23799    pub type_: crate::types::c_uint,
23800    pub __bindgen_padding_0: [u8; 4usize],
23801    pub value: uaddr,
23802    pub sizebytes: __kernel_size_t,
23803}
23804impl Default for kgsl_device_getproperty {
23805    fn default() -> Self {
23806        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23807        unsafe {
23808            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23809            s.assume_init()
23810        }
23811    }
23812}
23813#[repr(C)]
23814#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23815pub struct kgsl_device_waittimestamp {
23816    pub timestamp: crate::types::c_uint,
23817    pub timeout: crate::types::c_uint,
23818}
23819#[repr(C)]
23820#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23821pub struct kgsl_device_waittimestamp_ctxtid {
23822    pub context_id: crate::types::c_uint,
23823    pub timestamp: crate::types::c_uint,
23824    pub timeout: crate::types::c_uint,
23825}
23826#[repr(C)]
23827#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23828pub struct kgsl_ringbuffer_issueibcmds {
23829    pub drawctxt_id: crate::types::c_uint,
23830    pub __bindgen_padding_0: [u8; 4usize],
23831    pub ibdesc_addr: crate::types::c_ulong,
23832    pub numibs: crate::types::c_uint,
23833    pub timestamp: crate::types::c_uint,
23834    pub flags: crate::types::c_uint,
23835    pub __bindgen_padding_1: [u8; 4usize],
23836}
23837#[repr(C)]
23838#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23839pub struct kgsl_cmdstream_readtimestamp {
23840    pub type_: crate::types::c_uint,
23841    pub timestamp: crate::types::c_uint,
23842}
23843#[repr(C)]
23844#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23845pub struct kgsl_cmdstream_freememontimestamp {
23846    pub gpuaddr: crate::types::c_ulong,
23847    pub type_: crate::types::c_uint,
23848    pub timestamp: crate::types::c_uint,
23849}
23850#[repr(C)]
23851#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23852pub struct kgsl_drawctxt_create {
23853    pub flags: crate::types::c_uint,
23854    pub drawctxt_id: crate::types::c_uint,
23855}
23856#[repr(C)]
23857#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23858pub struct kgsl_drawctxt_destroy {
23859    pub drawctxt_id: crate::types::c_uint,
23860}
23861#[repr(C)]
23862#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23863pub struct kgsl_map_user_mem {
23864    pub fd: crate::types::c_int,
23865    pub __bindgen_padding_0: [u8; 4usize],
23866    pub gpuaddr: crate::types::c_ulong,
23867    pub len: __kernel_size_t,
23868    pub offset: __kernel_size_t,
23869    pub hostptr: crate::types::c_ulong,
23870    pub memtype: kgsl_user_mem_type,
23871    pub flags: crate::types::c_uint,
23872}
23873impl Default for kgsl_map_user_mem {
23874    fn default() -> Self {
23875        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23876        unsafe {
23877            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23878            s.assume_init()
23879        }
23880    }
23881}
23882#[repr(C)]
23883#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23884pub struct kgsl_cmdstream_readtimestamp_ctxtid {
23885    pub context_id: crate::types::c_uint,
23886    pub type_: crate::types::c_uint,
23887    pub timestamp: crate::types::c_uint,
23888}
23889#[repr(C)]
23890#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23891pub struct kgsl_cmdstream_freememontimestamp_ctxtid {
23892    pub context_id: crate::types::c_uint,
23893    pub __bindgen_padding_0: [u8; 4usize],
23894    pub gpuaddr: crate::types::c_ulong,
23895    pub type_: crate::types::c_uint,
23896    pub timestamp: crate::types::c_uint,
23897}
23898#[repr(C)]
23899#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23900pub struct kgsl_sharedmem_from_pmem {
23901    pub pmem_fd: crate::types::c_int,
23902    pub __bindgen_padding_0: [u8; 4usize],
23903    pub gpuaddr: crate::types::c_ulong,
23904    pub len: crate::types::c_uint,
23905    pub offset: crate::types::c_uint,
23906}
23907#[repr(C)]
23908#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23909pub struct kgsl_sharedmem_free {
23910    pub gpuaddr: crate::types::c_ulong,
23911}
23912#[repr(C)]
23913#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23914pub struct kgsl_cff_user_event {
23915    pub cff_opcode: crate::types::c_uchar,
23916    pub __bindgen_padding_0: [u8; 3usize],
23917    pub op1: crate::types::c_uint,
23918    pub op2: crate::types::c_uint,
23919    pub op3: crate::types::c_uint,
23920    pub op4: crate::types::c_uint,
23921    pub op5: crate::types::c_uint,
23922    pub __pad: [crate::types::c_uint; 2usize],
23923}
23924#[repr(C)]
23925#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23926pub struct kgsl_gmem_desc {
23927    pub x: crate::types::c_uint,
23928    pub y: crate::types::c_uint,
23929    pub width: crate::types::c_uint,
23930    pub height: crate::types::c_uint,
23931    pub pitch: crate::types::c_uint,
23932}
23933#[repr(C)]
23934#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23935pub struct kgsl_buffer_desc {
23936    pub hostptr: uaddr,
23937    pub gpuaddr: crate::types::c_ulong,
23938    pub size: crate::types::c_int,
23939    pub format: crate::types::c_uint,
23940    pub pitch: crate::types::c_uint,
23941    pub enabled: crate::types::c_uint,
23942}
23943impl Default for kgsl_buffer_desc {
23944    fn default() -> Self {
23945        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23946        unsafe {
23947            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23948            s.assume_init()
23949        }
23950    }
23951}
23952#[repr(C)]
23953#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23954pub struct kgsl_bind_gmem_shadow {
23955    pub drawctxt_id: crate::types::c_uint,
23956    pub gmem_desc: kgsl_gmem_desc,
23957    pub shadow_x: crate::types::c_uint,
23958    pub shadow_y: crate::types::c_uint,
23959    pub shadow_buffer: kgsl_buffer_desc,
23960    pub buffer_id: crate::types::c_uint,
23961    pub __bindgen_padding_0: [u8; 4usize],
23962}
23963impl Default for kgsl_bind_gmem_shadow {
23964    fn default() -> Self {
23965        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23966        unsafe {
23967            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23968            s.assume_init()
23969        }
23970    }
23971}
23972#[repr(C)]
23973#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23974pub struct kgsl_sharedmem_from_vmalloc {
23975    pub gpuaddr: crate::types::c_ulong,
23976    pub hostptr: crate::types::c_uint,
23977    pub flags: crate::types::c_uint,
23978}
23979#[repr(C)]
23980#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23981pub struct kgsl_drawctxt_set_bin_base_offset {
23982    pub drawctxt_id: crate::types::c_uint,
23983    pub offset: crate::types::c_uint,
23984}
23985pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MIN: kgsl_cmdwindow_type = 0;
23986pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_2D: kgsl_cmdwindow_type = 0;
23987pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_3D: kgsl_cmdwindow_type = 1;
23988pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MMU: kgsl_cmdwindow_type = 2;
23989pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_ARBITER: kgsl_cmdwindow_type = 255;
23990pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MAX: kgsl_cmdwindow_type = 255;
23991pub type kgsl_cmdwindow_type = crate::types::c_uint;
23992#[repr(C)]
23993#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23994pub struct kgsl_cmdwindow_write {
23995    pub target: kgsl_cmdwindow_type,
23996    pub addr: crate::types::c_uint,
23997    pub data: crate::types::c_uint,
23998}
23999impl Default for kgsl_cmdwindow_write {
24000    fn default() -> Self {
24001        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24002        unsafe {
24003            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24004            s.assume_init()
24005        }
24006    }
24007}
24008#[repr(C)]
24009#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24010pub struct kgsl_gpumem_alloc {
24011    pub gpuaddr: crate::types::c_ulong,
24012    pub size: __kernel_size_t,
24013    pub flags: crate::types::c_uint,
24014    pub __bindgen_padding_0: [u8; 4usize],
24015}
24016#[repr(C)]
24017#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24018pub struct kgsl_cff_syncmem {
24019    pub gpuaddr: crate::types::c_ulong,
24020    pub len: __kernel_size_t,
24021    pub __pad: [crate::types::c_uint; 2usize],
24022}
24023#[repr(C)]
24024#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24025pub struct kgsl_timestamp_event {
24026    pub type_: crate::types::c_int,
24027    pub timestamp: crate::types::c_uint,
24028    pub context_id: crate::types::c_uint,
24029    pub __bindgen_padding_0: [u8; 4usize],
24030    pub priv_: uaddr,
24031    pub len: __kernel_size_t,
24032}
24033impl Default for kgsl_timestamp_event {
24034    fn default() -> Self {
24035        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24036        unsafe {
24037            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24038            s.assume_init()
24039        }
24040    }
24041}
24042#[repr(C)]
24043#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24044pub struct kgsl_timestamp_event_genlock {
24045    pub handle: crate::types::c_int,
24046}
24047#[repr(C)]
24048#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24049pub struct kgsl_timestamp_event_fence {
24050    pub fence_fd: crate::types::c_int,
24051}
24052#[repr(C)]
24053#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24054pub struct kgsl_gpumem_alloc_id {
24055    pub id: crate::types::c_uint,
24056    pub flags: crate::types::c_uint,
24057    pub size: __kernel_size_t,
24058    pub mmapsize: __kernel_size_t,
24059    pub gpuaddr: crate::types::c_ulong,
24060    pub __pad: [crate::types::c_ulong; 2usize],
24061}
24062#[repr(C)]
24063#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24064pub struct kgsl_gpumem_free_id {
24065    pub id: crate::types::c_uint,
24066    pub __pad: crate::types::c_uint,
24067}
24068#[repr(C)]
24069#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24070pub struct kgsl_gpumem_get_info {
24071    pub gpuaddr: crate::types::c_ulong,
24072    pub id: crate::types::c_uint,
24073    pub flags: crate::types::c_uint,
24074    pub size: __kernel_size_t,
24075    pub mmapsize: __kernel_size_t,
24076    pub useraddr: crate::types::c_ulong,
24077    pub __pad: [crate::types::c_ulong; 4usize],
24078}
24079#[repr(C)]
24080#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24081pub struct kgsl_gpumem_sync_cache {
24082    pub gpuaddr: crate::types::c_ulong,
24083    pub id: crate::types::c_uint,
24084    pub op: crate::types::c_uint,
24085    pub offset: __kernel_size_t,
24086    pub length: __kernel_size_t,
24087}
24088#[repr(C)]
24089#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24090pub struct kgsl_perfcounter_get {
24091    pub groupid: crate::types::c_uint,
24092    pub countable: crate::types::c_uint,
24093    pub offset: crate::types::c_uint,
24094    pub offset_hi: crate::types::c_uint,
24095    pub __pad: crate::types::c_uint,
24096}
24097#[repr(C)]
24098#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24099pub struct kgsl_perfcounter_put {
24100    pub groupid: crate::types::c_uint,
24101    pub countable: crate::types::c_uint,
24102    pub __pad: [crate::types::c_uint; 2usize],
24103}
24104#[repr(C)]
24105#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24106pub struct kgsl_perfcounter_query {
24107    pub groupid: crate::types::c_uint,
24108    pub __bindgen_padding_0: [u8; 4usize],
24109    pub countables: uref<crate::types::c_uint>,
24110    pub count: crate::types::c_uint,
24111    pub max_counters: crate::types::c_uint,
24112    pub __pad: [crate::types::c_uint; 2usize],
24113}
24114impl Default for kgsl_perfcounter_query {
24115    fn default() -> Self {
24116        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24117        unsafe {
24118            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24119            s.assume_init()
24120        }
24121    }
24122}
24123#[repr(C)]
24124#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24125pub struct kgsl_perfcounter_read_group {
24126    pub groupid: crate::types::c_uint,
24127    pub countable: crate::types::c_uint,
24128    pub value: crate::types::c_ulonglong,
24129}
24130#[repr(C)]
24131#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24132pub struct kgsl_perfcounter_read {
24133    pub reads: uref<kgsl_perfcounter_read_group>,
24134    pub count: crate::types::c_uint,
24135    pub __pad: [crate::types::c_uint; 2usize],
24136    pub __bindgen_padding_0: [u8; 4usize],
24137}
24138impl Default for kgsl_perfcounter_read {
24139    fn default() -> Self {
24140        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24141        unsafe {
24142            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24143            s.assume_init()
24144        }
24145    }
24146}
24147#[repr(C)]
24148#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24149pub struct kgsl_gpumem_sync_cache_bulk {
24150    pub id_list: uref<crate::types::c_uint>,
24151    pub count: crate::types::c_uint,
24152    pub op: crate::types::c_uint,
24153    pub __pad: [crate::types::c_uint; 2usize],
24154}
24155impl Default for kgsl_gpumem_sync_cache_bulk {
24156    fn default() -> Self {
24157        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24158        unsafe {
24159            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24160            s.assume_init()
24161        }
24162    }
24163}
24164#[repr(C)]
24165#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24166pub struct kgsl_cmd_syncpoint_timestamp {
24167    pub context_id: crate::types::c_uint,
24168    pub timestamp: crate::types::c_uint,
24169}
24170#[repr(C)]
24171#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24172pub struct kgsl_cmd_syncpoint_fence {
24173    pub fd: crate::types::c_int,
24174}
24175#[repr(C)]
24176#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24177pub struct kgsl_cmd_syncpoint_timeline {
24178    pub timelines: __u64,
24179    pub count: __u32,
24180    pub timelines_size: __u32,
24181}
24182#[repr(C)]
24183#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24184pub struct kgsl_cmd_syncpoint {
24185    pub type_: crate::types::c_int,
24186    pub __bindgen_padding_0: [u8; 4usize],
24187    pub priv_: uaddr,
24188    pub size: __kernel_size_t,
24189}
24190impl Default for kgsl_cmd_syncpoint {
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_submit_commands {
24202    pub context_id: crate::types::c_uint,
24203    pub flags: crate::types::c_uint,
24204    pub cmdlist: uref<kgsl_ibdesc>,
24205    pub numcmds: crate::types::c_uint,
24206    pub __bindgen_padding_0: [u8; 4usize],
24207    pub synclist: uref<kgsl_cmd_syncpoint>,
24208    pub numsyncs: crate::types::c_uint,
24209    pub timestamp: crate::types::c_uint,
24210    pub __pad: [crate::types::c_uint; 4usize],
24211}
24212impl Default for kgsl_submit_commands {
24213    fn default() -> Self {
24214        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24215        unsafe {
24216            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24217            s.assume_init()
24218        }
24219    }
24220}
24221#[repr(C)]
24222#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24223pub struct kgsl_device_constraint {
24224    pub type_: crate::types::c_uint,
24225    pub context_id: crate::types::c_uint,
24226    pub data: uaddr,
24227    pub size: __kernel_size_t,
24228}
24229impl Default for kgsl_device_constraint {
24230    fn default() -> Self {
24231        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24232        unsafe {
24233            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24234            s.assume_init()
24235        }
24236    }
24237}
24238#[repr(C)]
24239#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24240pub struct kgsl_device_constraint_pwrlevel {
24241    pub level: crate::types::c_uint,
24242}
24243#[repr(C)]
24244#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24245pub struct kgsl_syncsource_create {
24246    pub id: crate::types::c_uint,
24247    pub __pad: [crate::types::c_uint; 3usize],
24248}
24249#[repr(C)]
24250#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24251pub struct kgsl_syncsource_destroy {
24252    pub id: crate::types::c_uint,
24253    pub __pad: [crate::types::c_uint; 3usize],
24254}
24255#[repr(C)]
24256#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24257pub struct kgsl_syncsource_create_fence {
24258    pub id: crate::types::c_uint,
24259    pub fence_fd: crate::types::c_int,
24260    pub __pad: [crate::types::c_uint; 4usize],
24261}
24262#[repr(C)]
24263#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24264pub struct kgsl_syncsource_signal_fence {
24265    pub id: crate::types::c_uint,
24266    pub fence_fd: crate::types::c_int,
24267    pub __pad: [crate::types::c_uint; 4usize],
24268}
24269#[repr(C)]
24270#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24271pub struct kgsl_cff_sync_gpuobj {
24272    pub offset: __u64,
24273    pub length: __u64,
24274    pub id: crate::types::c_uint,
24275    pub __bindgen_padding_0: [u8; 4usize],
24276}
24277#[repr(C)]
24278#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24279pub struct kgsl_gpuobj_alloc {
24280    pub size: __u64,
24281    pub flags: __u64,
24282    pub va_len: __u64,
24283    pub mmapsize: __u64,
24284    pub id: crate::types::c_uint,
24285    pub metadata_len: crate::types::c_uint,
24286    pub metadata: __u64,
24287}
24288#[repr(C)]
24289#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24290pub struct kgsl_gpuobj_free {
24291    pub flags: __u64,
24292    pub priv_: __u64,
24293    pub id: crate::types::c_uint,
24294    pub type_: crate::types::c_uint,
24295    pub len: 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_gpu_event_timestamp {
24301    pub context_id: crate::types::c_uint,
24302    pub timestamp: crate::types::c_uint,
24303}
24304#[repr(C)]
24305#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24306pub struct kgsl_gpu_event_fence {
24307    pub fd: crate::types::c_int,
24308}
24309#[repr(C)]
24310#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24311pub struct kgsl_gpuobj_info {
24312    pub gpuaddr: __u64,
24313    pub flags: __u64,
24314    pub size: __u64,
24315    pub va_len: __u64,
24316    pub va_addr: __u64,
24317    pub id: crate::types::c_uint,
24318    pub __bindgen_padding_0: [u8; 4usize],
24319}
24320#[repr(C)]
24321#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24322pub struct kgsl_gpuobj_import {
24323    pub priv_: __u64,
24324    pub priv_len: __u64,
24325    pub flags: __u64,
24326    pub type_: crate::types::c_uint,
24327    pub id: crate::types::c_uint,
24328}
24329#[repr(C)]
24330#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24331pub struct kgsl_gpuobj_import_dma_buf {
24332    pub fd: crate::types::c_int,
24333}
24334#[repr(C)]
24335#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24336pub struct kgsl_gpuobj_import_useraddr {
24337    pub virtaddr: __u64,
24338}
24339#[repr(C)]
24340#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24341pub struct kgsl_gpuobj_sync_obj {
24342    pub offset: __u64,
24343    pub length: __u64,
24344    pub id: crate::types::c_uint,
24345    pub op: crate::types::c_uint,
24346}
24347#[repr(C)]
24348#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24349pub struct kgsl_gpuobj_sync {
24350    pub objs: __u64,
24351    pub obj_len: crate::types::c_uint,
24352    pub count: crate::types::c_uint,
24353}
24354#[repr(C)]
24355#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24356pub struct kgsl_command_object {
24357    pub offset: __u64,
24358    pub gpuaddr: __u64,
24359    pub size: __u64,
24360    pub flags: crate::types::c_uint,
24361    pub id: crate::types::c_uint,
24362}
24363#[repr(C)]
24364#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24365pub struct kgsl_command_syncpoint {
24366    pub priv_: __u64,
24367    pub size: __u64,
24368    pub type_: crate::types::c_uint,
24369    pub __bindgen_padding_0: [u8; 4usize],
24370}
24371#[repr(C)]
24372#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24373pub struct kgsl_gpu_command {
24374    pub flags: __u64,
24375    pub cmdlist: __u64,
24376    pub cmdsize: crate::types::c_uint,
24377    pub numcmds: crate::types::c_uint,
24378    pub objlist: __u64,
24379    pub objsize: crate::types::c_uint,
24380    pub numobjs: crate::types::c_uint,
24381    pub synclist: __u64,
24382    pub syncsize: crate::types::c_uint,
24383    pub numsyncs: crate::types::c_uint,
24384    pub context_id: crate::types::c_uint,
24385    pub timestamp: crate::types::c_uint,
24386}
24387#[repr(C)]
24388#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24389pub struct kgsl_preemption_counters_query {
24390    pub counters: __u64,
24391    pub size_user: crate::types::c_uint,
24392    pub size_priority_level: crate::types::c_uint,
24393    pub max_priority_level: crate::types::c_uint,
24394    pub __bindgen_padding_0: [u8; 4usize],
24395}
24396#[repr(C)]
24397#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24398pub struct kgsl_gpuobj_set_info {
24399    pub flags: __u64,
24400    pub metadata: __u64,
24401    pub id: crate::types::c_uint,
24402    pub metadata_len: crate::types::c_uint,
24403    pub type_: crate::types::c_uint,
24404    pub __bindgen_padding_0: [u8; 4usize],
24405}
24406#[repr(C)]
24407#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24408pub struct kgsl_sparse_phys_alloc {
24409    pub size: __u64,
24410    pub pagesize: __u64,
24411    pub flags: __u64,
24412    pub id: crate::types::c_uint,
24413    pub __bindgen_padding_0: [u8; 4usize],
24414}
24415#[repr(C)]
24416#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24417pub struct kgsl_sparse_phys_free {
24418    pub id: crate::types::c_uint,
24419}
24420#[repr(C)]
24421#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24422pub struct kgsl_sparse_virt_alloc {
24423    pub size: __u64,
24424    pub pagesize: __u64,
24425    pub flags: __u64,
24426    pub gpuaddr: __u64,
24427    pub id: crate::types::c_uint,
24428    pub __bindgen_padding_0: [u8; 4usize],
24429}
24430#[repr(C)]
24431#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24432pub struct kgsl_sparse_virt_free {
24433    pub id: crate::types::c_uint,
24434}
24435#[repr(C)]
24436#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24437pub struct kgsl_sparse_binding_object {
24438    pub virtoffset: __u64,
24439    pub physoffset: __u64,
24440    pub size: __u64,
24441    pub flags: __u64,
24442    pub id: crate::types::c_uint,
24443    pub __bindgen_padding_0: [u8; 4usize],
24444}
24445#[repr(C)]
24446#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24447pub struct kgsl_sparse_bind {
24448    pub list: __u64,
24449    pub id: crate::types::c_uint,
24450    pub size: crate::types::c_uint,
24451    pub count: crate::types::c_uint,
24452    pub __bindgen_padding_0: [u8; 4usize],
24453}
24454#[repr(C)]
24455#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24456pub struct kgsl_gpu_sparse_command {
24457    pub flags: __u64,
24458    pub sparselist: __u64,
24459    pub synclist: __u64,
24460    pub sparsesize: crate::types::c_uint,
24461    pub numsparse: crate::types::c_uint,
24462    pub syncsize: crate::types::c_uint,
24463    pub numsyncs: crate::types::c_uint,
24464    pub context_id: crate::types::c_uint,
24465    pub timestamp: crate::types::c_uint,
24466    pub id: crate::types::c_uint,
24467    pub __bindgen_padding_0: [u8; 4usize],
24468}
24469#[repr(C)]
24470#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24471pub struct kgsl_gpumem_bind_range {
24472    pub child_offset: __u64,
24473    pub target_offset: __u64,
24474    pub length: __u64,
24475    pub child_id: __u32,
24476    pub op: __u32,
24477}
24478#[repr(C)]
24479#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24480pub struct kgsl_gpumem_bind_ranges {
24481    pub ranges: __u64,
24482    pub ranges_nents: __u32,
24483    pub ranges_size: __u32,
24484    pub id: __u32,
24485    pub flags: __u32,
24486    pub fence_id: crate::types::c_int,
24487    pub padding: __u32,
24488}
24489#[repr(C)]
24490#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24491pub struct kgsl_gpu_aux_command_bind {
24492    pub rangeslist: __u64,
24493    pub numranges: __u64,
24494    pub rangesize: __u64,
24495    pub target: __u32,
24496    pub padding: __u32,
24497}
24498#[repr(C)]
24499#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24500pub struct kgsl_gpu_aux_command_generic {
24501    pub priv_: __u64,
24502    pub size: __u64,
24503    pub type_: __u32,
24504    pub padding: __u32,
24505}
24506#[repr(C)]
24507#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24508pub struct kgsl_gpu_aux_command {
24509    pub flags: __u64,
24510    pub cmdlist: __u64,
24511    pub cmdsize: __u32,
24512    pub numcmds: __u32,
24513    pub synclist: __u64,
24514    pub syncsize: __u32,
24515    pub numsyncs: __u32,
24516    pub context_id: __u32,
24517    pub timestamp: __u32,
24518}
24519#[repr(C)]
24520#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24521pub struct kgsl_timeline_create {
24522    pub seqno: __u64,
24523    pub id: __u32,
24524    pub padding: __u32,
24525}
24526#[repr(C)]
24527#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24528pub struct kgsl_timeline_val {
24529    pub seqno: __u64,
24530    pub timeline: __u32,
24531    pub padding: __u32,
24532}
24533#[repr(C)]
24534#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24535pub struct kgsl_timeline_wait {
24536    pub tv_sec: __s64,
24537    pub tv_nsec: __s64,
24538    pub timelines: __u64,
24539    pub count: __u32,
24540    pub timelines_size: __u32,
24541    pub flags: __u32,
24542    pub padding: __u32,
24543}
24544#[repr(C)]
24545#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24546pub struct kgsl_timeline_signal {
24547    pub timelines: __u64,
24548    pub count: __u32,
24549    pub timelines_size: __u32,
24550}
24551#[repr(C)]
24552#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24553pub struct kgsl_timeline_fence_get {
24554    pub seqno: __u64,
24555    pub timeline: __u32,
24556    pub handle: crate::types::c_int,
24557}
24558#[repr(C)]
24559#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24560pub struct kgsl_gpu_aux_command_timeline {
24561    pub timelines: __u64,
24562    pub count: __u32,
24563    pub timelines_size: __u32,
24564}
24565#[repr(C)]
24566#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24567pub struct kgsl_pagefault_report {
24568    pub fault_addr: __u64,
24569    pub reserved: [__u64; 2usize],
24570    pub fault_type: __u32,
24571    pub __pad: __u32,
24572}
24573#[repr(C)]
24574#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24575pub struct kgsl_fault {
24576    pub fault: __u64,
24577    pub type_: __u32,
24578    pub count: __u32,
24579    pub size: __u32,
24580    pub padding: __u32,
24581}
24582#[repr(C)]
24583#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24584pub struct kgsl_fault_report {
24585    pub faultlist: __u64,
24586    pub faultnents: __u32,
24587    pub faultsize: __u32,
24588    pub context_id: __u32,
24589    pub padding: __u32,
24590}
24591#[repr(C)]
24592#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24593pub struct kgsl_recurring_command {
24594    pub flags: __u64,
24595    pub cmdlist: __u64,
24596    pub cmdsize: __u32,
24597    pub numcmds: __u32,
24598    pub objlist: __u64,
24599    pub objsize: __u32,
24600    pub numobjs: __u32,
24601    pub context_id: __u32,
24602    pub padding: __u32,
24603}
24604pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_DEVICE:
24605    kgsl_calibrated_time_domain = 0;
24606pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MONOTONIC:
24607    kgsl_calibrated_time_domain = 1;
24608pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MONOTONIC_RAW:
24609    kgsl_calibrated_time_domain = 2;
24610pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MAX: kgsl_calibrated_time_domain =
24611    3;
24612pub type kgsl_calibrated_time_domain = crate::types::c_uint;
24613#[repr(C)]
24614#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24615pub struct kgsl_read_calibrated_timestamps {
24616    pub sources: __u64,
24617    pub ts: __u64,
24618    pub deviation: __u64,
24619    pub count: __u32,
24620    pub padding: __u32,
24621}
24622#[repr(C)]
24623#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24624pub struct remote_buf {
24625    pub pv: uaddr,
24626    pub len: size_t,
24627}
24628impl Default for remote_buf {
24629    fn default() -> Self {
24630        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24631        unsafe {
24632            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24633            s.assume_init()
24634        }
24635    }
24636}
24637#[repr(C)]
24638#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24639pub struct fastrpc_ioctl_invoke {
24640    pub handle: u32,
24641    pub sc: u32,
24642    pub pra: uaddr,
24643}
24644impl Default for fastrpc_ioctl_invoke {
24645    fn default() -> Self {
24646        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24647        unsafe {
24648            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24649            s.assume_init()
24650        }
24651    }
24652}
24653#[repr(C)]
24654#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24655pub struct fastrpc_ioctl_invoke_fd {
24656    pub inv: fastrpc_ioctl_invoke,
24657    pub fds: uref<i32>,
24658}
24659impl Default for fastrpc_ioctl_invoke_fd {
24660    fn default() -> Self {
24661        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24662        unsafe {
24663            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24664            s.assume_init()
24665        }
24666    }
24667}
24668#[repr(C)]
24669#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24670pub struct fastrpc_ioctl_invoke2 {
24671    pub req: u32,
24672    pub __bindgen_padding_0: [u8; 4usize],
24673    pub invparam: uaddr,
24674    pub size: u32,
24675    pub err: i32,
24676}
24677impl Default for fastrpc_ioctl_invoke2 {
24678    fn default() -> Self {
24679        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24680        unsafe {
24681            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24682            s.assume_init()
24683        }
24684    }
24685}
24686#[repr(C)]
24687#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24688pub struct fastrpc_ioctl_init {
24689    pub flags: u32,
24690    pub __bindgen_padding_0: [u8; 4usize],
24691    pub file: uaddr,
24692    pub filelen: u32,
24693    pub filefd: i32,
24694    pub mem: uaddr,
24695    pub memlen: u32,
24696    pub memfd: i32,
24697}
24698impl Default for fastrpc_ioctl_init {
24699    fn default() -> Self {
24700        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24701        unsafe {
24702            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24703            s.assume_init()
24704        }
24705    }
24706}
24707#[repr(C)]
24708#[derive(Clone, Copy, Debug, Default, IntoBytes, FromBytes, KnownLayout, Immutable)]
24709pub struct fastrpc_ioctl_capability {
24710    pub domain: u32,
24711    pub attribute_ID: u32,
24712    pub capability: u32,
24713}
24714pub const SECCOMP_IOCTL_NOTIF_RECV: __u32 = 3226476800;
24715pub const SECCOMP_IOCTL_NOTIF_SEND: __u32 = 3222806785;
24716pub const SECCOMP_IOCTL_NOTIF_ID_VALID: __u32 = 1074274562;
24717pub const SECCOMP_IOCTL_NOTIF_ADDFD: __u32 = 1075323139;
24718pub const TIOCSPTLCK: __u32 = 1074025521;
24719pub const TIOCGPTLCK: __u32 = 2147767353;
24720pub const TIOCGPKT: __u32 = 2147767352;
24721pub const TIOCSIG: __u32 = 1074025526;
24722pub const TIOCGPTN: __u32 = 2147767344;
24723pub const BLKFLSBUF: __u32 = 4705;
24724pub const BLKGETSIZE: __u32 = 4704;
24725pub const BLKGETSIZE64: __u32 = 2148012658;
24726pub const BLKRASET: __u32 = 4706;
24727pub const EVIOCGVERSION: __u32 = 2147763457;
24728pub const EVIOCGID: __u32 = 2148025602;
24729pub const RWF_HIPRI: __u32 = 1;
24730pub const RWF_DSYNC: __u32 = 2;
24731pub const RWF_SYNC: __u32 = 4;
24732pub const RWF_NOWAIT: __u32 = 8;
24733pub const RWF_APPEND: __u32 = 16;
24734pub const RWF_SUPPORTED: __u32 = 127;
24735pub const EVIOCGBIT_0: __u32 = 2147763488;
24736pub const EVIOCGBIT_EV_KEY: __u32 = 2153792801;
24737pub const EVIOCGBIT_EV_ABS: __u32 = 2148025635;
24738pub const EVIOCGBIT_EV_REL: __u32 = 2147632418;
24739pub const EVIOCGBIT_EV_SW: __u32 = 2147632421;
24740pub const EVIOCGBIT_EV_LED: __u32 = 2147632433;
24741pub const EVIOCGBIT_EV_FF: __u32 = 2148549941;
24742pub const EVIOCGBIT_EV_MSC: __u32 = 2147566884;
24743pub const EVIOCGPROP: __u32 = 2147763465;
24744pub const EVIOCGABS_X: __u32 = 2149074240;
24745pub const EVIOCGABS_Y: __u32 = 2149074241;
24746pub const EVIOCGABS_MT_SLOT: __u32 = 2149074287;
24747pub const EVIOCGABS_MT_TRACKING_ID: __u32 = 2149074297;
24748pub const EVIOCGABS_MT_POSITION_X: __u32 = 2149074293;
24749pub const EVIOCGABS_MT_POSITION_Y: __u32 = 2149074294;
24750pub const EVIOCGNAME_0: __u32 = 2147501318;
24751#[repr(C)]
24752#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24753pub struct remote_binder_start_command {
24754    pub incoming_service: uref<crate::types::c_char>,
24755}
24756impl Default for remote_binder_start_command {
24757    fn default() -> Self {
24758        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24759        unsafe {
24760            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24761            s.assume_init()
24762        }
24763    }
24764}
24765#[repr(C)]
24766#[derive(Clone, Copy, Debug, Default, IntoBytes, FromBytes, KnownLayout, Immutable)]
24767pub struct remote_binder_wait_command {
24768    pub spawn_thread: crate::types::c_char,
24769}
24770pub const REMOTE_BINDER_START: __u32 = 2148028929;
24771pub const REMOTE_BINDER_WAIT: __u32 = 1073828354;
24772pub const BINDER_CTL_ADD: __u32 = 3238552065;
24773pub const FIBMAP: __u32 = 1;
24774pub const FIGETBSZ: __u32 = 2;
24775pub const FICLONE: __u32 = 1074041865;
24776pub const FICLONERANGE: __u32 = 1075876877;
24777pub const FIDEDUPERANGE: __u32 = 3222836278;
24778pub const FS_IOC_GETVERSION: __u32 = 2148038145;
24779pub const FS_IOC_SETVERSION: __u32 = 1074296322;
24780pub const FS_IOC_FSGETXATTR: __u32 = 2149341215;
24781pub const FS_IOC_FSSETXATTR: __u32 = 1075599392;
24782pub const FS_IOC_GETFLAGS: __u32 = 2148034049;
24783pub const FS_IOC_SETFLAGS: __u32 = 1074292226;
24784pub const FS_IOC_ENABLE_VERITY: __u32 = 1082156677;
24785pub const FS_IOC_MEASURE_VERITY: __u32 = 3221513862;
24786pub const FS_IOC_READ_VERITY_METADATA: __u32 = 3223873159;
24787pub const DM_DEV_STATUS: __u32 = 3241737479;
24788pub const DM_DEV_CREATE: __u32 = 3241737475;
24789pub const DM_DEV_REMOVE: __u32 = 3241737476;
24790pub const DM_DEV_SUSPEND: __u32 = 3241737478;
24791pub const DM_TABLE_LOAD: __u32 = 3241737481;
24792pub const DM_TABLE_STATUS: __u32 = 3241737484;
24793pub const DM_LIST_VERSIONS: __u32 = 3241737485;
24794pub const DM_LIST_DEVICES: __u32 = 3241737474;
24795pub const DM_VERSION: __u32 = 3241737472;
24796pub const DM_REMOVE_ALL: __u32 = 3241737473;
24797pub const DM_DEV_RENAME: __u32 = 3241737477;
24798pub const DM_DEV_WAIT: __u32 = 3241737480;
24799pub const DM_TABLE_CLEAR: __u32 = 3241737482;
24800pub const DM_TABLE_DEPS: __u32 = 3241737483;
24801pub const DM_TARGET_MSG: __u32 = 3241737486;
24802pub const DM_DEV_SET_GEOMETRY: __u32 = 3241737487;
24803pub const DM_DEV_ARM_POLL: __u32 = 3241737488;
24804pub const DM_GET_TARGET_VERSION: __u32 = 3241737489;
24805pub const FS_IOC_ADD_ENCRYPTION_KEY: __u32 = 3226494487;
24806pub const FS_IOC_SET_ENCRYPTION_POLICY: __u32 = 2148296211;
24807pub const FS_IOC_GET_ENCRYPTION_POLICY: __u32 = 1074554389;
24808pub const FS_IOC_REMOVE_ENCRYPTION_KEY: __u32 = 3225445912;
24809pub const KGSL_MEMFLAGS_USERMEM_PMEM: __u32 = 32;
24810pub const KGSL_MEMFLAGS_USERMEM_ASHMEM: __u32 = 64;
24811pub const KGSL_MEMFLAGS_USERMEM_ADDR: __u32 = 96;
24812pub const KGSL_MEMFLAGS_USERMEM_ION: __u32 = 128;
24813pub const IOCTL_KGSL_DEVICE_GETPROPERTY: __u32 = 3222800642;
24814pub const IOCTL_KGSL_DEVICE_WAITTIMESTAMP: __u32 = 1074268422;
24815pub const IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID: __u32 = 1074530567;
24816pub const IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS: __u32 = 3223324944;
24817pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD: __u32 = 2148010257;
24818pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP: __u32 = 3221752081;
24819pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP: __u32 = 1074792722;
24820pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_OLD: __u32 = 2148534546;
24821pub const IOCTL_KGSL_DRAWCTXT_CREATE: __u32 = 3221752083;
24822pub const IOCTL_KGSL_DRAWCTXT_DESTROY: __u32 = 1074006292;
24823pub const IOCTL_KGSL_MAP_USER_MEM: __u32 = 3224373525;
24824pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_CTXTID: __u32 = 3222014230;
24825pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID: __u32 = 1075317015;
24826pub const IOCTL_KGSL_SHAREDMEM_FROM_PMEM: __u32 = 3222800672;
24827pub const IOCTL_KGSL_SHAREDMEM_FREE: __u32 = 1074268449;
24828pub const IOCTL_KGSL_CFF_USER_EVENT: __u32 = 1075841329;
24829pub const IOCTL_KGSL_DRAWCTXT_BIND_GMEM_SHADOW: __u32 = 1078462754;
24830pub const IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC: __u32 = 3222276387;
24831pub const IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE: __u32 = 1074268452;
24832pub const IOCTL_KGSL_DRAWCTXT_SET_BIN_BASE_OFFSET: __u32 = 1074268453;
24833pub const IOCTL_KGSL_CMDWINDOW_WRITE: __u32 = 1074530606;
24834pub const IOCTL_KGSL_GPUMEM_ALLOC: __u32 = 3222800687;
24835pub const IOCTL_KGSL_CFF_SYNCMEM: __u32 = 1075317040;
24836pub const IOCTL_KGSL_TIMESTAMP_EVENT_OLD: __u32 = 1075841329;
24837pub const IOCTL_KGSL_SETPROPERTY: __u32 = 1075317042;
24838pub const IOCTL_KGSL_TIMESTAMP_EVENT: __u32 = 3223324979;
24839pub const IOCTL_KGSL_GPUMEM_ALLOC_ID: __u32 = 3224373556;
24840pub const IOCTL_KGSL_GPUMEM_FREE_ID: __u32 = 3221752117;
24841pub const IOCTL_KGSL_GPUMEM_GET_INFO: __u32 = 3225946422;
24842pub const IOCTL_KGSL_GPUMEM_SYNC_CACHE: __u32 = 1075841335;
24843pub const IOCTL_KGSL_PERFCOUNTER_GET: __u32 = 3222538552;
24844pub const IOCTL_KGSL_PERFCOUNTER_PUT: __u32 = 1074792761;
24845pub const IOCTL_KGSL_PERFCOUNTER_QUERY: __u32 = 3223324986;
24846pub const IOCTL_KGSL_PERFCOUNTER_READ: __u32 = 3222800699;
24847pub const IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK: __u32 = 3222800700;
24848pub const IOCTL_KGSL_SUBMIT_COMMANDS: __u32 = 3224897853;
24849pub const IOCTL_KGSL_SYNCSOURCE_CREATE: __u32 = 3222276416;
24850pub const IOCTL_KGSL_SYNCSOURCE_DESTROY: __u32 = 3222276417;
24851pub const IOCTL_KGSL_SYNCSOURCE_CREATE_FENCE: __u32 = 3222800706;
24852pub const IOCTL_KGSL_SYNCSOURCE_SIGNAL_FENCE: __u32 = 3222800707;
24853pub const IOCTL_KGSL_CFF_SYNC_GPUOBJ: __u32 = 1075317060;
24854pub const IOCTL_KGSL_GPUOBJ_ALLOC: __u32 = 3224373573;
24855pub const IOCTL_KGSL_GPUOBJ_FREE: __u32 = 1075841350;
24856pub const IOCTL_KGSL_GPUOBJ_INFO: __u32 = 3224373575;
24857pub const IOCTL_KGSL_GPUOBJ_IMPORT: __u32 = 3223325000;
24858pub const IOCTL_KGSL_GPUOBJ_SYNC: __u32 = 1074792777;
24859pub const IOCTL_KGSL_GPU_COMMAND: __u32 = 3225422154;
24860pub const IOCTL_KGSL_PREEMPTIONCOUNTER_QUERY: __u32 = 3222800715;
24861pub const IOCTL_KGSL_GPUOBJ_SET_INFO: __u32 = 1075841356;
24862pub const IOCTL_KGSL_SPARSE_PHYS_ALLOC: __u32 = 3223325008;
24863pub const IOCTL_KGSL_SPARSE_PHYS_FREE: __u32 = 1074006353;
24864pub const IOCTL_KGSL_SPARSE_VIRT_ALLOC: __u32 = 3223849298;
24865pub const IOCTL_KGSL_SPARSE_VIRT_FREE: __u32 = 1074006355;
24866pub const IOCTL_KGSL_SPARSE_BIND: __u32 = 1075317076;
24867pub const IOCTL_KGSL_GPU_SPARSE_COMMAND: __u32 = 3224897877;
24868pub const IOCTL_KGSL_GPUMEM_BIND_RANGES: __u32 = 3223325014;
24869pub const IOCTL_KGSL_GPU_AUX_COMMAND: __u32 = 3224373591;
24870pub const IOCTL_KGSL_TIMELINE_CREATE: __u32 = 3222276440;
24871pub const IOCTL_KGSL_TIMELINE_WAIT: __u32 = 1076365657;
24872pub const IOCTL_KGSL_TIMELINE_QUERY: __u32 = 3222276442;
24873pub const IOCTL_KGSL_TIMELINE_SIGNAL: __u32 = 1074792795;
24874pub const IOCTL_KGSL_TIMELINE_FENCE_GET: __u32 = 3222276444;
24875pub const IOCTL_KGSL_TIMELINE_DESTROY: __u32 = 1074006365;
24876pub const IOCTL_KGSL_GET_FAULT_REPORT: __u32 = 3222800734;
24877pub const IOCTL_KGSL_RECURRING_COMMAND: __u32 = 3224373599;
24878pub const IOCTL_KGSL_READ_CALIBRATED_TIMESTAMPS: __u32 = 3223325024;
24879pub const TCGETS2: __u32 = 2150388778;
24880pub const TCSETS2: __u32 = 1076646955;
24881pub const TCSETSW2: __u32 = 1076646956;
24882pub const TCSETSF2: __u32 = 1076646957;
24883pub const RTC_SET_TIME: __u32 = 1076129802;
24884pub const UI_DEV_CREATE: __u32 = 21761;
24885pub const UI_DEV_DESTROY: __u32 = 21762;
24886pub const UI_DEV_SETUP: __u32 = 1079792899;
24887pub const UI_ABS_SETUP: __u32 = 1075598596;
24888pub const UI_SET_EVBIT: __u32 = 1074025828;
24889pub const UI_SET_KEYBIT: __u32 = 1074025829;
24890pub const UI_SET_RELBIT: __u32 = 1074025830;
24891pub const UI_SET_ABSBIT: __u32 = 1074025831;
24892pub const UI_SET_MSCBIT: __u32 = 1074025832;
24893pub const UI_SET_LEDBIT: __u32 = 1074025833;
24894pub const UI_SET_SNDBIT: __u32 = 1074025834;
24895pub const UI_SET_FFBIT: __u32 = 1074025835;
24896pub const UI_SET_PHYS: __u32 = 1074287980;
24897pub const UI_SET_SWBIT: __u32 = 1074025837;
24898pub const UI_SET_PROPBIT: __u32 = 1074025838;
24899pub const UI_BEGIN_FF_UPLOAD: __u32 = 3228063176;
24900pub const UI_END_FF_UPLOAD: __u32 = 1080579529;
24901pub const UI_BEGIN_FF_ERASE: __u32 = 3222033866;
24902pub const UI_END_FF_ERASE: __u32 = 1074550219;
24903pub const UI_GET_VERSION: __u32 = 2147767597;
24904pub const ASHMEM_SET_NAME: __u32 = 1090549505;
24905pub const ASHMEM_GET_NAME: __u32 = 2164291330;
24906pub const ASHMEM_SET_SIZE: __u32 = 1074296579;
24907pub const ASHMEM_GET_SIZE: __u32 = 30468;
24908pub const ASHMEM_SET_PROT_MASK: __u32 = 1074296581;
24909pub const ASHMEM_GET_PROT_MASK: __u32 = 30470;
24910pub const ASHMEM_PIN: __u32 = 1074296583;
24911pub const ASHMEM_UNPIN: __u32 = 1074296584;
24912pub const ASHMEM_GET_PIN_STATUS: __u32 = 30473;
24913pub const ASHMEM_PURGE_ALL_CACHES: __u32 = 30474;
24914pub const ASHMEM_GET_FILE_ID: __u32 = 2148038411;
24915pub const RNDGETENTCNT: __u32 = 2147766784;
24916pub const RNDADDTOENTCNT: __u32 = 1074024961;
24917pub const RNDGETPOOL: __u32 = 2148028930;
24918pub const RNDADDENTROPY: __u32 = 1074287107;
24919pub const RNDZAPENTCNT: __u32 = 20996;
24920pub const RNDCLEARPOOL: __u32 = 20998;
24921pub const RNDRESEEDCRNG: __u32 = 20999;
24922pub const UFFDIO_REGISTER: __u32 = 3223366144;
24923pub const UFFDIO_UNREGISTER: __u32 = 2148575745;
24924pub const UFFDIO_WAKE: __u32 = 2148575746;
24925pub const UFFDIO_COPY: __u32 = 3223890435;
24926pub const UFFDIO_ZEROPAGE: __u32 = 3223366148;
24927pub const UFFDIO_WRITEPROTECT: __u32 = 3222841862;
24928pub const UFFDIO_CONTINUE: __u32 = 3223366151;
24929pub const UFFDIO_POISON: __u32 = 3223366152;
24930pub const UFFDIO_MOVE: __u32 = 3223890437;
24931pub const UFFDIO_API: __u32 = 3222841919;
24932pub const UFFDIO_REGISTER_MODE_MISSING: __u32 = 1;
24933pub const UFFDIO_REGISTER_MODE_WP: __u32 = 2;
24934pub const UFFDIO_REGISTER_MODE_MINOR: __u32 = 4;
24935pub const UFFDIO_COPY_MODE_DONTWAKE: __u32 = 1;
24936pub const UFFDIO_COPY_MODE_WP: __u32 = 2;
24937pub const UFFDIO_ZEROPAGE_MODE_DONTWAKE: __u32 = 1;
24938pub const UFFDIO_CONTINUE_MODE_DONTWAKE: __u32 = 1;
24939pub const PERF_EVENT_IOC_ENABLE: __u32 = 9216;
24940pub const PERF_EVENT_IOC_DISABLE: __u32 = 9217;
24941pub const PERF_EVENT_IOC_REFRESH: __u32 = 9218;
24942pub const PERF_EVENT_IOC_RESET: __u32 = 9219;
24943pub const PERF_EVENT_IOC_PERIOD: __u32 = 1074275332;
24944pub const PERF_EVENT_IOC_SET_OUTPUT: __u32 = 9221;
24945pub const PERF_EVENT_IOC_SET_FILTER: __u32 = 1074275334;
24946pub const PERF_EVENT_IOC_ID: __u32 = 2148017159;
24947pub const PERF_EVENT_IOC_SET_BPF: __u32 = 1074013192;
24948pub const PERF_EVENT_IOC_PAUSE_OUTPUT: __u32 = 1074013193;
24949pub const PERF_EVENT_IOC_QUERY_BPF: __u32 = 3221758986;
24950pub const PERF_EVENT_IOC_MODIFY_ATTRIBUTES: __u32 = 1074275339;
24951pub const FASTRPC_IOCTL_INVOKE: __u32 = 3222295041;
24952pub const FASTRPC_IOCTL_INVOKE_FD: __u32 = 3222819332;
24953pub const FASTRPC_IOCTL_GETINFO: __u32 = 3221508616;
24954pub const FASTRPC_IOCTL_GET_DSP_INFO: __u32 = 3222032913;
24955pub const FASTRPC_IOCTL_INVOKE2: __u32 = 3222819346;
24956pub const FASTRPC_IOCTL_INIT: __u32 = 3223867910;
24957pub const DMA_HEAP_IOCTL_ALLOC: __u32 = 3222816768;
24958pub const DMA_BUF_IOCTL_SYNC: __u32 = 1074291200;
24959pub const DMA_BUF_SET_NAME: __u32 = 1074291201;
24960pub const DMA_BUF_SET_NAME_A: __u32 = 1074029057;
24961pub const DMA_BUF_SET_NAME_B: __u32 = 1074291201;
24962pub const DMA_BUF_IOCTL_EXPORT_SYNC_FILE: __u32 = 3221774850;
24963pub const DMA_BUF_IOCTL_IMPORT_SYNC_FILE: __u32 = 1074291203;
24964pub type utsname = new_utsname;
24965pub type gid_t = __kernel_gid_t;
24966pub type ino_t = __kernel_ino_t;
24967pub type mode_t = __kernel_mode_t;
24968pub type off_t = __kernel_off_t;
24969pub const TUNSETIFF: __u32 = 1074025674;
24970#[repr(C)]
24971#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24972pub struct sched_param {
24973    pub sched_priority: crate::types::c_int,
24974}
24975pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V0: __u32 = 1074849025;
24976pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V1: __u32 = 1074849151;
24977pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V2: __u32 = 1074062718;
24978#[repr(C)]
24979#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24980pub struct xt_match {
24981    pub _address: u8,
24982}
24983#[repr(C)]
24984#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24985pub struct xt_target {
24986    pub _address: u8,
24987}
24988
24989// LINT.ThenChange(
24990//    //src/starnix/lib/linux_uapi/stub/drivers/char/adsprpc_shared.h |
24991//    //src/starnix/lib/linux_uapi/stub/kgsl/msm_kgsl.h |
24992//    //src/starnix/lib/linux_uapi/third_party/libfuse/fuse_kernel.h |
24993//    //src/starnix/lib/linux_uapi/stub/bits/epoll_event.h |
24994//    //src/starnix/lib/linux_uapi/stub/bits/flock.h |
24995//    //src/starnix/lib/linux_uapi/stub/bits/flock64.h |
24996//    //src/starnix/lib/linux_uapi/stub/bits/in_addr.h |
24997//    //src/starnix/lib/linux_uapi/stub/bits/ip_mreq_source.h |
24998//    //src/starnix/lib/linux_uapi/stub/bits/ip_msfilter.h |
24999//    //src/starnix/lib/linux_uapi/stub/bits/sockaddr_storage.h |
25000//    //src/starnix/lib/linux_uapi/stub/bits/timespec.h |
25001//    //src/starnix/lib/linux_uapi/stub/fcntl.h |
25002//    //src/starnix/lib/linux_uapi/stub/missing_includes.h |
25003//    //src/starnix/lib/linux_uapi/stub/sys/ioctl.h |
25004//    //src/starnix/lib/linux_uapi/stub/sys/socket.h |
25005//    //src/starnix/lib/linux_uapi/stub/sys/time.h |
25006//    //src/starnix/lib/linux_uapi/stub/sys/types.h |
25007//    //src/starnix/lib/linux_uapi/stub/typedefs.h |
25008//    //src/starnix/lib/linux_uapi/wrapper.h |
25009//    //third_party/android/platform/bionic/libc/kernel/android/uapi/linux/compiler.h |
25010//    //third_party/android/platform/bionic/libc/kernel/android/uapi/linux/compiler_types.h |
25011//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/bitsperlong.h |
25012//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/bpf_perf_event.h |
25013//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/errno-base.h |
25014//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/errno.h |
25015//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/fcntl.h |
25016//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/hugetlb_encode.h |
25017//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/int-ll64.h |
25018//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ioctl.h |
25019//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ioctls.h |
25020//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/mman-common.h |
25021//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/mman.h |
25022//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/poll.h |
25023//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/posix_types.h |
25024//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/resource.h |
25025//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/siginfo.h |
25026//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/signal-defs.h |
25027//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/socket.h |
25028//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/sockios.h |
25029//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/statfs.h |
25030//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termbits-common.h |
25031//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termbits.h |
25032//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termios.h |
25033//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/types.h |
25034//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ucontext.h |
25035//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/auxvec.h |
25036//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/bitsperlong.h |
25037//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/bpf_perf_event.h |
25038//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/byteorder.h |
25039//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/errno.h |
25040//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/fcntl.h |
25041//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ioctl.h |
25042//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ioctls.h |
25043//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/mman.h |
25044//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/poll.h |
25045//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/posix_types.h |
25046//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/posix_types_64.h |
25047//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/prctl.h |
25048//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/processor-flags.h |
25049//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ptrace-abi.h |
25050//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ptrace.h |
25051//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/resource.h |
25052//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/sigcontext.h |
25053//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/siginfo.h |
25054//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/signal.h |
25055//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/socket.h |
25056//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/sockios.h |
25057//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/stat.h |
25058//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/statfs.h |
25059//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/swab.h |
25060//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/termbits.h |
25061//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/termios.h |
25062//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/types.h |
25063//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ucontext.h |
25064//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/unistd.h |
25065//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/unistd_64.h |
25066//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/aio_abi.h |
25067//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/android/binder.h |
25068//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/android/binderfs.h |
25069//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ashmem.h |
25070//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/audit.h |
25071//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/auxvec.h |
25072//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf.h |
25073//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf_common.h |
25074//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf_perf_event.h |
25075//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/byteorder/little_endian.h |
25076//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/capability.h |
25077//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/close_range.h |
25078//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/const.h |
25079//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dm-ioctl.h |
25080//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dma-buf.h |
25081//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dma-heap.h |
25082//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/elf-em.h |
25083//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/elf.h |
25084//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/errno.h |
25085//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/eventpoll.h |
25086//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fadvise.h |
25087//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/falloc.h |
25088//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fb.h |
25089//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fcntl.h |
25090//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fib_rules.h |
25091//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/filter.h |
25092//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fs.h |
25093//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fscrypt.h |
25094//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fsverity.h |
25095//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/futex.h |
25096//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/hdlc/ioctl.h |
25097//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/i2c.h |
25098//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if.h |
25099//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_addr.h |
25100//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_arp.h |
25101//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_ether.h |
25102//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_link.h |
25103//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_packet.h |
25104//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_tun.h |
25105//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/in.h |
25106//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/in6.h |
25107//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/inotify.h |
25108//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/input-event-codes.h |
25109//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/input.h |
25110//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/io_uring.h |
25111//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ioctl.h |
25112//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ip.h |
25113//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ipv6.h |
25114//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/irqnr.h |
25115//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/kcmp.h |
25116//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/libc-compat.h |
25117//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/limits.h |
25118//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/loop.h |
25119//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/magic.h |
25120//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/membarrier.h |
25121//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/memfd.h |
25122//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mman.h |
25123//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mount.h |
25124//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mqueue.h |
25125//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/neighbour.h |
25126//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netdevice.h |
25127//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter.h |
25128//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_conntrack_common.h |
25129//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_conntrack_tuple_common.h |
25130//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_nat.h |
25131//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/x_tables.h |
25132//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_TPROXY.h |
25133//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_bpf.h |
25134//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_mark.h |
25135//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_tcpudp.h |
25136//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4.h |
25137//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h |
25138//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4/ipt_REJECT.h |
25139//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6.h |
25140//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h |
25141//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6/ip6t_REJECT.h |
25142//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netlink.h |
25143//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/oom.h |
25144//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/openat2.h |
25145//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/perf_event.h |
25146//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/personality.h |
25147//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/pfkeyv2.h |
25148//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/pidfd.h |
25149//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/poll.h |
25150//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/posix_types.h |
25151//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/prctl.h |
25152//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ptrace.h |
25153//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/random.h |
25154//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/reboot.h |
25155//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/resource.h |
25156//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/rtc.h |
25157//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/rtnetlink.h |
25158//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sched.h |
25159//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sched/types.h |
25160//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/seccomp.h |
25161//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/securebits.h |
25162//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/signal.h |
25163//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/signalfd.h |
25164//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sock_diag.h |
25165//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/socket.h |
25166//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sockios.h |
25167//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/stat.h |
25168//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/stddef.h |
25169//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/swab.h |
25170//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sync_file.h |
25171//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sysinfo.h |
25172//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/taskstats.h |
25173//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/termios.h |
25174//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/thermal.h |
25175//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/time.h |
25176//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/time_types.h |
25177//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/timerfd.h |
25178//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/times.h |
25179//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/types.h |
25180//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/uinput.h |
25181//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/uio.h |
25182//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/un.h |
25183//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/unistd.h |
25184//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usb/ch9.h |
25185//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usb/functionfs.h |
25186//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/userfaultfd.h |
25187//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/utsname.h |
25188//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/vesa.h |
25189//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/vm_sockets.h |
25190//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/wait.h |
25191//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/xattr.h |
25192//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/xfrm.h
25193//)