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 USBDEVFS_MAXDRIVERNAME: u32 = 255;
6560pub const USBDEVFS_URB_SHORT_NOT_OK: u32 = 1;
6561pub const USBDEVFS_URB_ISO_ASAP: u32 = 2;
6562pub const USBDEVFS_URB_BULK_CONTINUATION: u32 = 4;
6563pub const USBDEVFS_URB_NO_FSBR: u32 = 32;
6564pub const USBDEVFS_URB_ZERO_PACKET: u32 = 64;
6565pub const USBDEVFS_URB_NO_INTERRUPT: u32 = 128;
6566pub const USBDEVFS_URB_TYPE_ISO: u32 = 0;
6567pub const USBDEVFS_URB_TYPE_INTERRUPT: u32 = 1;
6568pub const USBDEVFS_URB_TYPE_CONTROL: u32 = 2;
6569pub const USBDEVFS_URB_TYPE_BULK: u32 = 3;
6570pub const USBDEVFS_CAP_ZERO_PACKET: u32 = 1;
6571pub const USBDEVFS_CAP_BULK_CONTINUATION: u32 = 2;
6572pub const USBDEVFS_CAP_NO_PACKET_SIZE_LIM: u32 = 4;
6573pub const USBDEVFS_CAP_BULK_SCATTER_GATHER: u32 = 8;
6574pub const USBDEVFS_CAP_REAP_AFTER_DISCONNECT: u32 = 16;
6575pub const USBDEVFS_CAP_MMAP: u32 = 32;
6576pub const USBDEVFS_CAP_DROP_PRIVILEGES: u32 = 64;
6577pub const USBDEVFS_CAP_CONNINFO_EX: u32 = 128;
6578pub const USBDEVFS_CAP_SUSPEND: u32 = 256;
6579pub const USBDEVFS_DISCONNECT_CLAIM_IF_DRIVER: u32 = 1;
6580pub const USBDEVFS_DISCONNECT_CLAIM_EXCEPT_DRIVER: u32 = 2;
6581pub const USERFAULTFD_IOC: u32 = 170;
6582pub const _UFFDIO_REGISTER: u32 = 0;
6583pub const _UFFDIO_UNREGISTER: u32 = 1;
6584pub const _UFFDIO_WAKE: u32 = 2;
6585pub const _UFFDIO_COPY: u32 = 3;
6586pub const _UFFDIO_ZEROPAGE: u32 = 4;
6587pub const _UFFDIO_MOVE: u32 = 5;
6588pub const _UFFDIO_WRITEPROTECT: u32 = 6;
6589pub const _UFFDIO_CONTINUE: u32 = 7;
6590pub const _UFFDIO_POISON: u32 = 8;
6591pub const _UFFDIO_API: u32 = 63;
6592pub const UFFDIO: u32 = 170;
6593pub const UFFD_EVENT_PAGEFAULT: u32 = 18;
6594pub const UFFD_EVENT_FORK: u32 = 19;
6595pub const UFFD_EVENT_REMAP: u32 = 20;
6596pub const UFFD_EVENT_REMOVE: u32 = 21;
6597pub const UFFD_EVENT_UNMAP: u32 = 22;
6598pub const UFFD_PAGEFAULT_FLAG_WRITE: u32 = 1;
6599pub const UFFD_PAGEFAULT_FLAG_WP: u32 = 2;
6600pub const UFFD_PAGEFAULT_FLAG_MINOR: u32 = 4;
6601pub const UFFD_FEATURE_PAGEFAULT_FLAG_WP: u32 = 1;
6602pub const UFFD_FEATURE_EVENT_FORK: u32 = 2;
6603pub const UFFD_FEATURE_EVENT_REMAP: u32 = 4;
6604pub const UFFD_FEATURE_EVENT_REMOVE: u32 = 8;
6605pub const UFFD_FEATURE_MISSING_HUGETLBFS: u32 = 16;
6606pub const UFFD_FEATURE_MISSING_SHMEM: u32 = 32;
6607pub const UFFD_FEATURE_EVENT_UNMAP: u32 = 64;
6608pub const UFFD_FEATURE_SIGBUS: u32 = 128;
6609pub const UFFD_FEATURE_THREAD_ID: u32 = 256;
6610pub const UFFD_FEATURE_MINOR_HUGETLBFS: u32 = 512;
6611pub const UFFD_FEATURE_MINOR_SHMEM: u32 = 1024;
6612pub const UFFD_FEATURE_EXACT_ADDRESS: u32 = 2048;
6613pub const UFFD_FEATURE_WP_HUGETLBFS_SHMEM: u32 = 4096;
6614pub const UFFD_FEATURE_WP_UNPOPULATED: u32 = 8192;
6615pub const UFFD_FEATURE_POISON: u32 = 16384;
6616pub const UFFD_FEATURE_WP_ASYNC: u32 = 32768;
6617pub const UFFD_FEATURE_MOVE: u32 = 65536;
6618pub const UFFD_USER_MODE_ONLY: u32 = 1;
6619pub const __OLD_UTS_LEN: u32 = 8;
6620pub const __NEW_UTS_LEN: u32 = 64;
6621pub const SO_VM_SOCKETS_BUFFER_SIZE: u32 = 0;
6622pub const SO_VM_SOCKETS_BUFFER_MIN_SIZE: u32 = 1;
6623pub const SO_VM_SOCKETS_BUFFER_MAX_SIZE: u32 = 2;
6624pub const SO_VM_SOCKETS_PEER_HOST_VM_ID: u32 = 3;
6625pub const SO_VM_SOCKETS_TRUSTED: u32 = 5;
6626pub const SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD: u32 = 6;
6627pub const SO_VM_SOCKETS_NONBLOCK_TXRX: u32 = 7;
6628pub const SO_VM_SOCKETS_CONNECT_TIMEOUT_NEW: u32 = 8;
6629pub const SO_VM_SOCKETS_CONNECT_TIMEOUT: u32 = 6;
6630pub const VMADDR_CID_ANY: i32 = -1;
6631pub const VMADDR_PORT_ANY: i32 = -1;
6632pub const VMADDR_CID_HYPERVISOR: u32 = 0;
6633pub const VMADDR_CID_LOCAL: u32 = 1;
6634pub const VMADDR_CID_HOST: u32 = 2;
6635pub const VMADDR_FLAG_TO_HOST: u32 = 1;
6636pub const VM_SOCKETS_INVALID_VERSION: i32 = -1;
6637pub const SOL_VSOCK: u32 = 287;
6638pub const VSOCK_RECVERR: u32 = 1;
6639pub const WNOHANG: u32 = 1;
6640pub const WUNTRACED: u32 = 2;
6641pub const WSTOPPED: u32 = 2;
6642pub const WEXITED: u32 = 4;
6643pub const WCONTINUED: u32 = 8;
6644pub const WNOWAIT: u32 = 16777216;
6645pub const __WNOTHREAD: u32 = 536870912;
6646pub const __WALL: u32 = 1073741824;
6647pub const __WCLONE: u32 = 2147483648;
6648pub const P_ALL: u32 = 0;
6649pub const P_PID: u32 = 1;
6650pub const P_PGID: u32 = 2;
6651pub const P_PIDFD: u32 = 3;
6652pub const O_NOTIFICATION_PIPE: u32 = 128;
6653pub const WATCH_INFO_LENGTH: u32 = 127;
6654pub const WATCH_INFO_LENGTH__SHIFT: u32 = 0;
6655pub const WATCH_INFO_ID: u32 = 65280;
6656pub const WATCH_INFO_ID__SHIFT: u32 = 8;
6657pub const WATCH_INFO_TYPE_INFO: u32 = 4294901760;
6658pub const WATCH_INFO_TYPE_INFO__SHIFT: u32 = 16;
6659pub const WATCH_INFO_FLAG_0: u32 = 65536;
6660pub const WATCH_INFO_FLAG_1: u32 = 131072;
6661pub const WATCH_INFO_FLAG_2: u32 = 262144;
6662pub const WATCH_INFO_FLAG_3: u32 = 524288;
6663pub const WATCH_INFO_FLAG_4: u32 = 1048576;
6664pub const WATCH_INFO_FLAG_5: u32 = 2097152;
6665pub const WATCH_INFO_FLAG_6: u32 = 4194304;
6666pub const WATCH_INFO_FLAG_7: u32 = 8388608;
6667pub const XATTR_CREATE: u32 = 1;
6668pub const XATTR_REPLACE: u32 = 2;
6669pub const XATTR_OS2_PREFIX: &'static std::ffi::CStr = c"os2.";
6670pub const XATTR_MAC_OSX_PREFIX: &'static std::ffi::CStr = c"osx.";
6671pub const XATTR_BTRFS_PREFIX: &'static std::ffi::CStr = c"btrfs.";
6672pub const XATTR_HURD_PREFIX: &'static std::ffi::CStr = c"gnu.";
6673pub const XATTR_SECURITY_PREFIX: &'static std::ffi::CStr = c"security.";
6674pub const XATTR_SYSTEM_PREFIX: &'static std::ffi::CStr = c"system.";
6675pub const XATTR_TRUSTED_PREFIX: &'static std::ffi::CStr = c"trusted.";
6676pub const XATTR_USER_PREFIX: &'static std::ffi::CStr = c"user.";
6677pub const XATTR_EVM_SUFFIX: &'static std::ffi::CStr = c"evm";
6678pub const XATTR_NAME_EVM: &'static std::ffi::CStr = c"security.evm";
6679pub const XATTR_IMA_SUFFIX: &'static std::ffi::CStr = c"ima";
6680pub const XATTR_NAME_IMA: &'static std::ffi::CStr = c"security.ima";
6681pub const XATTR_SELINUX_SUFFIX: &'static std::ffi::CStr = c"selinux";
6682pub const XATTR_NAME_SELINUX: &'static std::ffi::CStr = c"security.selinux";
6683pub const XATTR_SMACK_SUFFIX: &'static std::ffi::CStr = c"SMACK64";
6684pub const XATTR_SMACK_IPIN: &'static std::ffi::CStr = c"SMACK64IPIN";
6685pub const XATTR_SMACK_IPOUT: &'static std::ffi::CStr = c"SMACK64IPOUT";
6686pub const XATTR_SMACK_EXEC: &'static std::ffi::CStr = c"SMACK64EXEC";
6687pub const XATTR_SMACK_TRANSMUTE: &'static std::ffi::CStr = c"SMACK64TRANSMUTE";
6688pub const XATTR_SMACK_MMAP: &'static std::ffi::CStr = c"SMACK64MMAP";
6689pub const XATTR_NAME_SMACK: &'static std::ffi::CStr = c"security.SMACK64";
6690pub const XATTR_NAME_SMACKIPIN: &'static std::ffi::CStr = c"security.SMACK64IPIN";
6691pub const XATTR_NAME_SMACKIPOUT: &'static std::ffi::CStr = c"security.SMACK64IPOUT";
6692pub const XATTR_NAME_SMACKEXEC: &'static std::ffi::CStr = c"security.SMACK64EXEC";
6693pub const XATTR_NAME_SMACKTRANSMUTE: &'static std::ffi::CStr = c"security.SMACK64TRANSMUTE";
6694pub const XATTR_NAME_SMACKMMAP: &'static std::ffi::CStr = c"security.SMACK64MMAP";
6695pub const XATTR_APPARMOR_SUFFIX: &'static std::ffi::CStr = c"apparmor";
6696pub const XATTR_NAME_APPARMOR: &'static std::ffi::CStr = c"security.apparmor";
6697pub const XATTR_CAPS_SUFFIX: &'static std::ffi::CStr = c"capability";
6698pub const XATTR_NAME_CAPS: &'static std::ffi::CStr = c"security.capability";
6699pub const XATTR_POSIX_ACL_ACCESS: &'static std::ffi::CStr = c"posix_acl_access";
6700pub const XATTR_NAME_POSIX_ACL_ACCESS: &'static std::ffi::CStr = c"system.posix_acl_access";
6701pub const XATTR_POSIX_ACL_DEFAULT: &'static std::ffi::CStr = c"posix_acl_default";
6702pub const XATTR_NAME_POSIX_ACL_DEFAULT: &'static std::ffi::CStr = c"system.posix_acl_default";
6703pub const XFRM_SC_DOI_RESERVED: u32 = 0;
6704pub const XFRM_SC_DOI_LSM: u32 = 1;
6705pub const XFRM_SC_ALG_RESERVED: u32 = 0;
6706pub const XFRM_SC_ALG_SELINUX: u32 = 1;
6707pub const XFRMA_REPLAY_ESN_MAX: u32 = 4096;
6708pub const XFRM_MODE_TRANSPORT: u32 = 0;
6709pub const XFRM_MODE_TUNNEL: u32 = 1;
6710pub const XFRM_MODE_ROUTEOPTIMIZATION: u32 = 2;
6711pub const XFRM_MODE_IN_TRIGGER: u32 = 3;
6712pub const XFRM_MODE_BEET: u32 = 4;
6713pub const XFRM_MODE_MAX: u32 = 5;
6714pub const XFRM_STATE_NOECN: u32 = 1;
6715pub const XFRM_STATE_DECAP_DSCP: u32 = 2;
6716pub const XFRM_STATE_NOPMTUDISC: u32 = 4;
6717pub const XFRM_STATE_WILDRECV: u32 = 8;
6718pub const XFRM_STATE_ICMP: u32 = 16;
6719pub const XFRM_STATE_AF_UNSPEC: u32 = 32;
6720pub const XFRM_STATE_ALIGN4: u32 = 64;
6721pub const XFRM_STATE_ESN: u32 = 128;
6722pub const XFRM_SA_XFLAG_DONT_ENCAP_DSCP: u32 = 1;
6723pub const XFRM_SA_XFLAG_OSEQ_MAY_WRAP: u32 = 2;
6724pub const XFRM_POLICY_ALLOW: u32 = 0;
6725pub const XFRM_POLICY_BLOCK: u32 = 1;
6726pub const XFRM_POLICY_LOCALOK: u32 = 1;
6727pub const XFRM_POLICY_ICMP: u32 = 2;
6728pub const XFRM_OFFLOAD_IPV6: u32 = 1;
6729pub const XFRM_OFFLOAD_INBOUND: u32 = 2;
6730pub const XFRM_OFFLOAD_PACKET: u32 = 4;
6731pub const XFRM_USERPOLICY_UNSPEC: u32 = 0;
6732pub const XFRM_USERPOLICY_BLOCK: u32 = 1;
6733pub const XFRM_USERPOLICY_ACCEPT: u32 = 2;
6734pub const XFRMGRP_ACQUIRE: u32 = 1;
6735pub const XFRMGRP_EXPIRE: u32 = 2;
6736pub const XFRMGRP_SA: u32 = 4;
6737pub const XFRMGRP_POLICY: u32 = 8;
6738pub const XFRMGRP_REPORT: u32 = 32;
6739pub const UC_FP_XSTATE: u32 = 1;
6740pub const UC_SIGCONTEXT_SS: u32 = 2;
6741pub const UC_STRICT_RESTORE_SS: u32 = 4;
6742pub const BPF_JMP32: u32 = 6;
6743pub const BPF_ALU64: u32 = 7;
6744pub const BPF_DW: u32 = 24;
6745pub const BPF_MEMSX: u32 = 128;
6746pub const BPF_ATOMIC: u32 = 192;
6747pub const BPF_XADD: u32 = 192;
6748pub const BPF_MOV: u32 = 176;
6749pub const BPF_ARSH: u32 = 192;
6750pub const BPF_END: u32 = 208;
6751pub const BPF_TO_LE: u32 = 0;
6752pub const BPF_TO_BE: u32 = 8;
6753pub const BPF_FROM_LE: u32 = 0;
6754pub const BPF_FROM_BE: u32 = 8;
6755pub const BPF_JNE: u32 = 80;
6756pub const BPF_JLT: u32 = 160;
6757pub const BPF_JLE: u32 = 176;
6758pub const BPF_JSGT: u32 = 96;
6759pub const BPF_JSGE: u32 = 112;
6760pub const BPF_JSLT: u32 = 192;
6761pub const BPF_JSLE: u32 = 208;
6762pub const BPF_JCOND: u32 = 224;
6763pub const BPF_CALL: u32 = 128;
6764pub const BPF_EXIT: u32 = 144;
6765pub const BPF_FETCH: u32 = 1;
6766pub const BPF_XCHG: u32 = 225;
6767pub const BPF_CMPXCHG: u32 = 241;
6768pub const BPF_F_ALLOW_OVERRIDE: u32 = 1;
6769pub const BPF_F_ALLOW_MULTI: u32 = 2;
6770pub const BPF_F_REPLACE: u32 = 4;
6771pub const BPF_F_BEFORE: u32 = 8;
6772pub const BPF_F_AFTER: u32 = 16;
6773pub const BPF_F_ID: u32 = 32;
6774pub const BPF_F_STRICT_ALIGNMENT: u32 = 1;
6775pub const BPF_F_ANY_ALIGNMENT: u32 = 2;
6776pub const BPF_F_TEST_RND_HI32: u32 = 4;
6777pub const BPF_F_TEST_STATE_FREQ: u32 = 8;
6778pub const BPF_F_SLEEPABLE: u32 = 16;
6779pub const BPF_F_XDP_HAS_FRAGS: u32 = 32;
6780pub const BPF_F_XDP_DEV_BOUND_ONLY: u32 = 64;
6781pub const BPF_F_TEST_REG_INVARIANTS: u32 = 128;
6782pub const BPF_F_NETFILTER_IP_DEFRAG: u32 = 1;
6783pub const BPF_PSEUDO_MAP_FD: u32 = 1;
6784pub const BPF_PSEUDO_MAP_IDX: u32 = 5;
6785pub const BPF_PSEUDO_MAP_VALUE: u32 = 2;
6786pub const BPF_PSEUDO_MAP_IDX_VALUE: u32 = 6;
6787pub const BPF_PSEUDO_BTF_ID: u32 = 3;
6788pub const BPF_PSEUDO_FUNC: u32 = 4;
6789pub const BPF_PSEUDO_CALL: u32 = 1;
6790pub const BPF_PSEUDO_KFUNC_CALL: u32 = 2;
6791pub const BPF_F_QUERY_EFFECTIVE: u32 = 1;
6792pub const BPF_F_TEST_RUN_ON_CPU: u32 = 1;
6793pub const BPF_F_TEST_XDP_LIVE_FRAMES: u32 = 2;
6794pub const BPF_F_TEST_SKB_CHECKSUM_COMPLETE: u32 = 4;
6795pub const BPF_BUILD_ID_SIZE: u32 = 20;
6796pub const BPF_OBJ_NAME_LEN: u32 = 16;
6797pub const XDP_PACKET_HEADROOM: u32 = 256;
6798pub const BPF_TAG_SIZE: u32 = 8;
6799pub const __KERNEL__: u32 = 1;
6800pub const __HAS_KERNEL__: u32 = 0;
6801#[doc = " Version number of this interface"]
6802pub const FUSE_KERNEL_VERSION: u32 = 7;
6803#[doc = " Minor version number of this interface"]
6804pub const FUSE_KERNEL_MINOR_VERSION: u32 = 40;
6805#[doc = " The node ID of the root inode"]
6806pub const FUSE_ROOT_ID: u32 = 1;
6807#[doc = " Bitmasks for fuse_setattr_in.valid"]
6808pub const FATTR_MODE: u32 = 1;
6809pub const FATTR_UID: u32 = 2;
6810pub const FATTR_GID: u32 = 4;
6811pub const FATTR_SIZE: u32 = 8;
6812pub const FATTR_ATIME: u32 = 16;
6813pub const FATTR_MTIME: u32 = 32;
6814pub const FATTR_FH: u32 = 64;
6815pub const FATTR_ATIME_NOW: u32 = 128;
6816pub const FATTR_MTIME_NOW: u32 = 256;
6817pub const FATTR_LOCKOWNER: u32 = 512;
6818pub const FATTR_CTIME: u32 = 1024;
6819pub const FATTR_KILL_SUIDGID: u32 = 2048;
6820#[doc = " Flags returned by the OPEN request\n\n FOPEN_DIRECT_IO: bypass page cache for this open file\n FOPEN_KEEP_CACHE: don't invalidate the data cache on open\n FOPEN_NONSEEKABLE: the file is not seekable\n FOPEN_CACHE_DIR: allow caching this directory\n FOPEN_STREAM: the file is stream-like (no file position at all)\n FOPEN_NOFLUSH: don't flush data cache on close (unless FUSE_WRITEBACK_CACHE)\n FOPEN_PARALLEL_DIRECT_WRITES: Allow concurrent direct writes on the same inode\n FOPEN_PASSTHROUGH: passthrough read/write operations for this open file"]
6821pub const FOPEN_DIRECT_IO: u32 = 1;
6822pub const FOPEN_KEEP_CACHE: u32 = 2;
6823pub const FOPEN_NONSEEKABLE: u32 = 4;
6824pub const FOPEN_CACHE_DIR: u32 = 8;
6825pub const FOPEN_STREAM: u32 = 16;
6826pub const FOPEN_NOFLUSH: u32 = 32;
6827pub const FOPEN_PARALLEL_DIRECT_WRITES: u32 = 64;
6828pub const FOPEN_PASSTHROUGH: u32 = 128;
6829#[doc = " INIT request/reply flags\n\n FUSE_ASYNC_READ: asynchronous read requests\n FUSE_POSIX_LOCKS: remote locking for POSIX file locks\n FUSE_FILE_OPS: kernel sends file handle for fstat, etc... (not yet supported)\n FUSE_ATOMIC_O_TRUNC: handles the O_TRUNC open flag in the filesystem\n FUSE_EXPORT_SUPPORT: filesystem handles lookups of \".\" and \"..\"\n FUSE_BIG_WRITES: filesystem can handle write size larger than 4kB\n FUSE_DONT_MASK: don't apply umask to file mode on create operations\n FUSE_SPLICE_WRITE: kernel supports splice write on the device\n FUSE_SPLICE_MOVE: kernel supports splice move on the device\n FUSE_SPLICE_READ: kernel supports splice read on the device\n FUSE_FLOCK_LOCKS: remote locking for BSD style file locks\n FUSE_HAS_IOCTL_DIR: kernel supports ioctl on directories\n FUSE_AUTO_INVAL_DATA: automatically invalidate cached pages\n FUSE_DO_READDIRPLUS: do READDIRPLUS (READDIR+LOOKUP in one)\n FUSE_READDIRPLUS_AUTO: adaptive readdirplus\n FUSE_ASYNC_DIO: asynchronous direct I/O submission\n FUSE_WRITEBACK_CACHE: use writeback cache for buffered writes\n FUSE_NO_OPEN_SUPPORT: kernel supports zero-message opens\n FUSE_PARALLEL_DIROPS: allow parallel lookups and readdir\n FUSE_HANDLE_KILLPRIV: fs handles killing suid/sgid/cap on write/chown/trunc\n FUSE_POSIX_ACL: filesystem supports posix acls\n FUSE_ABORT_ERROR: reading the device after abort returns ECONNABORTED\n FUSE_MAX_PAGES: init_out.max_pages contains the max number of req pages\n FUSE_CACHE_SYMLINKS: cache READLINK responses\n FUSE_NO_OPENDIR_SUPPORT: kernel supports zero-message opendir\n FUSE_EXPLICIT_INVAL_DATA: only invalidate cached pages on explicit request\n FUSE_MAP_ALIGNMENT: init_out.map_alignment contains log2(byte alignment) for\n\t\t       foffset and moffset fields in struct\n\t\t       fuse_setupmapping_out and fuse_removemapping_one.\n FUSE_SUBMOUNTS: kernel supports auto-mounting directory submounts\n FUSE_HANDLE_KILLPRIV_V2: fs kills suid/sgid/cap on write/chown/trunc.\n\t\t\tUpon write/truncate suid/sgid is only killed if caller\n\t\t\tdoes not have CAP_FSETID. Additionally upon\n\t\t\twrite/truncate sgid is killed only if file has group\n\t\t\texecute permission. (Same as Linux VFS behavior).\n FUSE_SETXATTR_EXT:\tServer supports extended struct fuse_setxattr_in\n FUSE_INIT_EXT: extended fuse_init_in request\n FUSE_INIT_RESERVED: reserved, do not use\n FUSE_SECURITY_CTX:\tadd security context to create, mkdir, symlink, and\n\t\t\tmknod\n FUSE_HAS_INODE_DAX:  use per inode DAX\n FUSE_CREATE_SUPP_GROUP: add supplementary group info to create, mkdir,\n\t\t\tsymlink and mknod (single group that matches parent)\n FUSE_HAS_EXPIRE_ONLY: kernel supports expiry-only entry invalidation\n FUSE_DIRECT_IO_ALLOW_MMAP: allow shared mmap in FOPEN_DIRECT_IO mode."]
6830pub const FUSE_ASYNC_READ: u32 = 1;
6831pub const FUSE_POSIX_LOCKS: u32 = 2;
6832pub const FUSE_FILE_OPS: u32 = 4;
6833pub const FUSE_ATOMIC_O_TRUNC: u32 = 8;
6834pub const FUSE_EXPORT_SUPPORT: u32 = 16;
6835pub const FUSE_BIG_WRITES: u32 = 32;
6836pub const FUSE_DONT_MASK: u32 = 64;
6837pub const FUSE_SPLICE_WRITE: u32 = 128;
6838pub const FUSE_SPLICE_MOVE: u32 = 256;
6839pub const FUSE_SPLICE_READ: u32 = 512;
6840pub const FUSE_FLOCK_LOCKS: u32 = 1024;
6841pub const FUSE_HAS_IOCTL_DIR: u32 = 2048;
6842pub const FUSE_AUTO_INVAL_DATA: u32 = 4096;
6843pub const FUSE_DO_READDIRPLUS: u32 = 8192;
6844pub const FUSE_READDIRPLUS_AUTO: u32 = 16384;
6845pub const FUSE_ASYNC_DIO: u32 = 32768;
6846pub const FUSE_WRITEBACK_CACHE: u32 = 65536;
6847pub const FUSE_NO_OPEN_SUPPORT: u32 = 131072;
6848pub const FUSE_PARALLEL_DIROPS: u32 = 262144;
6849pub const FUSE_HANDLE_KILLPRIV: u32 = 524288;
6850pub const FUSE_POSIX_ACL: u32 = 1048576;
6851pub const FUSE_ABORT_ERROR: u32 = 2097152;
6852pub const FUSE_MAX_PAGES: u32 = 4194304;
6853pub const FUSE_CACHE_SYMLINKS: u32 = 8388608;
6854pub const FUSE_NO_OPENDIR_SUPPORT: u32 = 16777216;
6855pub const FUSE_EXPLICIT_INVAL_DATA: u32 = 33554432;
6856pub const FUSE_MAP_ALIGNMENT: u32 = 67108864;
6857pub const FUSE_SUBMOUNTS: u32 = 134217728;
6858pub const FUSE_HANDLE_KILLPRIV_V2: u32 = 268435456;
6859pub const FUSE_SETXATTR_EXT: u32 = 536870912;
6860pub const FUSE_INIT_EXT: u32 = 1073741824;
6861pub const FUSE_INIT_RESERVED: u32 = 2147483648;
6862pub const FUSE_SECURITY_CTX: u64 = 4294967296;
6863pub const FUSE_HAS_INODE_DAX: u64 = 8589934592;
6864pub const FUSE_CREATE_SUPP_GROUP: u64 = 17179869184;
6865pub const FUSE_HAS_EXPIRE_ONLY: u64 = 34359738368;
6866pub const FUSE_DIRECT_IO_ALLOW_MMAP: u64 = 68719476736;
6867pub const FUSE_PASSTHROUGH_UPSTREAM: u64 = 137438953472;
6868pub const FUSE_DIRECT_IO_RELAX: u64 = 68719476736;
6869pub const FUSE_PASSTHROUGH: i64 = -9223372036854775808;
6870#[doc = " CUSE INIT request/reply flags\n\n CUSE_UNRESTRICTED_IOCTL:  use unrestricted ioctl"]
6871pub const CUSE_UNRESTRICTED_IOCTL: u32 = 1;
6872#[doc = " Release flags"]
6873pub const FUSE_RELEASE_FLUSH: u32 = 1;
6874pub const FUSE_RELEASE_FLOCK_UNLOCK: u32 = 2;
6875#[doc = " Getattr flags"]
6876pub const FUSE_GETATTR_FH: u32 = 1;
6877#[doc = " Lock flags"]
6878pub const FUSE_LK_FLOCK: u32 = 1;
6879#[doc = " WRITE flags\n\n FUSE_WRITE_CACHE: delayed write from page cache, file handle is guessed\n FUSE_WRITE_LOCKOWNER: lock_owner field is valid\n FUSE_WRITE_KILL_SUIDGID: kill suid and sgid bits"]
6880pub const FUSE_WRITE_CACHE: u32 = 1;
6881pub const FUSE_WRITE_LOCKOWNER: u32 = 2;
6882pub const FUSE_WRITE_KILL_SUIDGID: u32 = 4;
6883pub const FUSE_WRITE_KILL_PRIV: u32 = 4;
6884#[doc = " Read flags"]
6885pub const FUSE_READ_LOCKOWNER: u32 = 2;
6886#[doc = " Ioctl flags\n\n FUSE_IOCTL_COMPAT: 32bit compat ioctl on 64bit machine\n FUSE_IOCTL_UNRESTRICTED: not restricted to well-formed ioctls, retry allowed\n FUSE_IOCTL_RETRY: retry with new iovecs\n FUSE_IOCTL_32BIT: 32bit ioctl\n FUSE_IOCTL_DIR: is a directory\n FUSE_IOCTL_COMPAT_X32: x32 compat ioctl on 64bit machine (64bit time_t)\n\n FUSE_IOCTL_MAX_IOV: maximum of in_iovecs + out_iovecs"]
6887pub const FUSE_IOCTL_COMPAT: u32 = 1;
6888pub const FUSE_IOCTL_UNRESTRICTED: u32 = 2;
6889pub const FUSE_IOCTL_RETRY: u32 = 4;
6890pub const FUSE_IOCTL_32BIT: u32 = 8;
6891pub const FUSE_IOCTL_DIR: u32 = 16;
6892pub const FUSE_IOCTL_COMPAT_X32: u32 = 32;
6893pub const FUSE_IOCTL_MAX_IOV: u32 = 256;
6894#[doc = " Poll flags\n\n FUSE_POLL_SCHEDULE_NOTIFY: request poll notify"]
6895pub const FUSE_POLL_SCHEDULE_NOTIFY: u32 = 1;
6896#[doc = " Fsync flags\n\n FUSE_FSYNC_FDATASYNC: Sync data only, not metadata"]
6897pub const FUSE_FSYNC_FDATASYNC: u32 = 1;
6898#[doc = " fuse_attr flags\n\n FUSE_ATTR_SUBMOUNT: Object is a submount root\n FUSE_ATTR_DAX: Enable DAX for this file in per inode DAX mode"]
6899pub const FUSE_ATTR_SUBMOUNT: u32 = 1;
6900pub const FUSE_ATTR_DAX: u32 = 2;
6901#[doc = " Open flags\n FUSE_OPEN_KILL_SUIDGID: Kill suid and sgid if executable"]
6902pub const FUSE_OPEN_KILL_SUIDGID: u32 = 1;
6903#[doc = " setxattr flags\n FUSE_SETXATTR_ACL_KILL_SGID: Clear SGID when system.posix_acl_access is set"]
6904pub const FUSE_SETXATTR_ACL_KILL_SGID: u32 = 1;
6905#[doc = " notify_inval_entry flags\n FUSE_EXPIRE_ONLY"]
6906pub const FUSE_EXPIRE_ONLY: u32 = 1;
6907pub const FUSE_MIN_READ_BUFFER: u32 = 8192;
6908pub const FUSE_COMPAT_ENTRY_OUT_SIZE: u32 = 120;
6909pub const FUSE_ACTION_KEEP: u32 = 0;
6910pub const FUSE_ACTION_REMOVE: u32 = 1;
6911pub const FUSE_ACTION_REPLACE: u32 = 2;
6912pub const FUSE_COMPAT_ATTR_OUT_SIZE: u32 = 96;
6913pub const FUSE_COMPAT_MKNOD_IN_SIZE: u32 = 8;
6914pub const FUSE_COMPAT_WRITE_IN_SIZE: u32 = 24;
6915pub const FUSE_COMPAT_STATFS_SIZE: u32 = 48;
6916pub const FUSE_COMPAT_SETXATTR_IN_SIZE: u32 = 8;
6917pub const FUSE_COMPAT_INIT_OUT_SIZE: u32 = 8;
6918pub const FUSE_COMPAT_22_INIT_OUT_SIZE: u32 = 24;
6919pub const CUSE_INIT_INFO_MAX: u32 = 4096;
6920pub const FUSE_DEV_IOC_MAGIC: u32 = 229;
6921pub const FUSE_SETUPMAPPING_FLAG_WRITE: u32 = 1;
6922pub const FUSE_SETUPMAPPING_FLAG_READ: u32 = 2;
6923pub const FUSE_MAX_IN_ARGS: u32 = 5;
6924pub const FUSE_MAX_OUT_ARGS: u32 = 3;
6925pub const FUSE_BPF_FORCE: u32 = 1;
6926pub const FUSE_BPF_OUT_ARGVAR: u32 = 64;
6927pub const FUSE_BPF_USER_FILTER: u32 = 1;
6928pub const FUSE_BPF_BACKING: u32 = 2;
6929pub const FUSE_BPF_POST_FILTER: u32 = 4;
6930pub const FUSE_OPCODE_FILTER: u32 = 65535;
6931pub const FUSE_PREFILTER: u32 = 65536;
6932pub const FUSE_POSTFILTER: u32 = 131072;
6933pub const KGSL_VERSION_MAJOR: u32 = 3;
6934pub const KGSL_VERSION_MINOR: u32 = 14;
6935pub const KGSL_CONTEXT_SAVE_GMEM: u32 = 1;
6936pub const KGSL_CONTEXT_NO_GMEM_ALLOC: u32 = 2;
6937pub const KGSL_CONTEXT_SUBMIT_IB_LIST: u32 = 4;
6938pub const KGSL_CONTEXT_CTX_SWITCH: u32 = 8;
6939pub const KGSL_CONTEXT_PREAMBLE: u32 = 16;
6940pub const KGSL_CONTEXT_TRASH_STATE: u32 = 32;
6941pub const KGSL_CONTEXT_PER_CONTEXT_TS: u32 = 64;
6942pub const KGSL_CONTEXT_USER_GENERATED_TS: u32 = 128;
6943pub const KGSL_CONTEXT_END_OF_FRAME: u32 = 256;
6944pub const KGSL_CONTEXT_NO_FAULT_TOLERANCE: u32 = 512;
6945pub const KGSL_CONTEXT_SYNC: u32 = 1024;
6946pub const KGSL_CONTEXT_PWR_CONSTRAINT: u32 = 2048;
6947pub const KGSL_CONTEXT_PRIORITY_MASK: u32 = 61440;
6948pub const KGSL_CONTEXT_PRIORITY_SHIFT: u32 = 12;
6949pub const KGSL_CONTEXT_PRIORITY_UNDEF: u32 = 0;
6950pub const KGSL_CONTEXT_IFH_NOP: u32 = 65536;
6951pub const KGSL_CONTEXT_SECURE: u32 = 131072;
6952pub const KGSL_CONTEXT_NO_SNAPSHOT: u32 = 262144;
6953pub const KGSL_CONTEXT_SPARSE: u32 = 524288;
6954pub const KGSL_CONTEXT_PREEMPT_STYLE_MASK: u32 = 234881024;
6955pub const KGSL_CONTEXT_PREEMPT_STYLE_SHIFT: u32 = 25;
6956pub const KGSL_CONTEXT_PREEMPT_STYLE_DEFAULT: u32 = 0;
6957pub const KGSL_CONTEXT_PREEMPT_STYLE_RINGBUFFER: u32 = 1;
6958pub const KGSL_CONTEXT_PREEMPT_STYLE_FINEGRAIN: u32 = 2;
6959pub const KGSL_CONTEXT_TYPE_MASK: u32 = 32505856;
6960pub const KGSL_CONTEXT_TYPE_SHIFT: u32 = 20;
6961pub const KGSL_CONTEXT_TYPE_ANY: u32 = 0;
6962pub const KGSL_CONTEXT_TYPE_GL: u32 = 1;
6963pub const KGSL_CONTEXT_TYPE_CL: u32 = 2;
6964pub const KGSL_CONTEXT_TYPE_C2D: u32 = 3;
6965pub const KGSL_CONTEXT_TYPE_RS: u32 = 4;
6966pub const KGSL_CONTEXT_TYPE_VK: u32 = 5;
6967pub const KGSL_CONTEXT_TYPE_UNKNOWN: u32 = 30;
6968pub const KGSL_CONTEXT_INVALIDATE_ON_FAULT: u32 = 268435456;
6969pub const KGSL_CONTEXT_LPAC: u32 = 536870912;
6970pub const KGSL_CONTEXT_FAULT_INFO: u32 = 1073741824;
6971pub const KGSL_CONTEXT_INVALID: u32 = 4294967295;
6972pub const KGSL_CMDBATCH_MEMLIST: u32 = 1;
6973pub const KGSL_CMDBATCH_MARKER: u32 = 2;
6974pub const KGSL_CMDBATCH_SUBMIT_IB_LIST: u32 = 4;
6975pub const KGSL_CMDBATCH_CTX_SWITCH: u32 = 8;
6976pub const KGSL_CMDBATCH_PROFILING: u32 = 16;
6977pub const KGSL_CMDBATCH_PROFILING_KTIME: u32 = 32;
6978pub const KGSL_CMDBATCH_END_OF_FRAME: u32 = 256;
6979pub const KGSL_CMDBATCH_SYNC: u32 = 1024;
6980pub const KGSL_CMDBATCH_PWR_CONSTRAINT: u32 = 2048;
6981pub const KGSL_CMDBATCH_SPARSE: u32 = 4096;
6982pub const KGSL_CMDBATCH_START_RECURRING: u32 = 1048576;
6983pub const KGSL_CMDBATCH_STOP_RECURRING: u32 = 2097152;
6984pub const KGSL_CMDLIST_IB: u32 = 1;
6985pub const KGSL_CMDLIST_CTXTSWITCH_PREAMBLE: u32 = 2;
6986pub const KGSL_CMDLIST_IB_PREAMBLE: u32 = 4;
6987pub const KGSL_OBJLIST_MEMOBJ: u32 = 8;
6988pub const KGSL_OBJLIST_PROFILE: u32 = 16;
6989pub const KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP: u32 = 0;
6990pub const KGSL_CMD_SYNCPOINT_TYPE_FENCE: u32 = 1;
6991pub const KGSL_CMD_SYNCPOINT_TYPE_TIMELINE: u32 = 2;
6992pub const KGSL_MEMFLAGS_SECURE: u32 = 8;
6993pub const KGSL_MEMFLAGS_GPUREADONLY: u32 = 16777216;
6994pub const KGSL_MEMFLAGS_GPUWRITEONLY: u32 = 33554432;
6995pub const KGSL_MEMFLAGS_FORCE_32BIT: u64 = 4294967296;
6996pub const KGSL_SPARSE_BIND_MULTIPLE_TO_PHYS: u64 = 17179869184;
6997pub const KGSL_SPARSE_BIND: u32 = 1;
6998pub const KGSL_SPARSE_UNBIND: u32 = 2;
6999pub const KGSL_CACHEMODE_MASK: u32 = 201326592;
7000pub const KGSL_CACHEMODE_SHIFT: u32 = 26;
7001pub const KGSL_CACHEMODE_WRITECOMBINE: u32 = 0;
7002pub const KGSL_CACHEMODE_UNCACHED: u32 = 1;
7003pub const KGSL_CACHEMODE_WRITETHROUGH: u32 = 2;
7004pub const KGSL_CACHEMODE_WRITEBACK: u32 = 3;
7005pub const KGSL_MEMFLAGS_USE_CPU_MAP: u32 = 268435456;
7006pub const KGSL_MEMFLAGS_SPARSE_PHYS: u32 = 536870912;
7007pub const KGSL_MEMFLAGS_SPARSE_VIRT: u32 = 1073741824;
7008pub const KGSL_MEMFLAGS_IOCOHERENT: u32 = 2147483648;
7009pub const KGSL_MEMFLAGS_GUARD_PAGE: u64 = 8589934592;
7010pub const KGSL_MEMFLAGS_VBO: u64 = 17179869184;
7011pub const KGSL_MEMFLAGS_VBO_NO_MAP_ZERO: u64 = 34359738368;
7012pub const KGSL_MEMTYPE_MASK: u32 = 65280;
7013pub const KGSL_MEMTYPE_SHIFT: u32 = 8;
7014pub const KGSL_MEMTYPE_OBJECTANY: u32 = 0;
7015pub const KGSL_MEMTYPE_FRAMEBUFFER: u32 = 1;
7016pub const KGSL_MEMTYPE_RENDERBUFFER: u32 = 2;
7017pub const KGSL_MEMTYPE_ARRAYBUFFER: u32 = 3;
7018pub const KGSL_MEMTYPE_ELEMENTARRAYBUFFER: u32 = 4;
7019pub const KGSL_MEMTYPE_VERTEXARRAYBUFFER: u32 = 5;
7020pub const KGSL_MEMTYPE_TEXTURE: u32 = 6;
7021pub const KGSL_MEMTYPE_SURFACE: u32 = 7;
7022pub const KGSL_MEMTYPE_EGL_SURFACE: u32 = 8;
7023pub const KGSL_MEMTYPE_GL: u32 = 9;
7024pub const KGSL_MEMTYPE_CL: u32 = 10;
7025pub const KGSL_MEMTYPE_CL_BUFFER_MAP: u32 = 11;
7026pub const KGSL_MEMTYPE_CL_BUFFER_NOMAP: u32 = 12;
7027pub const KGSL_MEMTYPE_CL_IMAGE_MAP: u32 = 13;
7028pub const KGSL_MEMTYPE_CL_IMAGE_NOMAP: u32 = 14;
7029pub const KGSL_MEMTYPE_CL_KERNEL_STACK: u32 = 15;
7030pub const KGSL_MEMTYPE_COMMAND: u32 = 16;
7031pub const KGSL_MEMTYPE_2D: u32 = 17;
7032pub const KGSL_MEMTYPE_EGL_IMAGE: u32 = 18;
7033pub const KGSL_MEMTYPE_EGL_SHADOW: u32 = 19;
7034pub const KGSL_MEMTYPE_MULTISAMPLE: u32 = 20;
7035pub const KGSL_MEMTYPE_KERNEL: u32 = 255;
7036pub const KGSL_MEMALIGN_MASK: u32 = 16711680;
7037pub const KGSL_MEMALIGN_SHIFT: u32 = 16;
7038pub const KGSL_MEMFLAGS_USERMEM_MASK: u32 = 224;
7039pub const KGSL_MEMFLAGS_USERMEM_SHIFT: u32 = 5;
7040pub const KGSL_MEMFLAGS_NOT_USERMEM: u32 = 0;
7041pub const KGSL_FLAGS_NORMALMODE: u32 = 0;
7042pub const KGSL_FLAGS_SAFEMODE: u32 = 1;
7043pub const KGSL_FLAGS_INITIALIZED0: u32 = 2;
7044pub const KGSL_FLAGS_INITIALIZED: u32 = 4;
7045pub const KGSL_FLAGS_STARTED: u32 = 8;
7046pub const KGSL_FLAGS_ACTIVE: u32 = 16;
7047pub const KGSL_FLAGS_RESERVED0: u32 = 32;
7048pub const KGSL_FLAGS_RESERVED1: u32 = 64;
7049pub const KGSL_FLAGS_RESERVED2: u32 = 128;
7050pub const KGSL_FLAGS_SOFT_RESET: u32 = 256;
7051pub const KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS: u32 = 512;
7052pub const KGSL_SYNCOBJ_SERVER_TIMEOUT: u32 = 2000;
7053pub const KGSL_UBWC_NONE: u32 = 0;
7054pub const KGSL_UBWC_1_0: u32 = 1;
7055pub const KGSL_UBWC_2_0: u32 = 2;
7056pub const KGSL_UBWC_3_0: u32 = 3;
7057pub const KGSL_UBWC_4_0: u32 = 4;
7058pub const KGSL_UBWC_5_0: u32 = 5;
7059pub const KGSL_PROP_DEVICE_INFO: u32 = 1;
7060pub const KGSL_PROP_DEVICE_SHADOW: u32 = 2;
7061pub const KGSL_PROP_DEVICE_POWER: u32 = 3;
7062pub const KGSL_PROP_SHMEM: u32 = 4;
7063pub const KGSL_PROP_SHMEM_APERTURES: u32 = 5;
7064pub const KGSL_PROP_MMU_ENABLE: u32 = 6;
7065pub const KGSL_PROP_INTERRUPT_WAITS: u32 = 7;
7066pub const KGSL_PROP_VERSION: u32 = 8;
7067pub const KGSL_PROP_GPU_RESET_STAT: u32 = 9;
7068pub const KGSL_PROP_PWRCTRL: u32 = 14;
7069pub const KGSL_PROP_PWR_CONSTRAINT: u32 = 18;
7070pub const KGSL_PROP_UCHE_GMEM_VADDR: u32 = 19;
7071pub const KGSL_PROP_SP_GENERIC_MEM: u32 = 20;
7072pub const KGSL_PROP_UCODE_VERSION: u32 = 21;
7073pub const KGSL_PROP_GPMU_VERSION: u32 = 22;
7074pub const KGSL_PROP_HIGHEST_BANK_BIT: u32 = 23;
7075pub const KGSL_PROP_DEVICE_BITNESS: u32 = 24;
7076pub const KGSL_PROP_DEVICE_QDSS_STM: u32 = 25;
7077pub const KGSL_PROP_MIN_ACCESS_LENGTH: u32 = 26;
7078pub const KGSL_PROP_UBWC_MODE: u32 = 27;
7079pub const KGSL_PROP_DEVICE_QTIMER: u32 = 32;
7080pub const KGSL_PROP_L3_PWR_CONSTRAINT: u32 = 34;
7081pub const KGSL_PROP_SECURE_BUFFER_ALIGNMENT: u32 = 35;
7082pub const KGSL_PROP_SECURE_CTXT_SUPPORT: u32 = 36;
7083pub const KGSL_PROP_SPEED_BIN: u32 = 37;
7084pub const KGSL_PROP_GAMING_BIN: u32 = 38;
7085pub const KGSL_PROP_QUERY_CAPABILITIES: u32 = 39;
7086pub const KGSL_PROP_CONTEXT_PROPERTY: u32 = 40;
7087pub const KGSL_PROP_GPU_MODEL: u32 = 41;
7088pub const KGSL_PROP_VK_DEVICE_ID: u32 = 42;
7089pub const KGSL_PROP_IS_LPAC_ENABLED: u32 = 43;
7090pub const KGSL_PROP_GPU_VA64_SIZE: u32 = 44;
7091pub const KGSL_PROP_IS_RAYTRACING_ENABLED: u32 = 45;
7092pub const KGSL_PROP_IS_FASTBLEND_ENABLED: u32 = 46;
7093pub const KGSL_PROP_UCHE_TRAP_BASE: u32 = 47;
7094pub const KGSL_PROP_IS_AQE_ENABLED: u32 = 48;
7095pub const KGSL_PROP_GPU_SECURE_VA_SIZE: u32 = 49;
7096pub const KGSL_PROP_GPU_SECURE_VA_INUSE: u32 = 50;
7097pub const KGSL_QUERY_CAPS_PROPERTIES: u32 = 1;
7098pub const KGSL_CONTEXT_PROP_FAULTS: u32 = 1;
7099pub const KGSL_PERFCOUNTER_GROUP_CP: u32 = 0;
7100pub const KGSL_PERFCOUNTER_GROUP_RBBM: u32 = 1;
7101pub const KGSL_PERFCOUNTER_GROUP_PC: u32 = 2;
7102pub const KGSL_PERFCOUNTER_GROUP_VFD: u32 = 3;
7103pub const KGSL_PERFCOUNTER_GROUP_HLSQ: u32 = 4;
7104pub const KGSL_PERFCOUNTER_GROUP_VPC: u32 = 5;
7105pub const KGSL_PERFCOUNTER_GROUP_TSE: u32 = 6;
7106pub const KGSL_PERFCOUNTER_GROUP_RAS: u32 = 7;
7107pub const KGSL_PERFCOUNTER_GROUP_UCHE: u32 = 8;
7108pub const KGSL_PERFCOUNTER_GROUP_TP: u32 = 9;
7109pub const KGSL_PERFCOUNTER_GROUP_SP: u32 = 10;
7110pub const KGSL_PERFCOUNTER_GROUP_RB: u32 = 11;
7111pub const KGSL_PERFCOUNTER_GROUP_PWR: u32 = 12;
7112pub const KGSL_PERFCOUNTER_GROUP_VBIF: u32 = 13;
7113pub const KGSL_PERFCOUNTER_GROUP_VBIF_PWR: u32 = 14;
7114pub const KGSL_PERFCOUNTER_GROUP_MH: u32 = 15;
7115pub const KGSL_PERFCOUNTER_GROUP_PA_SU: u32 = 16;
7116pub const KGSL_PERFCOUNTER_GROUP_SQ: u32 = 17;
7117pub const KGSL_PERFCOUNTER_GROUP_SX: u32 = 18;
7118pub const KGSL_PERFCOUNTER_GROUP_TCF: u32 = 19;
7119pub const KGSL_PERFCOUNTER_GROUP_TCM: u32 = 20;
7120pub const KGSL_PERFCOUNTER_GROUP_TCR: u32 = 21;
7121pub const KGSL_PERFCOUNTER_GROUP_L2: u32 = 22;
7122pub const KGSL_PERFCOUNTER_GROUP_VSC: u32 = 23;
7123pub const KGSL_PERFCOUNTER_GROUP_CCU: u32 = 24;
7124pub const KGSL_PERFCOUNTER_GROUP_LRZ: u32 = 25;
7125pub const KGSL_PERFCOUNTER_GROUP_CMP: u32 = 26;
7126pub const KGSL_PERFCOUNTER_GROUP_ALWAYSON: u32 = 27;
7127pub const KGSL_PERFCOUNTER_GROUP_SP_PWR: u32 = 28;
7128pub const KGSL_PERFCOUNTER_GROUP_TP_PWR: u32 = 29;
7129pub const KGSL_PERFCOUNTER_GROUP_RB_PWR: u32 = 30;
7130pub const KGSL_PERFCOUNTER_GROUP_CCU_PWR: u32 = 31;
7131pub const KGSL_PERFCOUNTER_GROUP_UCHE_PWR: u32 = 32;
7132pub const KGSL_PERFCOUNTER_GROUP_CP_PWR: u32 = 33;
7133pub const KGSL_PERFCOUNTER_GROUP_GPMU_PWR: u32 = 34;
7134pub const KGSL_PERFCOUNTER_GROUP_ALWAYSON_PWR: u32 = 35;
7135pub const KGSL_PERFCOUNTER_GROUP_GLC: u32 = 36;
7136pub const KGSL_PERFCOUNTER_GROUP_FCHE: u32 = 37;
7137pub const KGSL_PERFCOUNTER_GROUP_MHUB: u32 = 38;
7138pub const KGSL_PERFCOUNTER_GROUP_GMU_XOCLK: u32 = 39;
7139pub const KGSL_PERFCOUNTER_GROUP_GMU_GMUCLK: u32 = 40;
7140pub const KGSL_PERFCOUNTER_GROUP_GMU_PERF: u32 = 41;
7141pub const KGSL_PERFCOUNTER_GROUP_SW: u32 = 42;
7142pub const KGSL_PERFCOUNTER_GROUP_UFC: u32 = 43;
7143pub const KGSL_PERFCOUNTER_GROUP_BV_CP: u32 = 44;
7144pub const KGSL_PERFCOUNTER_GROUP_BV_PC: u32 = 45;
7145pub const KGSL_PERFCOUNTER_GROUP_BV_VFD: u32 = 46;
7146pub const KGSL_PERFCOUNTER_GROUP_BV_VPC: u32 = 47;
7147pub const KGSL_PERFCOUNTER_GROUP_BV_TP: u32 = 48;
7148pub const KGSL_PERFCOUNTER_GROUP_BV_SP: u32 = 49;
7149pub const KGSL_PERFCOUNTER_GROUP_BV_UFC: u32 = 50;
7150pub const KGSL_PERFCOUNTER_GROUP_BV_TSE: u32 = 51;
7151pub const KGSL_PERFCOUNTER_GROUP_BV_RAS: u32 = 52;
7152pub const KGSL_PERFCOUNTER_GROUP_BV_LRZ: u32 = 53;
7153pub const KGSL_PERFCOUNTER_GROUP_BV_HLSQ: u32 = 54;
7154pub const KGSL_PERFCOUNTER_GROUP_MAX: u32 = 55;
7155pub const KGSL_PERFCOUNTER_NOT_USED: u32 = 4294967295;
7156pub const KGSL_PERFCOUNTER_BROKEN: u32 = 4294967294;
7157pub const KGSL_IOC_TYPE: u32 = 9;
7158pub const KGSL_TIMESTAMP_EVENT_GENLOCK: u32 = 1;
7159pub const KGSL_TIMESTAMP_EVENT_FENCE: u32 = 2;
7160pub const KGSL_GPUMEM_CACHE_CLEAN: u32 = 1;
7161pub const KGSL_GPUMEM_CACHE_TO_GPU: u32 = 1;
7162pub const KGSL_GPUMEM_CACHE_INV: u32 = 2;
7163pub const KGSL_GPUMEM_CACHE_FROM_GPU: u32 = 2;
7164pub const KGSL_GPUMEM_CACHE_FLUSH: u32 = 3;
7165pub const KGSL_GPUMEM_CACHE_RANGE: u32 = 2147483648;
7166pub const KGSL_IBDESC_MEMLIST: u32 = 1;
7167pub const KGSL_IBDESC_PROFILING_BUFFER: u32 = 2;
7168pub const KGSL_CONSTRAINT_NONE: u32 = 0;
7169pub const KGSL_CONSTRAINT_PWRLEVEL: u32 = 1;
7170pub const KGSL_CONSTRAINT_L3_NONE: u32 = 2;
7171pub const KGSL_CONSTRAINT_L3_PWRLEVEL: u32 = 3;
7172pub const KGSL_CONSTRAINT_PWR_MIN: u32 = 0;
7173pub const KGSL_CONSTRAINT_PWR_MAX: u32 = 1;
7174pub const KGSL_GPUOBJ_ALLOC_METADATA_MAX: u32 = 64;
7175pub const KGSL_GPUOBJ_FREE_ON_EVENT: u32 = 1;
7176pub const KGSL_GPU_EVENT_TIMESTAMP: u32 = 1;
7177pub const KGSL_GPU_EVENT_FENCE: u32 = 2;
7178pub const KGSL_GPUOBJ_SET_INFO_METADATA: u32 = 1;
7179pub const KGSL_GPUOBJ_SET_INFO_TYPE: u32 = 2;
7180pub const KGSL_GPUMEM_RANGE_OP_BIND: u32 = 1;
7181pub const KGSL_GPUMEM_RANGE_OP_UNBIND: u32 = 2;
7182pub const KGSL_GPUMEM_BIND_ASYNC: u32 = 1;
7183pub const KGSL_GPUMEM_BIND_FENCE_OUT: u32 = 2;
7184pub const KGSL_GPU_AUX_COMMAND_BIND: u32 = 1;
7185pub const KGSL_GPU_AUX_COMMAND_TIMELINE: u32 = 2;
7186pub const KGSL_GPU_AUX_COMMAND_SYNC: u32 = 1024;
7187pub const KGSL_TIMELINE_WAIT_ALL: u32 = 1;
7188pub const KGSL_TIMELINE_WAIT_ANY: u32 = 2;
7189pub const KGSL_FAULT_TYPE_NO_FAULT: u32 = 0;
7190pub const KGSL_FAULT_TYPE_PAGEFAULT: u32 = 1;
7191pub const KGSL_FAULT_TYPE_MAX: u32 = 2;
7192pub const KGSL_PAGEFAULT_TYPE_NONE: u32 = 0;
7193pub const KGSL_PAGEFAULT_TYPE_READ: u32 = 1;
7194pub const KGSL_PAGEFAULT_TYPE_WRITE: u32 = 2;
7195pub const KGSL_PAGEFAULT_TYPE_TRANSLATION: u32 = 4;
7196pub const KGSL_PAGEFAULT_TYPE_PERMISSION: u32 = 8;
7197pub const KGSL_PAGEFAULT_TYPE_EXTERNAL: u32 = 16;
7198pub const KGSL_PAGEFAULT_TYPE_TRANSACTION_STALLED: u32 = 32;
7199pub const ARCH_SET_GS: u32 = 4097;
7200pub const ARCH_SET_FS: u32 = 4098;
7201pub const ARCH_GET_FS: u32 = 4099;
7202pub const ARCH_GET_GS: u32 = 4100;
7203pub const ARCH_GET_CPUID: u32 = 4113;
7204pub const ARCH_SET_CPUID: u32 = 4114;
7205pub const ARCH_GET_XCOMP_SUPP: u32 = 4129;
7206pub const ARCH_GET_XCOMP_PERM: u32 = 4130;
7207pub const ARCH_REQ_XCOMP_PERM: u32 = 4131;
7208pub const ARCH_GET_XCOMP_GUEST_PERM: u32 = 4132;
7209pub const ARCH_REQ_XCOMP_GUEST_PERM: u32 = 4133;
7210pub const ARCH_XCOMP_TILECFG: u32 = 17;
7211pub const ARCH_XCOMP_TILEDATA: u32 = 18;
7212pub const ARCH_MAP_VDSO_X32: u32 = 8193;
7213pub const ARCH_MAP_VDSO_32: u32 = 8194;
7214pub const ARCH_MAP_VDSO_64: u32 = 8195;
7215pub const ARCH_GET_UNTAG_MASK: u32 = 16385;
7216pub const ARCH_ENABLE_TAGGED_ADDR: u32 = 16386;
7217pub const ARCH_GET_MAX_TAG_BITS: u32 = 16387;
7218pub const ARCH_FORCE_TAGGED_SVA: u32 = 16388;
7219pub const ARCH_SHSTK_ENABLE: u32 = 20481;
7220pub const ARCH_SHSTK_DISABLE: u32 = 20482;
7221pub const ARCH_SHSTK_LOCK: u32 = 20483;
7222pub const ARCH_SHSTK_UNLOCK: u32 = 20484;
7223pub const ARCH_SHSTK_STATUS: u32 = 20485;
7224pub const ARCH_SHSTK_SHSTK: u32 = 1;
7225pub const ARCH_SHSTK_WRSS: u32 = 2;
7226pub const SPLICE_F_MOVE: u32 = 1;
7227pub const SPLICE_F_NONBLOCK: u32 = 2;
7228pub const SPLICE_F_MORE: u32 = 4;
7229pub const SPLICE_F_GIFT: u32 = 8;
7230pub type size_t = crate::types::c_ulong;
7231pub type wchar_t = crate::types::c_int;
7232#[repr(C)]
7233#[repr(align(16))]
7234#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7235pub struct max_align_t {
7236    pub __clang_max_align_nonce1: crate::types::c_longlong,
7237    pub __bindgen_padding_0: [u8; 8usize],
7238    pub __clang_max_align_nonce2: u128,
7239}
7240pub type int_least64_t = i64;
7241pub type uint_least64_t = u64;
7242pub type int_fast64_t = i64;
7243pub type uint_fast64_t = u64;
7244pub type int_least32_t = i32;
7245pub type uint_least32_t = u32;
7246pub type int_fast32_t = i32;
7247pub type uint_fast32_t = u32;
7248pub type int_least16_t = i16;
7249pub type uint_least16_t = u16;
7250pub type int_fast16_t = i16;
7251pub type uint_fast16_t = u16;
7252pub type int_least8_t = i8;
7253pub type uint_least8_t = u8;
7254pub type int_fast8_t = i8;
7255pub type uint_fast8_t = u8;
7256pub type intmax_t = crate::types::c_long;
7257pub type uintmax_t = crate::types::c_ulong;
7258pub type __kernel_old_uid_t = crate::types::c_ushort;
7259pub type __kernel_old_gid_t = crate::types::c_ushort;
7260pub type __kernel_old_dev_t = crate::types::c_ulong;
7261pub type __kernel_long_t = crate::types::c_long;
7262pub type __kernel_ulong_t = crate::types::c_ulong;
7263pub type __kernel_ino_t = __kernel_ulong_t;
7264pub type __kernel_mode_t = crate::types::c_uint;
7265pub type __kernel_pid_t = crate::types::c_int;
7266pub type __kernel_ipc_pid_t = crate::types::c_int;
7267pub type __kernel_uid_t = crate::types::c_uint;
7268pub type __kernel_gid_t = crate::types::c_uint;
7269pub type __kernel_suseconds_t = __kernel_long_t;
7270pub type __kernel_daddr_t = crate::types::c_int;
7271pub type __kernel_uid32_t = crate::types::c_uint;
7272pub type __kernel_gid32_t = crate::types::c_uint;
7273pub type __kernel_size_t = __kernel_ulong_t;
7274pub type __kernel_ssize_t = __kernel_long_t;
7275pub type __kernel_ptrdiff_t = __kernel_long_t;
7276#[repr(C)]
7277#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7278pub struct __kernel_fsid_t {
7279    pub val: [crate::types::c_int; 2usize],
7280}
7281pub type __kernel_off_t = __kernel_long_t;
7282pub type __kernel_loff_t = crate::types::c_longlong;
7283pub type __kernel_old_time_t = __kernel_long_t;
7284pub type __kernel_time_t = __kernel_long_t;
7285pub type __kernel_time64_t = crate::types::c_longlong;
7286pub type __kernel_clock_t = __kernel_long_t;
7287pub type __kernel_timer_t = crate::types::c_int;
7288pub type __kernel_clockid_t = crate::types::c_int;
7289pub type __kernel_caddr_t = uref<crate::types::c_char>;
7290pub type __kernel_uid16_t = crate::types::c_ushort;
7291pub type __kernel_gid16_t = crate::types::c_ushort;
7292pub type __kernel_sa_family_t = crate::types::c_ushort;
7293#[repr(C)]
7294#[derive(Copy, Clone)]
7295pub struct sockaddr_storage {
7296    pub __bindgen_anon_1: sockaddr_storage__bindgen_ty_1,
7297}
7298#[repr(C)]
7299#[derive(Copy, Clone)]
7300pub union sockaddr_storage__bindgen_ty_1 {
7301    pub __bindgen_anon_1: sockaddr_storage__bindgen_ty_1__bindgen_ty_1,
7302    pub __align: uaddr,
7303}
7304#[repr(C)]
7305#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7306pub struct sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
7307    pub ss_family: __kernel_sa_family_t,
7308    pub __data: [crate::types::c_char; 126usize],
7309}
7310impl Default for sockaddr_storage__bindgen_ty_1__bindgen_ty_1 {
7311    fn default() -> Self {
7312        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7313        unsafe {
7314            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7315            s.assume_init()
7316        }
7317    }
7318}
7319impl Default for sockaddr_storage__bindgen_ty_1 {
7320    fn default() -> Self {
7321        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7322        unsafe {
7323            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7324            s.assume_init()
7325        }
7326    }
7327}
7328impl Default for sockaddr_storage {
7329    fn default() -> Self {
7330        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7331        unsafe {
7332            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7333            s.assume_init()
7334        }
7335    }
7336}
7337pub type socklen_t = u32;
7338#[repr(C)]
7339#[derive(
7340    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
7341)]
7342pub struct ucred {
7343    pub pid: __kernel_pid_t,
7344    pub uid: __kernel_uid32_t,
7345    pub gid: __kernel_gid32_t,
7346}
7347#[repr(C)]
7348#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7349pub struct msghdr {
7350    pub msg_name: uaddr,
7351    pub msg_namelen: socklen_t,
7352    pub __bindgen_padding_0: [u8; 4usize],
7353    pub msg_iov: uref<iovec>,
7354    pub msg_iovlen: size_t,
7355    pub msg_control: uaddr,
7356    pub msg_controllen: size_t,
7357    pub msg_flags: crate::types::c_uint,
7358    pub __bindgen_padding_1: [u8; 4usize],
7359}
7360impl Default for msghdr {
7361    fn default() -> Self {
7362        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7363        unsafe {
7364            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7365            s.assume_init()
7366        }
7367    }
7368}
7369#[repr(C)]
7370#[derive(
7371    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
7372)]
7373pub struct cmsghdr {
7374    pub cmsg_len: size_t,
7375    pub cmsg_level: crate::types::c_uint,
7376    pub cmsg_type: crate::types::c_uint,
7377}
7378#[repr(C)]
7379#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7380pub struct mmsghdr {
7381    pub msg_hdr: msghdr,
7382    pub msg_len: crate::types::c_uint,
7383    pub __bindgen_padding_0: [u8; 4usize],
7384}
7385impl Default for mmsghdr {
7386    fn default() -> Self {
7387        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7388        unsafe {
7389            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7390            s.assume_init()
7391        }
7392    }
7393}
7394#[repr(C)]
7395#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7396pub struct linger {
7397    pub l_onoff: crate::types::c_int,
7398    pub l_linger: crate::types::c_int,
7399}
7400#[repr(C)]
7401#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7402pub struct sockaddr_qrtr {
7403    pub sq_family: __kernel_sa_family_t,
7404    pub __bindgen_padding_0: [u8; 2usize],
7405    pub sq_node: crate::types::c_uint,
7406    pub sq_port: crate::types::c_uint,
7407}
7408pub type __s8 = crate::types::c_schar;
7409pub type __u8 = crate::types::c_uchar;
7410pub type __s16 = crate::types::c_short;
7411pub type __u16 = crate::types::c_ushort;
7412pub type __s32 = crate::types::c_int;
7413pub type __u32 = crate::types::c_uint;
7414pub type __s64 = crate::types::c_longlong;
7415pub type __u64 = crate::types::c_ulonglong;
7416#[repr(C)]
7417#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7418pub struct __kernel_fd_set {
7419    pub fds_bits: [crate::types::c_ulong; 16usize],
7420}
7421pub type __kernel_sighandler_t = uaddr;
7422pub type __kernel_key_t = crate::types::c_int;
7423pub type __kernel_mqd_t = crate::types::c_int;
7424pub type __s128 = i128;
7425pub type __u128 = u128;
7426pub type __le16 = __u16;
7427pub type __be16 = __u16;
7428pub type __le32 = __u32;
7429pub type __be32 = __u32;
7430pub type __le64 = __u64;
7431pub type __be64 = __u64;
7432pub type __sum16 = __u16;
7433pub type __wsum = __u32;
7434pub type __poll_t = crate::types::c_uint;
7435pub type sigset_t = crate::types::c_ulong;
7436pub type __signalfn_t = uaddr;
7437pub type __sighandler_t = __signalfn_t;
7438pub type __restorefn_t = uaddr;
7439pub type __sigrestore_t = __restorefn_t;
7440#[repr(C)]
7441#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
7442pub struct __kernel_sigaction {
7443    pub sa_handler: __sighandler_t,
7444    pub sa_flags: crate::types::c_ulong,
7445    pub sa_restorer: __sigrestore_t,
7446    pub sa_mask: sigset_t,
7447}
7448#[repr(C)]
7449#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7450pub struct sigaltstack {
7451    pub ss_sp: uaddr,
7452    pub ss_flags: crate::types::c_int,
7453    pub __bindgen_padding_0: [u8; 4usize],
7454    pub ss_size: __kernel_size_t,
7455}
7456impl Default for sigaltstack {
7457    fn default() -> Self {
7458        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7459        unsafe {
7460            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7461            s.assume_init()
7462        }
7463    }
7464}
7465pub type stack_t = sigaltstack;
7466pub type pid_t = __kernel_pid_t;
7467pub type uid_t = __kernel_uid_t;
7468#[repr(C)]
7469#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7470pub struct sockaddr {
7471    pub sa_family: __kernel_sa_family_t,
7472    pub sa_data: [crate::types::c_char; 14usize],
7473}
7474pub type sa_family_t = __kernel_sa_family_t;
7475pub type sigaction_t = __kernel_sigaction;
7476#[repr(C)]
7477#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7478pub struct pollfd {
7479    pub fd: crate::types::c_int,
7480    pub events: crate::types::c_short,
7481    pub revents: crate::types::c_short,
7482}
7483#[repr(C)]
7484#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7485pub struct _fpx_sw_bytes {
7486    pub magic1: __u32,
7487    pub extended_size: __u32,
7488    pub xfeatures: __u64,
7489    pub xstate_size: __u32,
7490    pub padding: [__u32; 7usize],
7491}
7492#[repr(C)]
7493#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7494pub struct _fpreg {
7495    pub significand: [__u16; 4usize],
7496    pub exponent: __u16,
7497}
7498#[repr(C)]
7499#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7500pub struct _fpxreg {
7501    pub significand: [__u16; 4usize],
7502    pub exponent: __u16,
7503    pub padding: [__u16; 3usize],
7504}
7505#[repr(C)]
7506#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7507pub struct _xmmreg {
7508    pub element: [__u32; 4usize],
7509}
7510#[repr(C)]
7511#[derive(Copy, Clone)]
7512pub struct _fpstate_32 {
7513    pub cw: __u32,
7514    pub sw: __u32,
7515    pub tag: __u32,
7516    pub ipoff: __u32,
7517    pub cssel: __u32,
7518    pub dataoff: __u32,
7519    pub datasel: __u32,
7520    pub _st: [_fpreg; 8usize],
7521    pub status: __u16,
7522    pub magic: __u16,
7523    pub _fxsr_env: [__u32; 6usize],
7524    pub mxcsr: __u32,
7525    pub reserved: __u32,
7526    pub _fxsr_st: [_fpxreg; 8usize],
7527    pub _xmm: [_xmmreg; 8usize],
7528    pub __bindgen_anon_1: _fpstate_32__bindgen_ty_1,
7529    pub __bindgen_anon_2: _fpstate_32__bindgen_ty_2,
7530}
7531#[repr(C)]
7532#[derive(Copy, Clone)]
7533pub union _fpstate_32__bindgen_ty_1 {
7534    pub padding1: [__u32; 44usize],
7535    pub padding: [__u32; 44usize],
7536}
7537impl Default for _fpstate_32__bindgen_ty_1 {
7538    fn default() -> Self {
7539        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7540        unsafe {
7541            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7542            s.assume_init()
7543        }
7544    }
7545}
7546#[repr(C)]
7547#[derive(Copy, Clone)]
7548pub union _fpstate_32__bindgen_ty_2 {
7549    pub padding2: [__u32; 12usize],
7550    pub sw_reserved: _fpx_sw_bytes,
7551}
7552impl Default for _fpstate_32__bindgen_ty_2 {
7553    fn default() -> Self {
7554        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7555        unsafe {
7556            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7557            s.assume_init()
7558        }
7559    }
7560}
7561impl Default for _fpstate_32 {
7562    fn default() -> Self {
7563        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7564        unsafe {
7565            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7566            s.assume_init()
7567        }
7568    }
7569}
7570#[repr(C)]
7571#[derive(Copy, Clone)]
7572pub struct _fpstate_64 {
7573    pub cwd: __u16,
7574    pub swd: __u16,
7575    pub twd: __u16,
7576    pub fop: __u16,
7577    pub rip: __u64,
7578    pub rdp: __u64,
7579    pub mxcsr: __u32,
7580    pub mxcsr_mask: __u32,
7581    pub st_space: [__u32; 32usize],
7582    pub xmm_space: [__u32; 64usize],
7583    pub reserved2: [__u32; 12usize],
7584    pub __bindgen_anon_1: _fpstate_64__bindgen_ty_1,
7585}
7586#[repr(C)]
7587#[derive(Copy, Clone)]
7588pub union _fpstate_64__bindgen_ty_1 {
7589    pub reserved3: [__u32; 12usize],
7590    pub sw_reserved: _fpx_sw_bytes,
7591}
7592impl Default for _fpstate_64__bindgen_ty_1 {
7593    fn default() -> Self {
7594        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7595        unsafe {
7596            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7597            s.assume_init()
7598        }
7599    }
7600}
7601impl Default for _fpstate_64 {
7602    fn default() -> Self {
7603        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7604        unsafe {
7605            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7606            s.assume_init()
7607        }
7608    }
7609}
7610#[repr(C)]
7611#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7612pub struct _header {
7613    pub xfeatures: __u64,
7614    pub reserved1: [__u64; 2usize],
7615    pub reserved2: [__u64; 5usize],
7616}
7617#[repr(C)]
7618#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7619pub struct _ymmh_state {
7620    pub ymmh_space: [__u32; 64usize],
7621}
7622impl Default for _ymmh_state {
7623    fn default() -> Self {
7624        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7625        unsafe {
7626            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7627            s.assume_init()
7628        }
7629    }
7630}
7631#[repr(C)]
7632#[derive(Copy, Clone)]
7633pub struct _xstate {
7634    pub fpstate: _fpstate_64,
7635    pub xstate_hdr: _header,
7636    pub ymmh: _ymmh_state,
7637}
7638impl Default for _xstate {
7639    fn default() -> Self {
7640        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7641        unsafe {
7642            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7643            s.assume_init()
7644        }
7645    }
7646}
7647#[repr(C)]
7648#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7649pub struct sigcontext_32 {
7650    pub gs: __u16,
7651    pub __gsh: __u16,
7652    pub fs: __u16,
7653    pub __fsh: __u16,
7654    pub es: __u16,
7655    pub __esh: __u16,
7656    pub ds: __u16,
7657    pub __dsh: __u16,
7658    pub di: __u32,
7659    pub si: __u32,
7660    pub bp: __u32,
7661    pub sp: __u32,
7662    pub bx: __u32,
7663    pub dx: __u32,
7664    pub cx: __u32,
7665    pub ax: __u32,
7666    pub trapno: __u32,
7667    pub err: __u32,
7668    pub ip: __u32,
7669    pub cs: __u16,
7670    pub __csh: __u16,
7671    pub flags: __u32,
7672    pub sp_at_signal: __u32,
7673    pub ss: __u16,
7674    pub __ssh: __u16,
7675    pub fpstate: __u32,
7676    pub oldmask: __u32,
7677    pub cr2: __u32,
7678}
7679#[repr(C)]
7680#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7681pub struct sigcontext_64 {
7682    pub r8: __u64,
7683    pub r9: __u64,
7684    pub r10: __u64,
7685    pub r11: __u64,
7686    pub r12: __u64,
7687    pub r13: __u64,
7688    pub r14: __u64,
7689    pub r15: __u64,
7690    pub di: __u64,
7691    pub si: __u64,
7692    pub bp: __u64,
7693    pub bx: __u64,
7694    pub dx: __u64,
7695    pub ax: __u64,
7696    pub cx: __u64,
7697    pub sp: __u64,
7698    pub ip: __u64,
7699    pub flags: __u64,
7700    pub cs: __u16,
7701    pub gs: __u16,
7702    pub fs: __u16,
7703    pub ss: __u16,
7704    pub err: __u64,
7705    pub trapno: __u64,
7706    pub oldmask: __u64,
7707    pub cr2: __u64,
7708    pub fpstate: __u64,
7709    pub reserved1: [__u64; 8usize],
7710}
7711#[repr(C)]
7712#[derive(Copy, Clone)]
7713pub struct sigcontext {
7714    pub r8: __u64,
7715    pub r9: __u64,
7716    pub r10: __u64,
7717    pub r11: __u64,
7718    pub r12: __u64,
7719    pub r13: __u64,
7720    pub r14: __u64,
7721    pub r15: __u64,
7722    pub rdi: __u64,
7723    pub rsi: __u64,
7724    pub rbp: __u64,
7725    pub rbx: __u64,
7726    pub rdx: __u64,
7727    pub rax: __u64,
7728    pub rcx: __u64,
7729    pub rsp: __u64,
7730    pub rip: __u64,
7731    pub eflags: __u64,
7732    pub cs: __u16,
7733    pub gs: __u16,
7734    pub fs: __u16,
7735    pub __bindgen_anon_1: sigcontext__bindgen_ty_1,
7736    pub err: __u64,
7737    pub trapno: __u64,
7738    pub oldmask: __u64,
7739    pub cr2: __u64,
7740    pub fpstate: uref<_fpstate_64>,
7741    pub reserved1: [__u64; 8usize],
7742}
7743#[repr(C)]
7744#[derive(Copy, Clone)]
7745pub union sigcontext__bindgen_ty_1 {
7746    pub ss: __u16,
7747    pub __pad0: __u16,
7748}
7749impl Default for sigcontext__bindgen_ty_1 {
7750    fn default() -> Self {
7751        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7752        unsafe {
7753            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7754            s.assume_init()
7755        }
7756    }
7757}
7758impl Default for sigcontext {
7759    fn default() -> Self {
7760        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7761        unsafe {
7762            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7763            s.assume_init()
7764        }
7765    }
7766}
7767#[repr(C)]
7768#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7769pub struct stat {
7770    pub st_dev: __kernel_ulong_t,
7771    pub st_ino: __kernel_ulong_t,
7772    pub st_nlink: __kernel_ulong_t,
7773    pub st_mode: crate::types::c_uint,
7774    pub st_uid: crate::types::c_uint,
7775    pub st_gid: crate::types::c_uint,
7776    pub __pad0: crate::types::c_uint,
7777    pub st_rdev: __kernel_ulong_t,
7778    pub st_size: __kernel_long_t,
7779    pub st_blksize: __kernel_long_t,
7780    pub st_blocks: __kernel_long_t,
7781    pub st_atime: __kernel_ulong_t,
7782    pub st_atime_nsec: __kernel_ulong_t,
7783    pub st_mtime: __kernel_ulong_t,
7784    pub st_mtime_nsec: __kernel_ulong_t,
7785    pub st_ctime: __kernel_ulong_t,
7786    pub st_ctime_nsec: __kernel_ulong_t,
7787    pub __linux_unused: [__kernel_long_t; 3usize],
7788}
7789#[repr(C)]
7790#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7791pub struct __old_kernel_stat {
7792    pub st_dev: crate::types::c_ushort,
7793    pub st_ino: crate::types::c_ushort,
7794    pub st_mode: crate::types::c_ushort,
7795    pub st_nlink: crate::types::c_ushort,
7796    pub st_uid: crate::types::c_ushort,
7797    pub st_gid: crate::types::c_ushort,
7798    pub st_rdev: crate::types::c_ushort,
7799    pub __bindgen_padding_0: [u8; 2usize],
7800    pub st_size: crate::types::c_uint,
7801    pub st_atime: crate::types::c_uint,
7802    pub st_mtime: crate::types::c_uint,
7803    pub st_ctime: crate::types::c_uint,
7804}
7805#[repr(C)]
7806#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7807pub struct statfs {
7808    pub f_type: __kernel_long_t,
7809    pub f_bsize: __kernel_long_t,
7810    pub f_blocks: __kernel_long_t,
7811    pub f_bfree: __kernel_long_t,
7812    pub f_bavail: __kernel_long_t,
7813    pub f_files: __kernel_long_t,
7814    pub f_ffree: __kernel_long_t,
7815    pub f_fsid: __kernel_fsid_t,
7816    pub f_namelen: __kernel_long_t,
7817    pub f_frsize: __kernel_long_t,
7818    pub f_flags: __kernel_long_t,
7819    pub f_spare: [__kernel_long_t; 4usize],
7820}
7821#[repr(C)]
7822#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7823pub struct statfs64 {
7824    pub f_type: __kernel_long_t,
7825    pub f_bsize: __kernel_long_t,
7826    pub f_blocks: __u64,
7827    pub f_bfree: __u64,
7828    pub f_bavail: __u64,
7829    pub f_files: __u64,
7830    pub f_ffree: __u64,
7831    pub f_fsid: __kernel_fsid_t,
7832    pub f_namelen: __kernel_long_t,
7833    pub f_frsize: __kernel_long_t,
7834    pub f_flags: __kernel_long_t,
7835    pub f_spare: [__kernel_long_t; 4usize],
7836}
7837#[repr(C, packed(4))]
7838#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7839pub struct compat_statfs64 {
7840    pub f_type: __u32,
7841    pub f_bsize: __u32,
7842    pub f_blocks: __u64,
7843    pub f_bfree: __u64,
7844    pub f_bavail: __u64,
7845    pub f_files: __u64,
7846    pub f_ffree: __u64,
7847    pub f_fsid: __kernel_fsid_t,
7848    pub f_namelen: __u32,
7849    pub f_frsize: __u32,
7850    pub f_flags: __u32,
7851    pub f_spare: [__u32; 4usize],
7852}
7853#[repr(C)]
7854#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7855pub struct fscrypt_policy_v1 {
7856    pub version: __u8,
7857    pub contents_encryption_mode: __u8,
7858    pub filenames_encryption_mode: __u8,
7859    pub flags: __u8,
7860    pub master_key_descriptor: [__u8; 8usize],
7861}
7862#[repr(C)]
7863#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7864pub struct fscrypt_key {
7865    pub mode: __u32,
7866    pub raw: [__u8; 64usize],
7867    pub size: __u32,
7868}
7869impl Default for fscrypt_key {
7870    fn default() -> Self {
7871        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7872        unsafe {
7873            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7874            s.assume_init()
7875        }
7876    }
7877}
7878#[repr(C)]
7879#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7880pub struct fscrypt_policy_v2 {
7881    pub version: __u8,
7882    pub contents_encryption_mode: __u8,
7883    pub filenames_encryption_mode: __u8,
7884    pub flags: __u8,
7885    pub log2_data_unit_size: __u8,
7886    pub __reserved: [__u8; 3usize],
7887    pub master_key_identifier: [__u8; 16usize],
7888}
7889#[repr(C)]
7890#[derive(Copy, Clone)]
7891pub struct fscrypt_get_policy_ex_arg {
7892    pub policy_size: __u64,
7893    pub policy: fscrypt_get_policy_ex_arg__bindgen_ty_1,
7894}
7895#[repr(C)]
7896#[derive(Copy, Clone)]
7897pub union fscrypt_get_policy_ex_arg__bindgen_ty_1 {
7898    pub version: __u8,
7899    pub v1: fscrypt_policy_v1,
7900    pub v2: fscrypt_policy_v2,
7901}
7902impl Default for fscrypt_get_policy_ex_arg__bindgen_ty_1 {
7903    fn default() -> Self {
7904        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7905        unsafe {
7906            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7907            s.assume_init()
7908        }
7909    }
7910}
7911impl Default for fscrypt_get_policy_ex_arg {
7912    fn default() -> Self {
7913        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7914        unsafe {
7915            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7916            s.assume_init()
7917        }
7918    }
7919}
7920#[repr(C)]
7921#[derive(Debug, Default)]
7922pub struct fscrypt_provisioning_key_payload {
7923    pub type_: __u32,
7924    pub __reserved: __u32,
7925    pub raw: __IncompleteArrayField<__u8>,
7926}
7927#[repr(C)]
7928#[derive(FromBytes, Immutable, KnownLayout)]
7929pub struct fscrypt_remove_key_arg {
7930    pub key_spec: fscrypt_key_specifier,
7931    pub removal_status_flags: __u32,
7932    pub __reserved: [__u32; 5usize],
7933}
7934impl Default for fscrypt_remove_key_arg {
7935    fn default() -> Self {
7936        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7937        unsafe {
7938            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7939            s.assume_init()
7940        }
7941    }
7942}
7943#[repr(C)]
7944pub struct fscrypt_get_key_status_arg {
7945    pub key_spec: fscrypt_key_specifier,
7946    pub __reserved: [__u32; 6usize],
7947    pub status: __u32,
7948    pub status_flags: __u32,
7949    pub user_count: __u32,
7950    pub __out_reserved: [__u32; 13usize],
7951}
7952impl Default for fscrypt_get_key_status_arg {
7953    fn default() -> Self {
7954        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7955        unsafe {
7956            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7957            s.assume_init()
7958        }
7959    }
7960}
7961pub const fsconfig_command_FSCONFIG_SET_FLAG: fsconfig_command = 0;
7962pub const fsconfig_command_FSCONFIG_SET_STRING: fsconfig_command = 1;
7963pub const fsconfig_command_FSCONFIG_SET_BINARY: fsconfig_command = 2;
7964pub const fsconfig_command_FSCONFIG_SET_PATH: fsconfig_command = 3;
7965pub const fsconfig_command_FSCONFIG_SET_PATH_EMPTY: fsconfig_command = 4;
7966pub const fsconfig_command_FSCONFIG_SET_FD: fsconfig_command = 5;
7967pub const fsconfig_command_FSCONFIG_CMD_CREATE: fsconfig_command = 6;
7968pub const fsconfig_command_FSCONFIG_CMD_RECONFIGURE: fsconfig_command = 7;
7969pub const fsconfig_command_FSCONFIG_CMD_CREATE_EXCL: fsconfig_command = 8;
7970pub type fsconfig_command = crate::types::c_uint;
7971#[repr(C)]
7972#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
7973pub struct mount_attr {
7974    pub attr_set: __u64,
7975    pub attr_clr: __u64,
7976    pub propagation: __u64,
7977    pub userns_fd: __u64,
7978}
7979#[repr(C)]
7980#[derive(Debug)]
7981pub struct statmount {
7982    pub size: __u32,
7983    pub mnt_opts: __u32,
7984    pub mask: __u64,
7985    pub sb_dev_major: __u32,
7986    pub sb_dev_minor: __u32,
7987    pub sb_magic: __u64,
7988    pub sb_flags: __u32,
7989    pub fs_type: __u32,
7990    pub mnt_id: __u64,
7991    pub mnt_parent_id: __u64,
7992    pub mnt_id_old: __u32,
7993    pub mnt_parent_id_old: __u32,
7994    pub mnt_attr: __u64,
7995    pub mnt_propagation: __u64,
7996    pub mnt_peer_group: __u64,
7997    pub mnt_master: __u64,
7998    pub propagate_from: __u64,
7999    pub mnt_root: __u32,
8000    pub mnt_point: __u32,
8001    pub mnt_ns_id: __u64,
8002    pub __spare2: [__u64; 49usize],
8003    pub str_: __IncompleteArrayField<crate::types::c_char>,
8004}
8005impl Default for statmount {
8006    fn default() -> Self {
8007        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8008        unsafe {
8009            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8010            s.assume_init()
8011        }
8012    }
8013}
8014#[repr(C)]
8015#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8016pub struct mnt_id_req {
8017    pub size: __u32,
8018    pub spare: __u32,
8019    pub mnt_id: __u64,
8020    pub param: __u64,
8021    pub mnt_ns_id: __u64,
8022}
8023#[repr(C)]
8024#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8025pub struct file_clone_range {
8026    pub src_fd: __s64,
8027    pub src_offset: __u64,
8028    pub src_length: __u64,
8029    pub dest_offset: __u64,
8030}
8031#[repr(C)]
8032#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8033pub struct fstrim_range {
8034    pub start: __u64,
8035    pub len: __u64,
8036    pub minlen: __u64,
8037}
8038#[repr(C)]
8039#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8040pub struct fsuuid2 {
8041    pub len: __u8,
8042    pub uuid: [__u8; 16usize],
8043}
8044#[repr(C)]
8045#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8046pub struct fs_sysfs_path {
8047    pub len: __u8,
8048    pub name: [__u8; 128usize],
8049}
8050impl Default for fs_sysfs_path {
8051    fn default() -> Self {
8052        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8053        unsafe {
8054            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8055            s.assume_init()
8056        }
8057    }
8058}
8059#[repr(C)]
8060#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8061pub struct file_dedupe_range_info {
8062    pub dest_fd: __s64,
8063    pub dest_offset: __u64,
8064    pub bytes_deduped: __u64,
8065    pub status: __s32,
8066    pub reserved: __u32,
8067}
8068#[repr(C)]
8069#[derive(Debug, Default)]
8070pub struct file_dedupe_range {
8071    pub src_offset: __u64,
8072    pub src_length: __u64,
8073    pub dest_count: __u16,
8074    pub reserved1: __u16,
8075    pub reserved2: __u32,
8076    pub info: __IncompleteArrayField<file_dedupe_range_info>,
8077}
8078#[repr(C)]
8079#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8080pub struct files_stat_struct {
8081    pub nr_files: crate::types::c_ulong,
8082    pub nr_free_files: crate::types::c_ulong,
8083    pub max_files: crate::types::c_ulong,
8084}
8085#[repr(C)]
8086#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8087pub struct inodes_stat_t {
8088    pub nr_inodes: crate::types::c_long,
8089    pub nr_unused: crate::types::c_long,
8090    pub dummy: [crate::types::c_long; 5usize],
8091}
8092#[repr(C)]
8093#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8094pub struct fsxattr {
8095    pub fsx_xflags: __u32,
8096    pub fsx_extsize: __u32,
8097    pub fsx_nextents: __u32,
8098    pub fsx_projid: __u32,
8099    pub fsx_cowextsize: __u32,
8100    pub fsx_pad: [crate::types::c_uchar; 8usize],
8101}
8102pub type __kernel_rwf_t = crate::types::c_int;
8103#[repr(C)]
8104#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8105pub struct page_region {
8106    pub start: __u64,
8107    pub end: __u64,
8108    pub categories: __u64,
8109}
8110#[repr(C)]
8111#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8112pub struct pm_scan_arg {
8113    pub size: __u64,
8114    pub flags: __u64,
8115    pub start: __u64,
8116    pub end: __u64,
8117    pub walk_end: __u64,
8118    pub vec: __u64,
8119    pub vec_len: __u64,
8120    pub max_pages: __u64,
8121    pub category_inverted: __u64,
8122    pub category_mask: __u64,
8123    pub category_anyof_mask: __u64,
8124    pub return_mask: __u64,
8125}
8126pub const procmap_query_flags_PROCMAP_QUERY_VMA_READABLE: procmap_query_flags = 1;
8127pub const procmap_query_flags_PROCMAP_QUERY_VMA_WRITABLE: procmap_query_flags = 2;
8128pub const procmap_query_flags_PROCMAP_QUERY_VMA_EXECUTABLE: procmap_query_flags = 4;
8129pub const procmap_query_flags_PROCMAP_QUERY_VMA_SHARED: procmap_query_flags = 8;
8130pub const procmap_query_flags_PROCMAP_QUERY_COVERING_OR_NEXT_VMA: procmap_query_flags = 16;
8131pub const procmap_query_flags_PROCMAP_QUERY_FILE_BACKED_VMA: procmap_query_flags = 32;
8132pub type procmap_query_flags = crate::types::c_uint;
8133#[repr(C)]
8134#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8135pub struct procmap_query {
8136    pub size: __u64,
8137    pub query_flags: __u64,
8138    pub query_addr: __u64,
8139    pub vma_start: __u64,
8140    pub vma_end: __u64,
8141    pub vma_flags: __u64,
8142    pub vma_page_size: __u64,
8143    pub vma_offset: __u64,
8144    pub inode: __u64,
8145    pub dev_major: __u32,
8146    pub dev_minor: __u32,
8147    pub vma_name_size: __u32,
8148    pub build_id_size: __u32,
8149    pub vma_name_addr: __u64,
8150    pub build_id_addr: __u64,
8151}
8152pub type aio_context_t = __kernel_ulong_t;
8153pub const IOCB_CMD_PREAD: _bindgen_ty_1 = 0;
8154pub const IOCB_CMD_PWRITE: _bindgen_ty_1 = 1;
8155pub const IOCB_CMD_FSYNC: _bindgen_ty_1 = 2;
8156pub const IOCB_CMD_FDSYNC: _bindgen_ty_1 = 3;
8157pub const IOCB_CMD_POLL: _bindgen_ty_1 = 5;
8158pub const IOCB_CMD_NOOP: _bindgen_ty_1 = 6;
8159pub const IOCB_CMD_PREADV: _bindgen_ty_1 = 7;
8160pub const IOCB_CMD_PWRITEV: _bindgen_ty_1 = 8;
8161pub type _bindgen_ty_1 = crate::types::c_uint;
8162#[repr(C)]
8163#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8164pub struct io_event {
8165    pub data: __u64,
8166    pub obj: __u64,
8167    pub res: __s64,
8168    pub res2: __s64,
8169}
8170#[repr(C)]
8171#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8172pub struct iocb {
8173    pub aio_data: __u64,
8174    pub aio_key: __u32,
8175    pub aio_rw_flags: __kernel_rwf_t,
8176    pub aio_lio_opcode: __u16,
8177    pub aio_reqprio: __s16,
8178    pub aio_fildes: __u32,
8179    pub aio_buf: __u64,
8180    pub aio_nbytes: __u64,
8181    pub aio_offset: __s64,
8182    pub aio_reserved2: __u64,
8183    pub aio_flags: __u32,
8184    pub aio_resfd: __u32,
8185}
8186pub const BINDER_TYPE_BINDER: _bindgen_ty_2 = 1935813253;
8187pub const BINDER_TYPE_WEAK_BINDER: _bindgen_ty_2 = 2002922117;
8188pub const BINDER_TYPE_HANDLE: _bindgen_ty_2 = 1936206469;
8189pub const BINDER_TYPE_WEAK_HANDLE: _bindgen_ty_2 = 2003315333;
8190pub const BINDER_TYPE_FD: _bindgen_ty_2 = 1717840517;
8191pub const BINDER_TYPE_FDA: _bindgen_ty_2 = 1717854597;
8192pub const BINDER_TYPE_PTR: _bindgen_ty_2 = 1886661253;
8193pub type _bindgen_ty_2 = crate::types::c_uint;
8194pub const flat_binder_object_shifts_FLAT_BINDER_FLAG_SCHED_POLICY_SHIFT: flat_binder_object_shifts =
8195    9;
8196pub type flat_binder_object_shifts = crate::types::c_uint;
8197pub const flat_binder_object_flags_FLAT_BINDER_FLAG_PRIORITY_MASK: flat_binder_object_flags = 255;
8198pub const flat_binder_object_flags_FLAT_BINDER_FLAG_ACCEPTS_FDS: flat_binder_object_flags = 256;
8199pub const flat_binder_object_flags_FLAT_BINDER_FLAG_SCHED_POLICY_MASK: flat_binder_object_flags =
8200    1536;
8201pub const flat_binder_object_flags_FLAT_BINDER_FLAG_INHERIT_RT: flat_binder_object_flags = 2048;
8202pub const flat_binder_object_flags_FLAT_BINDER_FLAG_TXN_SECURITY_CTX: flat_binder_object_flags =
8203    4096;
8204pub type flat_binder_object_flags = crate::types::c_uint;
8205pub type binder_size_t = __u64;
8206pub type binder_uintptr_t = __u64;
8207#[repr(C)]
8208#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8209pub struct binder_object_header {
8210    pub type_: __u32,
8211}
8212#[repr(C)]
8213#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8214pub struct flat_binder_object {
8215    pub hdr: binder_object_header,
8216    pub flags: __u32,
8217    pub __bindgen_anon_1: flat_binder_object__bindgen_ty_1,
8218    pub cookie: binder_uintptr_t,
8219}
8220#[repr(C)]
8221#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8222pub union flat_binder_object__bindgen_ty_1 {
8223    pub binder: binder_uintptr_t,
8224    pub handle: __u32,
8225}
8226impl Default for flat_binder_object__bindgen_ty_1 {
8227    fn default() -> Self {
8228        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8229        unsafe {
8230            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8231            s.assume_init()
8232        }
8233    }
8234}
8235impl Default for flat_binder_object {
8236    fn default() -> Self {
8237        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8238        unsafe {
8239            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8240            s.assume_init()
8241        }
8242    }
8243}
8244#[repr(C)]
8245#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8246pub struct binder_fd_object {
8247    pub hdr: binder_object_header,
8248    pub pad_flags: __u32,
8249    pub __bindgen_anon_1: binder_fd_object__bindgen_ty_1,
8250    pub cookie: binder_uintptr_t,
8251}
8252#[repr(C)]
8253#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8254pub union binder_fd_object__bindgen_ty_1 {
8255    pub pad_binder: binder_uintptr_t,
8256    pub fd: __u32,
8257}
8258impl Default for binder_fd_object__bindgen_ty_1 {
8259    fn default() -> Self {
8260        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8261        unsafe {
8262            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8263            s.assume_init()
8264        }
8265    }
8266}
8267impl Default for binder_fd_object {
8268    fn default() -> Self {
8269        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8270        unsafe {
8271            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8272            s.assume_init()
8273        }
8274    }
8275}
8276#[repr(C)]
8277#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8278pub struct binder_buffer_object {
8279    pub hdr: binder_object_header,
8280    pub flags: __u32,
8281    pub buffer: binder_uintptr_t,
8282    pub length: binder_size_t,
8283    pub parent: binder_size_t,
8284    pub parent_offset: binder_size_t,
8285}
8286pub const BINDER_BUFFER_FLAG_HAS_PARENT: _bindgen_ty_3 = 1;
8287pub type _bindgen_ty_3 = crate::types::c_uint;
8288#[repr(C)]
8289#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8290pub struct binder_fd_array_object {
8291    pub hdr: binder_object_header,
8292    pub pad: __u32,
8293    pub num_fds: binder_size_t,
8294    pub parent: binder_size_t,
8295    pub parent_offset: binder_size_t,
8296}
8297#[repr(C)]
8298#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8299pub struct binder_write_read {
8300    pub write_size: binder_size_t,
8301    pub write_consumed: binder_size_t,
8302    pub write_buffer: binder_uintptr_t,
8303    pub read_size: binder_size_t,
8304    pub read_consumed: binder_size_t,
8305    pub read_buffer: binder_uintptr_t,
8306}
8307#[repr(C)]
8308#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8309pub struct binder_version {
8310    pub protocol_version: __s32,
8311}
8312#[repr(C)]
8313#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8314pub struct binder_node_debug_info {
8315    pub ptr: binder_uintptr_t,
8316    pub cookie: binder_uintptr_t,
8317    pub has_strong_ref: __u32,
8318    pub has_weak_ref: __u32,
8319}
8320#[repr(C)]
8321#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8322pub struct binder_node_info_for_ref {
8323    pub handle: __u32,
8324    pub strong_count: __u32,
8325    pub weak_count: __u32,
8326    pub reserved1: __u32,
8327    pub reserved2: __u32,
8328    pub reserved3: __u32,
8329}
8330#[repr(C)]
8331#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8332pub struct binder_freeze_info {
8333    pub pid: __u32,
8334    pub enable: __u32,
8335    pub timeout_ms: __u32,
8336}
8337#[repr(C)]
8338#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8339pub struct binder_frozen_status_info {
8340    pub pid: __u32,
8341    pub sync_recv: __u32,
8342    pub async_recv: __u32,
8343}
8344#[repr(C)]
8345#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8346pub struct binder_frozen_state_info {
8347    pub cookie: binder_uintptr_t,
8348    pub is_frozen: __u32,
8349    pub reserved: __u32,
8350}
8351#[repr(C)]
8352#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8353pub struct binder_extended_error {
8354    pub id: __u32,
8355    pub command: __u32,
8356    pub param: __s32,
8357}
8358pub const BINDER_WRITE_READ: _bindgen_ty_4 = 3224396289;
8359pub const BINDER_SET_IDLE_TIMEOUT: _bindgen_ty_4 = 1074291203;
8360pub const BINDER_SET_MAX_THREADS: _bindgen_ty_4 = 1074029061;
8361pub const BINDER_SET_IDLE_PRIORITY: _bindgen_ty_4 = 1074029062;
8362pub const BINDER_SET_CONTEXT_MGR: _bindgen_ty_4 = 1074029063;
8363pub const BINDER_THREAD_EXIT: _bindgen_ty_4 = 1074029064;
8364pub const BINDER_VERSION: _bindgen_ty_4 = 3221512713;
8365pub const BINDER_GET_NODE_DEBUG_INFO: _bindgen_ty_4 = 3222823435;
8366pub const BINDER_GET_NODE_INFO_FOR_REF: _bindgen_ty_4 = 3222823436;
8367pub const BINDER_SET_CONTEXT_MGR_EXT: _bindgen_ty_4 = 1075339789;
8368pub const BINDER_FREEZE: _bindgen_ty_4 = 1074553358;
8369pub const BINDER_GET_FROZEN_INFO: _bindgen_ty_4 = 3222037007;
8370pub const BINDER_ENABLE_ONEWAY_SPAM_DETECTION: _bindgen_ty_4 = 1074029072;
8371pub const BINDER_GET_EXTENDED_ERROR: _bindgen_ty_4 = 3222037009;
8372pub type _bindgen_ty_4 = crate::types::c_uint;
8373pub const transaction_flags_TF_ONE_WAY: transaction_flags = 1;
8374pub const transaction_flags_TF_ROOT_OBJECT: transaction_flags = 4;
8375pub const transaction_flags_TF_STATUS_CODE: transaction_flags = 8;
8376pub const transaction_flags_TF_ACCEPT_FDS: transaction_flags = 16;
8377pub const transaction_flags_TF_CLEAR_BUF: transaction_flags = 32;
8378pub const transaction_flags_TF_UPDATE_TXN: transaction_flags = 64;
8379pub type transaction_flags = crate::types::c_uint;
8380#[repr(C)]
8381#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8382pub struct binder_transaction_data {
8383    pub target: binder_transaction_data__bindgen_ty_1,
8384    pub cookie: binder_uintptr_t,
8385    pub code: __u32,
8386    pub flags: __u32,
8387    pub sender_pid: __kernel_pid_t,
8388    pub sender_euid: __kernel_uid32_t,
8389    pub data_size: binder_size_t,
8390    pub offsets_size: binder_size_t,
8391    pub data: binder_transaction_data__bindgen_ty_2,
8392}
8393#[repr(C)]
8394#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8395pub union binder_transaction_data__bindgen_ty_1 {
8396    pub handle: __u32,
8397    pub ptr: binder_uintptr_t,
8398}
8399impl Default for binder_transaction_data__bindgen_ty_1 {
8400    fn default() -> Self {
8401        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8402        unsafe {
8403            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8404            s.assume_init()
8405        }
8406    }
8407}
8408#[repr(C)]
8409#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8410pub union binder_transaction_data__bindgen_ty_2 {
8411    pub ptr: binder_transaction_data__bindgen_ty_2__bindgen_ty_1,
8412    pub buf: [__u8; 8usize],
8413}
8414#[repr(C)]
8415#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8416pub struct binder_transaction_data__bindgen_ty_2__bindgen_ty_1 {
8417    pub buffer: binder_uintptr_t,
8418    pub offsets: binder_uintptr_t,
8419}
8420impl Default for binder_transaction_data__bindgen_ty_2 {
8421    fn default() -> Self {
8422        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8423        unsafe {
8424            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8425            s.assume_init()
8426        }
8427    }
8428}
8429impl Default for binder_transaction_data {
8430    fn default() -> Self {
8431        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8432        unsafe {
8433            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8434            s.assume_init()
8435        }
8436    }
8437}
8438#[repr(C)]
8439#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8440pub struct binder_transaction_data_secctx {
8441    pub transaction_data: binder_transaction_data,
8442    pub secctx: binder_uintptr_t,
8443}
8444impl Default for binder_transaction_data_secctx {
8445    fn default() -> Self {
8446        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8447        unsafe {
8448            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8449            s.assume_init()
8450        }
8451    }
8452}
8453#[repr(C)]
8454#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
8455pub struct binder_transaction_data_sg {
8456    pub transaction_data: binder_transaction_data,
8457    pub buffers_size: binder_size_t,
8458}
8459impl Default for binder_transaction_data_sg {
8460    fn default() -> Self {
8461        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8462        unsafe {
8463            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8464            s.assume_init()
8465        }
8466    }
8467}
8468#[repr(C)]
8469#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8470pub struct binder_ptr_cookie {
8471    pub ptr: binder_uintptr_t,
8472    pub cookie: binder_uintptr_t,
8473}
8474#[repr(C, packed)]
8475#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8476pub struct binder_handle_cookie {
8477    pub handle: __u32,
8478    pub cookie: binder_uintptr_t,
8479}
8480#[repr(C)]
8481#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8482pub struct binder_pri_desc {
8483    pub priority: __s32,
8484    pub desc: __u32,
8485}
8486#[repr(C)]
8487#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8488pub struct binder_pri_ptr_cookie {
8489    pub priority: __s32,
8490    pub __bindgen_padding_0: [u8; 4usize],
8491    pub ptr: binder_uintptr_t,
8492    pub cookie: binder_uintptr_t,
8493}
8494pub const binder_driver_return_protocol_BR_ERROR: binder_driver_return_protocol = 2147774976;
8495pub const binder_driver_return_protocol_BR_OK: binder_driver_return_protocol = 29185;
8496pub const binder_driver_return_protocol_BR_TRANSACTION_SEC_CTX: binder_driver_return_protocol =
8497    2152231426;
8498pub const binder_driver_return_protocol_BR_TRANSACTION: binder_driver_return_protocol = 2151707138;
8499pub const binder_driver_return_protocol_BR_REPLY: binder_driver_return_protocol = 2151707139;
8500pub const binder_driver_return_protocol_BR_ACQUIRE_RESULT: binder_driver_return_protocol =
8501    2147774980;
8502pub const binder_driver_return_protocol_BR_DEAD_REPLY: binder_driver_return_protocol = 29189;
8503pub const binder_driver_return_protocol_BR_TRANSACTION_COMPLETE: binder_driver_return_protocol =
8504    29190;
8505pub const binder_driver_return_protocol_BR_INCREFS: binder_driver_return_protocol = 2148561415;
8506pub const binder_driver_return_protocol_BR_ACQUIRE: binder_driver_return_protocol = 2148561416;
8507pub const binder_driver_return_protocol_BR_RELEASE: binder_driver_return_protocol = 2148561417;
8508pub const binder_driver_return_protocol_BR_DECREFS: binder_driver_return_protocol = 2148561418;
8509pub const binder_driver_return_protocol_BR_ATTEMPT_ACQUIRE: binder_driver_return_protocol =
8510    2149085707;
8511pub const binder_driver_return_protocol_BR_NOOP: binder_driver_return_protocol = 29196;
8512pub const binder_driver_return_protocol_BR_SPAWN_LOOPER: binder_driver_return_protocol = 29197;
8513pub const binder_driver_return_protocol_BR_FINISHED: binder_driver_return_protocol = 29198;
8514pub const binder_driver_return_protocol_BR_DEAD_BINDER: binder_driver_return_protocol = 2148037135;
8515pub const binder_driver_return_protocol_BR_CLEAR_DEATH_NOTIFICATION_DONE:
8516    binder_driver_return_protocol = 2148037136;
8517pub const binder_driver_return_protocol_BR_FAILED_REPLY: binder_driver_return_protocol = 29201;
8518pub const binder_driver_return_protocol_BR_FROZEN_REPLY: binder_driver_return_protocol = 29202;
8519pub const binder_driver_return_protocol_BR_ONEWAY_SPAM_SUSPECT: binder_driver_return_protocol =
8520    29203;
8521pub const binder_driver_return_protocol_BR_TRANSACTION_PENDING_FROZEN:
8522    binder_driver_return_protocol = 29204;
8523pub const binder_driver_return_protocol_BR_FROZEN_BINDER: binder_driver_return_protocol =
8524    2148561429;
8525pub const binder_driver_return_protocol_BR_CLEAR_FREEZE_NOTIFICATION_DONE:
8526    binder_driver_return_protocol = 2148037142;
8527pub type binder_driver_return_protocol = crate::types::c_uint;
8528pub const binder_driver_command_protocol_BC_TRANSACTION: binder_driver_command_protocol =
8529    1077961472;
8530pub const binder_driver_command_protocol_BC_REPLY: binder_driver_command_protocol = 1077961473;
8531pub const binder_driver_command_protocol_BC_ACQUIRE_RESULT: binder_driver_command_protocol =
8532    1074029314;
8533pub const binder_driver_command_protocol_BC_FREE_BUFFER: binder_driver_command_protocol =
8534    1074291459;
8535pub const binder_driver_command_protocol_BC_INCREFS: binder_driver_command_protocol = 1074029316;
8536pub const binder_driver_command_protocol_BC_ACQUIRE: binder_driver_command_protocol = 1074029317;
8537pub const binder_driver_command_protocol_BC_RELEASE: binder_driver_command_protocol = 1074029318;
8538pub const binder_driver_command_protocol_BC_DECREFS: binder_driver_command_protocol = 1074029319;
8539pub const binder_driver_command_protocol_BC_INCREFS_DONE: binder_driver_command_protocol =
8540    1074815752;
8541pub const binder_driver_command_protocol_BC_ACQUIRE_DONE: binder_driver_command_protocol =
8542    1074815753;
8543pub const binder_driver_command_protocol_BC_ATTEMPT_ACQUIRE: binder_driver_command_protocol =
8544    1074291466;
8545pub const binder_driver_command_protocol_BC_REGISTER_LOOPER: binder_driver_command_protocol = 25355;
8546pub const binder_driver_command_protocol_BC_ENTER_LOOPER: binder_driver_command_protocol = 25356;
8547pub const binder_driver_command_protocol_BC_EXIT_LOOPER: binder_driver_command_protocol = 25357;
8548pub const binder_driver_command_protocol_BC_REQUEST_DEATH_NOTIFICATION:
8549    binder_driver_command_protocol = 1074553614;
8550pub const binder_driver_command_protocol_BC_CLEAR_DEATH_NOTIFICATION:
8551    binder_driver_command_protocol = 1074553615;
8552pub const binder_driver_command_protocol_BC_DEAD_BINDER_DONE: binder_driver_command_protocol =
8553    1074291472;
8554pub const binder_driver_command_protocol_BC_TRANSACTION_SG: binder_driver_command_protocol =
8555    1078485777;
8556pub const binder_driver_command_protocol_BC_REPLY_SG: binder_driver_command_protocol = 1078485778;
8557pub const binder_driver_command_protocol_BC_REQUEST_FREEZE_NOTIFICATION:
8558    binder_driver_command_protocol = 1074553619;
8559pub const binder_driver_command_protocol_BC_CLEAR_FREEZE_NOTIFICATION:
8560    binder_driver_command_protocol = 1074553620;
8561pub const binder_driver_command_protocol_BC_FREEZE_NOTIFICATION_DONE:
8562    binder_driver_command_protocol = 1074291477;
8563pub type binder_driver_command_protocol = crate::types::c_uint;
8564#[repr(C)]
8565#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8566pub struct binderfs_device {
8567    pub name: [crate::types::c_char; 256usize],
8568    pub major: __u32,
8569    pub minor: __u32,
8570}
8571impl Default for binderfs_device {
8572    fn default() -> Self {
8573        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8574        unsafe {
8575            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8576            s.assume_init()
8577        }
8578    }
8579}
8580#[repr(C)]
8581#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8582pub struct ashmem_pin {
8583    pub offset: __u32,
8584    pub len: __u32,
8585}
8586pub const Audit_equal: _bindgen_ty_5 = 0;
8587pub const Audit_not_equal: _bindgen_ty_5 = 1;
8588pub const Audit_bitmask: _bindgen_ty_5 = 2;
8589pub const Audit_bittest: _bindgen_ty_5 = 3;
8590pub const Audit_lt: _bindgen_ty_5 = 4;
8591pub const Audit_gt: _bindgen_ty_5 = 5;
8592pub const Audit_le: _bindgen_ty_5 = 6;
8593pub const Audit_ge: _bindgen_ty_5 = 7;
8594pub const Audit_bad: _bindgen_ty_5 = 8;
8595pub type _bindgen_ty_5 = crate::types::c_uint;
8596pub const audit_nlgrps_AUDIT_NLGRP_NONE: audit_nlgrps = 0;
8597pub const audit_nlgrps_AUDIT_NLGRP_READLOG: audit_nlgrps = 1;
8598pub const audit_nlgrps___AUDIT_NLGRP_MAX: audit_nlgrps = 2;
8599pub type audit_nlgrps = crate::types::c_uint;
8600#[repr(C)]
8601#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
8602pub struct audit_status {
8603    pub mask: __u32,
8604    pub enabled: __u32,
8605    pub failure: __u32,
8606    pub pid: __u32,
8607    pub rate_limit: __u32,
8608    pub backlog_limit: __u32,
8609    pub lost: __u32,
8610    pub backlog: __u32,
8611    pub __bindgen_anon_1: audit_status__bindgen_ty_1,
8612    pub backlog_wait_time: __u32,
8613    pub backlog_wait_time_actual: __u32,
8614}
8615#[repr(C)]
8616#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
8617pub union audit_status__bindgen_ty_1 {
8618    pub version: __u32,
8619    pub feature_bitmap: __u32,
8620}
8621impl Default for audit_status__bindgen_ty_1 {
8622    fn default() -> Self {
8623        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8624        unsafe {
8625            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8626            s.assume_init()
8627        }
8628    }
8629}
8630impl Default for audit_status {
8631    fn default() -> Self {
8632        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8633        unsafe {
8634            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8635            s.assume_init()
8636        }
8637    }
8638}
8639#[repr(C)]
8640#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8641pub struct audit_features {
8642    pub vers: __u32,
8643    pub mask: __u32,
8644    pub features: __u32,
8645    pub lock: __u32,
8646}
8647#[repr(C)]
8648#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8649pub struct audit_tty_status {
8650    pub enabled: __u32,
8651    pub log_passwd: __u32,
8652}
8653#[repr(C)]
8654#[derive(Debug)]
8655pub struct audit_rule_data {
8656    pub flags: __u32,
8657    pub action: __u32,
8658    pub field_count: __u32,
8659    pub mask: [__u32; 64usize],
8660    pub fields: [__u32; 64usize],
8661    pub values: [__u32; 64usize],
8662    pub fieldflags: [__u32; 64usize],
8663    pub buflen: __u32,
8664    pub buf: __IncompleteArrayField<crate::types::c_char>,
8665}
8666impl Default for audit_rule_data {
8667    fn default() -> Self {
8668        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8669        unsafe {
8670            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8671            s.assume_init()
8672        }
8673    }
8674}
8675#[repr(C)]
8676#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8677pub struct __user_cap_header_struct {
8678    pub version: __u32,
8679    pub pid: crate::types::c_int,
8680}
8681pub type cap_user_header_t = uref<__user_cap_header_struct>;
8682#[repr(C)]
8683#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8684pub struct __user_cap_data_struct {
8685    pub effective: __u32,
8686    pub permitted: __u32,
8687    pub inheritable: __u32,
8688}
8689pub type cap_user_data_t = uref<__user_cap_data_struct>;
8690#[repr(C)]
8691#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8692pub struct vfs_cap_data {
8693    pub magic_etc: __le32,
8694    pub data: [vfs_cap_data__bindgen_ty_1; 2usize],
8695}
8696#[repr(C)]
8697#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8698pub struct vfs_cap_data__bindgen_ty_1 {
8699    pub permitted: __le32,
8700    pub inheritable: __le32,
8701}
8702#[repr(C)]
8703#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8704pub struct vfs_ns_cap_data {
8705    pub magic_etc: __le32,
8706    pub data: [vfs_ns_cap_data__bindgen_ty_1; 2usize],
8707    pub rootid: __le32,
8708}
8709#[repr(C)]
8710#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8711pub struct vfs_ns_cap_data__bindgen_ty_1 {
8712    pub permitted: __le32,
8713    pub inheritable: __le32,
8714}
8715#[repr(C)]
8716#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8717pub struct dm_ioctl {
8718    pub version: [__u32; 3usize],
8719    pub data_size: __u32,
8720    pub data_start: __u32,
8721    pub target_count: __u32,
8722    pub open_count: __s32,
8723    pub flags: __u32,
8724    pub event_nr: __u32,
8725    pub padding: __u32,
8726    pub dev: __u64,
8727    pub name: [crate::types::c_char; 128usize],
8728    pub uuid: [crate::types::c_char; 129usize],
8729    pub data: [crate::types::c_char; 7usize],
8730}
8731impl Default for dm_ioctl {
8732    fn default() -> Self {
8733        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8734        unsafe {
8735            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8736            s.assume_init()
8737        }
8738    }
8739}
8740#[repr(C)]
8741#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8742pub struct dm_target_spec {
8743    pub sector_start: __u64,
8744    pub length: __u64,
8745    pub status: __s32,
8746    pub next: __u32,
8747    pub target_type: [crate::types::c_char; 16usize],
8748}
8749#[repr(C)]
8750#[derive(Debug, Default)]
8751pub struct dm_target_deps {
8752    pub count: __u32,
8753    pub padding: __u32,
8754    pub dev: __IncompleteArrayField<__u64>,
8755}
8756#[repr(C)]
8757#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8758pub struct dm_name_list {
8759    pub dev: __u64,
8760    pub next: __u32,
8761    pub name: __IncompleteArrayField<crate::types::c_char>,
8762    pub __bindgen_padding_0: [u8; 4usize],
8763}
8764#[repr(C)]
8765#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
8766pub struct dm_target_versions {
8767    pub next: __u32,
8768    pub version: [__u32; 3usize],
8769    pub name: __IncompleteArrayField<crate::types::c_char>,
8770}
8771#[repr(C)]
8772#[derive(Debug, Default)]
8773pub struct dm_target_msg {
8774    pub sector: __u64,
8775    pub message: __IncompleteArrayField<crate::types::c_char>,
8776}
8777pub const DM_VERSION_CMD: _bindgen_ty_6 = 0;
8778pub const DM_REMOVE_ALL_CMD: _bindgen_ty_6 = 1;
8779pub const DM_LIST_DEVICES_CMD: _bindgen_ty_6 = 2;
8780pub const DM_DEV_CREATE_CMD: _bindgen_ty_6 = 3;
8781pub const DM_DEV_REMOVE_CMD: _bindgen_ty_6 = 4;
8782pub const DM_DEV_RENAME_CMD: _bindgen_ty_6 = 5;
8783pub const DM_DEV_SUSPEND_CMD: _bindgen_ty_6 = 6;
8784pub const DM_DEV_STATUS_CMD: _bindgen_ty_6 = 7;
8785pub const DM_DEV_WAIT_CMD: _bindgen_ty_6 = 8;
8786pub const DM_TABLE_LOAD_CMD: _bindgen_ty_6 = 9;
8787pub const DM_TABLE_CLEAR_CMD: _bindgen_ty_6 = 10;
8788pub const DM_TABLE_DEPS_CMD: _bindgen_ty_6 = 11;
8789pub const DM_TABLE_STATUS_CMD: _bindgen_ty_6 = 12;
8790pub const DM_LIST_VERSIONS_CMD: _bindgen_ty_6 = 13;
8791pub const DM_TARGET_MSG_CMD: _bindgen_ty_6 = 14;
8792pub const DM_DEV_SET_GEOMETRY_CMD: _bindgen_ty_6 = 15;
8793pub const DM_DEV_ARM_POLL_CMD: _bindgen_ty_6 = 16;
8794pub const DM_GET_TARGET_VERSION_CMD: _bindgen_ty_6 = 17;
8795pub type _bindgen_ty_6 = crate::types::c_uint;
8796#[repr(C)]
8797#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8798pub struct dma_buf_sync {
8799    pub flags: __u64,
8800}
8801#[repr(C)]
8802#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8803pub struct dma_buf_export_sync_file {
8804    pub flags: __u32,
8805    pub fd: __s32,
8806}
8807#[repr(C)]
8808#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8809pub struct dma_buf_import_sync_file {
8810    pub flags: __u32,
8811    pub fd: __s32,
8812}
8813#[repr(C)]
8814#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8815pub struct dma_heap_allocation_data {
8816    pub len: __u64,
8817    pub fd: __u32,
8818    pub fd_flags: __u32,
8819    pub heap_flags: __u64,
8820}
8821pub type Elf32_Addr = __u32;
8822pub type Elf32_Half = __u16;
8823pub type Elf32_Off = __u32;
8824pub type Elf32_Sword = __s32;
8825pub type Elf32_Word = __u32;
8826pub type Elf64_Addr = __u64;
8827pub type Elf64_Half = __u16;
8828pub type Elf64_SHalf = __s16;
8829pub type Elf64_Off = __u64;
8830pub type Elf64_Sword = __s32;
8831pub type Elf64_Word = __u32;
8832pub type Elf64_Xword = __u64;
8833pub type Elf64_Sxword = __s64;
8834#[repr(C)]
8835#[derive(Copy, Clone)]
8836pub struct Elf32_Dyn {
8837    pub d_tag: Elf32_Sword,
8838    pub d_un: Elf32_Dyn__bindgen_ty_1,
8839}
8840#[repr(C)]
8841#[derive(Copy, Clone)]
8842pub union Elf32_Dyn__bindgen_ty_1 {
8843    pub d_val: Elf32_Sword,
8844    pub d_ptr: Elf32_Addr,
8845}
8846impl Default for Elf32_Dyn__bindgen_ty_1 {
8847    fn default() -> Self {
8848        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8849        unsafe {
8850            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8851            s.assume_init()
8852        }
8853    }
8854}
8855impl Default for Elf32_Dyn {
8856    fn default() -> Self {
8857        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8858        unsafe {
8859            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8860            s.assume_init()
8861        }
8862    }
8863}
8864#[repr(C)]
8865#[derive(Copy, Clone)]
8866pub struct Elf64_Dyn {
8867    pub d_tag: Elf64_Sxword,
8868    pub d_un: Elf64_Dyn__bindgen_ty_1,
8869}
8870#[repr(C)]
8871#[derive(Copy, Clone)]
8872pub union Elf64_Dyn__bindgen_ty_1 {
8873    pub d_val: Elf64_Xword,
8874    pub d_ptr: Elf64_Addr,
8875}
8876impl Default for Elf64_Dyn__bindgen_ty_1 {
8877    fn default() -> Self {
8878        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8879        unsafe {
8880            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8881            s.assume_init()
8882        }
8883    }
8884}
8885impl Default for Elf64_Dyn {
8886    fn default() -> Self {
8887        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8888        unsafe {
8889            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8890            s.assume_init()
8891        }
8892    }
8893}
8894#[repr(C)]
8895#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8896pub struct elf32_rel {
8897    pub r_offset: Elf32_Addr,
8898    pub r_info: Elf32_Word,
8899}
8900pub type Elf32_Rel = elf32_rel;
8901#[repr(C)]
8902#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8903pub struct elf64_rel {
8904    pub r_offset: Elf64_Addr,
8905    pub r_info: Elf64_Xword,
8906}
8907pub type Elf64_Rel = elf64_rel;
8908#[repr(C)]
8909#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8910pub struct elf32_rela {
8911    pub r_offset: Elf32_Addr,
8912    pub r_info: Elf32_Word,
8913    pub r_addend: Elf32_Sword,
8914}
8915pub type Elf32_Rela = elf32_rela;
8916#[repr(C)]
8917#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8918pub struct elf64_rela {
8919    pub r_offset: Elf64_Addr,
8920    pub r_info: Elf64_Xword,
8921    pub r_addend: Elf64_Sxword,
8922}
8923pub type Elf64_Rela = elf64_rela;
8924#[repr(C)]
8925#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8926pub struct elf32_sym {
8927    pub st_name: Elf32_Word,
8928    pub st_value: Elf32_Addr,
8929    pub st_size: Elf32_Word,
8930    pub st_info: crate::types::c_uchar,
8931    pub st_other: crate::types::c_uchar,
8932    pub st_shndx: Elf32_Half,
8933}
8934pub type Elf32_Sym = elf32_sym;
8935#[repr(C)]
8936#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8937pub struct elf64_sym {
8938    pub st_name: Elf64_Word,
8939    pub st_info: crate::types::c_uchar,
8940    pub st_other: crate::types::c_uchar,
8941    pub st_shndx: Elf64_Half,
8942    pub st_value: Elf64_Addr,
8943    pub st_size: Elf64_Xword,
8944}
8945pub type Elf64_Sym = elf64_sym;
8946#[repr(C)]
8947#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8948pub struct elf32_hdr {
8949    pub e_ident: [crate::types::c_uchar; 16usize],
8950    pub e_type: Elf32_Half,
8951    pub e_machine: Elf32_Half,
8952    pub e_version: Elf32_Word,
8953    pub e_entry: Elf32_Addr,
8954    pub e_phoff: Elf32_Off,
8955    pub e_shoff: Elf32_Off,
8956    pub e_flags: Elf32_Word,
8957    pub e_ehsize: Elf32_Half,
8958    pub e_phentsize: Elf32_Half,
8959    pub e_phnum: Elf32_Half,
8960    pub e_shentsize: Elf32_Half,
8961    pub e_shnum: Elf32_Half,
8962    pub e_shstrndx: Elf32_Half,
8963}
8964pub type Elf32_Ehdr = elf32_hdr;
8965#[repr(C)]
8966#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8967pub struct elf64_hdr {
8968    pub e_ident: [crate::types::c_uchar; 16usize],
8969    pub e_type: Elf64_Half,
8970    pub e_machine: Elf64_Half,
8971    pub e_version: Elf64_Word,
8972    pub e_entry: Elf64_Addr,
8973    pub e_phoff: Elf64_Off,
8974    pub e_shoff: Elf64_Off,
8975    pub e_flags: Elf64_Word,
8976    pub e_ehsize: Elf64_Half,
8977    pub e_phentsize: Elf64_Half,
8978    pub e_phnum: Elf64_Half,
8979    pub e_shentsize: Elf64_Half,
8980    pub e_shnum: Elf64_Half,
8981    pub e_shstrndx: Elf64_Half,
8982}
8983pub type Elf64_Ehdr = elf64_hdr;
8984#[repr(C)]
8985#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8986pub struct elf32_phdr {
8987    pub p_type: Elf32_Word,
8988    pub p_offset: Elf32_Off,
8989    pub p_vaddr: Elf32_Addr,
8990    pub p_paddr: Elf32_Addr,
8991    pub p_filesz: Elf32_Word,
8992    pub p_memsz: Elf32_Word,
8993    pub p_flags: Elf32_Word,
8994    pub p_align: Elf32_Word,
8995}
8996pub type Elf32_Phdr = elf32_phdr;
8997#[repr(C)]
8998#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
8999pub struct elf64_phdr {
9000    pub p_type: Elf64_Word,
9001    pub p_flags: Elf64_Word,
9002    pub p_offset: Elf64_Off,
9003    pub p_vaddr: Elf64_Addr,
9004    pub p_paddr: Elf64_Addr,
9005    pub p_filesz: Elf64_Xword,
9006    pub p_memsz: Elf64_Xword,
9007    pub p_align: Elf64_Xword,
9008}
9009pub type Elf64_Phdr = elf64_phdr;
9010#[repr(C)]
9011#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9012pub struct elf32_shdr {
9013    pub sh_name: Elf32_Word,
9014    pub sh_type: Elf32_Word,
9015    pub sh_flags: Elf32_Word,
9016    pub sh_addr: Elf32_Addr,
9017    pub sh_offset: Elf32_Off,
9018    pub sh_size: Elf32_Word,
9019    pub sh_link: Elf32_Word,
9020    pub sh_info: Elf32_Word,
9021    pub sh_addralign: Elf32_Word,
9022    pub sh_entsize: Elf32_Word,
9023}
9024pub type Elf32_Shdr = elf32_shdr;
9025#[repr(C)]
9026#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9027pub struct elf64_shdr {
9028    pub sh_name: Elf64_Word,
9029    pub sh_type: Elf64_Word,
9030    pub sh_flags: Elf64_Xword,
9031    pub sh_addr: Elf64_Addr,
9032    pub sh_offset: Elf64_Off,
9033    pub sh_size: Elf64_Xword,
9034    pub sh_link: Elf64_Word,
9035    pub sh_info: Elf64_Word,
9036    pub sh_addralign: Elf64_Xword,
9037    pub sh_entsize: Elf64_Xword,
9038}
9039pub type Elf64_Shdr = elf64_shdr;
9040#[repr(C)]
9041#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9042pub struct elf32_note {
9043    pub n_namesz: Elf32_Word,
9044    pub n_descsz: Elf32_Word,
9045    pub n_type: Elf32_Word,
9046}
9047pub type Elf32_Nhdr = elf32_note;
9048#[repr(C)]
9049#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9050pub struct elf64_note {
9051    pub n_namesz: Elf64_Word,
9052    pub n_descsz: Elf64_Word,
9053    pub n_type: Elf64_Word,
9054}
9055pub type Elf64_Nhdr = elf64_note;
9056#[repr(C, packed)]
9057#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9058pub struct epoll_event {
9059    pub events: u32,
9060    pub data: u64,
9061}
9062#[repr(C)]
9063#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9064pub struct flock {
9065    pub l_type: crate::types::c_short,
9066    pub l_whence: crate::types::c_short,
9067    pub __bindgen_padding_0: [u8; 4usize],
9068    pub l_start: __kernel_off_t,
9069    pub l_len: __kernel_off_t,
9070    pub l_pid: pid_t,
9071    pub __bindgen_padding_1: [u8; 4usize],
9072}
9073pub type flock64 = flock;
9074#[repr(C)]
9075#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9076pub struct f_owner_ex {
9077    pub type_: crate::types::c_int,
9078    pub pid: __kernel_pid_t,
9079}
9080#[repr(C)]
9081#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9082pub struct open_how {
9083    pub flags: __u64,
9084    pub mode: __u64,
9085    pub resolve: __u64,
9086}
9087#[repr(C)]
9088#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9089pub struct epoll_params {
9090    pub busy_poll_usecs: __u32,
9091    pub busy_poll_budget: __u16,
9092    pub prefer_busy_poll: __u8,
9093    pub __pad: __u8,
9094}
9095#[repr(C)]
9096#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9097pub struct i2c_msg {
9098    pub addr: __u16,
9099    pub flags: __u16,
9100    pub len: __u16,
9101    pub __bindgen_padding_0: [u8; 2usize],
9102    pub buf: uref<__u8>,
9103}
9104impl Default for i2c_msg {
9105    fn default() -> Self {
9106        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9107        unsafe {
9108            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9109            s.assume_init()
9110        }
9111    }
9112}
9113#[repr(C)]
9114#[derive(Copy, Clone)]
9115pub union i2c_smbus_data {
9116    pub byte: __u8,
9117    pub word: __u16,
9118    pub block: [__u8; 34usize],
9119}
9120impl Default for i2c_smbus_data {
9121    fn default() -> Self {
9122        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9123        unsafe {
9124            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9125            s.assume_init()
9126        }
9127    }
9128}
9129pub const vesa_blank_mode_VESA_NO_BLANKING: vesa_blank_mode = 0;
9130pub const vesa_blank_mode_VESA_VSYNC_SUSPEND: vesa_blank_mode = 1;
9131pub const vesa_blank_mode_VESA_HSYNC_SUSPEND: vesa_blank_mode = 2;
9132pub const vesa_blank_mode_VESA_POWERDOWN: vesa_blank_mode = 3;
9133pub const vesa_blank_mode_VESA_BLANK_MAX: vesa_blank_mode = 3;
9134pub type vesa_blank_mode = crate::types::c_uint;
9135#[repr(C)]
9136#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9137pub struct fb_fix_screeninfo {
9138    pub id: [crate::types::c_char; 16usize],
9139    pub smem_start: crate::types::c_ulong,
9140    pub smem_len: __u32,
9141    pub type_: __u32,
9142    pub type_aux: __u32,
9143    pub visual: __u32,
9144    pub xpanstep: __u16,
9145    pub ypanstep: __u16,
9146    pub ywrapstep: __u16,
9147    pub __bindgen_padding_0: [u8; 2usize],
9148    pub line_length: __u32,
9149    pub __bindgen_padding_1: [u8; 4usize],
9150    pub mmio_start: crate::types::c_ulong,
9151    pub mmio_len: __u32,
9152    pub accel: __u32,
9153    pub capabilities: __u16,
9154    pub reserved: [__u16; 2usize],
9155    pub __bindgen_padding_2: [u8; 2usize],
9156}
9157#[repr(C)]
9158#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9159pub struct fb_bitfield {
9160    pub offset: __u32,
9161    pub length: __u32,
9162    pub msb_right: __u32,
9163}
9164#[repr(C)]
9165#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9166pub struct fb_var_screeninfo {
9167    pub xres: __u32,
9168    pub yres: __u32,
9169    pub xres_virtual: __u32,
9170    pub yres_virtual: __u32,
9171    pub xoffset: __u32,
9172    pub yoffset: __u32,
9173    pub bits_per_pixel: __u32,
9174    pub grayscale: __u32,
9175    pub red: fb_bitfield,
9176    pub green: fb_bitfield,
9177    pub blue: fb_bitfield,
9178    pub transp: fb_bitfield,
9179    pub nonstd: __u32,
9180    pub activate: __u32,
9181    pub height: __u32,
9182    pub width: __u32,
9183    pub accel_flags: __u32,
9184    pub pixclock: __u32,
9185    pub left_margin: __u32,
9186    pub right_margin: __u32,
9187    pub upper_margin: __u32,
9188    pub lower_margin: __u32,
9189    pub hsync_len: __u32,
9190    pub vsync_len: __u32,
9191    pub sync: __u32,
9192    pub vmode: __u32,
9193    pub rotate: __u32,
9194    pub colorspace: __u32,
9195    pub reserved: [__u32; 4usize],
9196}
9197#[repr(C)]
9198#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9199pub struct fb_cmap {
9200    pub start: __u32,
9201    pub len: __u32,
9202    pub red: uref<__u16>,
9203    pub green: uref<__u16>,
9204    pub blue: uref<__u16>,
9205    pub transp: uref<__u16>,
9206}
9207impl Default for fb_cmap {
9208    fn default() -> Self {
9209        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9210        unsafe {
9211            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9212            s.assume_init()
9213        }
9214    }
9215}
9216#[repr(C)]
9217#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9218pub struct fb_con2fbmap {
9219    pub console: __u32,
9220    pub framebuffer: __u32,
9221}
9222pub const FB_BLANK_UNBLANK: _bindgen_ty_7 = 0;
9223pub const FB_BLANK_NORMAL: _bindgen_ty_7 = 1;
9224pub const FB_BLANK_VSYNC_SUSPEND: _bindgen_ty_7 = 2;
9225pub const FB_BLANK_HSYNC_SUSPEND: _bindgen_ty_7 = 3;
9226pub const FB_BLANK_POWERDOWN: _bindgen_ty_7 = 4;
9227pub type _bindgen_ty_7 = crate::types::c_uint;
9228#[repr(C)]
9229#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9230pub struct fb_vblank {
9231    pub flags: __u32,
9232    pub count: __u32,
9233    pub vcount: __u32,
9234    pub hcount: __u32,
9235    pub reserved: [__u32; 4usize],
9236}
9237#[repr(C)]
9238#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9239pub struct fb_copyarea {
9240    pub dx: __u32,
9241    pub dy: __u32,
9242    pub width: __u32,
9243    pub height: __u32,
9244    pub sx: __u32,
9245    pub sy: __u32,
9246}
9247#[repr(C)]
9248#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9249pub struct fb_fillrect {
9250    pub dx: __u32,
9251    pub dy: __u32,
9252    pub width: __u32,
9253    pub height: __u32,
9254    pub color: __u32,
9255    pub rop: __u32,
9256}
9257#[repr(C)]
9258#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9259pub struct fb_image {
9260    pub dx: __u32,
9261    pub dy: __u32,
9262    pub width: __u32,
9263    pub height: __u32,
9264    pub fg_color: __u32,
9265    pub bg_color: __u32,
9266    pub depth: __u8,
9267    pub __bindgen_padding_0: [u8; 7usize],
9268    pub data: uref<crate::types::c_char>,
9269    pub cmap: fb_cmap,
9270}
9271impl Default for fb_image {
9272    fn default() -> Self {
9273        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9274        unsafe {
9275            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9276            s.assume_init()
9277        }
9278    }
9279}
9280#[repr(C)]
9281#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9282pub struct fbcurpos {
9283    pub x: __u16,
9284    pub y: __u16,
9285}
9286#[repr(C)]
9287#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9288pub struct fb_cursor {
9289    pub set: __u16,
9290    pub enable: __u16,
9291    pub rop: __u16,
9292    pub __bindgen_padding_0: [u8; 2usize],
9293    pub mask: uref<crate::types::c_char>,
9294    pub hot: fbcurpos,
9295    pub __bindgen_padding_1: [u8; 4usize],
9296    pub image: fb_image,
9297}
9298impl Default for fb_cursor {
9299    fn default() -> Self {
9300        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9301        unsafe {
9302            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9303            s.assume_init()
9304        }
9305    }
9306}
9307#[repr(C)]
9308#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9309pub struct sockaddr_nl {
9310    pub nl_family: __kernel_sa_family_t,
9311    pub nl_pad: crate::types::c_ushort,
9312    pub nl_pid: __u32,
9313    pub nl_groups: __u32,
9314}
9315#[repr(C)]
9316#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9317pub struct nlmsghdr {
9318    pub nlmsg_len: __u32,
9319    pub nlmsg_type: __u16,
9320    pub nlmsg_flags: __u16,
9321    pub nlmsg_seq: __u32,
9322    pub nlmsg_pid: __u32,
9323}
9324#[repr(C)]
9325#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9326pub struct nlmsgerr {
9327    pub error: crate::types::c_int,
9328    pub msg: nlmsghdr,
9329}
9330pub const nlmsgerr_attrs_NLMSGERR_ATTR_UNUSED: nlmsgerr_attrs = 0;
9331pub const nlmsgerr_attrs_NLMSGERR_ATTR_MSG: nlmsgerr_attrs = 1;
9332pub const nlmsgerr_attrs_NLMSGERR_ATTR_OFFS: nlmsgerr_attrs = 2;
9333pub const nlmsgerr_attrs_NLMSGERR_ATTR_COOKIE: nlmsgerr_attrs = 3;
9334pub const nlmsgerr_attrs_NLMSGERR_ATTR_POLICY: nlmsgerr_attrs = 4;
9335pub const nlmsgerr_attrs_NLMSGERR_ATTR_MISS_TYPE: nlmsgerr_attrs = 5;
9336pub const nlmsgerr_attrs_NLMSGERR_ATTR_MISS_NEST: nlmsgerr_attrs = 6;
9337pub const nlmsgerr_attrs___NLMSGERR_ATTR_MAX: nlmsgerr_attrs = 7;
9338pub const nlmsgerr_attrs_NLMSGERR_ATTR_MAX: nlmsgerr_attrs = 6;
9339pub type nlmsgerr_attrs = crate::types::c_uint;
9340#[repr(C)]
9341#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9342pub struct nl_pktinfo {
9343    pub group: __u32,
9344}
9345#[repr(C)]
9346#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9347pub struct nl_mmap_req {
9348    pub nm_block_size: crate::types::c_uint,
9349    pub nm_block_nr: crate::types::c_uint,
9350    pub nm_frame_size: crate::types::c_uint,
9351    pub nm_frame_nr: crate::types::c_uint,
9352}
9353#[repr(C)]
9354#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9355pub struct nl_mmap_hdr {
9356    pub nm_status: crate::types::c_uint,
9357    pub nm_len: crate::types::c_uint,
9358    pub nm_group: __u32,
9359    pub nm_pid: __u32,
9360    pub nm_uid: __u32,
9361    pub nm_gid: __u32,
9362}
9363pub const nl_mmap_status_NL_MMAP_STATUS_UNUSED: nl_mmap_status = 0;
9364pub const nl_mmap_status_NL_MMAP_STATUS_RESERVED: nl_mmap_status = 1;
9365pub const nl_mmap_status_NL_MMAP_STATUS_VALID: nl_mmap_status = 2;
9366pub const nl_mmap_status_NL_MMAP_STATUS_COPY: nl_mmap_status = 3;
9367pub const nl_mmap_status_NL_MMAP_STATUS_SKIP: nl_mmap_status = 4;
9368pub type nl_mmap_status = crate::types::c_uint;
9369pub const NETLINK_UNCONNECTED: _bindgen_ty_8 = 0;
9370pub const NETLINK_CONNECTED: _bindgen_ty_8 = 1;
9371pub type _bindgen_ty_8 = crate::types::c_uint;
9372#[repr(C)]
9373#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9374pub struct nlattr {
9375    pub nla_len: __u16,
9376    pub nla_type: __u16,
9377}
9378#[repr(C)]
9379#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9380pub struct nla_bitfield32 {
9381    pub value: __u32,
9382    pub selector: __u32,
9383}
9384pub const netlink_attribute_type_NL_ATTR_TYPE_INVALID: netlink_attribute_type = 0;
9385pub const netlink_attribute_type_NL_ATTR_TYPE_FLAG: netlink_attribute_type = 1;
9386pub const netlink_attribute_type_NL_ATTR_TYPE_U8: netlink_attribute_type = 2;
9387pub const netlink_attribute_type_NL_ATTR_TYPE_U16: netlink_attribute_type = 3;
9388pub const netlink_attribute_type_NL_ATTR_TYPE_U32: netlink_attribute_type = 4;
9389pub const netlink_attribute_type_NL_ATTR_TYPE_U64: netlink_attribute_type = 5;
9390pub const netlink_attribute_type_NL_ATTR_TYPE_S8: netlink_attribute_type = 6;
9391pub const netlink_attribute_type_NL_ATTR_TYPE_S16: netlink_attribute_type = 7;
9392pub const netlink_attribute_type_NL_ATTR_TYPE_S32: netlink_attribute_type = 8;
9393pub const netlink_attribute_type_NL_ATTR_TYPE_S64: netlink_attribute_type = 9;
9394pub const netlink_attribute_type_NL_ATTR_TYPE_BINARY: netlink_attribute_type = 10;
9395pub const netlink_attribute_type_NL_ATTR_TYPE_STRING: netlink_attribute_type = 11;
9396pub const netlink_attribute_type_NL_ATTR_TYPE_NUL_STRING: netlink_attribute_type = 12;
9397pub const netlink_attribute_type_NL_ATTR_TYPE_NESTED: netlink_attribute_type = 13;
9398pub const netlink_attribute_type_NL_ATTR_TYPE_NESTED_ARRAY: netlink_attribute_type = 14;
9399pub const netlink_attribute_type_NL_ATTR_TYPE_BITFIELD32: netlink_attribute_type = 15;
9400pub const netlink_attribute_type_NL_ATTR_TYPE_SINT: netlink_attribute_type = 16;
9401pub const netlink_attribute_type_NL_ATTR_TYPE_UINT: netlink_attribute_type = 17;
9402pub type netlink_attribute_type = crate::types::c_uint;
9403pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_UNSPEC: netlink_policy_type_attr = 0;
9404pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_TYPE: netlink_policy_type_attr = 1;
9405pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_VALUE_S: netlink_policy_type_attr = 2;
9406pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_VALUE_S: netlink_policy_type_attr = 3;
9407pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_VALUE_U: netlink_policy_type_attr = 4;
9408pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_VALUE_U: netlink_policy_type_attr = 5;
9409pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MIN_LENGTH: netlink_policy_type_attr = 6;
9410pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX_LENGTH: netlink_policy_type_attr = 7;
9411pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_POLICY_IDX: netlink_policy_type_attr = 8;
9412pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE: netlink_policy_type_attr = 9;
9413pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_BITFIELD32_MASK: netlink_policy_type_attr =
9414    10;
9415pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_PAD: netlink_policy_type_attr = 11;
9416pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MASK: netlink_policy_type_attr = 12;
9417pub const netlink_policy_type_attr___NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = 13;
9418pub const netlink_policy_type_attr_NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = 12;
9419pub type netlink_policy_type_attr = crate::types::c_uint;
9420#[repr(C)]
9421#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9422pub struct rtnl_link_stats {
9423    pub rx_packets: __u32,
9424    pub tx_packets: __u32,
9425    pub rx_bytes: __u32,
9426    pub tx_bytes: __u32,
9427    pub rx_errors: __u32,
9428    pub tx_errors: __u32,
9429    pub rx_dropped: __u32,
9430    pub tx_dropped: __u32,
9431    pub multicast: __u32,
9432    pub collisions: __u32,
9433    pub rx_length_errors: __u32,
9434    pub rx_over_errors: __u32,
9435    pub rx_crc_errors: __u32,
9436    pub rx_frame_errors: __u32,
9437    pub rx_fifo_errors: __u32,
9438    pub rx_missed_errors: __u32,
9439    pub tx_aborted_errors: __u32,
9440    pub tx_carrier_errors: __u32,
9441    pub tx_fifo_errors: __u32,
9442    pub tx_heartbeat_errors: __u32,
9443    pub tx_window_errors: __u32,
9444    pub rx_compressed: __u32,
9445    pub tx_compressed: __u32,
9446    pub rx_nohandler: __u32,
9447}
9448#[repr(C)]
9449#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9450pub struct rtnl_link_stats64 {
9451    pub rx_packets: __u64,
9452    pub tx_packets: __u64,
9453    pub rx_bytes: __u64,
9454    pub tx_bytes: __u64,
9455    pub rx_errors: __u64,
9456    pub tx_errors: __u64,
9457    pub rx_dropped: __u64,
9458    pub tx_dropped: __u64,
9459    pub multicast: __u64,
9460    pub collisions: __u64,
9461    pub rx_length_errors: __u64,
9462    pub rx_over_errors: __u64,
9463    pub rx_crc_errors: __u64,
9464    pub rx_frame_errors: __u64,
9465    pub rx_fifo_errors: __u64,
9466    pub rx_missed_errors: __u64,
9467    pub tx_aborted_errors: __u64,
9468    pub tx_carrier_errors: __u64,
9469    pub tx_fifo_errors: __u64,
9470    pub tx_heartbeat_errors: __u64,
9471    pub tx_window_errors: __u64,
9472    pub rx_compressed: __u64,
9473    pub tx_compressed: __u64,
9474    pub rx_nohandler: __u64,
9475    pub rx_otherhost_dropped: __u64,
9476}
9477#[repr(C)]
9478#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9479pub struct rtnl_hw_stats64 {
9480    pub rx_packets: __u64,
9481    pub tx_packets: __u64,
9482    pub rx_bytes: __u64,
9483    pub tx_bytes: __u64,
9484    pub rx_errors: __u64,
9485    pub tx_errors: __u64,
9486    pub rx_dropped: __u64,
9487    pub tx_dropped: __u64,
9488    pub multicast: __u64,
9489}
9490#[repr(C)]
9491#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9492pub struct rtnl_link_ifmap {
9493    pub mem_start: __u64,
9494    pub mem_end: __u64,
9495    pub base_addr: __u64,
9496    pub irq: __u16,
9497    pub dma: __u8,
9498    pub port: __u8,
9499    pub __bindgen_padding_0: [u8; 4usize],
9500}
9501pub const IFLA_UNSPEC: _bindgen_ty_9 = 0;
9502pub const IFLA_ADDRESS: _bindgen_ty_9 = 1;
9503pub const IFLA_BROADCAST: _bindgen_ty_9 = 2;
9504pub const IFLA_IFNAME: _bindgen_ty_9 = 3;
9505pub const IFLA_MTU: _bindgen_ty_9 = 4;
9506pub const IFLA_LINK: _bindgen_ty_9 = 5;
9507pub const IFLA_QDISC: _bindgen_ty_9 = 6;
9508pub const IFLA_STATS: _bindgen_ty_9 = 7;
9509pub const IFLA_COST: _bindgen_ty_9 = 8;
9510pub const IFLA_PRIORITY: _bindgen_ty_9 = 9;
9511pub const IFLA_MASTER: _bindgen_ty_9 = 10;
9512pub const IFLA_WIRELESS: _bindgen_ty_9 = 11;
9513pub const IFLA_PROTINFO: _bindgen_ty_9 = 12;
9514pub const IFLA_TXQLEN: _bindgen_ty_9 = 13;
9515pub const IFLA_MAP: _bindgen_ty_9 = 14;
9516pub const IFLA_WEIGHT: _bindgen_ty_9 = 15;
9517pub const IFLA_OPERSTATE: _bindgen_ty_9 = 16;
9518pub const IFLA_LINKMODE: _bindgen_ty_9 = 17;
9519pub const IFLA_LINKINFO: _bindgen_ty_9 = 18;
9520pub const IFLA_NET_NS_PID: _bindgen_ty_9 = 19;
9521pub const IFLA_IFALIAS: _bindgen_ty_9 = 20;
9522pub const IFLA_NUM_VF: _bindgen_ty_9 = 21;
9523pub const IFLA_VFINFO_LIST: _bindgen_ty_9 = 22;
9524pub const IFLA_STATS64: _bindgen_ty_9 = 23;
9525pub const IFLA_VF_PORTS: _bindgen_ty_9 = 24;
9526pub const IFLA_PORT_SELF: _bindgen_ty_9 = 25;
9527pub const IFLA_AF_SPEC: _bindgen_ty_9 = 26;
9528pub const IFLA_GROUP: _bindgen_ty_9 = 27;
9529pub const IFLA_NET_NS_FD: _bindgen_ty_9 = 28;
9530pub const IFLA_EXT_MASK: _bindgen_ty_9 = 29;
9531pub const IFLA_PROMISCUITY: _bindgen_ty_9 = 30;
9532pub const IFLA_NUM_TX_QUEUES: _bindgen_ty_9 = 31;
9533pub const IFLA_NUM_RX_QUEUES: _bindgen_ty_9 = 32;
9534pub const IFLA_CARRIER: _bindgen_ty_9 = 33;
9535pub const IFLA_PHYS_PORT_ID: _bindgen_ty_9 = 34;
9536pub const IFLA_CARRIER_CHANGES: _bindgen_ty_9 = 35;
9537pub const IFLA_PHYS_SWITCH_ID: _bindgen_ty_9 = 36;
9538pub const IFLA_LINK_NETNSID: _bindgen_ty_9 = 37;
9539pub const IFLA_PHYS_PORT_NAME: _bindgen_ty_9 = 38;
9540pub const IFLA_PROTO_DOWN: _bindgen_ty_9 = 39;
9541pub const IFLA_GSO_MAX_SEGS: _bindgen_ty_9 = 40;
9542pub const IFLA_GSO_MAX_SIZE: _bindgen_ty_9 = 41;
9543pub const IFLA_PAD: _bindgen_ty_9 = 42;
9544pub const IFLA_XDP: _bindgen_ty_9 = 43;
9545pub const IFLA_EVENT: _bindgen_ty_9 = 44;
9546pub const IFLA_NEW_NETNSID: _bindgen_ty_9 = 45;
9547pub const IFLA_IF_NETNSID: _bindgen_ty_9 = 46;
9548pub const IFLA_TARGET_NETNSID: _bindgen_ty_9 = 46;
9549pub const IFLA_CARRIER_UP_COUNT: _bindgen_ty_9 = 47;
9550pub const IFLA_CARRIER_DOWN_COUNT: _bindgen_ty_9 = 48;
9551pub const IFLA_NEW_IFINDEX: _bindgen_ty_9 = 49;
9552pub const IFLA_MIN_MTU: _bindgen_ty_9 = 50;
9553pub const IFLA_MAX_MTU: _bindgen_ty_9 = 51;
9554pub const IFLA_PROP_LIST: _bindgen_ty_9 = 52;
9555pub const IFLA_ALT_IFNAME: _bindgen_ty_9 = 53;
9556pub const IFLA_PERM_ADDRESS: _bindgen_ty_9 = 54;
9557pub const IFLA_PROTO_DOWN_REASON: _bindgen_ty_9 = 55;
9558pub const IFLA_PARENT_DEV_NAME: _bindgen_ty_9 = 56;
9559pub const IFLA_PARENT_DEV_BUS_NAME: _bindgen_ty_9 = 57;
9560pub const IFLA_GRO_MAX_SIZE: _bindgen_ty_9 = 58;
9561pub const IFLA_TSO_MAX_SIZE: _bindgen_ty_9 = 59;
9562pub const IFLA_TSO_MAX_SEGS: _bindgen_ty_9 = 60;
9563pub const IFLA_ALLMULTI: _bindgen_ty_9 = 61;
9564pub const IFLA_DEVLINK_PORT: _bindgen_ty_9 = 62;
9565pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_9 = 63;
9566pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_9 = 64;
9567pub const IFLA_DPLL_PIN: _bindgen_ty_9 = 65;
9568pub const __IFLA_MAX: _bindgen_ty_9 = 66;
9569pub type _bindgen_ty_9 = crate::types::c_uint;
9570pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_10 = 0;
9571pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_10 = 1;
9572pub const IFLA_PROTO_DOWN_REASON_VALUE: _bindgen_ty_10 = 2;
9573pub const __IFLA_PROTO_DOWN_REASON_CNT: _bindgen_ty_10 = 3;
9574pub const IFLA_PROTO_DOWN_REASON_MAX: _bindgen_ty_10 = 2;
9575pub type _bindgen_ty_10 = crate::types::c_uint;
9576pub const IFLA_INET_UNSPEC: _bindgen_ty_11 = 0;
9577pub const IFLA_INET_CONF: _bindgen_ty_11 = 1;
9578pub const __IFLA_INET_MAX: _bindgen_ty_11 = 2;
9579pub type _bindgen_ty_11 = crate::types::c_uint;
9580pub const IFLA_INET6_UNSPEC: _bindgen_ty_12 = 0;
9581pub const IFLA_INET6_FLAGS: _bindgen_ty_12 = 1;
9582pub const IFLA_INET6_CONF: _bindgen_ty_12 = 2;
9583pub const IFLA_INET6_STATS: _bindgen_ty_12 = 3;
9584pub const IFLA_INET6_MCAST: _bindgen_ty_12 = 4;
9585pub const IFLA_INET6_CACHEINFO: _bindgen_ty_12 = 5;
9586pub const IFLA_INET6_ICMP6STATS: _bindgen_ty_12 = 6;
9587pub const IFLA_INET6_TOKEN: _bindgen_ty_12 = 7;
9588pub const IFLA_INET6_ADDR_GEN_MODE: _bindgen_ty_12 = 8;
9589pub const IFLA_INET6_RA_MTU: _bindgen_ty_12 = 9;
9590pub const __IFLA_INET6_MAX: _bindgen_ty_12 = 10;
9591pub type _bindgen_ty_12 = crate::types::c_uint;
9592pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_EUI64: in6_addr_gen_mode = 0;
9593pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_NONE: in6_addr_gen_mode = 1;
9594pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_STABLE_PRIVACY: in6_addr_gen_mode = 2;
9595pub const in6_addr_gen_mode_IN6_ADDR_GEN_MODE_RANDOM: in6_addr_gen_mode = 3;
9596pub type in6_addr_gen_mode = crate::types::c_uint;
9597pub const IFLA_BR_UNSPEC: _bindgen_ty_13 = 0;
9598pub const IFLA_BR_FORWARD_DELAY: _bindgen_ty_13 = 1;
9599pub const IFLA_BR_HELLO_TIME: _bindgen_ty_13 = 2;
9600pub const IFLA_BR_MAX_AGE: _bindgen_ty_13 = 3;
9601pub const IFLA_BR_AGEING_TIME: _bindgen_ty_13 = 4;
9602pub const IFLA_BR_STP_STATE: _bindgen_ty_13 = 5;
9603pub const IFLA_BR_PRIORITY: _bindgen_ty_13 = 6;
9604pub const IFLA_BR_VLAN_FILTERING: _bindgen_ty_13 = 7;
9605pub const IFLA_BR_VLAN_PROTOCOL: _bindgen_ty_13 = 8;
9606pub const IFLA_BR_GROUP_FWD_MASK: _bindgen_ty_13 = 9;
9607pub const IFLA_BR_ROOT_ID: _bindgen_ty_13 = 10;
9608pub const IFLA_BR_BRIDGE_ID: _bindgen_ty_13 = 11;
9609pub const IFLA_BR_ROOT_PORT: _bindgen_ty_13 = 12;
9610pub const IFLA_BR_ROOT_PATH_COST: _bindgen_ty_13 = 13;
9611pub const IFLA_BR_TOPOLOGY_CHANGE: _bindgen_ty_13 = 14;
9612pub const IFLA_BR_TOPOLOGY_CHANGE_DETECTED: _bindgen_ty_13 = 15;
9613pub const IFLA_BR_HELLO_TIMER: _bindgen_ty_13 = 16;
9614pub const IFLA_BR_TCN_TIMER: _bindgen_ty_13 = 17;
9615pub const IFLA_BR_TOPOLOGY_CHANGE_TIMER: _bindgen_ty_13 = 18;
9616pub const IFLA_BR_GC_TIMER: _bindgen_ty_13 = 19;
9617pub const IFLA_BR_GROUP_ADDR: _bindgen_ty_13 = 20;
9618pub const IFLA_BR_FDB_FLUSH: _bindgen_ty_13 = 21;
9619pub const IFLA_BR_MCAST_ROUTER: _bindgen_ty_13 = 22;
9620pub const IFLA_BR_MCAST_SNOOPING: _bindgen_ty_13 = 23;
9621pub const IFLA_BR_MCAST_QUERY_USE_IFADDR: _bindgen_ty_13 = 24;
9622pub const IFLA_BR_MCAST_QUERIER: _bindgen_ty_13 = 25;
9623pub const IFLA_BR_MCAST_HASH_ELASTICITY: _bindgen_ty_13 = 26;
9624pub const IFLA_BR_MCAST_HASH_MAX: _bindgen_ty_13 = 27;
9625pub const IFLA_BR_MCAST_LAST_MEMBER_CNT: _bindgen_ty_13 = 28;
9626pub const IFLA_BR_MCAST_STARTUP_QUERY_CNT: _bindgen_ty_13 = 29;
9627pub const IFLA_BR_MCAST_LAST_MEMBER_INTVL: _bindgen_ty_13 = 30;
9628pub const IFLA_BR_MCAST_MEMBERSHIP_INTVL: _bindgen_ty_13 = 31;
9629pub const IFLA_BR_MCAST_QUERIER_INTVL: _bindgen_ty_13 = 32;
9630pub const IFLA_BR_MCAST_QUERY_INTVL: _bindgen_ty_13 = 33;
9631pub const IFLA_BR_MCAST_QUERY_RESPONSE_INTVL: _bindgen_ty_13 = 34;
9632pub const IFLA_BR_MCAST_STARTUP_QUERY_INTVL: _bindgen_ty_13 = 35;
9633pub const IFLA_BR_NF_CALL_IPTABLES: _bindgen_ty_13 = 36;
9634pub const IFLA_BR_NF_CALL_IP6TABLES: _bindgen_ty_13 = 37;
9635pub const IFLA_BR_NF_CALL_ARPTABLES: _bindgen_ty_13 = 38;
9636pub const IFLA_BR_VLAN_DEFAULT_PVID: _bindgen_ty_13 = 39;
9637pub const IFLA_BR_PAD: _bindgen_ty_13 = 40;
9638pub const IFLA_BR_VLAN_STATS_ENABLED: _bindgen_ty_13 = 41;
9639pub const IFLA_BR_MCAST_STATS_ENABLED: _bindgen_ty_13 = 42;
9640pub const IFLA_BR_MCAST_IGMP_VERSION: _bindgen_ty_13 = 43;
9641pub const IFLA_BR_MCAST_MLD_VERSION: _bindgen_ty_13 = 44;
9642pub const IFLA_BR_VLAN_STATS_PER_PORT: _bindgen_ty_13 = 45;
9643pub const IFLA_BR_MULTI_BOOLOPT: _bindgen_ty_13 = 46;
9644pub const IFLA_BR_MCAST_QUERIER_STATE: _bindgen_ty_13 = 47;
9645pub const IFLA_BR_FDB_N_LEARNED: _bindgen_ty_13 = 48;
9646pub const IFLA_BR_FDB_MAX_LEARNED: _bindgen_ty_13 = 49;
9647pub const __IFLA_BR_MAX: _bindgen_ty_13 = 50;
9648pub type _bindgen_ty_13 = crate::types::c_uint;
9649#[repr(C)]
9650#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9651pub struct ifla_bridge_id {
9652    pub prio: [__u8; 2usize],
9653    pub addr: [__u8; 6usize],
9654}
9655pub const BRIDGE_MODE_UNSPEC: _bindgen_ty_14 = 0;
9656pub const BRIDGE_MODE_HAIRPIN: _bindgen_ty_14 = 1;
9657pub type _bindgen_ty_14 = crate::types::c_uint;
9658pub const IFLA_BRPORT_UNSPEC: _bindgen_ty_15 = 0;
9659pub const IFLA_BRPORT_STATE: _bindgen_ty_15 = 1;
9660pub const IFLA_BRPORT_PRIORITY: _bindgen_ty_15 = 2;
9661pub const IFLA_BRPORT_COST: _bindgen_ty_15 = 3;
9662pub const IFLA_BRPORT_MODE: _bindgen_ty_15 = 4;
9663pub const IFLA_BRPORT_GUARD: _bindgen_ty_15 = 5;
9664pub const IFLA_BRPORT_PROTECT: _bindgen_ty_15 = 6;
9665pub const IFLA_BRPORT_FAST_LEAVE: _bindgen_ty_15 = 7;
9666pub const IFLA_BRPORT_LEARNING: _bindgen_ty_15 = 8;
9667pub const IFLA_BRPORT_UNICAST_FLOOD: _bindgen_ty_15 = 9;
9668pub const IFLA_BRPORT_PROXYARP: _bindgen_ty_15 = 10;
9669pub const IFLA_BRPORT_LEARNING_SYNC: _bindgen_ty_15 = 11;
9670pub const IFLA_BRPORT_PROXYARP_WIFI: _bindgen_ty_15 = 12;
9671pub const IFLA_BRPORT_ROOT_ID: _bindgen_ty_15 = 13;
9672pub const IFLA_BRPORT_BRIDGE_ID: _bindgen_ty_15 = 14;
9673pub const IFLA_BRPORT_DESIGNATED_PORT: _bindgen_ty_15 = 15;
9674pub const IFLA_BRPORT_DESIGNATED_COST: _bindgen_ty_15 = 16;
9675pub const IFLA_BRPORT_ID: _bindgen_ty_15 = 17;
9676pub const IFLA_BRPORT_NO: _bindgen_ty_15 = 18;
9677pub const IFLA_BRPORT_TOPOLOGY_CHANGE_ACK: _bindgen_ty_15 = 19;
9678pub const IFLA_BRPORT_CONFIG_PENDING: _bindgen_ty_15 = 20;
9679pub const IFLA_BRPORT_MESSAGE_AGE_TIMER: _bindgen_ty_15 = 21;
9680pub const IFLA_BRPORT_FORWARD_DELAY_TIMER: _bindgen_ty_15 = 22;
9681pub const IFLA_BRPORT_HOLD_TIMER: _bindgen_ty_15 = 23;
9682pub const IFLA_BRPORT_FLUSH: _bindgen_ty_15 = 24;
9683pub const IFLA_BRPORT_MULTICAST_ROUTER: _bindgen_ty_15 = 25;
9684pub const IFLA_BRPORT_PAD: _bindgen_ty_15 = 26;
9685pub const IFLA_BRPORT_MCAST_FLOOD: _bindgen_ty_15 = 27;
9686pub const IFLA_BRPORT_MCAST_TO_UCAST: _bindgen_ty_15 = 28;
9687pub const IFLA_BRPORT_VLAN_TUNNEL: _bindgen_ty_15 = 29;
9688pub const IFLA_BRPORT_BCAST_FLOOD: _bindgen_ty_15 = 30;
9689pub const IFLA_BRPORT_GROUP_FWD_MASK: _bindgen_ty_15 = 31;
9690pub const IFLA_BRPORT_NEIGH_SUPPRESS: _bindgen_ty_15 = 32;
9691pub const IFLA_BRPORT_ISOLATED: _bindgen_ty_15 = 33;
9692pub const IFLA_BRPORT_BACKUP_PORT: _bindgen_ty_15 = 34;
9693pub const IFLA_BRPORT_MRP_RING_OPEN: _bindgen_ty_15 = 35;
9694pub const IFLA_BRPORT_MRP_IN_OPEN: _bindgen_ty_15 = 36;
9695pub const IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT: _bindgen_ty_15 = 37;
9696pub const IFLA_BRPORT_MCAST_EHT_HOSTS_CNT: _bindgen_ty_15 = 38;
9697pub const IFLA_BRPORT_LOCKED: _bindgen_ty_15 = 39;
9698pub const IFLA_BRPORT_MAB: _bindgen_ty_15 = 40;
9699pub const IFLA_BRPORT_MCAST_N_GROUPS: _bindgen_ty_15 = 41;
9700pub const IFLA_BRPORT_MCAST_MAX_GROUPS: _bindgen_ty_15 = 42;
9701pub const IFLA_BRPORT_NEIGH_VLAN_SUPPRESS: _bindgen_ty_15 = 43;
9702pub const IFLA_BRPORT_BACKUP_NHID: _bindgen_ty_15 = 44;
9703pub const __IFLA_BRPORT_MAX: _bindgen_ty_15 = 45;
9704pub type _bindgen_ty_15 = crate::types::c_uint;
9705#[repr(C)]
9706#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9707pub struct ifla_cacheinfo {
9708    pub max_reasm_len: __u32,
9709    pub tstamp: __u32,
9710    pub reachable_time: __u32,
9711    pub retrans_time: __u32,
9712}
9713pub const IFLA_INFO_UNSPEC: _bindgen_ty_16 = 0;
9714pub const IFLA_INFO_KIND: _bindgen_ty_16 = 1;
9715pub const IFLA_INFO_DATA: _bindgen_ty_16 = 2;
9716pub const IFLA_INFO_XSTATS: _bindgen_ty_16 = 3;
9717pub const IFLA_INFO_SLAVE_KIND: _bindgen_ty_16 = 4;
9718pub const IFLA_INFO_SLAVE_DATA: _bindgen_ty_16 = 5;
9719pub const __IFLA_INFO_MAX: _bindgen_ty_16 = 6;
9720pub type _bindgen_ty_16 = crate::types::c_uint;
9721pub const IFLA_VLAN_UNSPEC: _bindgen_ty_17 = 0;
9722pub const IFLA_VLAN_ID: _bindgen_ty_17 = 1;
9723pub const IFLA_VLAN_FLAGS: _bindgen_ty_17 = 2;
9724pub const IFLA_VLAN_EGRESS_QOS: _bindgen_ty_17 = 3;
9725pub const IFLA_VLAN_INGRESS_QOS: _bindgen_ty_17 = 4;
9726pub const IFLA_VLAN_PROTOCOL: _bindgen_ty_17 = 5;
9727pub const __IFLA_VLAN_MAX: _bindgen_ty_17 = 6;
9728pub type _bindgen_ty_17 = crate::types::c_uint;
9729#[repr(C)]
9730#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9731pub struct ifla_vlan_flags {
9732    pub flags: __u32,
9733    pub mask: __u32,
9734}
9735pub const IFLA_VLAN_QOS_UNSPEC: _bindgen_ty_18 = 0;
9736pub const IFLA_VLAN_QOS_MAPPING: _bindgen_ty_18 = 1;
9737pub const __IFLA_VLAN_QOS_MAX: _bindgen_ty_18 = 2;
9738pub type _bindgen_ty_18 = crate::types::c_uint;
9739#[repr(C)]
9740#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9741pub struct ifla_vlan_qos_mapping {
9742    pub from: __u32,
9743    pub to: __u32,
9744}
9745pub const IFLA_MACVLAN_UNSPEC: _bindgen_ty_19 = 0;
9746pub const IFLA_MACVLAN_MODE: _bindgen_ty_19 = 1;
9747pub const IFLA_MACVLAN_FLAGS: _bindgen_ty_19 = 2;
9748pub const IFLA_MACVLAN_MACADDR_MODE: _bindgen_ty_19 = 3;
9749pub const IFLA_MACVLAN_MACADDR: _bindgen_ty_19 = 4;
9750pub const IFLA_MACVLAN_MACADDR_DATA: _bindgen_ty_19 = 5;
9751pub const IFLA_MACVLAN_MACADDR_COUNT: _bindgen_ty_19 = 6;
9752pub const IFLA_MACVLAN_BC_QUEUE_LEN: _bindgen_ty_19 = 7;
9753pub const IFLA_MACVLAN_BC_QUEUE_LEN_USED: _bindgen_ty_19 = 8;
9754pub const IFLA_MACVLAN_BC_CUTOFF: _bindgen_ty_19 = 9;
9755pub const __IFLA_MACVLAN_MAX: _bindgen_ty_19 = 10;
9756pub type _bindgen_ty_19 = crate::types::c_uint;
9757pub const macvlan_mode_MACVLAN_MODE_PRIVATE: macvlan_mode = 1;
9758pub const macvlan_mode_MACVLAN_MODE_VEPA: macvlan_mode = 2;
9759pub const macvlan_mode_MACVLAN_MODE_BRIDGE: macvlan_mode = 4;
9760pub const macvlan_mode_MACVLAN_MODE_PASSTHRU: macvlan_mode = 8;
9761pub const macvlan_mode_MACVLAN_MODE_SOURCE: macvlan_mode = 16;
9762pub type macvlan_mode = crate::types::c_uint;
9763pub const macvlan_macaddr_mode_MACVLAN_MACADDR_ADD: macvlan_macaddr_mode = 0;
9764pub const macvlan_macaddr_mode_MACVLAN_MACADDR_DEL: macvlan_macaddr_mode = 1;
9765pub const macvlan_macaddr_mode_MACVLAN_MACADDR_FLUSH: macvlan_macaddr_mode = 2;
9766pub const macvlan_macaddr_mode_MACVLAN_MACADDR_SET: macvlan_macaddr_mode = 3;
9767pub type macvlan_macaddr_mode = crate::types::c_uint;
9768pub const IFLA_VRF_UNSPEC: _bindgen_ty_20 = 0;
9769pub const IFLA_VRF_TABLE: _bindgen_ty_20 = 1;
9770pub const __IFLA_VRF_MAX: _bindgen_ty_20 = 2;
9771pub type _bindgen_ty_20 = crate::types::c_uint;
9772pub const IFLA_VRF_PORT_UNSPEC: _bindgen_ty_21 = 0;
9773pub const IFLA_VRF_PORT_TABLE: _bindgen_ty_21 = 1;
9774pub const __IFLA_VRF_PORT_MAX: _bindgen_ty_21 = 2;
9775pub type _bindgen_ty_21 = crate::types::c_uint;
9776pub const IFLA_MACSEC_UNSPEC: _bindgen_ty_22 = 0;
9777pub const IFLA_MACSEC_SCI: _bindgen_ty_22 = 1;
9778pub const IFLA_MACSEC_PORT: _bindgen_ty_22 = 2;
9779pub const IFLA_MACSEC_ICV_LEN: _bindgen_ty_22 = 3;
9780pub const IFLA_MACSEC_CIPHER_SUITE: _bindgen_ty_22 = 4;
9781pub const IFLA_MACSEC_WINDOW: _bindgen_ty_22 = 5;
9782pub const IFLA_MACSEC_ENCODING_SA: _bindgen_ty_22 = 6;
9783pub const IFLA_MACSEC_ENCRYPT: _bindgen_ty_22 = 7;
9784pub const IFLA_MACSEC_PROTECT: _bindgen_ty_22 = 8;
9785pub const IFLA_MACSEC_INC_SCI: _bindgen_ty_22 = 9;
9786pub const IFLA_MACSEC_ES: _bindgen_ty_22 = 10;
9787pub const IFLA_MACSEC_SCB: _bindgen_ty_22 = 11;
9788pub const IFLA_MACSEC_REPLAY_PROTECT: _bindgen_ty_22 = 12;
9789pub const IFLA_MACSEC_VALIDATION: _bindgen_ty_22 = 13;
9790pub const IFLA_MACSEC_PAD: _bindgen_ty_22 = 14;
9791pub const IFLA_MACSEC_OFFLOAD: _bindgen_ty_22 = 15;
9792pub const __IFLA_MACSEC_MAX: _bindgen_ty_22 = 16;
9793pub type _bindgen_ty_22 = crate::types::c_uint;
9794pub const IFLA_XFRM_UNSPEC: _bindgen_ty_23 = 0;
9795pub const IFLA_XFRM_LINK: _bindgen_ty_23 = 1;
9796pub const IFLA_XFRM_IF_ID: _bindgen_ty_23 = 2;
9797pub const IFLA_XFRM_COLLECT_METADATA: _bindgen_ty_23 = 3;
9798pub const __IFLA_XFRM_MAX: _bindgen_ty_23 = 4;
9799pub type _bindgen_ty_23 = crate::types::c_uint;
9800pub const macsec_validation_type_MACSEC_VALIDATE_DISABLED: macsec_validation_type = 0;
9801pub const macsec_validation_type_MACSEC_VALIDATE_CHECK: macsec_validation_type = 1;
9802pub const macsec_validation_type_MACSEC_VALIDATE_STRICT: macsec_validation_type = 2;
9803pub const macsec_validation_type___MACSEC_VALIDATE_END: macsec_validation_type = 3;
9804pub const macsec_validation_type_MACSEC_VALIDATE_MAX: macsec_validation_type = 2;
9805pub type macsec_validation_type = crate::types::c_uint;
9806pub const macsec_offload_MACSEC_OFFLOAD_OFF: macsec_offload = 0;
9807pub const macsec_offload_MACSEC_OFFLOAD_PHY: macsec_offload = 1;
9808pub const macsec_offload_MACSEC_OFFLOAD_MAC: macsec_offload = 2;
9809pub const macsec_offload___MACSEC_OFFLOAD_END: macsec_offload = 3;
9810pub const macsec_offload_MACSEC_OFFLOAD_MAX: macsec_offload = 2;
9811pub type macsec_offload = crate::types::c_uint;
9812pub const IFLA_IPVLAN_UNSPEC: _bindgen_ty_24 = 0;
9813pub const IFLA_IPVLAN_MODE: _bindgen_ty_24 = 1;
9814pub const IFLA_IPVLAN_FLAGS: _bindgen_ty_24 = 2;
9815pub const __IFLA_IPVLAN_MAX: _bindgen_ty_24 = 3;
9816pub type _bindgen_ty_24 = crate::types::c_uint;
9817pub const ipvlan_mode_IPVLAN_MODE_L2: ipvlan_mode = 0;
9818pub const ipvlan_mode_IPVLAN_MODE_L3: ipvlan_mode = 1;
9819pub const ipvlan_mode_IPVLAN_MODE_L3S: ipvlan_mode = 2;
9820pub const ipvlan_mode_IPVLAN_MODE_MAX: ipvlan_mode = 3;
9821pub type ipvlan_mode = crate::types::c_uint;
9822#[repr(C)]
9823#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9824pub struct tunnel_msg {
9825    pub family: __u8,
9826    pub flags: __u8,
9827    pub reserved2: __u16,
9828    pub ifindex: __u32,
9829}
9830pub const netkit_action_NETKIT_NEXT: netkit_action = -1;
9831pub const netkit_action_NETKIT_PASS: netkit_action = 0;
9832pub const netkit_action_NETKIT_DROP: netkit_action = 2;
9833pub const netkit_action_NETKIT_REDIRECT: netkit_action = 7;
9834pub type netkit_action = crate::types::c_int;
9835pub const netkit_mode_NETKIT_L2: netkit_mode = 0;
9836pub const netkit_mode_NETKIT_L3: netkit_mode = 1;
9837pub type netkit_mode = crate::types::c_uint;
9838pub const IFLA_NETKIT_UNSPEC: _bindgen_ty_25 = 0;
9839pub const IFLA_NETKIT_PEER_INFO: _bindgen_ty_25 = 1;
9840pub const IFLA_NETKIT_PRIMARY: _bindgen_ty_25 = 2;
9841pub const IFLA_NETKIT_POLICY: _bindgen_ty_25 = 3;
9842pub const IFLA_NETKIT_PEER_POLICY: _bindgen_ty_25 = 4;
9843pub const IFLA_NETKIT_MODE: _bindgen_ty_25 = 5;
9844pub const __IFLA_NETKIT_MAX: _bindgen_ty_25 = 6;
9845pub type _bindgen_ty_25 = crate::types::c_uint;
9846pub const VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_26 = 0;
9847pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_26 = 1;
9848pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_26 = 2;
9849pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_26 = 3;
9850pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_26 = 4;
9851pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_26 = 5;
9852pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_26 = 6;
9853pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_26 = 7;
9854pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_26 = 8;
9855pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_26 = 9;
9856pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_26 = 10;
9857pub type _bindgen_ty_26 = crate::types::c_uint;
9858pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_27 = 0;
9859pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_27 = 1;
9860pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_27 = 2;
9861pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_27 = 3;
9862pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_27 = 4;
9863pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_27 = 5;
9864pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_27 = 6;
9865pub type _bindgen_ty_27 = crate::types::c_uint;
9866pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_28 = 0;
9867pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_28 = 1;
9868pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_28 = 2;
9869pub type _bindgen_ty_28 = crate::types::c_uint;
9870pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_29 = 0;
9871pub const IFLA_VXLAN_ID: _bindgen_ty_29 = 1;
9872pub const IFLA_VXLAN_GROUP: _bindgen_ty_29 = 2;
9873pub const IFLA_VXLAN_LINK: _bindgen_ty_29 = 3;
9874pub const IFLA_VXLAN_LOCAL: _bindgen_ty_29 = 4;
9875pub const IFLA_VXLAN_TTL: _bindgen_ty_29 = 5;
9876pub const IFLA_VXLAN_TOS: _bindgen_ty_29 = 6;
9877pub const IFLA_VXLAN_LEARNING: _bindgen_ty_29 = 7;
9878pub const IFLA_VXLAN_AGEING: _bindgen_ty_29 = 8;
9879pub const IFLA_VXLAN_LIMIT: _bindgen_ty_29 = 9;
9880pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_29 = 10;
9881pub const IFLA_VXLAN_PROXY: _bindgen_ty_29 = 11;
9882pub const IFLA_VXLAN_RSC: _bindgen_ty_29 = 12;
9883pub const IFLA_VXLAN_L2MISS: _bindgen_ty_29 = 13;
9884pub const IFLA_VXLAN_L3MISS: _bindgen_ty_29 = 14;
9885pub const IFLA_VXLAN_PORT: _bindgen_ty_29 = 15;
9886pub const IFLA_VXLAN_GROUP6: _bindgen_ty_29 = 16;
9887pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_29 = 17;
9888pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_29 = 18;
9889pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_29 = 19;
9890pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_29 = 20;
9891pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_29 = 21;
9892pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_29 = 22;
9893pub const IFLA_VXLAN_GBP: _bindgen_ty_29 = 23;
9894pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_29 = 24;
9895pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_29 = 25;
9896pub const IFLA_VXLAN_LABEL: _bindgen_ty_29 = 26;
9897pub const IFLA_VXLAN_GPE: _bindgen_ty_29 = 27;
9898pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_29 = 28;
9899pub const IFLA_VXLAN_DF: _bindgen_ty_29 = 29;
9900pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_29 = 30;
9901pub const IFLA_VXLAN_LOCALBYPASS: _bindgen_ty_29 = 31;
9902pub const IFLA_VXLAN_LABEL_POLICY: _bindgen_ty_29 = 32;
9903pub const __IFLA_VXLAN_MAX: _bindgen_ty_29 = 33;
9904pub type _bindgen_ty_29 = crate::types::c_uint;
9905#[repr(C)]
9906#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
9907pub struct ifla_vxlan_port_range {
9908    pub low: __be16,
9909    pub high: __be16,
9910}
9911pub const ifla_vxlan_df_VXLAN_DF_UNSET: ifla_vxlan_df = 0;
9912pub const ifla_vxlan_df_VXLAN_DF_SET: ifla_vxlan_df = 1;
9913pub const ifla_vxlan_df_VXLAN_DF_INHERIT: ifla_vxlan_df = 2;
9914pub const ifla_vxlan_df___VXLAN_DF_END: ifla_vxlan_df = 3;
9915pub const ifla_vxlan_df_VXLAN_DF_MAX: ifla_vxlan_df = 2;
9916pub type ifla_vxlan_df = crate::types::c_uint;
9917pub const ifla_vxlan_label_policy_VXLAN_LABEL_FIXED: ifla_vxlan_label_policy = 0;
9918pub const ifla_vxlan_label_policy_VXLAN_LABEL_INHERIT: ifla_vxlan_label_policy = 1;
9919pub const ifla_vxlan_label_policy___VXLAN_LABEL_END: ifla_vxlan_label_policy = 2;
9920pub const ifla_vxlan_label_policy_VXLAN_LABEL_MAX: ifla_vxlan_label_policy = 1;
9921pub type ifla_vxlan_label_policy = crate::types::c_uint;
9922pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_30 = 0;
9923pub const IFLA_GENEVE_ID: _bindgen_ty_30 = 1;
9924pub const IFLA_GENEVE_REMOTE: _bindgen_ty_30 = 2;
9925pub const IFLA_GENEVE_TTL: _bindgen_ty_30 = 3;
9926pub const IFLA_GENEVE_TOS: _bindgen_ty_30 = 4;
9927pub const IFLA_GENEVE_PORT: _bindgen_ty_30 = 5;
9928pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_30 = 6;
9929pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_30 = 7;
9930pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_30 = 8;
9931pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_30 = 9;
9932pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_30 = 10;
9933pub const IFLA_GENEVE_LABEL: _bindgen_ty_30 = 11;
9934pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_30 = 12;
9935pub const IFLA_GENEVE_DF: _bindgen_ty_30 = 13;
9936pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_30 = 14;
9937pub const __IFLA_GENEVE_MAX: _bindgen_ty_30 = 15;
9938pub type _bindgen_ty_30 = crate::types::c_uint;
9939pub const ifla_geneve_df_GENEVE_DF_UNSET: ifla_geneve_df = 0;
9940pub const ifla_geneve_df_GENEVE_DF_SET: ifla_geneve_df = 1;
9941pub const ifla_geneve_df_GENEVE_DF_INHERIT: ifla_geneve_df = 2;
9942pub const ifla_geneve_df___GENEVE_DF_END: ifla_geneve_df = 3;
9943pub const ifla_geneve_df_GENEVE_DF_MAX: ifla_geneve_df = 2;
9944pub type ifla_geneve_df = crate::types::c_uint;
9945pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_31 = 0;
9946pub const IFLA_BAREUDP_PORT: _bindgen_ty_31 = 1;
9947pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_31 = 2;
9948pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_31 = 3;
9949pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_31 = 4;
9950pub const __IFLA_BAREUDP_MAX: _bindgen_ty_31 = 5;
9951pub type _bindgen_ty_31 = crate::types::c_uint;
9952pub const IFLA_PPP_UNSPEC: _bindgen_ty_32 = 0;
9953pub const IFLA_PPP_DEV_FD: _bindgen_ty_32 = 1;
9954pub const __IFLA_PPP_MAX: _bindgen_ty_32 = 2;
9955pub type _bindgen_ty_32 = crate::types::c_uint;
9956pub const ifla_gtp_role_GTP_ROLE_GGSN: ifla_gtp_role = 0;
9957pub const ifla_gtp_role_GTP_ROLE_SGSN: ifla_gtp_role = 1;
9958pub type ifla_gtp_role = crate::types::c_uint;
9959pub const IFLA_GTP_UNSPEC: _bindgen_ty_33 = 0;
9960pub const IFLA_GTP_FD0: _bindgen_ty_33 = 1;
9961pub const IFLA_GTP_FD1: _bindgen_ty_33 = 2;
9962pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_33 = 3;
9963pub const IFLA_GTP_ROLE: _bindgen_ty_33 = 4;
9964pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_33 = 5;
9965pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_33 = 6;
9966pub const IFLA_GTP_LOCAL: _bindgen_ty_33 = 7;
9967pub const IFLA_GTP_LOCAL6: _bindgen_ty_33 = 8;
9968pub const __IFLA_GTP_MAX: _bindgen_ty_33 = 9;
9969pub type _bindgen_ty_33 = crate::types::c_uint;
9970pub const IFLA_BOND_UNSPEC: _bindgen_ty_34 = 0;
9971pub const IFLA_BOND_MODE: _bindgen_ty_34 = 1;
9972pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_34 = 2;
9973pub const IFLA_BOND_MIIMON: _bindgen_ty_34 = 3;
9974pub const IFLA_BOND_UPDELAY: _bindgen_ty_34 = 4;
9975pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_34 = 5;
9976pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_34 = 6;
9977pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_34 = 7;
9978pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_34 = 8;
9979pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_34 = 9;
9980pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_34 = 10;
9981pub const IFLA_BOND_PRIMARY: _bindgen_ty_34 = 11;
9982pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_34 = 12;
9983pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_34 = 13;
9984pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_34 = 14;
9985pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_34 = 15;
9986pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_34 = 16;
9987pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_34 = 17;
9988pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_34 = 18;
9989pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_34 = 19;
9990pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_34 = 20;
9991pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_34 = 21;
9992pub const IFLA_BOND_AD_SELECT: _bindgen_ty_34 = 22;
9993pub const IFLA_BOND_AD_INFO: _bindgen_ty_34 = 23;
9994pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_34 = 24;
9995pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_34 = 25;
9996pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_34 = 26;
9997pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_34 = 27;
9998pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_34 = 28;
9999pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_34 = 29;
10000pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_34 = 30;
10001pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_34 = 31;
10002pub const IFLA_BOND_COUPLED_CONTROL: _bindgen_ty_34 = 32;
10003pub const __IFLA_BOND_MAX: _bindgen_ty_34 = 33;
10004pub type _bindgen_ty_34 = crate::types::c_uint;
10005pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_35 = 0;
10006pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_35 = 1;
10007pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_35 = 2;
10008pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_35 = 3;
10009pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_35 = 4;
10010pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_35 = 5;
10011pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_35 = 6;
10012pub type _bindgen_ty_35 = crate::types::c_uint;
10013pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_36 = 0;
10014pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_36 = 1;
10015pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_36 = 2;
10016pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_36 = 3;
10017pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_36 = 4;
10018pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_36 = 5;
10019pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_36 = 6;
10020pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_36 = 7;
10021pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_36 = 8;
10022pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_36 = 9;
10023pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_36 = 10;
10024pub type _bindgen_ty_36 = crate::types::c_uint;
10025pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_37 = 0;
10026pub const IFLA_VF_INFO: _bindgen_ty_37 = 1;
10027pub const __IFLA_VF_INFO_MAX: _bindgen_ty_37 = 2;
10028pub type _bindgen_ty_37 = crate::types::c_uint;
10029pub const IFLA_VF_UNSPEC: _bindgen_ty_38 = 0;
10030pub const IFLA_VF_MAC: _bindgen_ty_38 = 1;
10031pub const IFLA_VF_VLAN: _bindgen_ty_38 = 2;
10032pub const IFLA_VF_TX_RATE: _bindgen_ty_38 = 3;
10033pub const IFLA_VF_SPOOFCHK: _bindgen_ty_38 = 4;
10034pub const IFLA_VF_LINK_STATE: _bindgen_ty_38 = 5;
10035pub const IFLA_VF_RATE: _bindgen_ty_38 = 6;
10036pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_38 = 7;
10037pub const IFLA_VF_STATS: _bindgen_ty_38 = 8;
10038pub const IFLA_VF_TRUST: _bindgen_ty_38 = 9;
10039pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_38 = 10;
10040pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_38 = 11;
10041pub const IFLA_VF_VLAN_LIST: _bindgen_ty_38 = 12;
10042pub const IFLA_VF_BROADCAST: _bindgen_ty_38 = 13;
10043pub const __IFLA_VF_MAX: _bindgen_ty_38 = 14;
10044pub type _bindgen_ty_38 = crate::types::c_uint;
10045#[repr(C)]
10046#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10047pub struct ifla_vf_mac {
10048    pub vf: __u32,
10049    pub mac: [__u8; 32usize],
10050}
10051#[repr(C)]
10052#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10053pub struct ifla_vf_broadcast {
10054    pub broadcast: [__u8; 32usize],
10055}
10056#[repr(C)]
10057#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10058pub struct ifla_vf_vlan {
10059    pub vf: __u32,
10060    pub vlan: __u32,
10061    pub qos: __u32,
10062}
10063pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_39 = 0;
10064pub const IFLA_VF_VLAN_INFO: _bindgen_ty_39 = 1;
10065pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_39 = 2;
10066pub type _bindgen_ty_39 = crate::types::c_uint;
10067#[repr(C)]
10068#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10069pub struct ifla_vf_vlan_info {
10070    pub vf: __u32,
10071    pub vlan: __u32,
10072    pub qos: __u32,
10073    pub vlan_proto: __be16,
10074    pub __bindgen_padding_0: [u8; 2usize],
10075}
10076#[repr(C)]
10077#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10078pub struct ifla_vf_tx_rate {
10079    pub vf: __u32,
10080    pub rate: __u32,
10081}
10082#[repr(C)]
10083#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10084pub struct ifla_vf_rate {
10085    pub vf: __u32,
10086    pub min_tx_rate: __u32,
10087    pub max_tx_rate: __u32,
10088}
10089#[repr(C)]
10090#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10091pub struct ifla_vf_spoofchk {
10092    pub vf: __u32,
10093    pub setting: __u32,
10094}
10095#[repr(C)]
10096#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10097pub struct ifla_vf_guid {
10098    pub vf: __u32,
10099    pub __bindgen_padding_0: [u8; 4usize],
10100    pub guid: __u64,
10101}
10102pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_40 = 0;
10103pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_40 = 1;
10104pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_40 = 2;
10105pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_40 = 3;
10106pub type _bindgen_ty_40 = crate::types::c_uint;
10107#[repr(C)]
10108#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10109pub struct ifla_vf_link_state {
10110    pub vf: __u32,
10111    pub link_state: __u32,
10112}
10113#[repr(C)]
10114#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10115pub struct ifla_vf_rss_query_en {
10116    pub vf: __u32,
10117    pub setting: __u32,
10118}
10119pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_41 = 0;
10120pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_41 = 1;
10121pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_41 = 2;
10122pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_41 = 3;
10123pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_41 = 4;
10124pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_41 = 5;
10125pub const IFLA_VF_STATS_PAD: _bindgen_ty_41 = 6;
10126pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_41 = 7;
10127pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_41 = 8;
10128pub const __IFLA_VF_STATS_MAX: _bindgen_ty_41 = 9;
10129pub type _bindgen_ty_41 = crate::types::c_uint;
10130#[repr(C)]
10131#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10132pub struct ifla_vf_trust {
10133    pub vf: __u32,
10134    pub setting: __u32,
10135}
10136pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_42 = 0;
10137pub const IFLA_VF_PORT: _bindgen_ty_42 = 1;
10138pub const __IFLA_VF_PORT_MAX: _bindgen_ty_42 = 2;
10139pub type _bindgen_ty_42 = crate::types::c_uint;
10140pub const IFLA_PORT_UNSPEC: _bindgen_ty_43 = 0;
10141pub const IFLA_PORT_VF: _bindgen_ty_43 = 1;
10142pub const IFLA_PORT_PROFILE: _bindgen_ty_43 = 2;
10143pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_43 = 3;
10144pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_43 = 4;
10145pub const IFLA_PORT_HOST_UUID: _bindgen_ty_43 = 5;
10146pub const IFLA_PORT_REQUEST: _bindgen_ty_43 = 6;
10147pub const IFLA_PORT_RESPONSE: _bindgen_ty_43 = 7;
10148pub const __IFLA_PORT_MAX: _bindgen_ty_43 = 8;
10149pub type _bindgen_ty_43 = crate::types::c_uint;
10150pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_44 = 0;
10151pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_44 = 1;
10152pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_44 = 2;
10153pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_44 = 3;
10154pub type _bindgen_ty_44 = crate::types::c_uint;
10155pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_45 = 0;
10156pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_45 = 1;
10157pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_45 = 2;
10158pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_45 = 3;
10159pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_45 = 4;
10160pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_45 = 5;
10161pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_45 = 6;
10162pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_45 = 256;
10163pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_45 = 257;
10164pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_45 = 258;
10165pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_45 = 259;
10166pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_45 = 260;
10167pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_45 = 261;
10168pub type _bindgen_ty_45 = crate::types::c_uint;
10169#[repr(C)]
10170#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10171pub struct ifla_port_vsi {
10172    pub vsi_mgr_id: __u8,
10173    pub vsi_type_id: [__u8; 3usize],
10174    pub vsi_type_version: __u8,
10175    pub pad: [__u8; 3usize],
10176}
10177pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_46 = 0;
10178pub const IFLA_IPOIB_PKEY: _bindgen_ty_46 = 1;
10179pub const IFLA_IPOIB_MODE: _bindgen_ty_46 = 2;
10180pub const IFLA_IPOIB_UMCAST: _bindgen_ty_46 = 3;
10181pub const __IFLA_IPOIB_MAX: _bindgen_ty_46 = 4;
10182pub type _bindgen_ty_46 = crate::types::c_uint;
10183pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_47 = 0;
10184pub const IPOIB_MODE_CONNECTED: _bindgen_ty_47 = 1;
10185pub type _bindgen_ty_47 = crate::types::c_uint;
10186pub const HSR_PROTOCOL_HSR: _bindgen_ty_48 = 0;
10187pub const HSR_PROTOCOL_PRP: _bindgen_ty_48 = 1;
10188pub const HSR_PROTOCOL_MAX: _bindgen_ty_48 = 2;
10189pub type _bindgen_ty_48 = crate::types::c_uint;
10190pub const IFLA_HSR_UNSPEC: _bindgen_ty_49 = 0;
10191pub const IFLA_HSR_SLAVE1: _bindgen_ty_49 = 1;
10192pub const IFLA_HSR_SLAVE2: _bindgen_ty_49 = 2;
10193pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_49 = 3;
10194pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_49 = 4;
10195pub const IFLA_HSR_SEQ_NR: _bindgen_ty_49 = 5;
10196pub const IFLA_HSR_VERSION: _bindgen_ty_49 = 6;
10197pub const IFLA_HSR_PROTOCOL: _bindgen_ty_49 = 7;
10198pub const IFLA_HSR_INTERLINK: _bindgen_ty_49 = 8;
10199pub const __IFLA_HSR_MAX: _bindgen_ty_49 = 9;
10200pub type _bindgen_ty_49 = crate::types::c_uint;
10201#[repr(C)]
10202#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10203pub struct if_stats_msg {
10204    pub family: __u8,
10205    pub pad1: __u8,
10206    pub pad2: __u16,
10207    pub ifindex: __u32,
10208    pub filter_mask: __u32,
10209}
10210pub const IFLA_STATS_UNSPEC: _bindgen_ty_50 = 0;
10211pub const IFLA_STATS_LINK_64: _bindgen_ty_50 = 1;
10212pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_50 = 2;
10213pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_50 = 3;
10214pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_50 = 4;
10215pub const IFLA_STATS_AF_SPEC: _bindgen_ty_50 = 5;
10216pub const __IFLA_STATS_MAX: _bindgen_ty_50 = 6;
10217pub type _bindgen_ty_50 = crate::types::c_uint;
10218pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_51 = 0;
10219pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_51 = 1;
10220pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_51 = 2;
10221pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_51 = 3;
10222pub type _bindgen_ty_51 = crate::types::c_uint;
10223pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_52 = 0;
10224pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_52 = 1;
10225pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_52 = 2;
10226pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_52 = 3;
10227pub type _bindgen_ty_52 = crate::types::c_uint;
10228pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_53 = 0;
10229pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_53 = 1;
10230pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_53 = 2;
10231pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_53 = 3;
10232pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_53 = 4;
10233pub type _bindgen_ty_53 = crate::types::c_uint;
10234pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_54 = 0;
10235pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_54 = 1;
10236pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_54 = 2;
10237pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_54 = 3;
10238pub type _bindgen_ty_54 = crate::types::c_uint;
10239pub const XDP_ATTACHED_NONE: _bindgen_ty_55 = 0;
10240pub const XDP_ATTACHED_DRV: _bindgen_ty_55 = 1;
10241pub const XDP_ATTACHED_SKB: _bindgen_ty_55 = 2;
10242pub const XDP_ATTACHED_HW: _bindgen_ty_55 = 3;
10243pub const XDP_ATTACHED_MULTI: _bindgen_ty_55 = 4;
10244pub type _bindgen_ty_55 = crate::types::c_uint;
10245pub const IFLA_XDP_UNSPEC: _bindgen_ty_56 = 0;
10246pub const IFLA_XDP_FD: _bindgen_ty_56 = 1;
10247pub const IFLA_XDP_ATTACHED: _bindgen_ty_56 = 2;
10248pub const IFLA_XDP_FLAGS: _bindgen_ty_56 = 3;
10249pub const IFLA_XDP_PROG_ID: _bindgen_ty_56 = 4;
10250pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_56 = 5;
10251pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_56 = 6;
10252pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_56 = 7;
10253pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_56 = 8;
10254pub const __IFLA_XDP_MAX: _bindgen_ty_56 = 9;
10255pub type _bindgen_ty_56 = crate::types::c_uint;
10256pub const IFLA_EVENT_NONE: _bindgen_ty_57 = 0;
10257pub const IFLA_EVENT_REBOOT: _bindgen_ty_57 = 1;
10258pub const IFLA_EVENT_FEATURES: _bindgen_ty_57 = 2;
10259pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_57 = 3;
10260pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_57 = 4;
10261pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_57 = 5;
10262pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_57 = 6;
10263pub type _bindgen_ty_57 = crate::types::c_uint;
10264pub const IFLA_TUN_UNSPEC: _bindgen_ty_58 = 0;
10265pub const IFLA_TUN_OWNER: _bindgen_ty_58 = 1;
10266pub const IFLA_TUN_GROUP: _bindgen_ty_58 = 2;
10267pub const IFLA_TUN_TYPE: _bindgen_ty_58 = 3;
10268pub const IFLA_TUN_PI: _bindgen_ty_58 = 4;
10269pub const IFLA_TUN_VNET_HDR: _bindgen_ty_58 = 5;
10270pub const IFLA_TUN_PERSIST: _bindgen_ty_58 = 6;
10271pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_58 = 7;
10272pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_58 = 8;
10273pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_58 = 9;
10274pub const __IFLA_TUN_MAX: _bindgen_ty_58 = 10;
10275pub type _bindgen_ty_58 = crate::types::c_uint;
10276pub const IFLA_RMNET_UNSPEC: _bindgen_ty_59 = 0;
10277pub const IFLA_RMNET_MUX_ID: _bindgen_ty_59 = 1;
10278pub const IFLA_RMNET_FLAGS: _bindgen_ty_59 = 2;
10279pub const __IFLA_RMNET_MAX: _bindgen_ty_59 = 3;
10280pub type _bindgen_ty_59 = crate::types::c_uint;
10281#[repr(C)]
10282#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10283pub struct ifla_rmnet_flags {
10284    pub flags: __u32,
10285    pub mask: __u32,
10286}
10287pub const IFLA_MCTP_UNSPEC: _bindgen_ty_60 = 0;
10288pub const IFLA_MCTP_NET: _bindgen_ty_60 = 1;
10289pub const __IFLA_MCTP_MAX: _bindgen_ty_60 = 2;
10290pub type _bindgen_ty_60 = crate::types::c_uint;
10291pub const IFLA_DSA_UNSPEC: _bindgen_ty_61 = 0;
10292pub const IFLA_DSA_CONDUIT: _bindgen_ty_61 = 1;
10293pub const IFLA_DSA_MASTER: _bindgen_ty_61 = 1;
10294pub const __IFLA_DSA_MAX: _bindgen_ty_61 = 2;
10295pub type _bindgen_ty_61 = crate::types::c_uint;
10296#[repr(C)]
10297#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10298pub struct ifaddrmsg {
10299    pub ifa_family: __u8,
10300    pub ifa_prefixlen: __u8,
10301    pub ifa_flags: __u8,
10302    pub ifa_scope: __u8,
10303    pub ifa_index: __u32,
10304}
10305pub const IFA_UNSPEC: _bindgen_ty_62 = 0;
10306pub const IFA_ADDRESS: _bindgen_ty_62 = 1;
10307pub const IFA_LOCAL: _bindgen_ty_62 = 2;
10308pub const IFA_LABEL: _bindgen_ty_62 = 3;
10309pub const IFA_BROADCAST: _bindgen_ty_62 = 4;
10310pub const IFA_ANYCAST: _bindgen_ty_62 = 5;
10311pub const IFA_CACHEINFO: _bindgen_ty_62 = 6;
10312pub const IFA_MULTICAST: _bindgen_ty_62 = 7;
10313pub const IFA_FLAGS: _bindgen_ty_62 = 8;
10314pub const IFA_RT_PRIORITY: _bindgen_ty_62 = 9;
10315pub const IFA_TARGET_NETNSID: _bindgen_ty_62 = 10;
10316pub const IFA_PROTO: _bindgen_ty_62 = 11;
10317pub const __IFA_MAX: _bindgen_ty_62 = 12;
10318pub type _bindgen_ty_62 = crate::types::c_uint;
10319#[repr(C)]
10320#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10321pub struct ifa_cacheinfo {
10322    pub ifa_prefered: __u32,
10323    pub ifa_valid: __u32,
10324    pub cstamp: __u32,
10325    pub tstamp: __u32,
10326}
10327#[repr(C)]
10328#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10329pub struct ndmsg {
10330    pub ndm_family: __u8,
10331    pub ndm_pad1: __u8,
10332    pub ndm_pad2: __u16,
10333    pub ndm_ifindex: __s32,
10334    pub ndm_state: __u16,
10335    pub ndm_flags: __u8,
10336    pub ndm_type: __u8,
10337}
10338pub const NDA_UNSPEC: _bindgen_ty_63 = 0;
10339pub const NDA_DST: _bindgen_ty_63 = 1;
10340pub const NDA_LLADDR: _bindgen_ty_63 = 2;
10341pub const NDA_CACHEINFO: _bindgen_ty_63 = 3;
10342pub const NDA_PROBES: _bindgen_ty_63 = 4;
10343pub const NDA_VLAN: _bindgen_ty_63 = 5;
10344pub const NDA_PORT: _bindgen_ty_63 = 6;
10345pub const NDA_VNI: _bindgen_ty_63 = 7;
10346pub const NDA_IFINDEX: _bindgen_ty_63 = 8;
10347pub const NDA_MASTER: _bindgen_ty_63 = 9;
10348pub const NDA_LINK_NETNSID: _bindgen_ty_63 = 10;
10349pub const NDA_SRC_VNI: _bindgen_ty_63 = 11;
10350pub const NDA_PROTOCOL: _bindgen_ty_63 = 12;
10351pub const NDA_NH_ID: _bindgen_ty_63 = 13;
10352pub const NDA_FDB_EXT_ATTRS: _bindgen_ty_63 = 14;
10353pub const NDA_FLAGS_EXT: _bindgen_ty_63 = 15;
10354pub const NDA_NDM_STATE_MASK: _bindgen_ty_63 = 16;
10355pub const NDA_NDM_FLAGS_MASK: _bindgen_ty_63 = 17;
10356pub const __NDA_MAX: _bindgen_ty_63 = 18;
10357pub type _bindgen_ty_63 = crate::types::c_uint;
10358#[repr(C)]
10359#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10360pub struct nda_cacheinfo {
10361    pub ndm_confirmed: __u32,
10362    pub ndm_used: __u32,
10363    pub ndm_updated: __u32,
10364    pub ndm_refcnt: __u32,
10365}
10366#[repr(C)]
10367#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10368pub struct ndt_stats {
10369    pub ndts_allocs: __u64,
10370    pub ndts_destroys: __u64,
10371    pub ndts_hash_grows: __u64,
10372    pub ndts_res_failed: __u64,
10373    pub ndts_lookups: __u64,
10374    pub ndts_hits: __u64,
10375    pub ndts_rcv_probes_mcast: __u64,
10376    pub ndts_rcv_probes_ucast: __u64,
10377    pub ndts_periodic_gc_runs: __u64,
10378    pub ndts_forced_gc_runs: __u64,
10379    pub ndts_table_fulls: __u64,
10380}
10381pub const NDTPA_UNSPEC: _bindgen_ty_64 = 0;
10382pub const NDTPA_IFINDEX: _bindgen_ty_64 = 1;
10383pub const NDTPA_REFCNT: _bindgen_ty_64 = 2;
10384pub const NDTPA_REACHABLE_TIME: _bindgen_ty_64 = 3;
10385pub const NDTPA_BASE_REACHABLE_TIME: _bindgen_ty_64 = 4;
10386pub const NDTPA_RETRANS_TIME: _bindgen_ty_64 = 5;
10387pub const NDTPA_GC_STALETIME: _bindgen_ty_64 = 6;
10388pub const NDTPA_DELAY_PROBE_TIME: _bindgen_ty_64 = 7;
10389pub const NDTPA_QUEUE_LEN: _bindgen_ty_64 = 8;
10390pub const NDTPA_APP_PROBES: _bindgen_ty_64 = 9;
10391pub const NDTPA_UCAST_PROBES: _bindgen_ty_64 = 10;
10392pub const NDTPA_MCAST_PROBES: _bindgen_ty_64 = 11;
10393pub const NDTPA_ANYCAST_DELAY: _bindgen_ty_64 = 12;
10394pub const NDTPA_PROXY_DELAY: _bindgen_ty_64 = 13;
10395pub const NDTPA_PROXY_QLEN: _bindgen_ty_64 = 14;
10396pub const NDTPA_LOCKTIME: _bindgen_ty_64 = 15;
10397pub const NDTPA_QUEUE_LENBYTES: _bindgen_ty_64 = 16;
10398pub const NDTPA_MCAST_REPROBES: _bindgen_ty_64 = 17;
10399pub const NDTPA_PAD: _bindgen_ty_64 = 18;
10400pub const NDTPA_INTERVAL_PROBE_TIME_MS: _bindgen_ty_64 = 19;
10401pub const __NDTPA_MAX: _bindgen_ty_64 = 20;
10402pub type _bindgen_ty_64 = crate::types::c_uint;
10403#[repr(C)]
10404#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10405pub struct ndtmsg {
10406    pub ndtm_family: __u8,
10407    pub ndtm_pad1: __u8,
10408    pub ndtm_pad2: __u16,
10409}
10410#[repr(C)]
10411#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10412pub struct ndt_config {
10413    pub ndtc_key_len: __u16,
10414    pub ndtc_entry_size: __u16,
10415    pub ndtc_entries: __u32,
10416    pub ndtc_last_flush: __u32,
10417    pub ndtc_last_rand: __u32,
10418    pub ndtc_hash_rnd: __u32,
10419    pub ndtc_hash_mask: __u32,
10420    pub ndtc_hash_chain_gc: __u32,
10421    pub ndtc_proxy_qlen: __u32,
10422}
10423pub const NDTA_UNSPEC: _bindgen_ty_65 = 0;
10424pub const NDTA_NAME: _bindgen_ty_65 = 1;
10425pub const NDTA_THRESH1: _bindgen_ty_65 = 2;
10426pub const NDTA_THRESH2: _bindgen_ty_65 = 3;
10427pub const NDTA_THRESH3: _bindgen_ty_65 = 4;
10428pub const NDTA_CONFIG: _bindgen_ty_65 = 5;
10429pub const NDTA_PARMS: _bindgen_ty_65 = 6;
10430pub const NDTA_STATS: _bindgen_ty_65 = 7;
10431pub const NDTA_GC_INTERVAL: _bindgen_ty_65 = 8;
10432pub const NDTA_PAD: _bindgen_ty_65 = 9;
10433pub const __NDTA_MAX: _bindgen_ty_65 = 10;
10434pub type _bindgen_ty_65 = crate::types::c_uint;
10435pub const FDB_NOTIFY_BIT: _bindgen_ty_66 = 1;
10436pub const FDB_NOTIFY_INACTIVE_BIT: _bindgen_ty_66 = 2;
10437pub type _bindgen_ty_66 = crate::types::c_uint;
10438pub const NFEA_UNSPEC: _bindgen_ty_67 = 0;
10439pub const NFEA_ACTIVITY_NOTIFY: _bindgen_ty_67 = 1;
10440pub const NFEA_DONT_REFRESH: _bindgen_ty_67 = 2;
10441pub const __NFEA_MAX: _bindgen_ty_67 = 3;
10442pub type _bindgen_ty_67 = crate::types::c_uint;
10443pub const RTM_BASE: _bindgen_ty_68 = 16;
10444pub const RTM_NEWLINK: _bindgen_ty_68 = 16;
10445pub const RTM_DELLINK: _bindgen_ty_68 = 17;
10446pub const RTM_GETLINK: _bindgen_ty_68 = 18;
10447pub const RTM_SETLINK: _bindgen_ty_68 = 19;
10448pub const RTM_NEWADDR: _bindgen_ty_68 = 20;
10449pub const RTM_DELADDR: _bindgen_ty_68 = 21;
10450pub const RTM_GETADDR: _bindgen_ty_68 = 22;
10451pub const RTM_NEWROUTE: _bindgen_ty_68 = 24;
10452pub const RTM_DELROUTE: _bindgen_ty_68 = 25;
10453pub const RTM_GETROUTE: _bindgen_ty_68 = 26;
10454pub const RTM_NEWNEIGH: _bindgen_ty_68 = 28;
10455pub const RTM_DELNEIGH: _bindgen_ty_68 = 29;
10456pub const RTM_GETNEIGH: _bindgen_ty_68 = 30;
10457pub const RTM_NEWRULE: _bindgen_ty_68 = 32;
10458pub const RTM_DELRULE: _bindgen_ty_68 = 33;
10459pub const RTM_GETRULE: _bindgen_ty_68 = 34;
10460pub const RTM_NEWQDISC: _bindgen_ty_68 = 36;
10461pub const RTM_DELQDISC: _bindgen_ty_68 = 37;
10462pub const RTM_GETQDISC: _bindgen_ty_68 = 38;
10463pub const RTM_NEWTCLASS: _bindgen_ty_68 = 40;
10464pub const RTM_DELTCLASS: _bindgen_ty_68 = 41;
10465pub const RTM_GETTCLASS: _bindgen_ty_68 = 42;
10466pub const RTM_NEWTFILTER: _bindgen_ty_68 = 44;
10467pub const RTM_DELTFILTER: _bindgen_ty_68 = 45;
10468pub const RTM_GETTFILTER: _bindgen_ty_68 = 46;
10469pub const RTM_NEWACTION: _bindgen_ty_68 = 48;
10470pub const RTM_DELACTION: _bindgen_ty_68 = 49;
10471pub const RTM_GETACTION: _bindgen_ty_68 = 50;
10472pub const RTM_NEWPREFIX: _bindgen_ty_68 = 52;
10473pub const RTM_GETMULTICAST: _bindgen_ty_68 = 58;
10474pub const RTM_GETANYCAST: _bindgen_ty_68 = 62;
10475pub const RTM_NEWNEIGHTBL: _bindgen_ty_68 = 64;
10476pub const RTM_GETNEIGHTBL: _bindgen_ty_68 = 66;
10477pub const RTM_SETNEIGHTBL: _bindgen_ty_68 = 67;
10478pub const RTM_NEWNDUSEROPT: _bindgen_ty_68 = 68;
10479pub const RTM_NEWADDRLABEL: _bindgen_ty_68 = 72;
10480pub const RTM_DELADDRLABEL: _bindgen_ty_68 = 73;
10481pub const RTM_GETADDRLABEL: _bindgen_ty_68 = 74;
10482pub const RTM_GETDCB: _bindgen_ty_68 = 78;
10483pub const RTM_SETDCB: _bindgen_ty_68 = 79;
10484pub const RTM_NEWNETCONF: _bindgen_ty_68 = 80;
10485pub const RTM_DELNETCONF: _bindgen_ty_68 = 81;
10486pub const RTM_GETNETCONF: _bindgen_ty_68 = 82;
10487pub const RTM_NEWMDB: _bindgen_ty_68 = 84;
10488pub const RTM_DELMDB: _bindgen_ty_68 = 85;
10489pub const RTM_GETMDB: _bindgen_ty_68 = 86;
10490pub const RTM_NEWNSID: _bindgen_ty_68 = 88;
10491pub const RTM_DELNSID: _bindgen_ty_68 = 89;
10492pub const RTM_GETNSID: _bindgen_ty_68 = 90;
10493pub const RTM_NEWSTATS: _bindgen_ty_68 = 92;
10494pub const RTM_GETSTATS: _bindgen_ty_68 = 94;
10495pub const RTM_SETSTATS: _bindgen_ty_68 = 95;
10496pub const RTM_NEWCACHEREPORT: _bindgen_ty_68 = 96;
10497pub const RTM_NEWCHAIN: _bindgen_ty_68 = 100;
10498pub const RTM_DELCHAIN: _bindgen_ty_68 = 101;
10499pub const RTM_GETCHAIN: _bindgen_ty_68 = 102;
10500pub const RTM_NEWNEXTHOP: _bindgen_ty_68 = 104;
10501pub const RTM_DELNEXTHOP: _bindgen_ty_68 = 105;
10502pub const RTM_GETNEXTHOP: _bindgen_ty_68 = 106;
10503pub const RTM_NEWLINKPROP: _bindgen_ty_68 = 108;
10504pub const RTM_DELLINKPROP: _bindgen_ty_68 = 109;
10505pub const RTM_GETLINKPROP: _bindgen_ty_68 = 110;
10506pub const RTM_NEWVLAN: _bindgen_ty_68 = 112;
10507pub const RTM_DELVLAN: _bindgen_ty_68 = 113;
10508pub const RTM_GETVLAN: _bindgen_ty_68 = 114;
10509pub const RTM_NEWNEXTHOPBUCKET: _bindgen_ty_68 = 116;
10510pub const RTM_DELNEXTHOPBUCKET: _bindgen_ty_68 = 117;
10511pub const RTM_GETNEXTHOPBUCKET: _bindgen_ty_68 = 118;
10512pub const RTM_NEWTUNNEL: _bindgen_ty_68 = 120;
10513pub const RTM_DELTUNNEL: _bindgen_ty_68 = 121;
10514pub const RTM_GETTUNNEL: _bindgen_ty_68 = 122;
10515pub const __RTM_MAX: _bindgen_ty_68 = 123;
10516pub type _bindgen_ty_68 = crate::types::c_uint;
10517#[repr(C)]
10518#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10519pub struct rtattr {
10520    pub rta_len: crate::types::c_ushort,
10521    pub rta_type: crate::types::c_ushort,
10522}
10523#[repr(C)]
10524#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10525pub struct rtmsg {
10526    pub rtm_family: crate::types::c_uchar,
10527    pub rtm_dst_len: crate::types::c_uchar,
10528    pub rtm_src_len: crate::types::c_uchar,
10529    pub rtm_tos: crate::types::c_uchar,
10530    pub rtm_table: crate::types::c_uchar,
10531    pub rtm_protocol: crate::types::c_uchar,
10532    pub rtm_scope: crate::types::c_uchar,
10533    pub rtm_type: crate::types::c_uchar,
10534    pub rtm_flags: crate::types::c_uint,
10535}
10536pub const RTN_UNSPEC: _bindgen_ty_69 = 0;
10537pub const RTN_UNICAST: _bindgen_ty_69 = 1;
10538pub const RTN_LOCAL: _bindgen_ty_69 = 2;
10539pub const RTN_BROADCAST: _bindgen_ty_69 = 3;
10540pub const RTN_ANYCAST: _bindgen_ty_69 = 4;
10541pub const RTN_MULTICAST: _bindgen_ty_69 = 5;
10542pub const RTN_BLACKHOLE: _bindgen_ty_69 = 6;
10543pub const RTN_UNREACHABLE: _bindgen_ty_69 = 7;
10544pub const RTN_PROHIBIT: _bindgen_ty_69 = 8;
10545pub const RTN_THROW: _bindgen_ty_69 = 9;
10546pub const RTN_NAT: _bindgen_ty_69 = 10;
10547pub const RTN_XRESOLVE: _bindgen_ty_69 = 11;
10548pub const __RTN_MAX: _bindgen_ty_69 = 12;
10549pub type _bindgen_ty_69 = crate::types::c_uint;
10550pub const rt_scope_t_RT_SCOPE_UNIVERSE: rt_scope_t = 0;
10551pub const rt_scope_t_RT_SCOPE_SITE: rt_scope_t = 200;
10552pub const rt_scope_t_RT_SCOPE_LINK: rt_scope_t = 253;
10553pub const rt_scope_t_RT_SCOPE_HOST: rt_scope_t = 254;
10554pub const rt_scope_t_RT_SCOPE_NOWHERE: rt_scope_t = 255;
10555pub type rt_scope_t = crate::types::c_uint;
10556pub const rt_class_t_RT_TABLE_UNSPEC: rt_class_t = 0;
10557pub const rt_class_t_RT_TABLE_COMPAT: rt_class_t = 252;
10558pub const rt_class_t_RT_TABLE_DEFAULT: rt_class_t = 253;
10559pub const rt_class_t_RT_TABLE_MAIN: rt_class_t = 254;
10560pub const rt_class_t_RT_TABLE_LOCAL: rt_class_t = 255;
10561pub const rt_class_t_RT_TABLE_MAX: rt_class_t = 4294967295;
10562pub type rt_class_t = crate::types::c_uint;
10563pub const rtattr_type_t_RTA_UNSPEC: rtattr_type_t = 0;
10564pub const rtattr_type_t_RTA_DST: rtattr_type_t = 1;
10565pub const rtattr_type_t_RTA_SRC: rtattr_type_t = 2;
10566pub const rtattr_type_t_RTA_IIF: rtattr_type_t = 3;
10567pub const rtattr_type_t_RTA_OIF: rtattr_type_t = 4;
10568pub const rtattr_type_t_RTA_GATEWAY: rtattr_type_t = 5;
10569pub const rtattr_type_t_RTA_PRIORITY: rtattr_type_t = 6;
10570pub const rtattr_type_t_RTA_PREFSRC: rtattr_type_t = 7;
10571pub const rtattr_type_t_RTA_METRICS: rtattr_type_t = 8;
10572pub const rtattr_type_t_RTA_MULTIPATH: rtattr_type_t = 9;
10573pub const rtattr_type_t_RTA_PROTOINFO: rtattr_type_t = 10;
10574pub const rtattr_type_t_RTA_FLOW: rtattr_type_t = 11;
10575pub const rtattr_type_t_RTA_CACHEINFO: rtattr_type_t = 12;
10576pub const rtattr_type_t_RTA_SESSION: rtattr_type_t = 13;
10577pub const rtattr_type_t_RTA_MP_ALGO: rtattr_type_t = 14;
10578pub const rtattr_type_t_RTA_TABLE: rtattr_type_t = 15;
10579pub const rtattr_type_t_RTA_MARK: rtattr_type_t = 16;
10580pub const rtattr_type_t_RTA_MFC_STATS: rtattr_type_t = 17;
10581pub const rtattr_type_t_RTA_VIA: rtattr_type_t = 18;
10582pub const rtattr_type_t_RTA_NEWDST: rtattr_type_t = 19;
10583pub const rtattr_type_t_RTA_PREF: rtattr_type_t = 20;
10584pub const rtattr_type_t_RTA_ENCAP_TYPE: rtattr_type_t = 21;
10585pub const rtattr_type_t_RTA_ENCAP: rtattr_type_t = 22;
10586pub const rtattr_type_t_RTA_EXPIRES: rtattr_type_t = 23;
10587pub const rtattr_type_t_RTA_PAD: rtattr_type_t = 24;
10588pub const rtattr_type_t_RTA_UID: rtattr_type_t = 25;
10589pub const rtattr_type_t_RTA_TTL_PROPAGATE: rtattr_type_t = 26;
10590pub const rtattr_type_t_RTA_IP_PROTO: rtattr_type_t = 27;
10591pub const rtattr_type_t_RTA_SPORT: rtattr_type_t = 28;
10592pub const rtattr_type_t_RTA_DPORT: rtattr_type_t = 29;
10593pub const rtattr_type_t_RTA_NH_ID: rtattr_type_t = 30;
10594pub const rtattr_type_t___RTA_MAX: rtattr_type_t = 31;
10595pub type rtattr_type_t = crate::types::c_uint;
10596#[repr(C)]
10597#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10598pub struct rtnexthop {
10599    pub rtnh_len: crate::types::c_ushort,
10600    pub rtnh_flags: crate::types::c_uchar,
10601    pub rtnh_hops: crate::types::c_uchar,
10602    pub rtnh_ifindex: crate::types::c_int,
10603}
10604#[repr(C)]
10605#[derive(Debug, Default)]
10606pub struct rtvia {
10607    pub rtvia_family: __kernel_sa_family_t,
10608    pub rtvia_addr: __IncompleteArrayField<__u8>,
10609}
10610#[repr(C)]
10611#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10612pub struct rta_cacheinfo {
10613    pub rta_clntref: __u32,
10614    pub rta_lastuse: __u32,
10615    pub rta_expires: __s32,
10616    pub rta_error: __u32,
10617    pub rta_used: __u32,
10618    pub rta_id: __u32,
10619    pub rta_ts: __u32,
10620    pub rta_tsage: __u32,
10621}
10622pub const RTAX_UNSPEC: _bindgen_ty_70 = 0;
10623pub const RTAX_LOCK: _bindgen_ty_70 = 1;
10624pub const RTAX_MTU: _bindgen_ty_70 = 2;
10625pub const RTAX_WINDOW: _bindgen_ty_70 = 3;
10626pub const RTAX_RTT: _bindgen_ty_70 = 4;
10627pub const RTAX_RTTVAR: _bindgen_ty_70 = 5;
10628pub const RTAX_SSTHRESH: _bindgen_ty_70 = 6;
10629pub const RTAX_CWND: _bindgen_ty_70 = 7;
10630pub const RTAX_ADVMSS: _bindgen_ty_70 = 8;
10631pub const RTAX_REORDERING: _bindgen_ty_70 = 9;
10632pub const RTAX_HOPLIMIT: _bindgen_ty_70 = 10;
10633pub const RTAX_INITCWND: _bindgen_ty_70 = 11;
10634pub const RTAX_FEATURES: _bindgen_ty_70 = 12;
10635pub const RTAX_RTO_MIN: _bindgen_ty_70 = 13;
10636pub const RTAX_INITRWND: _bindgen_ty_70 = 14;
10637pub const RTAX_QUICKACK: _bindgen_ty_70 = 15;
10638pub const RTAX_CC_ALGO: _bindgen_ty_70 = 16;
10639pub const RTAX_FASTOPEN_NO_COOKIE: _bindgen_ty_70 = 17;
10640pub const __RTAX_MAX: _bindgen_ty_70 = 18;
10641pub type _bindgen_ty_70 = crate::types::c_uint;
10642#[repr(C)]
10643#[derive(Copy, Clone)]
10644pub struct rta_session {
10645    pub proto: __u8,
10646    pub pad1: __u8,
10647    pub pad2: __u16,
10648    pub u: rta_session__bindgen_ty_1,
10649}
10650#[repr(C)]
10651#[derive(Copy, Clone)]
10652pub union rta_session__bindgen_ty_1 {
10653    pub ports: rta_session__bindgen_ty_1__bindgen_ty_1,
10654    pub icmpt: rta_session__bindgen_ty_1__bindgen_ty_2,
10655    pub spi: __u32,
10656}
10657#[repr(C)]
10658#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10659pub struct rta_session__bindgen_ty_1__bindgen_ty_1 {
10660    pub sport: __u16,
10661    pub dport: __u16,
10662}
10663#[repr(C)]
10664#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10665pub struct rta_session__bindgen_ty_1__bindgen_ty_2 {
10666    pub type_: __u8,
10667    pub code: __u8,
10668    pub ident: __u16,
10669}
10670impl Default for rta_session__bindgen_ty_1 {
10671    fn default() -> Self {
10672        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10673        unsafe {
10674            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10675            s.assume_init()
10676        }
10677    }
10678}
10679impl Default for rta_session {
10680    fn default() -> Self {
10681        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10682        unsafe {
10683            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10684            s.assume_init()
10685        }
10686    }
10687}
10688#[repr(C)]
10689#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10690pub struct rta_mfc_stats {
10691    pub mfcs_packets: __u64,
10692    pub mfcs_bytes: __u64,
10693    pub mfcs_wrong_if: __u64,
10694}
10695#[repr(C)]
10696#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10697pub struct rtgenmsg {
10698    pub rtgen_family: crate::types::c_uchar,
10699}
10700#[repr(C)]
10701#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10702pub struct ifinfomsg {
10703    pub ifi_family: crate::types::c_uchar,
10704    pub __ifi_pad: crate::types::c_uchar,
10705    pub ifi_type: crate::types::c_ushort,
10706    pub ifi_index: crate::types::c_int,
10707    pub ifi_flags: crate::types::c_uint,
10708    pub ifi_change: crate::types::c_uint,
10709}
10710#[repr(C)]
10711#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10712pub struct prefixmsg {
10713    pub prefix_family: crate::types::c_uchar,
10714    pub prefix_pad1: crate::types::c_uchar,
10715    pub prefix_pad2: crate::types::c_ushort,
10716    pub prefix_ifindex: crate::types::c_int,
10717    pub prefix_type: crate::types::c_uchar,
10718    pub prefix_len: crate::types::c_uchar,
10719    pub prefix_flags: crate::types::c_uchar,
10720    pub prefix_pad3: crate::types::c_uchar,
10721}
10722pub const PREFIX_UNSPEC: _bindgen_ty_71 = 0;
10723pub const PREFIX_ADDRESS: _bindgen_ty_71 = 1;
10724pub const PREFIX_CACHEINFO: _bindgen_ty_71 = 2;
10725pub const __PREFIX_MAX: _bindgen_ty_71 = 3;
10726pub type _bindgen_ty_71 = crate::types::c_uint;
10727#[repr(C)]
10728#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10729pub struct prefix_cacheinfo {
10730    pub preferred_time: __u32,
10731    pub valid_time: __u32,
10732}
10733#[repr(C)]
10734#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10735pub struct tcmsg {
10736    pub tcm_family: crate::types::c_uchar,
10737    pub tcm__pad1: crate::types::c_uchar,
10738    pub tcm__pad2: crate::types::c_ushort,
10739    pub tcm_ifindex: crate::types::c_int,
10740    pub tcm_handle: __u32,
10741    pub tcm_parent: __u32,
10742    pub tcm_info: __u32,
10743}
10744pub const TCA_UNSPEC: _bindgen_ty_72 = 0;
10745pub const TCA_KIND: _bindgen_ty_72 = 1;
10746pub const TCA_OPTIONS: _bindgen_ty_72 = 2;
10747pub const TCA_STATS: _bindgen_ty_72 = 3;
10748pub const TCA_XSTATS: _bindgen_ty_72 = 4;
10749pub const TCA_RATE: _bindgen_ty_72 = 5;
10750pub const TCA_FCNT: _bindgen_ty_72 = 6;
10751pub const TCA_STATS2: _bindgen_ty_72 = 7;
10752pub const TCA_STAB: _bindgen_ty_72 = 8;
10753pub const TCA_PAD: _bindgen_ty_72 = 9;
10754pub const TCA_DUMP_INVISIBLE: _bindgen_ty_72 = 10;
10755pub const TCA_CHAIN: _bindgen_ty_72 = 11;
10756pub const TCA_HW_OFFLOAD: _bindgen_ty_72 = 12;
10757pub const TCA_INGRESS_BLOCK: _bindgen_ty_72 = 13;
10758pub const TCA_EGRESS_BLOCK: _bindgen_ty_72 = 14;
10759pub const TCA_DUMP_FLAGS: _bindgen_ty_72 = 15;
10760pub const TCA_EXT_WARN_MSG: _bindgen_ty_72 = 16;
10761pub const __TCA_MAX: _bindgen_ty_72 = 17;
10762pub type _bindgen_ty_72 = crate::types::c_uint;
10763#[repr(C)]
10764#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10765pub struct nduseroptmsg {
10766    pub nduseropt_family: crate::types::c_uchar,
10767    pub nduseropt_pad1: crate::types::c_uchar,
10768    pub nduseropt_opts_len: crate::types::c_ushort,
10769    pub nduseropt_ifindex: crate::types::c_int,
10770    pub nduseropt_icmp_type: __u8,
10771    pub nduseropt_icmp_code: __u8,
10772    pub nduseropt_pad2: crate::types::c_ushort,
10773    pub nduseropt_pad3: crate::types::c_uint,
10774}
10775pub const NDUSEROPT_UNSPEC: _bindgen_ty_73 = 0;
10776pub const NDUSEROPT_SRCADDR: _bindgen_ty_73 = 1;
10777pub const __NDUSEROPT_MAX: _bindgen_ty_73 = 2;
10778pub type _bindgen_ty_73 = crate::types::c_uint;
10779pub const rtnetlink_groups_RTNLGRP_NONE: rtnetlink_groups = 0;
10780pub const rtnetlink_groups_RTNLGRP_LINK: rtnetlink_groups = 1;
10781pub const rtnetlink_groups_RTNLGRP_NOTIFY: rtnetlink_groups = 2;
10782pub const rtnetlink_groups_RTNLGRP_NEIGH: rtnetlink_groups = 3;
10783pub const rtnetlink_groups_RTNLGRP_TC: rtnetlink_groups = 4;
10784pub const rtnetlink_groups_RTNLGRP_IPV4_IFADDR: rtnetlink_groups = 5;
10785pub const rtnetlink_groups_RTNLGRP_IPV4_MROUTE: rtnetlink_groups = 6;
10786pub const rtnetlink_groups_RTNLGRP_IPV4_ROUTE: rtnetlink_groups = 7;
10787pub const rtnetlink_groups_RTNLGRP_IPV4_RULE: rtnetlink_groups = 8;
10788pub const rtnetlink_groups_RTNLGRP_IPV6_IFADDR: rtnetlink_groups = 9;
10789pub const rtnetlink_groups_RTNLGRP_IPV6_MROUTE: rtnetlink_groups = 10;
10790pub const rtnetlink_groups_RTNLGRP_IPV6_ROUTE: rtnetlink_groups = 11;
10791pub const rtnetlink_groups_RTNLGRP_IPV6_IFINFO: rtnetlink_groups = 12;
10792pub const rtnetlink_groups_RTNLGRP_DECnet_IFADDR: rtnetlink_groups = 13;
10793pub const rtnetlink_groups_RTNLGRP_NOP2: rtnetlink_groups = 14;
10794pub const rtnetlink_groups_RTNLGRP_DECnet_ROUTE: rtnetlink_groups = 15;
10795pub const rtnetlink_groups_RTNLGRP_DECnet_RULE: rtnetlink_groups = 16;
10796pub const rtnetlink_groups_RTNLGRP_NOP4: rtnetlink_groups = 17;
10797pub const rtnetlink_groups_RTNLGRP_IPV6_PREFIX: rtnetlink_groups = 18;
10798pub const rtnetlink_groups_RTNLGRP_IPV6_RULE: rtnetlink_groups = 19;
10799pub const rtnetlink_groups_RTNLGRP_ND_USEROPT: rtnetlink_groups = 20;
10800pub const rtnetlink_groups_RTNLGRP_PHONET_IFADDR: rtnetlink_groups = 21;
10801pub const rtnetlink_groups_RTNLGRP_PHONET_ROUTE: rtnetlink_groups = 22;
10802pub const rtnetlink_groups_RTNLGRP_DCB: rtnetlink_groups = 23;
10803pub const rtnetlink_groups_RTNLGRP_IPV4_NETCONF: rtnetlink_groups = 24;
10804pub const rtnetlink_groups_RTNLGRP_IPV6_NETCONF: rtnetlink_groups = 25;
10805pub const rtnetlink_groups_RTNLGRP_MDB: rtnetlink_groups = 26;
10806pub const rtnetlink_groups_RTNLGRP_MPLS_ROUTE: rtnetlink_groups = 27;
10807pub const rtnetlink_groups_RTNLGRP_NSID: rtnetlink_groups = 28;
10808pub const rtnetlink_groups_RTNLGRP_MPLS_NETCONF: rtnetlink_groups = 29;
10809pub const rtnetlink_groups_RTNLGRP_IPV4_MROUTE_R: rtnetlink_groups = 30;
10810pub const rtnetlink_groups_RTNLGRP_IPV6_MROUTE_R: rtnetlink_groups = 31;
10811pub const rtnetlink_groups_RTNLGRP_NEXTHOP: rtnetlink_groups = 32;
10812pub const rtnetlink_groups_RTNLGRP_BRVLAN: rtnetlink_groups = 33;
10813pub const rtnetlink_groups_RTNLGRP_MCTP_IFADDR: rtnetlink_groups = 34;
10814pub const rtnetlink_groups_RTNLGRP_TUNNEL: rtnetlink_groups = 35;
10815pub const rtnetlink_groups_RTNLGRP_STATS: rtnetlink_groups = 36;
10816pub const rtnetlink_groups___RTNLGRP_MAX: rtnetlink_groups = 37;
10817pub type rtnetlink_groups = crate::types::c_uint;
10818#[repr(C)]
10819#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10820pub struct tcamsg {
10821    pub tca_family: crate::types::c_uchar,
10822    pub tca__pad1: crate::types::c_uchar,
10823    pub tca__pad2: crate::types::c_ushort,
10824}
10825pub const TCA_ROOT_UNSPEC: _bindgen_ty_74 = 0;
10826pub const TCA_ROOT_TAB: _bindgen_ty_74 = 1;
10827pub const TCA_ROOT_FLAGS: _bindgen_ty_74 = 2;
10828pub const TCA_ROOT_COUNT: _bindgen_ty_74 = 3;
10829pub const TCA_ROOT_TIME_DELTA: _bindgen_ty_74 = 4;
10830pub const TCA_ROOT_EXT_WARN_MSG: _bindgen_ty_74 = 5;
10831pub const __TCA_ROOT_MAX: _bindgen_ty_74 = 6;
10832pub type _bindgen_ty_74 = crate::types::c_uint;
10833#[repr(C)]
10834#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10835pub struct fib_rule_hdr {
10836    pub family: __u8,
10837    pub dst_len: __u8,
10838    pub src_len: __u8,
10839    pub tos: __u8,
10840    pub table: __u8,
10841    pub res1: __u8,
10842    pub res2: __u8,
10843    pub action: __u8,
10844    pub flags: __u32,
10845}
10846#[repr(C)]
10847#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10848pub struct fib_rule_uid_range {
10849    pub start: __u32,
10850    pub end: __u32,
10851}
10852#[repr(C)]
10853#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10854pub struct fib_rule_port_range {
10855    pub start: __u16,
10856    pub end: __u16,
10857}
10858pub const FRA_UNSPEC: _bindgen_ty_75 = 0;
10859pub const FRA_DST: _bindgen_ty_75 = 1;
10860pub const FRA_SRC: _bindgen_ty_75 = 2;
10861pub const FRA_IIFNAME: _bindgen_ty_75 = 3;
10862pub const FRA_GOTO: _bindgen_ty_75 = 4;
10863pub const FRA_UNUSED2: _bindgen_ty_75 = 5;
10864pub const FRA_PRIORITY: _bindgen_ty_75 = 6;
10865pub const FRA_UNUSED3: _bindgen_ty_75 = 7;
10866pub const FRA_UNUSED4: _bindgen_ty_75 = 8;
10867pub const FRA_UNUSED5: _bindgen_ty_75 = 9;
10868pub const FRA_FWMARK: _bindgen_ty_75 = 10;
10869pub const FRA_FLOW: _bindgen_ty_75 = 11;
10870pub const FRA_TUN_ID: _bindgen_ty_75 = 12;
10871pub const FRA_SUPPRESS_IFGROUP: _bindgen_ty_75 = 13;
10872pub const FRA_SUPPRESS_PREFIXLEN: _bindgen_ty_75 = 14;
10873pub const FRA_TABLE: _bindgen_ty_75 = 15;
10874pub const FRA_FWMASK: _bindgen_ty_75 = 16;
10875pub const FRA_OIFNAME: _bindgen_ty_75 = 17;
10876pub const FRA_PAD: _bindgen_ty_75 = 18;
10877pub const FRA_L3MDEV: _bindgen_ty_75 = 19;
10878pub const FRA_UID_RANGE: _bindgen_ty_75 = 20;
10879pub const FRA_PROTOCOL: _bindgen_ty_75 = 21;
10880pub const FRA_IP_PROTO: _bindgen_ty_75 = 22;
10881pub const FRA_SPORT_RANGE: _bindgen_ty_75 = 23;
10882pub const FRA_DPORT_RANGE: _bindgen_ty_75 = 24;
10883pub const FRA_DSCP: _bindgen_ty_75 = 25;
10884pub const __FRA_MAX: _bindgen_ty_75 = 26;
10885pub type _bindgen_ty_75 = crate::types::c_uint;
10886pub const FR_ACT_UNSPEC: _bindgen_ty_76 = 0;
10887pub const FR_ACT_TO_TBL: _bindgen_ty_76 = 1;
10888pub const FR_ACT_GOTO: _bindgen_ty_76 = 2;
10889pub const FR_ACT_NOP: _bindgen_ty_76 = 3;
10890pub const FR_ACT_RES3: _bindgen_ty_76 = 4;
10891pub const FR_ACT_RES4: _bindgen_ty_76 = 5;
10892pub const FR_ACT_BLACKHOLE: _bindgen_ty_76 = 6;
10893pub const FR_ACT_UNREACHABLE: _bindgen_ty_76 = 7;
10894pub const FR_ACT_PROHIBIT: _bindgen_ty_76 = 8;
10895pub const __FR_ACT_MAX: _bindgen_ty_76 = 9;
10896pub type _bindgen_ty_76 = crate::types::c_uint;
10897#[repr(C)]
10898#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10899pub struct sock_filter {
10900    pub code: __u16,
10901    pub jt: __u8,
10902    pub jf: __u8,
10903    pub k: __u32,
10904}
10905#[repr(C)]
10906#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10907pub struct sock_fprog {
10908    pub len: crate::types::c_ushort,
10909    pub __bindgen_padding_0: [u8; 6usize],
10910    pub filter: uref<sock_filter>,
10911}
10912impl Default for sock_fprog {
10913    fn default() -> Self {
10914        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10915        unsafe {
10916            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10917            s.assume_init()
10918        }
10919    }
10920}
10921#[repr(C)]
10922#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10923pub struct fsverity_enable_arg {
10924    pub version: __u32,
10925    pub hash_algorithm: __u32,
10926    pub block_size: __u32,
10927    pub salt_size: __u32,
10928    pub salt_ptr: __u64,
10929    pub sig_size: __u32,
10930    pub __reserved1: __u32,
10931    pub sig_ptr: __u64,
10932    pub __reserved2: [__u64; 11usize],
10933}
10934#[repr(C)]
10935#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
10936pub struct fsverity_digest {
10937    pub digest_algorithm: __u16,
10938    pub digest_size: __u16,
10939    pub digest: __IncompleteArrayField<__u8>,
10940}
10941#[repr(C)]
10942#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10943pub struct fsverity_descriptor {
10944    pub version: __u8,
10945    pub hash_algorithm: __u8,
10946    pub log_blocksize: __u8,
10947    pub salt_size: __u8,
10948    pub __reserved_0x04: __le32,
10949    pub data_size: __le64,
10950    pub root_hash: [__u8; 64usize],
10951    pub salt: [__u8; 32usize],
10952    pub __reserved: [__u8; 144usize],
10953}
10954impl Default for fsverity_descriptor {
10955    fn default() -> Self {
10956        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10957        unsafe {
10958            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10959            s.assume_init()
10960        }
10961    }
10962}
10963#[repr(C)]
10964#[derive(Debug, Default)]
10965pub struct fsverity_formatted_digest {
10966    pub magic: [crate::types::c_char; 8usize],
10967    pub digest_algorithm: __le16,
10968    pub digest_size: __le16,
10969    pub digest: __IncompleteArrayField<__u8>,
10970}
10971#[repr(C)]
10972#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10973pub struct fsverity_read_metadata_arg {
10974    pub metadata_type: __u64,
10975    pub offset: __u64,
10976    pub length: __u64,
10977    pub buf_ptr: __u64,
10978    pub __reserved: __u64,
10979}
10980#[repr(C)]
10981#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
10982pub struct futex_waitv {
10983    pub val: __u64,
10984    pub uaddr: __u64,
10985    pub flags: __u32,
10986    pub __reserved: __u32,
10987}
10988#[repr(C)]
10989#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
10990pub struct robust_list {
10991    pub next: uref<robust_list>,
10992}
10993impl Default for robust_list {
10994    fn default() -> Self {
10995        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10996        unsafe {
10997            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10998            s.assume_init()
10999        }
11000    }
11001}
11002#[repr(C)]
11003#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
11004pub struct robust_list_head {
11005    pub list: robust_list,
11006    pub futex_offset: crate::types::c_long,
11007    pub list_op_pending: uref<robust_list>,
11008}
11009impl Default for robust_list_head {
11010    fn default() -> Self {
11011        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11012        unsafe {
11013            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11014            s.assume_init()
11015        }
11016    }
11017}
11018#[repr(C)]
11019#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11020pub struct sync_serial_settings {
11021    pub clock_rate: crate::types::c_uint,
11022    pub clock_type: crate::types::c_uint,
11023    pub loopback: crate::types::c_ushort,
11024    pub __bindgen_padding_0: [u8; 2usize],
11025}
11026#[repr(C)]
11027#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11028pub struct te1_settings {
11029    pub clock_rate: crate::types::c_uint,
11030    pub clock_type: crate::types::c_uint,
11031    pub loopback: crate::types::c_ushort,
11032    pub __bindgen_padding_0: [u8; 2usize],
11033    pub slot_map: crate::types::c_uint,
11034}
11035#[repr(C)]
11036#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11037pub struct raw_hdlc_proto {
11038    pub encoding: crate::types::c_ushort,
11039    pub parity: crate::types::c_ushort,
11040}
11041#[repr(C)]
11042#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11043pub struct fr_proto {
11044    pub t391: crate::types::c_uint,
11045    pub t392: crate::types::c_uint,
11046    pub n391: crate::types::c_uint,
11047    pub n392: crate::types::c_uint,
11048    pub n393: crate::types::c_uint,
11049    pub lmi: crate::types::c_ushort,
11050    pub dce: crate::types::c_ushort,
11051}
11052#[repr(C)]
11053#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11054pub struct fr_proto_pvc {
11055    pub dlci: crate::types::c_uint,
11056}
11057#[repr(C)]
11058#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11059pub struct fr_proto_pvc_info {
11060    pub dlci: crate::types::c_uint,
11061    pub master: [crate::types::c_char; 16usize],
11062}
11063#[repr(C)]
11064#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11065pub struct cisco_proto {
11066    pub interval: crate::types::c_uint,
11067    pub timeout: crate::types::c_uint,
11068}
11069#[repr(C)]
11070#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11071pub struct x25_hdlc_proto {
11072    pub dce: crate::types::c_ushort,
11073    pub __bindgen_padding_0: [u8; 2usize],
11074    pub modulo: crate::types::c_uint,
11075    pub window: crate::types::c_uint,
11076    pub t1: crate::types::c_uint,
11077    pub t2: crate::types::c_uint,
11078    pub n2: crate::types::c_uint,
11079}
11080pub const net_device_flags_IFF_UP: net_device_flags = 1;
11081pub const net_device_flags_IFF_BROADCAST: net_device_flags = 2;
11082pub const net_device_flags_IFF_DEBUG: net_device_flags = 4;
11083pub const net_device_flags_IFF_LOOPBACK: net_device_flags = 8;
11084pub const net_device_flags_IFF_POINTOPOINT: net_device_flags = 16;
11085pub const net_device_flags_IFF_NOTRAILERS: net_device_flags = 32;
11086pub const net_device_flags_IFF_RUNNING: net_device_flags = 64;
11087pub const net_device_flags_IFF_NOARP: net_device_flags = 128;
11088pub const net_device_flags_IFF_PROMISC: net_device_flags = 256;
11089pub const net_device_flags_IFF_ALLMULTI: net_device_flags = 512;
11090pub const net_device_flags_IFF_MASTER: net_device_flags = 1024;
11091pub const net_device_flags_IFF_SLAVE: net_device_flags = 2048;
11092pub const net_device_flags_IFF_MULTICAST: net_device_flags = 4096;
11093pub const net_device_flags_IFF_PORTSEL: net_device_flags = 8192;
11094pub const net_device_flags_IFF_AUTOMEDIA: net_device_flags = 16384;
11095pub const net_device_flags_IFF_DYNAMIC: net_device_flags = 32768;
11096pub const net_device_flags_IFF_LOWER_UP: net_device_flags = 65536;
11097pub const net_device_flags_IFF_DORMANT: net_device_flags = 131072;
11098pub const net_device_flags_IFF_ECHO: net_device_flags = 262144;
11099pub type net_device_flags = crate::types::c_uint;
11100pub const IF_OPER_UNKNOWN: _bindgen_ty_77 = 0;
11101pub const IF_OPER_NOTPRESENT: _bindgen_ty_77 = 1;
11102pub const IF_OPER_DOWN: _bindgen_ty_77 = 2;
11103pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_77 = 3;
11104pub const IF_OPER_TESTING: _bindgen_ty_77 = 4;
11105pub const IF_OPER_DORMANT: _bindgen_ty_77 = 5;
11106pub const IF_OPER_UP: _bindgen_ty_77 = 6;
11107pub type _bindgen_ty_77 = crate::types::c_uint;
11108pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_78 = 0;
11109pub const IF_LINK_MODE_DORMANT: _bindgen_ty_78 = 1;
11110pub const IF_LINK_MODE_TESTING: _bindgen_ty_78 = 2;
11111pub type _bindgen_ty_78 = crate::types::c_uint;
11112#[repr(C)]
11113#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11114pub struct ifmap {
11115    pub mem_start: crate::types::c_ulong,
11116    pub mem_end: crate::types::c_ulong,
11117    pub base_addr: crate::types::c_ushort,
11118    pub irq: crate::types::c_uchar,
11119    pub dma: crate::types::c_uchar,
11120    pub port: crate::types::c_uchar,
11121    pub __bindgen_padding_0: [u8; 3usize],
11122}
11123#[repr(C)]
11124#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11125pub struct if_settings {
11126    pub type_: crate::types::c_uint,
11127    pub size: crate::types::c_uint,
11128    pub ifs_ifsu: if_settings__bindgen_ty_1,
11129}
11130#[repr(C)]
11131#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11132pub union if_settings__bindgen_ty_1 {
11133    pub raw_hdlc: uref<raw_hdlc_proto>,
11134    pub cisco: uref<cisco_proto>,
11135    pub fr: uref<fr_proto>,
11136    pub fr_pvc: uref<fr_proto_pvc>,
11137    pub fr_pvc_info: uref<fr_proto_pvc_info>,
11138    pub x25: uref<x25_hdlc_proto>,
11139    pub sync: uref<sync_serial_settings>,
11140    pub te1: uref<te1_settings>,
11141}
11142impl Default for if_settings__bindgen_ty_1 {
11143    fn default() -> Self {
11144        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11145        unsafe {
11146            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11147            s.assume_init()
11148        }
11149    }
11150}
11151impl Default for if_settings {
11152    fn default() -> Self {
11153        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11154        unsafe {
11155            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11156            s.assume_init()
11157        }
11158    }
11159}
11160#[repr(C)]
11161#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11162pub struct ifreq {
11163    pub ifr_ifrn: ifreq__bindgen_ty_1,
11164    pub ifr_ifru: ifreq__bindgen_ty_2,
11165}
11166#[repr(C)]
11167#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11168pub union ifreq__bindgen_ty_1 {
11169    pub ifrn_name: [crate::types::c_char; 16usize],
11170}
11171impl Default for ifreq__bindgen_ty_1 {
11172    fn default() -> Self {
11173        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11174        unsafe {
11175            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11176            s.assume_init()
11177        }
11178    }
11179}
11180#[repr(C)]
11181#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
11182pub union ifreq__bindgen_ty_2 {
11183    pub ifru_addr: sockaddr,
11184    pub ifru_dstaddr: sockaddr,
11185    pub ifru_broadaddr: sockaddr,
11186    pub ifru_netmask: sockaddr,
11187    pub ifru_hwaddr: sockaddr,
11188    pub ifru_flags: crate::types::c_short,
11189    pub ifru_ivalue: crate::types::c_int,
11190    pub ifru_mtu: crate::types::c_int,
11191    pub ifru_map: ifmap,
11192    pub ifru_slave: [crate::types::c_char; 16usize],
11193    pub ifru_newname: [crate::types::c_char; 16usize],
11194    pub ifru_data: uaddr,
11195    pub ifru_settings: if_settings,
11196}
11197impl Default for ifreq__bindgen_ty_2 {
11198    fn default() -> Self {
11199        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11200        unsafe {
11201            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11202            s.assume_init()
11203        }
11204    }
11205}
11206impl Default for ifreq {
11207    fn default() -> Self {
11208        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11209        unsafe {
11210            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11211            s.assume_init()
11212        }
11213    }
11214}
11215#[repr(C)]
11216#[derive(Copy, Clone)]
11217pub struct ifconf {
11218    pub ifc_len: crate::types::c_int,
11219    pub __bindgen_padding_0: [u8; 4usize],
11220    pub ifc_ifcu: ifconf__bindgen_ty_1,
11221}
11222#[repr(C)]
11223#[derive(Copy, Clone)]
11224pub union ifconf__bindgen_ty_1 {
11225    pub ifcu_buf: uref<crate::types::c_char>,
11226    pub ifcu_req: uref<ifreq>,
11227}
11228impl Default for ifconf__bindgen_ty_1 {
11229    fn default() -> Self {
11230        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11231        unsafe {
11232            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11233            s.assume_init()
11234        }
11235    }
11236}
11237impl Default for ifconf {
11238    fn default() -> Self {
11239        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11240        unsafe {
11241            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11242            s.assume_init()
11243        }
11244    }
11245}
11246#[repr(C, packed)]
11247#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11248pub struct ethhdr {
11249    pub h_dest: [crate::types::c_uchar; 6usize],
11250    pub h_source: [crate::types::c_uchar; 6usize],
11251    pub h_proto: __be16,
11252}
11253#[repr(C)]
11254#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11255pub struct sockaddr_pkt {
11256    pub spkt_family: crate::types::c_ushort,
11257    pub spkt_device: [crate::types::c_uchar; 14usize],
11258    pub spkt_protocol: __be16,
11259}
11260#[repr(C)]
11261#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
11262pub struct sockaddr_ll {
11263    pub sll_family: crate::types::c_ushort,
11264    pub sll_protocol: __be16,
11265    pub sll_ifindex: crate::types::c_int,
11266    pub sll_hatype: crate::types::c_ushort,
11267    pub sll_pkttype: crate::types::c_uchar,
11268    pub sll_halen: crate::types::c_uchar,
11269    pub sll_addr: [crate::types::c_uchar; 8usize],
11270}
11271#[repr(C)]
11272#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11273pub struct tpacket_stats {
11274    pub tp_packets: crate::types::c_uint,
11275    pub tp_drops: crate::types::c_uint,
11276}
11277#[repr(C)]
11278#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11279pub struct tpacket_stats_v3 {
11280    pub tp_packets: crate::types::c_uint,
11281    pub tp_drops: crate::types::c_uint,
11282    pub tp_freeze_q_cnt: crate::types::c_uint,
11283}
11284#[repr(C)]
11285#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11286pub struct tpacket_rollover_stats {
11287    pub tp_all: __u64,
11288    pub tp_huge: __u64,
11289    pub tp_failed: __u64,
11290}
11291#[repr(C)]
11292#[derive(Copy, Clone)]
11293pub union tpacket_stats_u {
11294    pub stats1: tpacket_stats,
11295    pub stats3: tpacket_stats_v3,
11296}
11297impl Default for tpacket_stats_u {
11298    fn default() -> Self {
11299        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11300        unsafe {
11301            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11302            s.assume_init()
11303        }
11304    }
11305}
11306#[repr(C)]
11307#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11308pub struct tpacket_auxdata {
11309    pub tp_status: __u32,
11310    pub tp_len: __u32,
11311    pub tp_snaplen: __u32,
11312    pub tp_mac: __u16,
11313    pub tp_net: __u16,
11314    pub tp_vlan_tci: __u16,
11315    pub tp_vlan_tpid: __u16,
11316}
11317#[repr(C)]
11318#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11319pub struct tpacket_hdr {
11320    pub tp_status: crate::types::c_ulong,
11321    pub tp_len: crate::types::c_uint,
11322    pub tp_snaplen: crate::types::c_uint,
11323    pub tp_mac: crate::types::c_ushort,
11324    pub tp_net: crate::types::c_ushort,
11325    pub tp_sec: crate::types::c_uint,
11326    pub tp_usec: crate::types::c_uint,
11327    pub __bindgen_padding_0: [u8; 4usize],
11328}
11329#[repr(C)]
11330#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11331pub struct tpacket2_hdr {
11332    pub tp_status: __u32,
11333    pub tp_len: __u32,
11334    pub tp_snaplen: __u32,
11335    pub tp_mac: __u16,
11336    pub tp_net: __u16,
11337    pub tp_sec: __u32,
11338    pub tp_nsec: __u32,
11339    pub tp_vlan_tci: __u16,
11340    pub tp_vlan_tpid: __u16,
11341    pub tp_padding: [__u8; 4usize],
11342}
11343#[repr(C)]
11344#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11345pub struct tpacket_hdr_variant1 {
11346    pub tp_rxhash: __u32,
11347    pub tp_vlan_tci: __u32,
11348    pub tp_vlan_tpid: __u16,
11349    pub tp_padding: __u16,
11350}
11351#[repr(C)]
11352#[derive(Copy, Clone)]
11353pub struct tpacket3_hdr {
11354    pub tp_next_offset: __u32,
11355    pub tp_sec: __u32,
11356    pub tp_nsec: __u32,
11357    pub tp_snaplen: __u32,
11358    pub tp_len: __u32,
11359    pub tp_status: __u32,
11360    pub tp_mac: __u16,
11361    pub tp_net: __u16,
11362    pub __bindgen_anon_1: tpacket3_hdr__bindgen_ty_1,
11363    pub tp_padding: [__u8; 8usize],
11364}
11365#[repr(C)]
11366#[derive(Copy, Clone)]
11367pub union tpacket3_hdr__bindgen_ty_1 {
11368    pub hv1: tpacket_hdr_variant1,
11369}
11370impl Default for tpacket3_hdr__bindgen_ty_1 {
11371    fn default() -> Self {
11372        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11373        unsafe {
11374            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11375            s.assume_init()
11376        }
11377    }
11378}
11379impl Default for tpacket3_hdr {
11380    fn default() -> Self {
11381        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11382        unsafe {
11383            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11384            s.assume_init()
11385        }
11386    }
11387}
11388#[repr(C)]
11389#[derive(Copy, Clone)]
11390pub struct tpacket_bd_ts {
11391    pub ts_sec: crate::types::c_uint,
11392    pub __bindgen_anon_1: tpacket_bd_ts__bindgen_ty_1,
11393}
11394#[repr(C)]
11395#[derive(Copy, Clone)]
11396pub union tpacket_bd_ts__bindgen_ty_1 {
11397    pub ts_usec: crate::types::c_uint,
11398    pub ts_nsec: crate::types::c_uint,
11399}
11400impl Default for tpacket_bd_ts__bindgen_ty_1 {
11401    fn default() -> Self {
11402        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11403        unsafe {
11404            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11405            s.assume_init()
11406        }
11407    }
11408}
11409impl Default for tpacket_bd_ts {
11410    fn default() -> Self {
11411        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11412        unsafe {
11413            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11414            s.assume_init()
11415        }
11416    }
11417}
11418#[repr(C)]
11419#[derive(Copy, Clone)]
11420pub struct tpacket_hdr_v1 {
11421    pub block_status: __u32,
11422    pub num_pkts: __u32,
11423    pub offset_to_first_pkt: __u32,
11424    pub blk_len: __u32,
11425    pub seq_num: __u64,
11426    pub ts_first_pkt: tpacket_bd_ts,
11427    pub ts_last_pkt: tpacket_bd_ts,
11428}
11429impl Default for tpacket_hdr_v1 {
11430    fn default() -> Self {
11431        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11432        unsafe {
11433            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11434            s.assume_init()
11435        }
11436    }
11437}
11438#[repr(C)]
11439#[derive(Copy, Clone)]
11440pub union tpacket_bd_header_u {
11441    pub bh1: tpacket_hdr_v1,
11442}
11443impl Default for tpacket_bd_header_u {
11444    fn default() -> Self {
11445        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11446        unsafe {
11447            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11448            s.assume_init()
11449        }
11450    }
11451}
11452#[repr(C)]
11453#[derive(Copy, Clone)]
11454pub struct tpacket_block_desc {
11455    pub version: __u32,
11456    pub offset_to_priv: __u32,
11457    pub hdr: tpacket_bd_header_u,
11458}
11459impl Default for tpacket_block_desc {
11460    fn default() -> Self {
11461        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11462        unsafe {
11463            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11464            s.assume_init()
11465        }
11466    }
11467}
11468pub const tpacket_versions_TPACKET_V1: tpacket_versions = 0;
11469pub const tpacket_versions_TPACKET_V2: tpacket_versions = 1;
11470pub const tpacket_versions_TPACKET_V3: tpacket_versions = 2;
11471pub type tpacket_versions = crate::types::c_uint;
11472#[repr(C)]
11473#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11474pub struct tpacket_req {
11475    pub tp_block_size: crate::types::c_uint,
11476    pub tp_block_nr: crate::types::c_uint,
11477    pub tp_frame_size: crate::types::c_uint,
11478    pub tp_frame_nr: crate::types::c_uint,
11479}
11480#[repr(C)]
11481#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11482pub struct tpacket_req3 {
11483    pub tp_block_size: crate::types::c_uint,
11484    pub tp_block_nr: crate::types::c_uint,
11485    pub tp_frame_size: crate::types::c_uint,
11486    pub tp_frame_nr: crate::types::c_uint,
11487    pub tp_retire_blk_tov: crate::types::c_uint,
11488    pub tp_sizeof_priv: crate::types::c_uint,
11489    pub tp_feature_req_word: crate::types::c_uint,
11490}
11491#[repr(C)]
11492#[derive(Copy, Clone)]
11493pub union tpacket_req_u {
11494    pub req: tpacket_req,
11495    pub req3: tpacket_req3,
11496}
11497impl Default for tpacket_req_u {
11498    fn default() -> Self {
11499        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11500        unsafe {
11501            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11502            s.assume_init()
11503        }
11504    }
11505}
11506#[repr(C)]
11507#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11508pub struct packet_mreq {
11509    pub mr_ifindex: crate::types::c_int,
11510    pub mr_type: crate::types::c_ushort,
11511    pub mr_alen: crate::types::c_ushort,
11512    pub mr_address: [crate::types::c_uchar; 8usize],
11513}
11514#[repr(C)]
11515#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11516pub struct fanout_args {
11517    pub id: __u16,
11518    pub type_flags: __u16,
11519    pub max_num_members: __u32,
11520}
11521pub const IF_PORT_UNKNOWN: _bindgen_ty_79 = 0;
11522pub const IF_PORT_10BASE2: _bindgen_ty_79 = 1;
11523pub const IF_PORT_10BASET: _bindgen_ty_79 = 2;
11524pub const IF_PORT_AUI: _bindgen_ty_79 = 3;
11525pub const IF_PORT_100BASET: _bindgen_ty_79 = 4;
11526pub const IF_PORT_100BASETX: _bindgen_ty_79 = 5;
11527pub const IF_PORT_100BASEFX: _bindgen_ty_79 = 6;
11528pub type _bindgen_ty_79 = crate::types::c_uint;
11529#[repr(C)]
11530#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11531pub struct arpreq {
11532    pub arp_pa: sockaddr,
11533    pub arp_ha: sockaddr,
11534    pub arp_flags: crate::types::c_int,
11535    pub arp_netmask: sockaddr,
11536    pub arp_dev: [crate::types::c_char; 16usize],
11537}
11538#[repr(C)]
11539#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11540pub struct arpreq_old {
11541    pub arp_pa: sockaddr,
11542    pub arp_ha: sockaddr,
11543    pub arp_flags: crate::types::c_int,
11544    pub arp_netmask: sockaddr,
11545}
11546#[repr(C)]
11547#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11548pub struct arphdr {
11549    pub ar_hrd: __be16,
11550    pub ar_pro: __be16,
11551    pub ar_hln: crate::types::c_uchar,
11552    pub ar_pln: crate::types::c_uchar,
11553    pub ar_op: __be16,
11554}
11555#[repr(C)]
11556#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11557pub struct tun_pi {
11558    pub flags: __u16,
11559    pub proto: __be16,
11560}
11561#[repr(C)]
11562#[derive(Debug, Default)]
11563pub struct tun_filter {
11564    pub flags: __u16,
11565    pub count: __u16,
11566    pub addr: __IncompleteArrayField<[__u8; 6usize]>,
11567}
11568#[repr(C)]
11569#[derive(Debug, Default, Immutable, IntoBytes, KnownLayout)]
11570pub struct inotify_event {
11571    pub wd: __s32,
11572    pub mask: __u32,
11573    pub cookie: __u32,
11574    pub len: __u32,
11575    pub name: __IncompleteArrayField<crate::types::c_char>,
11576}
11577#[repr(C)]
11578#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11579pub struct timespec {
11580    pub tv_sec: __kernel_time_t,
11581    pub tv_nsec: crate::types::c_long,
11582}
11583#[repr(C)]
11584#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11585pub struct __kernel_timespec {
11586    pub tv_sec: __kernel_time64_t,
11587    pub tv_nsec: crate::types::c_longlong,
11588}
11589#[repr(C)]
11590#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11591pub struct __kernel_itimerspec {
11592    pub it_interval: __kernel_timespec,
11593    pub it_value: __kernel_timespec,
11594}
11595#[repr(C)]
11596#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11597pub struct __kernel_old_timespec {
11598    pub tv_sec: __kernel_old_time_t,
11599    pub tv_nsec: crate::types::c_long,
11600}
11601#[repr(C)]
11602#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11603pub struct __kernel_sock_timeval {
11604    pub tv_sec: __s64,
11605    pub tv_usec: __s64,
11606}
11607#[repr(C)]
11608#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11609pub struct timeval {
11610    pub tv_sec: __kernel_old_time_t,
11611    pub tv_usec: __kernel_suseconds_t,
11612}
11613#[repr(C)]
11614#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11615pub struct itimerspec {
11616    pub it_interval: timespec,
11617    pub it_value: timespec,
11618}
11619#[repr(C)]
11620#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11621pub struct itimerval {
11622    pub it_interval: timeval,
11623    pub it_value: timeval,
11624}
11625#[repr(C)]
11626#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11627pub struct timezone {
11628    pub tz_minuteswest: crate::types::c_int,
11629    pub tz_dsttime: crate::types::c_int,
11630}
11631#[repr(C)]
11632#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11633pub struct input_event {
11634    pub time: timeval,
11635    pub type_: __u16,
11636    pub code: __u16,
11637    pub value: __s32,
11638}
11639#[repr(C)]
11640#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
11641pub struct input_id {
11642    pub bustype: __u16,
11643    pub vendor: __u16,
11644    pub product: __u16,
11645    pub version: __u16,
11646}
11647#[repr(C)]
11648#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11649pub struct input_absinfo {
11650    pub value: __s32,
11651    pub minimum: __s32,
11652    pub maximum: __s32,
11653    pub fuzz: __s32,
11654    pub flat: __s32,
11655    pub resolution: __s32,
11656}
11657#[repr(C)]
11658#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11659pub struct input_keymap_entry {
11660    pub flags: __u8,
11661    pub len: __u8,
11662    pub index: __u16,
11663    pub keycode: __u32,
11664    pub scancode: [__u8; 32usize],
11665}
11666#[repr(C)]
11667#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11668pub struct input_mask {
11669    pub type_: __u32,
11670    pub codes_size: __u32,
11671    pub codes_ptr: __u64,
11672}
11673#[repr(C)]
11674#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11675pub struct ff_replay {
11676    pub length: __u16,
11677    pub delay: __u16,
11678}
11679#[repr(C)]
11680#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11681pub struct ff_trigger {
11682    pub button: __u16,
11683    pub interval: __u16,
11684}
11685#[repr(C)]
11686#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11687pub struct ff_envelope {
11688    pub attack_length: __u16,
11689    pub attack_level: __u16,
11690    pub fade_length: __u16,
11691    pub fade_level: __u16,
11692}
11693#[repr(C)]
11694#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11695pub struct ff_constant_effect {
11696    pub level: __s16,
11697    pub envelope: ff_envelope,
11698}
11699#[repr(C)]
11700#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11701pub struct ff_ramp_effect {
11702    pub start_level: __s16,
11703    pub end_level: __s16,
11704    pub envelope: ff_envelope,
11705}
11706#[repr(C)]
11707#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11708pub struct ff_condition_effect {
11709    pub right_saturation: __u16,
11710    pub left_saturation: __u16,
11711    pub right_coeff: __s16,
11712    pub left_coeff: __s16,
11713    pub deadband: __u16,
11714    pub center: __s16,
11715}
11716#[repr(C)]
11717#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11718pub struct ff_periodic_effect {
11719    pub waveform: __u16,
11720    pub period: __u16,
11721    pub magnitude: __s16,
11722    pub offset: __s16,
11723    pub phase: __u16,
11724    pub envelope: ff_envelope,
11725    pub __bindgen_padding_0: [u8; 2usize],
11726    pub custom_len: __u32,
11727    pub custom_data: uref<__s16>,
11728}
11729impl Default for ff_periodic_effect {
11730    fn default() -> Self {
11731        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11732        unsafe {
11733            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11734            s.assume_init()
11735        }
11736    }
11737}
11738#[repr(C)]
11739#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11740pub struct ff_rumble_effect {
11741    pub strong_magnitude: __u16,
11742    pub weak_magnitude: __u16,
11743}
11744#[repr(C)]
11745#[derive(Copy, Clone)]
11746pub struct ff_effect {
11747    pub type_: __u16,
11748    pub id: __s16,
11749    pub direction: __u16,
11750    pub trigger: ff_trigger,
11751    pub replay: ff_replay,
11752    pub __bindgen_padding_0: [u8; 2usize],
11753    pub u: ff_effect__bindgen_ty_1,
11754}
11755#[repr(C)]
11756#[derive(Copy, Clone)]
11757pub union ff_effect__bindgen_ty_1 {
11758    pub constant: ff_constant_effect,
11759    pub ramp: ff_ramp_effect,
11760    pub periodic: ff_periodic_effect,
11761    pub condition: [ff_condition_effect; 2usize],
11762    pub rumble: ff_rumble_effect,
11763}
11764impl Default for ff_effect__bindgen_ty_1 {
11765    fn default() -> Self {
11766        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11767        unsafe {
11768            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11769            s.assume_init()
11770        }
11771    }
11772}
11773impl Default for ff_effect {
11774    fn default() -> Self {
11775        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11776        unsafe {
11777            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11778            s.assume_init()
11779        }
11780    }
11781}
11782#[repr(C)]
11783pub struct io_uring_sqe {
11784    pub opcode: __u8,
11785    pub flags: __u8,
11786    pub ioprio: __u16,
11787    pub fd: __s32,
11788    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1,
11789    pub __bindgen_anon_2: io_uring_sqe__bindgen_ty_2,
11790    pub len: __u32,
11791    pub __bindgen_anon_3: io_uring_sqe__bindgen_ty_3,
11792    pub user_data: __u64,
11793    pub __bindgen_anon_4: io_uring_sqe__bindgen_ty_4,
11794    pub personality: __u16,
11795    pub __bindgen_anon_5: io_uring_sqe__bindgen_ty_5,
11796    pub __bindgen_anon_6: io_uring_sqe__bindgen_ty_6,
11797}
11798#[repr(C)]
11799#[derive(Copy, Clone)]
11800pub union io_uring_sqe__bindgen_ty_1 {
11801    pub off: __u64,
11802    pub addr2: __u64,
11803    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1__bindgen_ty_1,
11804}
11805#[repr(C)]
11806#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11807pub struct io_uring_sqe__bindgen_ty_1__bindgen_ty_1 {
11808    pub cmd_op: __u32,
11809    pub __pad1: __u32,
11810}
11811impl Default for io_uring_sqe__bindgen_ty_1 {
11812    fn default() -> Self {
11813        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11814        unsafe {
11815            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11816            s.assume_init()
11817        }
11818    }
11819}
11820#[repr(C)]
11821#[derive(Copy, Clone)]
11822pub union io_uring_sqe__bindgen_ty_2 {
11823    pub addr: __u64,
11824    pub splice_off_in: __u64,
11825    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_2__bindgen_ty_1,
11826}
11827#[repr(C)]
11828#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11829pub struct io_uring_sqe__bindgen_ty_2__bindgen_ty_1 {
11830    pub level: __u32,
11831    pub optname: __u32,
11832}
11833impl Default for io_uring_sqe__bindgen_ty_2 {
11834    fn default() -> Self {
11835        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11836        unsafe {
11837            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11838            s.assume_init()
11839        }
11840    }
11841}
11842#[repr(C)]
11843#[derive(Copy, Clone)]
11844pub union io_uring_sqe__bindgen_ty_3 {
11845    pub rw_flags: __kernel_rwf_t,
11846    pub fsync_flags: __u32,
11847    pub poll_events: __u16,
11848    pub poll32_events: __u32,
11849    pub sync_range_flags: __u32,
11850    pub msg_flags: __u32,
11851    pub timeout_flags: __u32,
11852    pub accept_flags: __u32,
11853    pub cancel_flags: __u32,
11854    pub open_flags: __u32,
11855    pub statx_flags: __u32,
11856    pub fadvise_advice: __u32,
11857    pub splice_flags: __u32,
11858    pub rename_flags: __u32,
11859    pub unlink_flags: __u32,
11860    pub hardlink_flags: __u32,
11861    pub xattr_flags: __u32,
11862    pub msg_ring_flags: __u32,
11863    pub uring_cmd_flags: __u32,
11864    pub waitid_flags: __u32,
11865    pub futex_flags: __u32,
11866    pub install_fd_flags: __u32,
11867    pub nop_flags: __u32,
11868}
11869impl Default for io_uring_sqe__bindgen_ty_3 {
11870    fn default() -> Self {
11871        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11872        unsafe {
11873            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11874            s.assume_init()
11875        }
11876    }
11877}
11878#[repr(C, packed)]
11879#[derive(Copy, Clone)]
11880pub union io_uring_sqe__bindgen_ty_4 {
11881    pub buf_index: __u16,
11882    pub buf_group: __u16,
11883}
11884impl Default for io_uring_sqe__bindgen_ty_4 {
11885    fn default() -> Self {
11886        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11887        unsafe {
11888            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11889            s.assume_init()
11890        }
11891    }
11892}
11893#[repr(C)]
11894#[derive(Copy, Clone)]
11895pub union io_uring_sqe__bindgen_ty_5 {
11896    pub splice_fd_in: __s32,
11897    pub file_index: __u32,
11898    pub optlen: __u32,
11899    pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1,
11900}
11901#[repr(C)]
11902#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11903pub struct io_uring_sqe__bindgen_ty_5__bindgen_ty_1 {
11904    pub addr_len: __u16,
11905    pub __pad3: [__u16; 1usize],
11906}
11907impl Default for io_uring_sqe__bindgen_ty_5 {
11908    fn default() -> Self {
11909        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11910        unsafe {
11911            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11912            s.assume_init()
11913        }
11914    }
11915}
11916#[repr(C)]
11917pub struct io_uring_sqe__bindgen_ty_6 {
11918    pub __bindgen_anon_1: __BindgenUnionField<io_uring_sqe__bindgen_ty_6__bindgen_ty_1>,
11919    pub optval: __BindgenUnionField<__u64>,
11920    pub cmd: __BindgenUnionField<[__u8; 0usize]>,
11921    pub bindgen_union_field: __BindgenOpaqueArray8<[u8; 16usize]>,
11922}
11923#[repr(C)]
11924#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
11925pub struct io_uring_sqe__bindgen_ty_6__bindgen_ty_1 {
11926    pub addr3: __u64,
11927    pub __pad2: [__u64; 1usize],
11928}
11929impl Default for io_uring_sqe__bindgen_ty_6 {
11930    fn default() -> Self {
11931        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11932        unsafe {
11933            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11934            s.assume_init()
11935        }
11936    }
11937}
11938impl Default for io_uring_sqe {
11939    fn default() -> Self {
11940        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11941        unsafe {
11942            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11943            s.assume_init()
11944        }
11945    }
11946}
11947pub const io_uring_sqe_flags_bit_IOSQE_FIXED_FILE_BIT: io_uring_sqe_flags_bit = 0;
11948pub const io_uring_sqe_flags_bit_IOSQE_IO_DRAIN_BIT: io_uring_sqe_flags_bit = 1;
11949pub const io_uring_sqe_flags_bit_IOSQE_IO_LINK_BIT: io_uring_sqe_flags_bit = 2;
11950pub const io_uring_sqe_flags_bit_IOSQE_IO_HARDLINK_BIT: io_uring_sqe_flags_bit = 3;
11951pub const io_uring_sqe_flags_bit_IOSQE_ASYNC_BIT: io_uring_sqe_flags_bit = 4;
11952pub const io_uring_sqe_flags_bit_IOSQE_BUFFER_SELECT_BIT: io_uring_sqe_flags_bit = 5;
11953pub const io_uring_sqe_flags_bit_IOSQE_CQE_SKIP_SUCCESS_BIT: io_uring_sqe_flags_bit = 6;
11954pub type io_uring_sqe_flags_bit = crate::types::c_uint;
11955pub const io_uring_op_IORING_OP_NOP: io_uring_op = 0;
11956pub const io_uring_op_IORING_OP_READV: io_uring_op = 1;
11957pub const io_uring_op_IORING_OP_WRITEV: io_uring_op = 2;
11958pub const io_uring_op_IORING_OP_FSYNC: io_uring_op = 3;
11959pub const io_uring_op_IORING_OP_READ_FIXED: io_uring_op = 4;
11960pub const io_uring_op_IORING_OP_WRITE_FIXED: io_uring_op = 5;
11961pub const io_uring_op_IORING_OP_POLL_ADD: io_uring_op = 6;
11962pub const io_uring_op_IORING_OP_POLL_REMOVE: io_uring_op = 7;
11963pub const io_uring_op_IORING_OP_SYNC_FILE_RANGE: io_uring_op = 8;
11964pub const io_uring_op_IORING_OP_SENDMSG: io_uring_op = 9;
11965pub const io_uring_op_IORING_OP_RECVMSG: io_uring_op = 10;
11966pub const io_uring_op_IORING_OP_TIMEOUT: io_uring_op = 11;
11967pub const io_uring_op_IORING_OP_TIMEOUT_REMOVE: io_uring_op = 12;
11968pub const io_uring_op_IORING_OP_ACCEPT: io_uring_op = 13;
11969pub const io_uring_op_IORING_OP_ASYNC_CANCEL: io_uring_op = 14;
11970pub const io_uring_op_IORING_OP_LINK_TIMEOUT: io_uring_op = 15;
11971pub const io_uring_op_IORING_OP_CONNECT: io_uring_op = 16;
11972pub const io_uring_op_IORING_OP_FALLOCATE: io_uring_op = 17;
11973pub const io_uring_op_IORING_OP_OPENAT: io_uring_op = 18;
11974pub const io_uring_op_IORING_OP_CLOSE: io_uring_op = 19;
11975pub const io_uring_op_IORING_OP_FILES_UPDATE: io_uring_op = 20;
11976pub const io_uring_op_IORING_OP_STATX: io_uring_op = 21;
11977pub const io_uring_op_IORING_OP_READ: io_uring_op = 22;
11978pub const io_uring_op_IORING_OP_WRITE: io_uring_op = 23;
11979pub const io_uring_op_IORING_OP_FADVISE: io_uring_op = 24;
11980pub const io_uring_op_IORING_OP_MADVISE: io_uring_op = 25;
11981pub const io_uring_op_IORING_OP_SEND: io_uring_op = 26;
11982pub const io_uring_op_IORING_OP_RECV: io_uring_op = 27;
11983pub const io_uring_op_IORING_OP_OPENAT2: io_uring_op = 28;
11984pub const io_uring_op_IORING_OP_EPOLL_CTL: io_uring_op = 29;
11985pub const io_uring_op_IORING_OP_SPLICE: io_uring_op = 30;
11986pub const io_uring_op_IORING_OP_PROVIDE_BUFFERS: io_uring_op = 31;
11987pub const io_uring_op_IORING_OP_REMOVE_BUFFERS: io_uring_op = 32;
11988pub const io_uring_op_IORING_OP_TEE: io_uring_op = 33;
11989pub const io_uring_op_IORING_OP_SHUTDOWN: io_uring_op = 34;
11990pub const io_uring_op_IORING_OP_RENAMEAT: io_uring_op = 35;
11991pub const io_uring_op_IORING_OP_UNLINKAT: io_uring_op = 36;
11992pub const io_uring_op_IORING_OP_MKDIRAT: io_uring_op = 37;
11993pub const io_uring_op_IORING_OP_SYMLINKAT: io_uring_op = 38;
11994pub const io_uring_op_IORING_OP_LINKAT: io_uring_op = 39;
11995pub const io_uring_op_IORING_OP_MSG_RING: io_uring_op = 40;
11996pub const io_uring_op_IORING_OP_FSETXATTR: io_uring_op = 41;
11997pub const io_uring_op_IORING_OP_SETXATTR: io_uring_op = 42;
11998pub const io_uring_op_IORING_OP_FGETXATTR: io_uring_op = 43;
11999pub const io_uring_op_IORING_OP_GETXATTR: io_uring_op = 44;
12000pub const io_uring_op_IORING_OP_SOCKET: io_uring_op = 45;
12001pub const io_uring_op_IORING_OP_URING_CMD: io_uring_op = 46;
12002pub const io_uring_op_IORING_OP_SEND_ZC: io_uring_op = 47;
12003pub const io_uring_op_IORING_OP_SENDMSG_ZC: io_uring_op = 48;
12004pub const io_uring_op_IORING_OP_READ_MULTISHOT: io_uring_op = 49;
12005pub const io_uring_op_IORING_OP_WAITID: io_uring_op = 50;
12006pub const io_uring_op_IORING_OP_FUTEX_WAIT: io_uring_op = 51;
12007pub const io_uring_op_IORING_OP_FUTEX_WAKE: io_uring_op = 52;
12008pub const io_uring_op_IORING_OP_FUTEX_WAITV: io_uring_op = 53;
12009pub const io_uring_op_IORING_OP_FIXED_FD_INSTALL: io_uring_op = 54;
12010pub const io_uring_op_IORING_OP_FTRUNCATE: io_uring_op = 55;
12011pub const io_uring_op_IORING_OP_BIND: io_uring_op = 56;
12012pub const io_uring_op_IORING_OP_LISTEN: io_uring_op = 57;
12013pub const io_uring_op_IORING_OP_LAST: io_uring_op = 58;
12014pub type io_uring_op = crate::types::c_uint;
12015pub const io_uring_msg_ring_flags_IORING_MSG_DATA: io_uring_msg_ring_flags = 0;
12016pub const io_uring_msg_ring_flags_IORING_MSG_SEND_FD: io_uring_msg_ring_flags = 1;
12017pub type io_uring_msg_ring_flags = crate::types::c_uint;
12018#[repr(C)]
12019#[derive(Debug, Default)]
12020pub struct io_uring_cqe {
12021    pub user_data: __u64,
12022    pub res: __s32,
12023    pub flags: __u32,
12024    pub big_cqe: __IncompleteArrayField<__u64>,
12025}
12026#[repr(C)]
12027#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12028pub struct io_sqring_offsets {
12029    pub head: __u32,
12030    pub tail: __u32,
12031    pub ring_mask: __u32,
12032    pub ring_entries: __u32,
12033    pub flags: __u32,
12034    pub dropped: __u32,
12035    pub array: __u32,
12036    pub resv1: __u32,
12037    pub user_addr: __u64,
12038}
12039#[repr(C)]
12040#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12041pub struct io_cqring_offsets {
12042    pub head: __u32,
12043    pub tail: __u32,
12044    pub ring_mask: __u32,
12045    pub ring_entries: __u32,
12046    pub overflow: __u32,
12047    pub cqes: __u32,
12048    pub flags: __u32,
12049    pub resv1: __u32,
12050    pub user_addr: __u64,
12051}
12052#[repr(C)]
12053#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12054pub struct io_uring_params {
12055    pub sq_entries: __u32,
12056    pub cq_entries: __u32,
12057    pub flags: __u32,
12058    pub sq_thread_cpu: __u32,
12059    pub sq_thread_idle: __u32,
12060    pub features: __u32,
12061    pub wq_fd: __u32,
12062    pub resv: [__u32; 3usize],
12063    pub sq_off: io_sqring_offsets,
12064    pub cq_off: io_cqring_offsets,
12065}
12066pub const io_uring_register_op_IORING_REGISTER_BUFFERS: io_uring_register_op = 0;
12067pub const io_uring_register_op_IORING_UNREGISTER_BUFFERS: io_uring_register_op = 1;
12068pub const io_uring_register_op_IORING_REGISTER_FILES: io_uring_register_op = 2;
12069pub const io_uring_register_op_IORING_UNREGISTER_FILES: io_uring_register_op = 3;
12070pub const io_uring_register_op_IORING_REGISTER_EVENTFD: io_uring_register_op = 4;
12071pub const io_uring_register_op_IORING_UNREGISTER_EVENTFD: io_uring_register_op = 5;
12072pub const io_uring_register_op_IORING_REGISTER_FILES_UPDATE: io_uring_register_op = 6;
12073pub const io_uring_register_op_IORING_REGISTER_EVENTFD_ASYNC: io_uring_register_op = 7;
12074pub const io_uring_register_op_IORING_REGISTER_PROBE: io_uring_register_op = 8;
12075pub const io_uring_register_op_IORING_REGISTER_PERSONALITY: io_uring_register_op = 9;
12076pub const io_uring_register_op_IORING_UNREGISTER_PERSONALITY: io_uring_register_op = 10;
12077pub const io_uring_register_op_IORING_REGISTER_RESTRICTIONS: io_uring_register_op = 11;
12078pub const io_uring_register_op_IORING_REGISTER_ENABLE_RINGS: io_uring_register_op = 12;
12079pub const io_uring_register_op_IORING_REGISTER_FILES2: io_uring_register_op = 13;
12080pub const io_uring_register_op_IORING_REGISTER_FILES_UPDATE2: io_uring_register_op = 14;
12081pub const io_uring_register_op_IORING_REGISTER_BUFFERS2: io_uring_register_op = 15;
12082pub const io_uring_register_op_IORING_REGISTER_BUFFERS_UPDATE: io_uring_register_op = 16;
12083pub const io_uring_register_op_IORING_REGISTER_IOWQ_AFF: io_uring_register_op = 17;
12084pub const io_uring_register_op_IORING_UNREGISTER_IOWQ_AFF: io_uring_register_op = 18;
12085pub const io_uring_register_op_IORING_REGISTER_IOWQ_MAX_WORKERS: io_uring_register_op = 19;
12086pub const io_uring_register_op_IORING_REGISTER_RING_FDS: io_uring_register_op = 20;
12087pub const io_uring_register_op_IORING_UNREGISTER_RING_FDS: io_uring_register_op = 21;
12088pub const io_uring_register_op_IORING_REGISTER_PBUF_RING: io_uring_register_op = 22;
12089pub const io_uring_register_op_IORING_UNREGISTER_PBUF_RING: io_uring_register_op = 23;
12090pub const io_uring_register_op_IORING_REGISTER_SYNC_CANCEL: io_uring_register_op = 24;
12091pub const io_uring_register_op_IORING_REGISTER_FILE_ALLOC_RANGE: io_uring_register_op = 25;
12092pub const io_uring_register_op_IORING_REGISTER_PBUF_STATUS: io_uring_register_op = 26;
12093pub const io_uring_register_op_IORING_REGISTER_NAPI: io_uring_register_op = 27;
12094pub const io_uring_register_op_IORING_UNREGISTER_NAPI: io_uring_register_op = 28;
12095pub const io_uring_register_op_IORING_REGISTER_CLOCK: io_uring_register_op = 29;
12096pub const io_uring_register_op_IORING_REGISTER_CLONE_BUFFERS: io_uring_register_op = 30;
12097pub const io_uring_register_op_IORING_REGISTER_LAST: io_uring_register_op = 31;
12098pub const io_uring_register_op_IORING_REGISTER_USE_REGISTERED_RING: io_uring_register_op =
12099    2147483648;
12100pub type io_uring_register_op = crate::types::c_uint;
12101pub const io_wq_type_IO_WQ_BOUND: io_wq_type = 0;
12102pub const io_wq_type_IO_WQ_UNBOUND: io_wq_type = 1;
12103pub type io_wq_type = crate::types::c_uint;
12104#[repr(C)]
12105#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12106pub struct io_uring_files_update {
12107    pub offset: __u32,
12108    pub resv: __u32,
12109    pub fds: __u64,
12110}
12111#[repr(C)]
12112#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12113pub struct io_uring_rsrc_register {
12114    pub nr: __u32,
12115    pub flags: __u32,
12116    pub resv2: __u64,
12117    pub data: __u64,
12118    pub tags: __u64,
12119}
12120#[repr(C)]
12121#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12122pub struct io_uring_rsrc_update {
12123    pub offset: __u32,
12124    pub resv: __u32,
12125    pub data: __u64,
12126}
12127#[repr(C)]
12128#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12129pub struct io_uring_rsrc_update2 {
12130    pub offset: __u32,
12131    pub resv: __u32,
12132    pub data: __u64,
12133    pub tags: __u64,
12134    pub nr: __u32,
12135    pub resv2: __u32,
12136}
12137#[repr(C)]
12138#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12139pub struct io_uring_probe_op {
12140    pub op: __u8,
12141    pub resv: __u8,
12142    pub flags: __u16,
12143    pub resv2: __u32,
12144}
12145#[repr(C)]
12146#[derive(Debug, Default)]
12147pub struct io_uring_probe {
12148    pub last_op: __u8,
12149    pub ops_len: __u8,
12150    pub resv: __u16,
12151    pub resv2: [__u32; 3usize],
12152    pub ops: __IncompleteArrayField<io_uring_probe_op>,
12153}
12154#[repr(C)]
12155#[derive(Copy, Clone)]
12156pub struct io_uring_restriction {
12157    pub opcode: __u16,
12158    pub __bindgen_anon_1: io_uring_restriction__bindgen_ty_1,
12159    pub resv: __u8,
12160    pub resv2: [__u32; 3usize],
12161}
12162#[repr(C)]
12163#[derive(Copy, Clone)]
12164pub union io_uring_restriction__bindgen_ty_1 {
12165    pub register_op: __u8,
12166    pub sqe_op: __u8,
12167    pub sqe_flags: __u8,
12168}
12169impl Default for io_uring_restriction__bindgen_ty_1 {
12170    fn default() -> Self {
12171        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12172        unsafe {
12173            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12174            s.assume_init()
12175        }
12176    }
12177}
12178impl Default for io_uring_restriction {
12179    fn default() -> Self {
12180        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12181        unsafe {
12182            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12183            s.assume_init()
12184        }
12185    }
12186}
12187#[repr(C)]
12188#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12189pub struct io_uring_clock_register {
12190    pub clockid: __u32,
12191    pub __resv: [__u32; 3usize],
12192}
12193pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_80 = 1;
12194pub type _bindgen_ty_80 = crate::types::c_uint;
12195#[repr(C)]
12196#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12197pub struct io_uring_clone_buffers {
12198    pub src_fd: __u32,
12199    pub flags: __u32,
12200    pub pad: [__u32; 6usize],
12201}
12202#[repr(C)]
12203#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12204pub struct io_uring_buf {
12205    pub addr: __u64,
12206    pub len: __u32,
12207    pub bid: __u16,
12208    pub resv: __u16,
12209}
12210#[repr(C)]
12211pub struct io_uring_buf_ring {
12212    pub __bindgen_anon_1: io_uring_buf_ring__bindgen_ty_1,
12213}
12214#[repr(C)]
12215pub struct io_uring_buf_ring__bindgen_ty_1 {
12216    pub __bindgen_anon_1: __BindgenUnionField<io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1>,
12217    pub __bindgen_anon_2: __BindgenUnionField<io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2>,
12218    pub bindgen_union_field: __BindgenOpaqueArray8<[u8; 16usize]>,
12219}
12220#[repr(C)]
12221#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12222pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1 {
12223    pub resv1: __u64,
12224    pub resv2: __u32,
12225    pub resv3: __u16,
12226    pub tail: __u16,
12227}
12228#[repr(C)]
12229#[derive(Debug, Default)]
12230pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2 {
12231    pub __empty_bufs: io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1,
12232    pub bufs: __IncompleteArrayField<io_uring_buf>,
12233}
12234#[repr(C)]
12235#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12236pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 {}
12237impl Default for io_uring_buf_ring__bindgen_ty_1 {
12238    fn default() -> Self {
12239        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12240        unsafe {
12241            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12242            s.assume_init()
12243        }
12244    }
12245}
12246impl Default for io_uring_buf_ring {
12247    fn default() -> Self {
12248        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12249        unsafe {
12250            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12251            s.assume_init()
12252        }
12253    }
12254}
12255pub const io_uring_register_pbuf_ring_flags_IOU_PBUF_RING_MMAP: io_uring_register_pbuf_ring_flags =
12256    1;
12257pub const io_uring_register_pbuf_ring_flags_IOU_PBUF_RING_INC: io_uring_register_pbuf_ring_flags =
12258    2;
12259pub type io_uring_register_pbuf_ring_flags = crate::types::c_uint;
12260#[repr(C)]
12261#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12262pub struct io_uring_buf_reg {
12263    pub ring_addr: __u64,
12264    pub ring_entries: __u32,
12265    pub bgid: __u16,
12266    pub flags: __u16,
12267    pub resv: [__u64; 3usize],
12268}
12269#[repr(C)]
12270#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12271pub struct io_uring_buf_status {
12272    pub buf_group: __u32,
12273    pub head: __u32,
12274    pub resv: [__u32; 8usize],
12275}
12276#[repr(C)]
12277#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12278pub struct io_uring_napi {
12279    pub busy_poll_to: __u32,
12280    pub prefer_busy_poll: __u8,
12281    pub pad: [__u8; 3usize],
12282    pub resv: __u64,
12283}
12284pub const io_uring_register_restriction_op_IORING_RESTRICTION_REGISTER_OP:
12285    io_uring_register_restriction_op = 0;
12286pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_OP:
12287    io_uring_register_restriction_op = 1;
12288pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_FLAGS_ALLOWED:
12289    io_uring_register_restriction_op = 2;
12290pub const io_uring_register_restriction_op_IORING_RESTRICTION_SQE_FLAGS_REQUIRED:
12291    io_uring_register_restriction_op = 3;
12292pub const io_uring_register_restriction_op_IORING_RESTRICTION_LAST:
12293    io_uring_register_restriction_op = 4;
12294pub type io_uring_register_restriction_op = crate::types::c_uint;
12295#[repr(C)]
12296#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12297pub struct io_uring_getevents_arg {
12298    pub sigmask: __u64,
12299    pub sigmask_sz: __u32,
12300    pub min_wait_usec: __u32,
12301    pub ts: __u64,
12302}
12303#[repr(C)]
12304#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12305pub struct io_uring_sync_cancel_reg {
12306    pub addr: __u64,
12307    pub fd: __s32,
12308    pub flags: __u32,
12309    pub timeout: __kernel_timespec,
12310    pub opcode: __u8,
12311    pub pad: [__u8; 7usize],
12312    pub pad2: [__u64; 3usize],
12313}
12314#[repr(C)]
12315#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12316pub struct io_uring_file_index_range {
12317    pub off: __u32,
12318    pub len: __u32,
12319    pub resv: __u64,
12320}
12321#[repr(C)]
12322#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12323pub struct io_uring_recvmsg_out {
12324    pub namelen: __u32,
12325    pub controllen: __u32,
12326    pub payloadlen: __u32,
12327    pub flags: __u32,
12328}
12329pub const io_uring_socket_op_SOCKET_URING_OP_SIOCINQ: io_uring_socket_op = 0;
12330pub const io_uring_socket_op_SOCKET_URING_OP_SIOCOUTQ: io_uring_socket_op = 1;
12331pub const io_uring_socket_op_SOCKET_URING_OP_GETSOCKOPT: io_uring_socket_op = 2;
12332pub const io_uring_socket_op_SOCKET_URING_OP_SETSOCKOPT: io_uring_socket_op = 3;
12333pub type io_uring_socket_op = crate::types::c_uint;
12334#[repr(C)]
12335#[derive(Copy, Clone)]
12336pub struct iphdr {
12337    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
12338    pub tos: __u8,
12339    pub tot_len: __be16,
12340    pub id: __be16,
12341    pub frag_off: __be16,
12342    pub ttl: __u8,
12343    pub protocol: __u8,
12344    pub check: __sum16,
12345    pub __bindgen_anon_1: iphdr__bindgen_ty_1,
12346}
12347#[repr(C)]
12348#[derive(Copy, Clone)]
12349pub union iphdr__bindgen_ty_1 {
12350    pub __bindgen_anon_1: iphdr__bindgen_ty_1__bindgen_ty_1,
12351    pub addrs: iphdr__bindgen_ty_1__bindgen_ty_2,
12352}
12353#[repr(C)]
12354#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12355pub struct iphdr__bindgen_ty_1__bindgen_ty_1 {
12356    pub saddr: __be32,
12357    pub daddr: __be32,
12358}
12359#[repr(C)]
12360#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12361pub struct iphdr__bindgen_ty_1__bindgen_ty_2 {
12362    pub saddr: __be32,
12363    pub daddr: __be32,
12364}
12365impl Default for iphdr__bindgen_ty_1 {
12366    fn default() -> Self {
12367        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12368        unsafe {
12369            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12370            s.assume_init()
12371        }
12372    }
12373}
12374impl Default for iphdr {
12375    fn default() -> Self {
12376        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12377        unsafe {
12378            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12379            s.assume_init()
12380        }
12381    }
12382}
12383impl iphdr {
12384    #[inline]
12385    pub fn ihl(&self) -> __u8 {
12386        self._bitfield_1.get_const::<0usize, 4u8>() as u8 as _
12387    }
12388    #[inline]
12389    pub fn set_ihl(&mut self, val: __u8) {
12390        let val: u8 = val as _;
12391        self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
12392    }
12393    #[inline]
12394    pub unsafe fn ihl_raw(this: *const Self) -> __u8 {
12395        unsafe {
12396            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
12397                ::std::ptr::addr_of!((*this)._bitfield_1),
12398            ) as u8 as _
12399        }
12400    }
12401    #[inline]
12402    pub unsafe fn set_ihl_raw(this: *mut Self, val: __u8) {
12403        unsafe {
12404            let val: u8 = val as _;
12405            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
12406                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12407                val as u64,
12408            )
12409        }
12410    }
12411    #[inline]
12412    pub fn version(&self) -> __u8 {
12413        self._bitfield_1.get_const::<4usize, 4u8>() as u8 as _
12414    }
12415    #[inline]
12416    pub fn set_version(&mut self, val: __u8) {
12417        let val: u8 = val as _;
12418        self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
12419    }
12420    #[inline]
12421    pub unsafe fn version_raw(this: *const Self) -> __u8 {
12422        unsafe {
12423            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
12424                ::std::ptr::addr_of!((*this)._bitfield_1),
12425            ) as u8 as _
12426        }
12427    }
12428    #[inline]
12429    pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
12430        unsafe {
12431            let val: u8 = val as _;
12432            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
12433                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12434                val as u64,
12435            )
12436        }
12437    }
12438    #[inline]
12439    pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12440        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12441        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
12442            let ihl: u8 = ihl as _;
12443            ihl as u64
12444        });
12445        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
12446            let version: u8 = version as _;
12447            version as u64
12448        });
12449        __bindgen_bitfield_unit
12450    }
12451}
12452#[repr(C)]
12453#[derive(Debug, Default)]
12454pub struct ip_auth_hdr {
12455    pub nexthdr: __u8,
12456    pub hdrlen: __u8,
12457    pub reserved: __be16,
12458    pub spi: __be32,
12459    pub seq_no: __be32,
12460    pub auth_data: __IncompleteArrayField<__u8>,
12461}
12462#[repr(C)]
12463#[derive(Debug, Default)]
12464pub struct ip_esp_hdr {
12465    pub spi: __be32,
12466    pub seq_no: __be32,
12467    pub enc_data: __IncompleteArrayField<__u8>,
12468}
12469#[repr(C)]
12470#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12471pub struct ip_comp_hdr {
12472    pub nexthdr: __u8,
12473    pub flags: __u8,
12474    pub cpi: __be16,
12475}
12476#[repr(C)]
12477#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12478pub struct ip_beet_phdr {
12479    pub nexthdr: __u8,
12480    pub hdrlen: __u8,
12481    pub padlen: __u8,
12482    pub reserved: __u8,
12483}
12484pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_81 = 1;
12485pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_81 = 2;
12486pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_81 = 3;
12487pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_81 = 4;
12488pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_81 = 5;
12489pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_81 = 6;
12490pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_81 = 7;
12491pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_81 = 8;
12492pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_81 = 9;
12493pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_81 = 10;
12494pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_81 = 11;
12495pub const IPV4_DEVCONF_TAG: _bindgen_ty_81 = 12;
12496pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_81 = 13;
12497pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_81 = 14;
12498pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_81 = 15;
12499pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_81 = 16;
12500pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_81 = 17;
12501pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_81 = 18;
12502pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_81 = 19;
12503pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_81 = 20;
12504pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_81 = 21;
12505pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_81 = 22;
12506pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_81 = 23;
12507pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_81 = 24;
12508pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_81 = 25;
12509pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_81 = 26;
12510pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_81 = 27;
12511pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_81 = 28;
12512pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_81 = 29;
12513pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_81 = 30;
12514pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_81 = 31;
12515pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_81 = 32;
12516pub const IPV4_DEVCONF_ARP_EVICT_NOCARRIER: _bindgen_ty_81 = 33;
12517pub const __IPV4_DEVCONF_MAX: _bindgen_ty_81 = 34;
12518pub type _bindgen_ty_81 = crate::types::c_uint;
12519#[repr(C)]
12520#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12521pub struct in6_addr {
12522    pub in6_u: in6_addr__bindgen_ty_1,
12523}
12524#[repr(C)]
12525#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12526pub union in6_addr__bindgen_ty_1 {
12527    pub u6_addr8: [__u8; 16usize],
12528    pub u6_addr16: [__be16; 8usize],
12529    pub u6_addr32: [__be32; 4usize],
12530}
12531impl Default for in6_addr__bindgen_ty_1 {
12532    fn default() -> Self {
12533        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12534        unsafe {
12535            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12536            s.assume_init()
12537        }
12538    }
12539}
12540impl Default for in6_addr {
12541    fn default() -> Self {
12542        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12543        unsafe {
12544            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12545            s.assume_init()
12546        }
12547    }
12548}
12549#[repr(C)]
12550#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12551pub struct sockaddr_in6 {
12552    pub sin6_family: crate::types::c_ushort,
12553    pub sin6_port: __be16,
12554    pub sin6_flowinfo: __be32,
12555    pub sin6_addr: in6_addr,
12556    pub sin6_scope_id: __u32,
12557}
12558impl Default for sockaddr_in6 {
12559    fn default() -> Self {
12560        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12561        unsafe {
12562            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12563            s.assume_init()
12564        }
12565    }
12566}
12567#[repr(C)]
12568#[derive(Copy, Clone)]
12569pub struct ipv6_mreq {
12570    pub ipv6mr_multiaddr: in6_addr,
12571    pub ipv6mr_ifindex: crate::types::c_int,
12572}
12573impl Default for ipv6_mreq {
12574    fn default() -> Self {
12575        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12576        unsafe {
12577            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12578            s.assume_init()
12579        }
12580    }
12581}
12582#[repr(C)]
12583#[derive(Copy, Clone)]
12584pub struct in6_flowlabel_req {
12585    pub flr_dst: in6_addr,
12586    pub flr_label: __be32,
12587    pub flr_action: __u8,
12588    pub flr_share: __u8,
12589    pub flr_flags: __u16,
12590    pub flr_expires: __u16,
12591    pub flr_linger: __u16,
12592    pub __flr_pad: __u32,
12593}
12594impl Default for in6_flowlabel_req {
12595    fn default() -> Self {
12596        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12597        unsafe {
12598            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12599            s.assume_init()
12600        }
12601    }
12602}
12603#[repr(C)]
12604#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
12605pub struct in6_pktinfo {
12606    pub ipi6_addr: in6_addr,
12607    pub ipi6_ifindex: crate::types::c_int,
12608}
12609impl Default for in6_pktinfo {
12610    fn default() -> Self {
12611        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12612        unsafe {
12613            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12614            s.assume_init()
12615        }
12616    }
12617}
12618#[repr(C)]
12619#[derive(Copy, Clone)]
12620pub struct ip6_mtuinfo {
12621    pub ip6m_addr: sockaddr_in6,
12622    pub ip6m_mtu: __u32,
12623}
12624impl Default for ip6_mtuinfo {
12625    fn default() -> Self {
12626        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12627        unsafe {
12628            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12629            s.assume_init()
12630        }
12631    }
12632}
12633#[repr(C)]
12634#[derive(Copy, Clone)]
12635pub struct in6_ifreq {
12636    pub ifr6_addr: in6_addr,
12637    pub ifr6_prefixlen: __u32,
12638    pub ifr6_ifindex: crate::types::c_int,
12639}
12640impl Default for in6_ifreq {
12641    fn default() -> Self {
12642        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12643        unsafe {
12644            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12645            s.assume_init()
12646        }
12647    }
12648}
12649#[repr(C)]
12650#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12651pub struct ipv6_rt_hdr {
12652    pub nexthdr: __u8,
12653    pub hdrlen: __u8,
12654    pub type_: __u8,
12655    pub segments_left: __u8,
12656}
12657#[repr(C, packed)]
12658#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12659pub struct ipv6_opt_hdr {
12660    pub nexthdr: __u8,
12661    pub hdrlen: __u8,
12662}
12663#[repr(C)]
12664pub struct rt0_hdr {
12665    pub rt_hdr: ipv6_rt_hdr,
12666    pub reserved: __u32,
12667    pub addr: __IncompleteArrayField<in6_addr>,
12668}
12669impl Default for rt0_hdr {
12670    fn default() -> Self {
12671        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12672        unsafe {
12673            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12674            s.assume_init()
12675        }
12676    }
12677}
12678#[repr(C)]
12679#[derive(Copy, Clone)]
12680pub struct rt2_hdr {
12681    pub rt_hdr: ipv6_rt_hdr,
12682    pub reserved: __u32,
12683    pub addr: in6_addr,
12684}
12685impl Default for rt2_hdr {
12686    fn default() -> Self {
12687        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12688        unsafe {
12689            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12690            s.assume_init()
12691        }
12692    }
12693}
12694#[repr(C, packed)]
12695#[derive(Copy, Clone)]
12696pub struct ipv6_destopt_hao {
12697    pub type_: __u8,
12698    pub length: __u8,
12699    pub addr: in6_addr,
12700}
12701impl Default for ipv6_destopt_hao {
12702    fn default() -> Self {
12703        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12704        unsafe {
12705            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12706            s.assume_init()
12707        }
12708    }
12709}
12710#[repr(C)]
12711#[derive(Copy, Clone)]
12712pub struct ipv6hdr {
12713    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
12714    pub flow_lbl: [__u8; 3usize],
12715    pub payload_len: __be16,
12716    pub nexthdr: __u8,
12717    pub hop_limit: __u8,
12718    pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1,
12719}
12720#[repr(C)]
12721#[derive(Copy, Clone)]
12722pub union ipv6hdr__bindgen_ty_1 {
12723    pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1__bindgen_ty_1,
12724    pub addrs: ipv6hdr__bindgen_ty_1__bindgen_ty_2,
12725}
12726#[repr(C)]
12727#[derive(Copy, Clone)]
12728pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
12729    pub saddr: in6_addr,
12730    pub daddr: in6_addr,
12731}
12732impl Default for ipv6hdr__bindgen_ty_1__bindgen_ty_1 {
12733    fn default() -> Self {
12734        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12735        unsafe {
12736            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12737            s.assume_init()
12738        }
12739    }
12740}
12741#[repr(C)]
12742#[derive(Copy, Clone)]
12743pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
12744    pub saddr: in6_addr,
12745    pub daddr: in6_addr,
12746}
12747impl Default for ipv6hdr__bindgen_ty_1__bindgen_ty_2 {
12748    fn default() -> Self {
12749        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12750        unsafe {
12751            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12752            s.assume_init()
12753        }
12754    }
12755}
12756impl Default for ipv6hdr__bindgen_ty_1 {
12757    fn default() -> Self {
12758        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12759        unsafe {
12760            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12761            s.assume_init()
12762        }
12763    }
12764}
12765impl Default for ipv6hdr {
12766    fn default() -> Self {
12767        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12768        unsafe {
12769            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12770            s.assume_init()
12771        }
12772    }
12773}
12774impl ipv6hdr {
12775    #[inline]
12776    pub fn priority(&self) -> __u8 {
12777        self._bitfield_1.get_const::<0usize, 4u8>() as u8 as _
12778    }
12779    #[inline]
12780    pub fn set_priority(&mut self, val: __u8) {
12781        let val: u8 = val as _;
12782        self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
12783    }
12784    #[inline]
12785    pub unsafe fn priority_raw(this: *const Self) -> __u8 {
12786        unsafe {
12787            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
12788                ::std::ptr::addr_of!((*this)._bitfield_1),
12789            ) as u8 as _
12790        }
12791    }
12792    #[inline]
12793    pub unsafe fn set_priority_raw(this: *mut Self, val: __u8) {
12794        unsafe {
12795            let val: u8 = val as _;
12796            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
12797                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12798                val as u64,
12799            )
12800        }
12801    }
12802    #[inline]
12803    pub fn version(&self) -> __u8 {
12804        self._bitfield_1.get_const::<4usize, 4u8>() as u8 as _
12805    }
12806    #[inline]
12807    pub fn set_version(&mut self, val: __u8) {
12808        let val: u8 = val as _;
12809        self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
12810    }
12811    #[inline]
12812    pub unsafe fn version_raw(this: *const Self) -> __u8 {
12813        unsafe {
12814            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
12815                ::std::ptr::addr_of!((*this)._bitfield_1),
12816            ) as u8 as _
12817        }
12818    }
12819    #[inline]
12820    pub unsafe fn set_version_raw(this: *mut Self, val: __u8) {
12821        unsafe {
12822            let val: u8 = val as _;
12823            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
12824                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
12825                val as u64,
12826            )
12827        }
12828    }
12829    #[inline]
12830    pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12831        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12832        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
12833            let priority: u8 = priority as _;
12834            priority as u64
12835        });
12836        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
12837            let version: u8 = version as _;
12838            version as u64
12839        });
12840        __bindgen_bitfield_unit
12841    }
12842}
12843pub const DEVCONF_FORWARDING: _bindgen_ty_82 = 0;
12844pub const DEVCONF_HOPLIMIT: _bindgen_ty_82 = 1;
12845pub const DEVCONF_MTU6: _bindgen_ty_82 = 2;
12846pub const DEVCONF_ACCEPT_RA: _bindgen_ty_82 = 3;
12847pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_82 = 4;
12848pub const DEVCONF_AUTOCONF: _bindgen_ty_82 = 5;
12849pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_82 = 6;
12850pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_82 = 7;
12851pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_82 = 8;
12852pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_82 = 9;
12853pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_82 = 10;
12854pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_82 = 11;
12855pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_82 = 12;
12856pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_82 = 13;
12857pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_82 = 14;
12858pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_82 = 15;
12859pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_82 = 16;
12860pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_82 = 17;
12861pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_82 = 18;
12862pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_82 = 19;
12863pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_82 = 20;
12864pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_82 = 21;
12865pub const DEVCONF_PROXY_NDP: _bindgen_ty_82 = 22;
12866pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_82 = 23;
12867pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_82 = 24;
12868pub const DEVCONF_MC_FORWARDING: _bindgen_ty_82 = 25;
12869pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_82 = 26;
12870pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_82 = 27;
12871pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_82 = 28;
12872pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_82 = 29;
12873pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_82 = 30;
12874pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_82 = 31;
12875pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_82 = 32;
12876pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_82 = 33;
12877pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_82 = 34;
12878pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_82 = 35;
12879pub const DEVCONF_STABLE_SECRET: _bindgen_ty_82 = 36;
12880pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_82 = 37;
12881pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_82 = 38;
12882pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_82 = 39;
12883pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_82 = 40;
12884pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_82 = 41;
12885pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_82 = 42;
12886pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_82 = 43;
12887pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_82 = 44;
12888pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_82 = 45;
12889pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_82 = 46;
12890pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_82 = 47;
12891pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_82 = 48;
12892pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_82 = 49;
12893pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_82 = 50;
12894pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_82 = 51;
12895pub const DEVCONF_RA_DEFRTR_METRIC: _bindgen_ty_82 = 52;
12896pub const DEVCONF_IOAM6_ENABLED: _bindgen_ty_82 = 53;
12897pub const DEVCONF_IOAM6_ID: _bindgen_ty_82 = 54;
12898pub const DEVCONF_IOAM6_ID_WIDE: _bindgen_ty_82 = 55;
12899pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_82 = 56;
12900pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_82 = 57;
12901pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_82 = 58;
12902pub const DEVCONF_MAX: _bindgen_ty_82 = 59;
12903pub type _bindgen_ty_82 = crate::types::c_uint;
12904pub const kcmp_type_KCMP_FILE: kcmp_type = 0;
12905pub const kcmp_type_KCMP_VM: kcmp_type = 1;
12906pub const kcmp_type_KCMP_FILES: kcmp_type = 2;
12907pub const kcmp_type_KCMP_FS: kcmp_type = 3;
12908pub const kcmp_type_KCMP_SIGHAND: kcmp_type = 4;
12909pub const kcmp_type_KCMP_IO: kcmp_type = 5;
12910pub const kcmp_type_KCMP_SYSVSEM: kcmp_type = 6;
12911pub const kcmp_type_KCMP_EPOLL_TFD: kcmp_type = 7;
12912pub const kcmp_type_KCMP_TYPES: kcmp_type = 8;
12913pub type kcmp_type = crate::types::c_uint;
12914#[repr(C)]
12915#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12916pub struct kcmp_epoll_slot {
12917    pub efd: __u32,
12918    pub tfd: __u32,
12919    pub toff: __u32,
12920}
12921pub const LO_FLAGS_READ_ONLY: _bindgen_ty_83 = 1;
12922pub const LO_FLAGS_AUTOCLEAR: _bindgen_ty_83 = 4;
12923pub const LO_FLAGS_PARTSCAN: _bindgen_ty_83 = 8;
12924pub const LO_FLAGS_DIRECT_IO: _bindgen_ty_83 = 16;
12925pub type _bindgen_ty_83 = crate::types::c_uint;
12926#[repr(C)]
12927#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12928pub struct loop_info {
12929    pub lo_number: crate::types::c_int,
12930    pub __bindgen_padding_0: [u8; 4usize],
12931    pub lo_device: __kernel_old_dev_t,
12932    pub lo_inode: crate::types::c_ulong,
12933    pub lo_rdevice: __kernel_old_dev_t,
12934    pub lo_offset: crate::types::c_int,
12935    pub lo_encrypt_type: crate::types::c_int,
12936    pub lo_encrypt_key_size: crate::types::c_int,
12937    pub lo_flags: crate::types::c_int,
12938    pub lo_name: [crate::types::c_char; 64usize],
12939    pub lo_encrypt_key: [crate::types::c_uchar; 32usize],
12940    pub lo_init: [crate::types::c_ulong; 2usize],
12941    pub reserved: [crate::types::c_char; 4usize],
12942    pub __bindgen_padding_1: [u8; 4usize],
12943}
12944impl Default for loop_info {
12945    fn default() -> Self {
12946        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12947        unsafe {
12948            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12949            s.assume_init()
12950        }
12951    }
12952}
12953#[repr(C)]
12954#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12955pub struct loop_info64 {
12956    pub lo_device: __u64,
12957    pub lo_inode: __u64,
12958    pub lo_rdevice: __u64,
12959    pub lo_offset: __u64,
12960    pub lo_sizelimit: __u64,
12961    pub lo_number: __u32,
12962    pub lo_encrypt_type: __u32,
12963    pub lo_encrypt_key_size: __u32,
12964    pub lo_flags: __u32,
12965    pub lo_file_name: [__u8; 64usize],
12966    pub lo_crypt_name: [__u8; 64usize],
12967    pub lo_encrypt_key: [__u8; 32usize],
12968    pub lo_init: [__u64; 2usize],
12969}
12970impl Default for loop_info64 {
12971    fn default() -> Self {
12972        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12973        unsafe {
12974            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12975            s.assume_init()
12976        }
12977    }
12978}
12979#[repr(C)]
12980#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
12981pub struct loop_config {
12982    pub fd: __u32,
12983    pub block_size: __u32,
12984    pub info: loop_info64,
12985    pub __reserved: [__u64; 8usize],
12986}
12987impl Default for loop_config {
12988    fn default() -> Self {
12989        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12990        unsafe {
12991            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12992            s.assume_init()
12993        }
12994    }
12995}
12996pub const membarrier_cmd_MEMBARRIER_CMD_QUERY: membarrier_cmd = 0;
12997pub const membarrier_cmd_MEMBARRIER_CMD_GLOBAL: membarrier_cmd = 1;
12998pub const membarrier_cmd_MEMBARRIER_CMD_GLOBAL_EXPEDITED: membarrier_cmd = 2;
12999pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED: membarrier_cmd = 4;
13000pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED: membarrier_cmd = 8;
13001pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED: membarrier_cmd = 16;
13002pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE: membarrier_cmd = 32;
13003pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE: membarrier_cmd = 64;
13004pub const membarrier_cmd_MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ: membarrier_cmd = 128;
13005pub const membarrier_cmd_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ: membarrier_cmd = 256;
13006pub const membarrier_cmd_MEMBARRIER_CMD_GET_REGISTRATIONS: membarrier_cmd = 512;
13007pub const membarrier_cmd_MEMBARRIER_CMD_SHARED: membarrier_cmd = 1;
13008pub type membarrier_cmd = crate::types::c_uint;
13009pub const membarrier_cmd_flag_MEMBARRIER_CMD_FLAG_CPU: membarrier_cmd_flag = 1;
13010pub type membarrier_cmd_flag = crate::types::c_uint;
13011#[repr(C)]
13012#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13013pub struct cachestat_range {
13014    pub off: __u64,
13015    pub len: __u64,
13016}
13017#[repr(C)]
13018#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13019pub struct cachestat {
13020    pub nr_cache: __u64,
13021    pub nr_dirty: __u64,
13022    pub nr_writeback: __u64,
13023    pub nr_evicted: __u64,
13024    pub nr_recently_evicted: __u64,
13025}
13026#[repr(C)]
13027#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13028pub struct mq_attr {
13029    pub mq_flags: __kernel_long_t,
13030    pub mq_maxmsg: __kernel_long_t,
13031    pub mq_msgsize: __kernel_long_t,
13032    pub mq_curmsgs: __kernel_long_t,
13033    pub __reserved: [__kernel_long_t; 4usize],
13034}
13035#[doc = " An integral type representing an IPv4 address."]
13036pub type in_addr_t = u32;
13037#[doc = " A structure representing an IPv4 address."]
13038#[repr(C)]
13039#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13040pub struct in_addr {
13041    pub s_addr: in_addr_t,
13042}
13043pub const IPPROTO_IP: _bindgen_ty_84 = 0;
13044pub const IPPROTO_ICMP: _bindgen_ty_84 = 1;
13045pub const IPPROTO_IGMP: _bindgen_ty_84 = 2;
13046pub const IPPROTO_IPIP: _bindgen_ty_84 = 4;
13047pub const IPPROTO_TCP: _bindgen_ty_84 = 6;
13048pub const IPPROTO_EGP: _bindgen_ty_84 = 8;
13049pub const IPPROTO_PUP: _bindgen_ty_84 = 12;
13050pub const IPPROTO_UDP: _bindgen_ty_84 = 17;
13051pub const IPPROTO_IDP: _bindgen_ty_84 = 22;
13052pub const IPPROTO_TP: _bindgen_ty_84 = 29;
13053pub const IPPROTO_DCCP: _bindgen_ty_84 = 33;
13054pub const IPPROTO_IPV6: _bindgen_ty_84 = 41;
13055pub const IPPROTO_RSVP: _bindgen_ty_84 = 46;
13056pub const IPPROTO_GRE: _bindgen_ty_84 = 47;
13057pub const IPPROTO_ESP: _bindgen_ty_84 = 50;
13058pub const IPPROTO_AH: _bindgen_ty_84 = 51;
13059pub const IPPROTO_MTP: _bindgen_ty_84 = 92;
13060pub const IPPROTO_BEETPH: _bindgen_ty_84 = 94;
13061pub const IPPROTO_ENCAP: _bindgen_ty_84 = 98;
13062pub const IPPROTO_PIM: _bindgen_ty_84 = 103;
13063pub const IPPROTO_COMP: _bindgen_ty_84 = 108;
13064pub const IPPROTO_L2TP: _bindgen_ty_84 = 115;
13065pub const IPPROTO_SCTP: _bindgen_ty_84 = 132;
13066pub const IPPROTO_UDPLITE: _bindgen_ty_84 = 136;
13067pub const IPPROTO_MPLS: _bindgen_ty_84 = 137;
13068pub const IPPROTO_ETHERNET: _bindgen_ty_84 = 143;
13069pub const IPPROTO_RAW: _bindgen_ty_84 = 255;
13070pub const IPPROTO_SMC: _bindgen_ty_84 = 256;
13071pub const IPPROTO_MPTCP: _bindgen_ty_84 = 262;
13072pub const IPPROTO_MAX: _bindgen_ty_84 = 263;
13073pub type _bindgen_ty_84 = crate::types::c_uint;
13074#[repr(C)]
13075#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13076pub struct ip_mreq {
13077    pub imr_multiaddr: in_addr,
13078    pub imr_interface: in_addr,
13079}
13080#[repr(C)]
13081#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13082pub struct ip_mreqn {
13083    pub imr_multiaddr: in_addr,
13084    pub imr_address: in_addr,
13085    pub imr_ifindex: crate::types::c_int,
13086}
13087#[repr(C)]
13088#[derive(Copy, Clone)]
13089pub struct group_req {
13090    pub gr_interface: __u32,
13091    pub __bindgen_padding_0: [u8; 4usize],
13092    pub gr_group: sockaddr_storage,
13093}
13094impl Default for group_req {
13095    fn default() -> Self {
13096        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13097        unsafe {
13098            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13099            s.assume_init()
13100        }
13101    }
13102}
13103#[repr(C)]
13104#[derive(Copy, Clone)]
13105pub struct group_source_req {
13106    pub gsr_interface: __u32,
13107    pub __bindgen_padding_0: [u8; 4usize],
13108    pub gsr_group: sockaddr_storage,
13109    pub gsr_source: sockaddr_storage,
13110}
13111impl Default for group_source_req {
13112    fn default() -> Self {
13113        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13114        unsafe {
13115            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13116            s.assume_init()
13117        }
13118    }
13119}
13120#[repr(C)]
13121#[repr(align(8))]
13122#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13123pub struct group_filter {
13124    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13125}
13126#[repr(C)]
13127#[repr(align(8))]
13128#[derive(Copy, Clone)]
13129pub union group_filter__bindgen_ty_1 {
13130    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13131}
13132#[repr(C)]
13133#[repr(align(8))]
13134#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13135pub struct group_filter__bindgen_ty_1__bindgen_ty_1 {
13136    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 272usize]>,
13137}
13138#[repr(C)]
13139#[repr(align(8))]
13140#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13141pub struct group_filter__bindgen_ty_1__bindgen_ty_2 {
13142    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 144usize]>,
13143}
13144impl Default for group_filter__bindgen_ty_1 {
13145    fn default() -> Self {
13146        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13147        unsafe {
13148            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13149            s.assume_init()
13150        }
13151    }
13152}
13153#[repr(C)]
13154#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13155pub struct in_pktinfo {
13156    pub ipi_ifindex: crate::types::c_int,
13157    pub ipi_spec_dst: in_addr,
13158    pub ipi_addr: in_addr,
13159}
13160#[repr(C)]
13161#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13162pub struct sockaddr_in {
13163    pub sin_family: __kernel_sa_family_t,
13164    pub sin_port: __be16,
13165    pub sin_addr: in_addr,
13166    pub __pad: [crate::types::c_uchar; 8usize],
13167}
13168pub const nf_inet_hooks_NF_INET_PRE_ROUTING: nf_inet_hooks = 0;
13169pub const nf_inet_hooks_NF_INET_LOCAL_IN: nf_inet_hooks = 1;
13170pub const nf_inet_hooks_NF_INET_FORWARD: nf_inet_hooks = 2;
13171pub const nf_inet_hooks_NF_INET_LOCAL_OUT: nf_inet_hooks = 3;
13172pub const nf_inet_hooks_NF_INET_POST_ROUTING: nf_inet_hooks = 4;
13173pub const nf_inet_hooks_NF_INET_NUMHOOKS: nf_inet_hooks = 5;
13174pub const nf_inet_hooks_NF_INET_INGRESS: nf_inet_hooks = 5;
13175pub type nf_inet_hooks = crate::types::c_uint;
13176pub const nf_dev_hooks_NF_NETDEV_INGRESS: nf_dev_hooks = 0;
13177pub const nf_dev_hooks_NF_NETDEV_EGRESS: nf_dev_hooks = 1;
13178pub const nf_dev_hooks_NF_NETDEV_NUMHOOKS: nf_dev_hooks = 2;
13179pub type nf_dev_hooks = crate::types::c_uint;
13180pub const NFPROTO_UNSPEC: _bindgen_ty_85 = 0;
13181pub const NFPROTO_INET: _bindgen_ty_85 = 1;
13182pub const NFPROTO_IPV4: _bindgen_ty_85 = 2;
13183pub const NFPROTO_ARP: _bindgen_ty_85 = 3;
13184pub const NFPROTO_NETDEV: _bindgen_ty_85 = 5;
13185pub const NFPROTO_BRIDGE: _bindgen_ty_85 = 7;
13186pub const NFPROTO_IPV6: _bindgen_ty_85 = 10;
13187pub const NFPROTO_DECNET: _bindgen_ty_85 = 12;
13188pub const NFPROTO_NUMPROTO: _bindgen_ty_85 = 13;
13189pub type _bindgen_ty_85 = crate::types::c_uint;
13190#[repr(C)]
13191#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13192pub union nf_inet_addr {
13193    pub all: [__u32; 4usize],
13194    pub ip: __be32,
13195    pub ip6: [__be32; 4usize],
13196    pub in_: in_addr,
13197    pub in6: in6_addr,
13198}
13199impl Default for nf_inet_addr {
13200    fn default() -> Self {
13201        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13202        unsafe {
13203            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13204            s.assume_init()
13205        }
13206    }
13207}
13208pub const ip_conntrack_info_IP_CT_ESTABLISHED: ip_conntrack_info = 0;
13209pub const ip_conntrack_info_IP_CT_RELATED: ip_conntrack_info = 1;
13210pub const ip_conntrack_info_IP_CT_NEW: ip_conntrack_info = 2;
13211pub const ip_conntrack_info_IP_CT_IS_REPLY: ip_conntrack_info = 3;
13212pub const ip_conntrack_info_IP_CT_ESTABLISHED_REPLY: ip_conntrack_info = 3;
13213pub const ip_conntrack_info_IP_CT_RELATED_REPLY: ip_conntrack_info = 4;
13214pub const ip_conntrack_info_IP_CT_NUMBER: ip_conntrack_info = 5;
13215pub const ip_conntrack_info_IP_CT_NEW_REPLY: ip_conntrack_info = 5;
13216pub type ip_conntrack_info = crate::types::c_uint;
13217pub const ip_conntrack_status_IPS_EXPECTED_BIT: ip_conntrack_status = 0;
13218pub const ip_conntrack_status_IPS_EXPECTED: ip_conntrack_status = 1;
13219pub const ip_conntrack_status_IPS_SEEN_REPLY_BIT: ip_conntrack_status = 1;
13220pub const ip_conntrack_status_IPS_SEEN_REPLY: ip_conntrack_status = 2;
13221pub const ip_conntrack_status_IPS_ASSURED_BIT: ip_conntrack_status = 2;
13222pub const ip_conntrack_status_IPS_ASSURED: ip_conntrack_status = 4;
13223pub const ip_conntrack_status_IPS_CONFIRMED_BIT: ip_conntrack_status = 3;
13224pub const ip_conntrack_status_IPS_CONFIRMED: ip_conntrack_status = 8;
13225pub const ip_conntrack_status_IPS_SRC_NAT_BIT: ip_conntrack_status = 4;
13226pub const ip_conntrack_status_IPS_SRC_NAT: ip_conntrack_status = 16;
13227pub const ip_conntrack_status_IPS_DST_NAT_BIT: ip_conntrack_status = 5;
13228pub const ip_conntrack_status_IPS_DST_NAT: ip_conntrack_status = 32;
13229pub const ip_conntrack_status_IPS_NAT_MASK: ip_conntrack_status = 48;
13230pub const ip_conntrack_status_IPS_SEQ_ADJUST_BIT: ip_conntrack_status = 6;
13231pub const ip_conntrack_status_IPS_SEQ_ADJUST: ip_conntrack_status = 64;
13232pub const ip_conntrack_status_IPS_SRC_NAT_DONE_BIT: ip_conntrack_status = 7;
13233pub const ip_conntrack_status_IPS_SRC_NAT_DONE: ip_conntrack_status = 128;
13234pub const ip_conntrack_status_IPS_DST_NAT_DONE_BIT: ip_conntrack_status = 8;
13235pub const ip_conntrack_status_IPS_DST_NAT_DONE: ip_conntrack_status = 256;
13236pub const ip_conntrack_status_IPS_NAT_DONE_MASK: ip_conntrack_status = 384;
13237pub const ip_conntrack_status_IPS_DYING_BIT: ip_conntrack_status = 9;
13238pub const ip_conntrack_status_IPS_DYING: ip_conntrack_status = 512;
13239pub const ip_conntrack_status_IPS_FIXED_TIMEOUT_BIT: ip_conntrack_status = 10;
13240pub const ip_conntrack_status_IPS_FIXED_TIMEOUT: ip_conntrack_status = 1024;
13241pub const ip_conntrack_status_IPS_TEMPLATE_BIT: ip_conntrack_status = 11;
13242pub const ip_conntrack_status_IPS_TEMPLATE: ip_conntrack_status = 2048;
13243pub const ip_conntrack_status_IPS_UNTRACKED_BIT: ip_conntrack_status = 12;
13244pub const ip_conntrack_status_IPS_UNTRACKED: ip_conntrack_status = 4096;
13245pub const ip_conntrack_status_IPS_HELPER_BIT: ip_conntrack_status = 13;
13246pub const ip_conntrack_status_IPS_HELPER: ip_conntrack_status = 8192;
13247pub const ip_conntrack_status_IPS_OFFLOAD_BIT: ip_conntrack_status = 14;
13248pub const ip_conntrack_status_IPS_OFFLOAD: ip_conntrack_status = 16384;
13249pub const ip_conntrack_status_IPS_HW_OFFLOAD_BIT: ip_conntrack_status = 15;
13250pub const ip_conntrack_status_IPS_HW_OFFLOAD: ip_conntrack_status = 32768;
13251pub const ip_conntrack_status_IPS_UNCHANGEABLE_MASK: ip_conntrack_status = 56313;
13252pub const ip_conntrack_status___IPS_MAX_BIT: ip_conntrack_status = 16;
13253pub type ip_conntrack_status = crate::types::c_uint;
13254pub const ip_conntrack_events_IPCT_NEW: ip_conntrack_events = 0;
13255pub const ip_conntrack_events_IPCT_RELATED: ip_conntrack_events = 1;
13256pub const ip_conntrack_events_IPCT_DESTROY: ip_conntrack_events = 2;
13257pub const ip_conntrack_events_IPCT_REPLY: ip_conntrack_events = 3;
13258pub const ip_conntrack_events_IPCT_ASSURED: ip_conntrack_events = 4;
13259pub const ip_conntrack_events_IPCT_PROTOINFO: ip_conntrack_events = 5;
13260pub const ip_conntrack_events_IPCT_HELPER: ip_conntrack_events = 6;
13261pub const ip_conntrack_events_IPCT_MARK: ip_conntrack_events = 7;
13262pub const ip_conntrack_events_IPCT_SEQADJ: ip_conntrack_events = 8;
13263pub const ip_conntrack_events_IPCT_NATSEQADJ: ip_conntrack_events = 8;
13264pub const ip_conntrack_events_IPCT_SECMARK: ip_conntrack_events = 9;
13265pub const ip_conntrack_events_IPCT_LABEL: ip_conntrack_events = 10;
13266pub const ip_conntrack_events_IPCT_SYNPROXY: ip_conntrack_events = 11;
13267pub type ip_conntrack_events = crate::types::c_uint;
13268pub const ip_conntrack_expect_events_IPEXP_NEW: ip_conntrack_expect_events = 0;
13269pub const ip_conntrack_expect_events_IPEXP_DESTROY: ip_conntrack_expect_events = 1;
13270pub type ip_conntrack_expect_events = crate::types::c_uint;
13271pub const ip_conntrack_dir_IP_CT_DIR_ORIGINAL: ip_conntrack_dir = 0;
13272pub const ip_conntrack_dir_IP_CT_DIR_REPLY: ip_conntrack_dir = 1;
13273pub const ip_conntrack_dir_IP_CT_DIR_MAX: ip_conntrack_dir = 2;
13274pub type ip_conntrack_dir = crate::types::c_uint;
13275#[repr(C)]
13276#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13277pub union nf_conntrack_man_proto {
13278    pub all: __be16,
13279    pub tcp: nf_conntrack_man_proto__bindgen_ty_1,
13280    pub udp: nf_conntrack_man_proto__bindgen_ty_2,
13281    pub icmp: nf_conntrack_man_proto__bindgen_ty_3,
13282    pub dccp: nf_conntrack_man_proto__bindgen_ty_4,
13283    pub sctp: nf_conntrack_man_proto__bindgen_ty_5,
13284    pub gre: nf_conntrack_man_proto__bindgen_ty_6,
13285}
13286#[repr(C)]
13287#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13288pub struct nf_conntrack_man_proto__bindgen_ty_1 {
13289    pub port: __be16,
13290}
13291#[repr(C)]
13292#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13293pub struct nf_conntrack_man_proto__bindgen_ty_2 {
13294    pub port: __be16,
13295}
13296#[repr(C)]
13297#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13298pub struct nf_conntrack_man_proto__bindgen_ty_3 {
13299    pub id: __be16,
13300}
13301#[repr(C)]
13302#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13303pub struct nf_conntrack_man_proto__bindgen_ty_4 {
13304    pub port: __be16,
13305}
13306#[repr(C)]
13307#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13308pub struct nf_conntrack_man_proto__bindgen_ty_5 {
13309    pub port: __be16,
13310}
13311#[repr(C)]
13312#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
13313pub struct nf_conntrack_man_proto__bindgen_ty_6 {
13314    pub key: __be16,
13315}
13316impl Default for nf_conntrack_man_proto {
13317    fn default() -> Self {
13318        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13319        unsafe {
13320            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13321            s.assume_init()
13322        }
13323    }
13324}
13325#[repr(C)]
13326#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13327pub struct nf_nat_ipv4_range {
13328    pub flags: crate::types::c_uint,
13329    pub min_ip: __be32,
13330    pub max_ip: __be32,
13331    pub min: nf_conntrack_man_proto,
13332    pub max: nf_conntrack_man_proto,
13333}
13334impl Default for nf_nat_ipv4_range {
13335    fn default() -> Self {
13336        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13337        unsafe {
13338            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13339            s.assume_init()
13340        }
13341    }
13342}
13343#[repr(C)]
13344#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13345pub struct nf_nat_ipv4_multi_range_compat {
13346    pub rangesize: crate::types::c_uint,
13347    pub range: [nf_nat_ipv4_range; 1usize],
13348}
13349impl Default for nf_nat_ipv4_multi_range_compat {
13350    fn default() -> Self {
13351        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13352        unsafe {
13353            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13354            s.assume_init()
13355        }
13356    }
13357}
13358#[repr(C)]
13359#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13360pub struct nf_nat_range {
13361    pub flags: crate::types::c_uint,
13362    pub min_addr: nf_inet_addr,
13363    pub max_addr: nf_inet_addr,
13364    pub min_proto: nf_conntrack_man_proto,
13365    pub max_proto: nf_conntrack_man_proto,
13366}
13367impl Default for nf_nat_range {
13368    fn default() -> Self {
13369        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13370        unsafe {
13371            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13372            s.assume_init()
13373        }
13374    }
13375}
13376#[repr(C)]
13377#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13378pub struct nf_nat_range2 {
13379    pub flags: crate::types::c_uint,
13380    pub min_addr: nf_inet_addr,
13381    pub max_addr: nf_inet_addr,
13382    pub min_proto: nf_conntrack_man_proto,
13383    pub max_proto: nf_conntrack_man_proto,
13384    pub base_proto: nf_conntrack_man_proto,
13385    pub __bindgen_padding_0: [u8; 2usize],
13386}
13387impl Default for nf_nat_range2 {
13388    fn default() -> Self {
13389        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13390        unsafe {
13391            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13392            s.assume_init()
13393        }
13394    }
13395}
13396#[repr(C)]
13397#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13398pub struct xt_tproxy_target_info {
13399    pub mark_mask: __u32,
13400    pub mark_value: __u32,
13401    pub laddr: __be32,
13402    pub lport: __be16,
13403    pub __bindgen_padding_0: [u8; 2usize],
13404}
13405#[repr(C)]
13406#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
13407pub struct xt_tproxy_target_info_v1 {
13408    pub mark_mask: __u32,
13409    pub mark_value: __u32,
13410    pub laddr: nf_inet_addr,
13411    pub lport: __be16,
13412    pub __bindgen_padding_0: [u8; 2usize],
13413}
13414impl Default for xt_tproxy_target_info_v1 {
13415    fn default() -> Self {
13416        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13417        unsafe {
13418            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13419            s.assume_init()
13420        }
13421    }
13422}
13423#[repr(C)]
13424#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13425pub struct bpf_prog {
13426    _unused: [u8; 0],
13427}
13428#[repr(C)]
13429#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13430pub struct xt_bpf_info {
13431    pub bpf_program_num_elem: __u16,
13432    pub __bindgen_padding_0: [u8; 2usize],
13433    pub bpf_program: [sock_filter; 64usize],
13434    pub __bindgen_padding_1: [u8; 4usize],
13435    pub filter: uref<bpf_prog>,
13436}
13437impl Default for xt_bpf_info {
13438    fn default() -> Self {
13439        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13440        unsafe {
13441            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13442            s.assume_init()
13443        }
13444    }
13445}
13446pub const xt_bpf_modes_XT_BPF_MODE_BYTECODE: xt_bpf_modes = 0;
13447pub const xt_bpf_modes_XT_BPF_MODE_FD_PINNED: xt_bpf_modes = 1;
13448pub const xt_bpf_modes_XT_BPF_MODE_FD_ELF: xt_bpf_modes = 2;
13449pub type xt_bpf_modes = crate::types::c_uint;
13450#[repr(C)]
13451#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13452pub struct xt_bpf_info_v1 {
13453    pub mode: __u16,
13454    pub bpf_program_num_elem: __u16,
13455    pub fd: __s32,
13456    pub __bindgen_anon_1: xt_bpf_info_v1__bindgen_ty_1,
13457    pub filter: uref<bpf_prog>,
13458}
13459#[repr(C)]
13460#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13461pub union xt_bpf_info_v1__bindgen_ty_1 {
13462    pub bpf_program: [sock_filter; 64usize],
13463    pub path: [crate::types::c_char; 512usize],
13464}
13465impl Default for xt_bpf_info_v1__bindgen_ty_1 {
13466    fn default() -> Self {
13467        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13468        unsafe {
13469            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13470            s.assume_init()
13471        }
13472    }
13473}
13474impl Default for xt_bpf_info_v1 {
13475    fn default() -> Self {
13476        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13477        unsafe {
13478            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13479            s.assume_init()
13480        }
13481    }
13482}
13483#[repr(C)]
13484#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13485pub struct xt_mark_tginfo2 {
13486    pub mark: __u32,
13487    pub mask: __u32,
13488}
13489#[repr(C)]
13490#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13491pub struct xt_mark_mtinfo1 {
13492    pub mark: __u32,
13493    pub mask: __u32,
13494    pub invert: __u8,
13495    pub __bindgen_padding_0: [u8; 3usize],
13496}
13497pub const nf_ip_hook_priorities_NF_IP_PRI_FIRST: nf_ip_hook_priorities = -2147483648;
13498pub const nf_ip_hook_priorities_NF_IP_PRI_RAW_BEFORE_DEFRAG: nf_ip_hook_priorities = -450;
13499pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_DEFRAG: nf_ip_hook_priorities = -400;
13500pub const nf_ip_hook_priorities_NF_IP_PRI_RAW: nf_ip_hook_priorities = -300;
13501pub const nf_ip_hook_priorities_NF_IP_PRI_SELINUX_FIRST: nf_ip_hook_priorities = -225;
13502pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK: nf_ip_hook_priorities = -200;
13503pub const nf_ip_hook_priorities_NF_IP_PRI_MANGLE: nf_ip_hook_priorities = -150;
13504pub const nf_ip_hook_priorities_NF_IP_PRI_NAT_DST: nf_ip_hook_priorities = -100;
13505pub const nf_ip_hook_priorities_NF_IP_PRI_FILTER: nf_ip_hook_priorities = 0;
13506pub const nf_ip_hook_priorities_NF_IP_PRI_SECURITY: nf_ip_hook_priorities = 50;
13507pub const nf_ip_hook_priorities_NF_IP_PRI_NAT_SRC: nf_ip_hook_priorities = 100;
13508pub const nf_ip_hook_priorities_NF_IP_PRI_SELINUX_LAST: nf_ip_hook_priorities = 225;
13509pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_HELPER: nf_ip_hook_priorities = 300;
13510pub const nf_ip_hook_priorities_NF_IP_PRI_CONNTRACK_CONFIRM: nf_ip_hook_priorities = 2147483647;
13511pub const nf_ip_hook_priorities_NF_IP_PRI_LAST: nf_ip_hook_priorities = 2147483647;
13512pub type nf_ip_hook_priorities = crate::types::c_int;
13513#[repr(C)]
13514pub struct xt_entry_match {
13515    pub u: xt_entry_match__bindgen_ty_1,
13516    pub data: __IncompleteArrayField<crate::types::c_uchar>,
13517}
13518#[repr(C)]
13519#[derive(Copy, Clone)]
13520pub union xt_entry_match__bindgen_ty_1 {
13521    pub user: xt_entry_match__bindgen_ty_1__bindgen_ty_1,
13522    pub kernel: xt_entry_match__bindgen_ty_1__bindgen_ty_2,
13523    pub match_size: __u16,
13524}
13525#[repr(C)]
13526#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13527pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_1 {
13528    pub match_size: __u16,
13529    pub name: [crate::types::c_char; 29usize],
13530    pub revision: __u8,
13531}
13532#[repr(C)]
13533#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13534pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
13535    pub match_size: __u16,
13536    pub __bindgen_padding_0: [u8; 6usize],
13537    pub match_: uref<xt_match>,
13538}
13539impl Default for xt_entry_match__bindgen_ty_1__bindgen_ty_2 {
13540    fn default() -> Self {
13541        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13542        unsafe {
13543            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13544            s.assume_init()
13545        }
13546    }
13547}
13548impl Default for xt_entry_match__bindgen_ty_1 {
13549    fn default() -> Self {
13550        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13551        unsafe {
13552            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13553            s.assume_init()
13554        }
13555    }
13556}
13557impl Default for xt_entry_match {
13558    fn default() -> Self {
13559        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13560        unsafe {
13561            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13562            s.assume_init()
13563        }
13564    }
13565}
13566#[repr(C)]
13567pub struct xt_entry_target {
13568    pub u: xt_entry_target__bindgen_ty_1,
13569    pub data: __IncompleteArrayField<crate::types::c_uchar>,
13570}
13571#[repr(C)]
13572#[derive(Copy, Clone)]
13573pub union xt_entry_target__bindgen_ty_1 {
13574    pub user: xt_entry_target__bindgen_ty_1__bindgen_ty_1,
13575    pub kernel: xt_entry_target__bindgen_ty_1__bindgen_ty_2,
13576    pub target_size: __u16,
13577}
13578#[repr(C)]
13579#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13580pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_1 {
13581    pub target_size: __u16,
13582    pub name: [crate::types::c_char; 29usize],
13583    pub revision: __u8,
13584}
13585#[repr(C)]
13586#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13587pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
13588    pub target_size: __u16,
13589    pub __bindgen_padding_0: [u8; 6usize],
13590    pub target: uref<xt_target>,
13591}
13592impl Default for xt_entry_target__bindgen_ty_1__bindgen_ty_2 {
13593    fn default() -> Self {
13594        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13595        unsafe {
13596            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13597            s.assume_init()
13598        }
13599    }
13600}
13601impl Default for xt_entry_target__bindgen_ty_1 {
13602    fn default() -> Self {
13603        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13604        unsafe {
13605            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13606            s.assume_init()
13607        }
13608    }
13609}
13610impl Default for xt_entry_target {
13611    fn default() -> Self {
13612        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13613        unsafe {
13614            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13615            s.assume_init()
13616        }
13617    }
13618}
13619#[repr(C)]
13620pub struct xt_standard_target {
13621    pub target: xt_entry_target,
13622    pub verdict: crate::types::c_int,
13623    pub __bindgen_padding_0: [u8; 4usize],
13624}
13625impl Default for xt_standard_target {
13626    fn default() -> Self {
13627        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13628        unsafe {
13629            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13630            s.assume_init()
13631        }
13632    }
13633}
13634#[repr(C)]
13635pub struct xt_error_target {
13636    pub target: xt_entry_target,
13637    pub errorname: [crate::types::c_char; 30usize],
13638    pub __bindgen_padding_0: [u8; 2usize],
13639}
13640impl Default for xt_error_target {
13641    fn default() -> Self {
13642        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13643        unsafe {
13644            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13645            s.assume_init()
13646        }
13647    }
13648}
13649#[repr(C)]
13650#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13651pub struct xt_get_revision {
13652    pub name: [crate::types::c_char; 29usize],
13653    pub revision: __u8,
13654}
13655#[repr(C)]
13656#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13657pub struct _xt_align {
13658    pub u8_: __u8,
13659    pub __bindgen_padding_0: u8,
13660    pub u16_: __u16,
13661    pub u32_: __u32,
13662    pub u64_: __u64,
13663}
13664#[repr(C)]
13665#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13666pub struct xt_counters {
13667    pub pcnt: __u64,
13668    pub bcnt: __u64,
13669}
13670#[repr(C)]
13671#[derive(Debug, Default, FromBytes, Immutable, KnownLayout)]
13672pub struct xt_counters_info {
13673    pub name: [crate::types::c_char; 32usize],
13674    pub num_counters: crate::types::c_uint,
13675    pub __bindgen_padding_0: [u8; 4usize],
13676    pub counters: __IncompleteArrayField<xt_counters>,
13677}
13678#[repr(C)]
13679#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13680pub struct xt_tcp {
13681    pub spts: [__u16; 2usize],
13682    pub dpts: [__u16; 2usize],
13683    pub option: __u8,
13684    pub flg_mask: __u8,
13685    pub flg_cmp: __u8,
13686    pub invflags: __u8,
13687}
13688#[repr(C)]
13689#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13690pub struct xt_udp {
13691    pub spts: [__u16; 2usize],
13692    pub dpts: [__u16; 2usize],
13693    pub invflags: __u8,
13694    pub __bindgen_padding_0: u8,
13695}
13696#[repr(C)]
13697#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13698pub struct ipt_ip {
13699    pub src: in_addr,
13700    pub dst: in_addr,
13701    pub smsk: in_addr,
13702    pub dmsk: in_addr,
13703    pub iniface: [crate::types::c_char; 16usize],
13704    pub outiface: [crate::types::c_char; 16usize],
13705    pub iniface_mask: [crate::types::c_uchar; 16usize],
13706    pub outiface_mask: [crate::types::c_uchar; 16usize],
13707    pub proto: __u16,
13708    pub flags: __u8,
13709    pub invflags: __u8,
13710}
13711#[repr(C)]
13712#[derive(Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13713pub struct ipt_entry {
13714    pub ip: ipt_ip,
13715    pub nfcache: crate::types::c_uint,
13716    pub target_offset: __u16,
13717    pub next_offset: __u16,
13718    pub comefrom: crate::types::c_uint,
13719    pub counters: xt_counters,
13720    pub elems: __IncompleteArrayField<crate::types::c_uchar>,
13721}
13722#[repr(C)]
13723#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13724pub struct ipt_icmp {
13725    pub type_: __u8,
13726    pub code: [__u8; 2usize],
13727    pub invflags: __u8,
13728}
13729#[repr(C)]
13730#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13731pub struct ipt_getinfo {
13732    pub name: [crate::types::c_char; 32usize],
13733    pub valid_hooks: crate::types::c_uint,
13734    pub hook_entry: [crate::types::c_uint; 5usize],
13735    pub underflow: [crate::types::c_uint; 5usize],
13736    pub num_entries: crate::types::c_uint,
13737    pub size: crate::types::c_uint,
13738}
13739#[repr(C)]
13740#[derive(Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13741pub struct ipt_replace {
13742    pub name: [crate::types::c_char; 32usize],
13743    pub valid_hooks: crate::types::c_uint,
13744    pub num_entries: crate::types::c_uint,
13745    pub size: crate::types::c_uint,
13746    pub hook_entry: [crate::types::c_uint; 5usize],
13747    pub underflow: [crate::types::c_uint; 5usize],
13748    pub num_counters: crate::types::c_uint,
13749    pub counters: uref<xt_counters>,
13750    pub entries: __IncompleteArrayField<ipt_entry>,
13751}
13752impl Default for ipt_replace {
13753    fn default() -> Self {
13754        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13755        unsafe {
13756            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13757            s.assume_init()
13758        }
13759    }
13760}
13761#[repr(C)]
13762#[derive(Debug, Default, FromBytes, Immutable, KnownLayout)]
13763pub struct ipt_get_entries {
13764    pub name: [crate::types::c_char; 32usize],
13765    pub size: crate::types::c_uint,
13766    pub __bindgen_padding_0: [u8; 4usize],
13767    pub entrytable: __IncompleteArrayField<ipt_entry>,
13768}
13769pub const ipt_reject_with_IPT_ICMP_NET_UNREACHABLE: ipt_reject_with = 0;
13770pub const ipt_reject_with_IPT_ICMP_HOST_UNREACHABLE: ipt_reject_with = 1;
13771pub const ipt_reject_with_IPT_ICMP_PROT_UNREACHABLE: ipt_reject_with = 2;
13772pub const ipt_reject_with_IPT_ICMP_PORT_UNREACHABLE: ipt_reject_with = 3;
13773pub const ipt_reject_with_IPT_ICMP_ECHOREPLY: ipt_reject_with = 4;
13774pub const ipt_reject_with_IPT_ICMP_NET_PROHIBITED: ipt_reject_with = 5;
13775pub const ipt_reject_with_IPT_ICMP_HOST_PROHIBITED: ipt_reject_with = 6;
13776pub const ipt_reject_with_IPT_TCP_RESET: ipt_reject_with = 7;
13777pub const ipt_reject_with_IPT_ICMP_ADMIN_PROHIBITED: ipt_reject_with = 8;
13778pub type ipt_reject_with = crate::types::c_uint;
13779#[repr(C)]
13780#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
13781pub struct ipt_reject_info {
13782    pub with: ipt_reject_with,
13783}
13784impl Default for ipt_reject_info {
13785    fn default() -> Self {
13786        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13787        unsafe {
13788            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13789            s.assume_init()
13790        }
13791    }
13792}
13793pub const nf_ip6_hook_priorities_NF_IP6_PRI_FIRST: nf_ip6_hook_priorities = -2147483648;
13794pub const nf_ip6_hook_priorities_NF_IP6_PRI_RAW_BEFORE_DEFRAG: nf_ip6_hook_priorities = -450;
13795pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK_DEFRAG: nf_ip6_hook_priorities = -400;
13796pub const nf_ip6_hook_priorities_NF_IP6_PRI_RAW: nf_ip6_hook_priorities = -300;
13797pub const nf_ip6_hook_priorities_NF_IP6_PRI_SELINUX_FIRST: nf_ip6_hook_priorities = -225;
13798pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK: nf_ip6_hook_priorities = -200;
13799pub const nf_ip6_hook_priorities_NF_IP6_PRI_MANGLE: nf_ip6_hook_priorities = -150;
13800pub const nf_ip6_hook_priorities_NF_IP6_PRI_NAT_DST: nf_ip6_hook_priorities = -100;
13801pub const nf_ip6_hook_priorities_NF_IP6_PRI_FILTER: nf_ip6_hook_priorities = 0;
13802pub const nf_ip6_hook_priorities_NF_IP6_PRI_SECURITY: nf_ip6_hook_priorities = 50;
13803pub const nf_ip6_hook_priorities_NF_IP6_PRI_NAT_SRC: nf_ip6_hook_priorities = 100;
13804pub const nf_ip6_hook_priorities_NF_IP6_PRI_SELINUX_LAST: nf_ip6_hook_priorities = 225;
13805pub const nf_ip6_hook_priorities_NF_IP6_PRI_CONNTRACK_HELPER: nf_ip6_hook_priorities = 300;
13806pub const nf_ip6_hook_priorities_NF_IP6_PRI_LAST: nf_ip6_hook_priorities = 2147483647;
13807pub type nf_ip6_hook_priorities = crate::types::c_int;
13808#[repr(C)]
13809#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
13810pub struct ip6t_ip6 {
13811    pub src: in6_addr,
13812    pub dst: in6_addr,
13813    pub smsk: in6_addr,
13814    pub dmsk: in6_addr,
13815    pub iniface: [crate::types::c_char; 16usize],
13816    pub outiface: [crate::types::c_char; 16usize],
13817    pub iniface_mask: [crate::types::c_uchar; 16usize],
13818    pub outiface_mask: [crate::types::c_uchar; 16usize],
13819    pub proto: __u16,
13820    pub tos: __u8,
13821    pub flags: __u8,
13822    pub invflags: __u8,
13823    pub __bindgen_padding_0: [u8; 3usize],
13824}
13825impl Default for ip6t_ip6 {
13826    fn default() -> Self {
13827        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13828        unsafe {
13829            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13830            s.assume_init()
13831        }
13832    }
13833}
13834#[repr(C)]
13835#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
13836pub struct ip6t_entry {
13837    pub ipv6: ip6t_ip6,
13838    pub nfcache: crate::types::c_uint,
13839    pub target_offset: __u16,
13840    pub next_offset: __u16,
13841    pub comefrom: crate::types::c_uint,
13842    pub __bindgen_padding_0: [u8; 4usize],
13843    pub counters: xt_counters,
13844    pub elems: __IncompleteArrayField<crate::types::c_uchar>,
13845}
13846impl Default for ip6t_entry {
13847    fn default() -> Self {
13848        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13849        unsafe {
13850            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13851            s.assume_init()
13852        }
13853    }
13854}
13855#[repr(C)]
13856pub struct ip6t_standard {
13857    pub entry: ip6t_entry,
13858    pub target: xt_standard_target,
13859}
13860impl Default for ip6t_standard {
13861    fn default() -> Self {
13862        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13863        unsafe {
13864            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13865            s.assume_init()
13866        }
13867    }
13868}
13869#[repr(C)]
13870pub struct ip6t_error {
13871    pub entry: ip6t_entry,
13872    pub target: xt_error_target,
13873}
13874impl Default for ip6t_error {
13875    fn default() -> Self {
13876        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13877        unsafe {
13878            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13879            s.assume_init()
13880        }
13881    }
13882}
13883#[repr(C)]
13884#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13885pub struct ip6t_icmp {
13886    pub type_: __u8,
13887    pub code: [__u8; 2usize],
13888    pub invflags: __u8,
13889}
13890#[repr(C)]
13891#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
13892pub struct ip6t_getinfo {
13893    pub name: [crate::types::c_char; 32usize],
13894    pub valid_hooks: crate::types::c_uint,
13895    pub hook_entry: [crate::types::c_uint; 5usize],
13896    pub underflow: [crate::types::c_uint; 5usize],
13897    pub num_entries: crate::types::c_uint,
13898    pub size: crate::types::c_uint,
13899}
13900#[repr(C)]
13901#[derive(FromBytes, Immutable, IntoBytes, KnownLayout)]
13902pub struct ip6t_replace {
13903    pub name: [crate::types::c_char; 32usize],
13904    pub valid_hooks: crate::types::c_uint,
13905    pub num_entries: crate::types::c_uint,
13906    pub size: crate::types::c_uint,
13907    pub hook_entry: [crate::types::c_uint; 5usize],
13908    pub underflow: [crate::types::c_uint; 5usize],
13909    pub num_counters: crate::types::c_uint,
13910    pub counters: uref<xt_counters>,
13911    pub entries: __IncompleteArrayField<ip6t_entry>,
13912}
13913impl Default for ip6t_replace {
13914    fn default() -> Self {
13915        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13916        unsafe {
13917            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13918            s.assume_init()
13919        }
13920    }
13921}
13922#[repr(C)]
13923#[derive(FromBytes, Immutable, KnownLayout)]
13924pub struct ip6t_get_entries {
13925    pub name: [crate::types::c_char; 32usize],
13926    pub size: crate::types::c_uint,
13927    pub __bindgen_padding_0: [u8; 4usize],
13928    pub entrytable: __IncompleteArrayField<ip6t_entry>,
13929}
13930impl Default for ip6t_get_entries {
13931    fn default() -> Self {
13932        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13933        unsafe {
13934            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13935            s.assume_init()
13936        }
13937    }
13938}
13939pub const ip6t_reject_with_IP6T_ICMP6_NO_ROUTE: ip6t_reject_with = 0;
13940pub const ip6t_reject_with_IP6T_ICMP6_ADM_PROHIBITED: ip6t_reject_with = 1;
13941pub const ip6t_reject_with_IP6T_ICMP6_NOT_NEIGHBOUR: ip6t_reject_with = 2;
13942pub const ip6t_reject_with_IP6T_ICMP6_ADDR_UNREACH: ip6t_reject_with = 3;
13943pub const ip6t_reject_with_IP6T_ICMP6_PORT_UNREACH: ip6t_reject_with = 4;
13944pub const ip6t_reject_with_IP6T_ICMP6_ECHOREPLY: ip6t_reject_with = 5;
13945pub const ip6t_reject_with_IP6T_TCP_RESET: ip6t_reject_with = 6;
13946pub const ip6t_reject_with_IP6T_ICMP6_POLICY_FAIL: ip6t_reject_with = 7;
13947pub const ip6t_reject_with_IP6T_ICMP6_REJECT_ROUTE: ip6t_reject_with = 8;
13948pub type ip6t_reject_with = crate::types::c_uint;
13949#[repr(C)]
13950#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
13951pub struct ip6t_reject_info {
13952    pub with: __u32,
13953}
13954pub const perf_type_id_PERF_TYPE_HARDWARE: perf_type_id = 0;
13955pub const perf_type_id_PERF_TYPE_SOFTWARE: perf_type_id = 1;
13956pub const perf_type_id_PERF_TYPE_TRACEPOINT: perf_type_id = 2;
13957pub const perf_type_id_PERF_TYPE_HW_CACHE: perf_type_id = 3;
13958pub const perf_type_id_PERF_TYPE_RAW: perf_type_id = 4;
13959pub const perf_type_id_PERF_TYPE_BREAKPOINT: perf_type_id = 5;
13960pub const perf_type_id_PERF_TYPE_MAX: perf_type_id = 6;
13961pub type perf_type_id = crate::types::c_uint;
13962pub const perf_hw_id_PERF_COUNT_HW_CPU_CYCLES: perf_hw_id = 0;
13963pub const perf_hw_id_PERF_COUNT_HW_INSTRUCTIONS: perf_hw_id = 1;
13964pub const perf_hw_id_PERF_COUNT_HW_CACHE_REFERENCES: perf_hw_id = 2;
13965pub const perf_hw_id_PERF_COUNT_HW_CACHE_MISSES: perf_hw_id = 3;
13966pub const perf_hw_id_PERF_COUNT_HW_BRANCH_INSTRUCTIONS: perf_hw_id = 4;
13967pub const perf_hw_id_PERF_COUNT_HW_BRANCH_MISSES: perf_hw_id = 5;
13968pub const perf_hw_id_PERF_COUNT_HW_BUS_CYCLES: perf_hw_id = 6;
13969pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_FRONTEND: perf_hw_id = 7;
13970pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_BACKEND: perf_hw_id = 8;
13971pub const perf_hw_id_PERF_COUNT_HW_REF_CPU_CYCLES: perf_hw_id = 9;
13972pub const perf_hw_id_PERF_COUNT_HW_MAX: perf_hw_id = 10;
13973pub type perf_hw_id = crate::types::c_uint;
13974pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1D: perf_hw_cache_id = 0;
13975pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1I: perf_hw_cache_id = 1;
13976pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_LL: perf_hw_cache_id = 2;
13977pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_DTLB: perf_hw_cache_id = 3;
13978pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_ITLB: perf_hw_cache_id = 4;
13979pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_BPU: perf_hw_cache_id = 5;
13980pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_NODE: perf_hw_cache_id = 6;
13981pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_MAX: perf_hw_cache_id = 7;
13982pub type perf_hw_cache_id = crate::types::c_uint;
13983pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_READ: perf_hw_cache_op_id = 0;
13984pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_WRITE: perf_hw_cache_op_id = 1;
13985pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_PREFETCH: perf_hw_cache_op_id = 2;
13986pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_MAX: perf_hw_cache_op_id = 3;
13987pub type perf_hw_cache_op_id = crate::types::c_uint;
13988pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_ACCESS: perf_hw_cache_op_result_id =
13989    0;
13990pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MISS: perf_hw_cache_op_result_id =
13991    1;
13992pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MAX: perf_hw_cache_op_result_id = 2;
13993pub type perf_hw_cache_op_result_id = crate::types::c_uint;
13994pub const perf_sw_ids_PERF_COUNT_SW_CPU_CLOCK: perf_sw_ids = 0;
13995pub const perf_sw_ids_PERF_COUNT_SW_TASK_CLOCK: perf_sw_ids = 1;
13996pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS: perf_sw_ids = 2;
13997pub const perf_sw_ids_PERF_COUNT_SW_CONTEXT_SWITCHES: perf_sw_ids = 3;
13998pub const perf_sw_ids_PERF_COUNT_SW_CPU_MIGRATIONS: perf_sw_ids = 4;
13999pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MIN: perf_sw_ids = 5;
14000pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MAJ: perf_sw_ids = 6;
14001pub const perf_sw_ids_PERF_COUNT_SW_ALIGNMENT_FAULTS: perf_sw_ids = 7;
14002pub const perf_sw_ids_PERF_COUNT_SW_EMULATION_FAULTS: perf_sw_ids = 8;
14003pub const perf_sw_ids_PERF_COUNT_SW_DUMMY: perf_sw_ids = 9;
14004pub const perf_sw_ids_PERF_COUNT_SW_BPF_OUTPUT: perf_sw_ids = 10;
14005pub const perf_sw_ids_PERF_COUNT_SW_CGROUP_SWITCHES: perf_sw_ids = 11;
14006pub const perf_sw_ids_PERF_COUNT_SW_MAX: perf_sw_ids = 12;
14007pub type perf_sw_ids = crate::types::c_uint;
14008pub const perf_event_sample_format_PERF_SAMPLE_IP: perf_event_sample_format = 1;
14009pub const perf_event_sample_format_PERF_SAMPLE_TID: perf_event_sample_format = 2;
14010pub const perf_event_sample_format_PERF_SAMPLE_TIME: perf_event_sample_format = 4;
14011pub const perf_event_sample_format_PERF_SAMPLE_ADDR: perf_event_sample_format = 8;
14012pub const perf_event_sample_format_PERF_SAMPLE_READ: perf_event_sample_format = 16;
14013pub const perf_event_sample_format_PERF_SAMPLE_CALLCHAIN: perf_event_sample_format = 32;
14014pub const perf_event_sample_format_PERF_SAMPLE_ID: perf_event_sample_format = 64;
14015pub const perf_event_sample_format_PERF_SAMPLE_CPU: perf_event_sample_format = 128;
14016pub const perf_event_sample_format_PERF_SAMPLE_PERIOD: perf_event_sample_format = 256;
14017pub const perf_event_sample_format_PERF_SAMPLE_STREAM_ID: perf_event_sample_format = 512;
14018pub const perf_event_sample_format_PERF_SAMPLE_RAW: perf_event_sample_format = 1024;
14019pub const perf_event_sample_format_PERF_SAMPLE_BRANCH_STACK: perf_event_sample_format = 2048;
14020pub const perf_event_sample_format_PERF_SAMPLE_REGS_USER: perf_event_sample_format = 4096;
14021pub const perf_event_sample_format_PERF_SAMPLE_STACK_USER: perf_event_sample_format = 8192;
14022pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT: perf_event_sample_format = 16384;
14023pub const perf_event_sample_format_PERF_SAMPLE_DATA_SRC: perf_event_sample_format = 32768;
14024pub const perf_event_sample_format_PERF_SAMPLE_IDENTIFIER: perf_event_sample_format = 65536;
14025pub const perf_event_sample_format_PERF_SAMPLE_TRANSACTION: perf_event_sample_format = 131072;
14026pub const perf_event_sample_format_PERF_SAMPLE_REGS_INTR: perf_event_sample_format = 262144;
14027pub const perf_event_sample_format_PERF_SAMPLE_PHYS_ADDR: perf_event_sample_format = 524288;
14028pub const perf_event_sample_format_PERF_SAMPLE_AUX: perf_event_sample_format = 1048576;
14029pub const perf_event_sample_format_PERF_SAMPLE_CGROUP: perf_event_sample_format = 2097152;
14030pub const perf_event_sample_format_PERF_SAMPLE_DATA_PAGE_SIZE: perf_event_sample_format = 4194304;
14031pub const perf_event_sample_format_PERF_SAMPLE_CODE_PAGE_SIZE: perf_event_sample_format = 8388608;
14032pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT_STRUCT: perf_event_sample_format = 16777216;
14033pub const perf_event_sample_format_PERF_SAMPLE_MAX: perf_event_sample_format = 33554432;
14034pub type perf_event_sample_format = crate::types::c_uint;
14035pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_USER_SHIFT:
14036    perf_branch_sample_type_shift = 0;
14037pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_KERNEL_SHIFT:
14038    perf_branch_sample_type_shift = 1;
14039pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HV_SHIFT: perf_branch_sample_type_shift =
14040    2;
14041pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_SHIFT:
14042    perf_branch_sample_type_shift = 3;
14043pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT:
14044    perf_branch_sample_type_shift = 4;
14045pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT:
14046    perf_branch_sample_type_shift = 5;
14047pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_CALL_SHIFT:
14048    perf_branch_sample_type_shift = 6;
14049pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT:
14050    perf_branch_sample_type_shift = 7;
14051pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IN_TX_SHIFT:
14052    perf_branch_sample_type_shift = 8;
14053pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_TX_SHIFT:
14054    perf_branch_sample_type_shift = 9;
14055pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COND_SHIFT:
14056    perf_branch_sample_type_shift = 10;
14057pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT:
14058    perf_branch_sample_type_shift = 11;
14059pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT:
14060    perf_branch_sample_type_shift = 12;
14061pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_SHIFT:
14062    perf_branch_sample_type_shift = 13;
14063pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT:
14064    perf_branch_sample_type_shift = 14;
14065pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT:
14066    perf_branch_sample_type_shift = 15;
14067pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT:
14068    perf_branch_sample_type_shift = 16;
14069pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT:
14070    perf_branch_sample_type_shift = 17;
14071pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_PRIV_SAVE_SHIFT:
14072    perf_branch_sample_type_shift = 18;
14073pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COUNTERS_SHIFT:
14074    perf_branch_sample_type_shift = 19;
14075pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_MAX_SHIFT:
14076    perf_branch_sample_type_shift = 20;
14077pub type perf_branch_sample_type_shift = crate::types::c_uint;
14078pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_USER: perf_branch_sample_type = 1;
14079pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_KERNEL: perf_branch_sample_type = 2;
14080pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HV: perf_branch_sample_type = 4;
14081pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY: perf_branch_sample_type = 8;
14082pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_CALL: perf_branch_sample_type = 16;
14083pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_RETURN: perf_branch_sample_type = 32;
14084pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_CALL: perf_branch_sample_type = 64;
14085pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ABORT_TX: perf_branch_sample_type = 128;
14086pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IN_TX: perf_branch_sample_type = 256;
14087pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_TX: perf_branch_sample_type = 512;
14088pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COND: perf_branch_sample_type = 1024;
14089pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL_STACK: perf_branch_sample_type = 2048;
14090pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_JUMP: perf_branch_sample_type = 4096;
14091pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL: perf_branch_sample_type = 8192;
14092pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_FLAGS: perf_branch_sample_type = 16384;
14093pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_CYCLES: perf_branch_sample_type = 32768;
14094pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_TYPE_SAVE: perf_branch_sample_type = 65536;
14095pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HW_INDEX: perf_branch_sample_type = 131072;
14096pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_PRIV_SAVE: perf_branch_sample_type = 262144;
14097pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COUNTERS: perf_branch_sample_type = 524288;
14098pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_MAX: perf_branch_sample_type = 1048576;
14099pub type perf_branch_sample_type = crate::types::c_uint;
14100pub const PERF_BR_UNKNOWN: _bindgen_ty_86 = 0;
14101pub const PERF_BR_COND: _bindgen_ty_86 = 1;
14102pub const PERF_BR_UNCOND: _bindgen_ty_86 = 2;
14103pub const PERF_BR_IND: _bindgen_ty_86 = 3;
14104pub const PERF_BR_CALL: _bindgen_ty_86 = 4;
14105pub const PERF_BR_IND_CALL: _bindgen_ty_86 = 5;
14106pub const PERF_BR_RET: _bindgen_ty_86 = 6;
14107pub const PERF_BR_SYSCALL: _bindgen_ty_86 = 7;
14108pub const PERF_BR_SYSRET: _bindgen_ty_86 = 8;
14109pub const PERF_BR_COND_CALL: _bindgen_ty_86 = 9;
14110pub const PERF_BR_COND_RET: _bindgen_ty_86 = 10;
14111pub const PERF_BR_ERET: _bindgen_ty_86 = 11;
14112pub const PERF_BR_IRQ: _bindgen_ty_86 = 12;
14113pub const PERF_BR_SERROR: _bindgen_ty_86 = 13;
14114pub const PERF_BR_NO_TX: _bindgen_ty_86 = 14;
14115pub const PERF_BR_EXTEND_ABI: _bindgen_ty_86 = 15;
14116pub const PERF_BR_MAX: _bindgen_ty_86 = 16;
14117pub type _bindgen_ty_86 = crate::types::c_uint;
14118pub const PERF_BR_SPEC_NA: _bindgen_ty_87 = 0;
14119pub const PERF_BR_SPEC_WRONG_PATH: _bindgen_ty_87 = 1;
14120pub const PERF_BR_NON_SPEC_CORRECT_PATH: _bindgen_ty_87 = 2;
14121pub const PERF_BR_SPEC_CORRECT_PATH: _bindgen_ty_87 = 3;
14122pub const PERF_BR_SPEC_MAX: _bindgen_ty_87 = 4;
14123pub type _bindgen_ty_87 = crate::types::c_uint;
14124pub const PERF_BR_NEW_FAULT_ALGN: _bindgen_ty_88 = 0;
14125pub const PERF_BR_NEW_FAULT_DATA: _bindgen_ty_88 = 1;
14126pub const PERF_BR_NEW_FAULT_INST: _bindgen_ty_88 = 2;
14127pub const PERF_BR_NEW_ARCH_1: _bindgen_ty_88 = 3;
14128pub const PERF_BR_NEW_ARCH_2: _bindgen_ty_88 = 4;
14129pub const PERF_BR_NEW_ARCH_3: _bindgen_ty_88 = 5;
14130pub const PERF_BR_NEW_ARCH_4: _bindgen_ty_88 = 6;
14131pub const PERF_BR_NEW_ARCH_5: _bindgen_ty_88 = 7;
14132pub const PERF_BR_NEW_MAX: _bindgen_ty_88 = 8;
14133pub type _bindgen_ty_88 = crate::types::c_uint;
14134pub const PERF_BR_PRIV_UNKNOWN: _bindgen_ty_89 = 0;
14135pub const PERF_BR_PRIV_USER: _bindgen_ty_89 = 1;
14136pub const PERF_BR_PRIV_KERNEL: _bindgen_ty_89 = 2;
14137pub const PERF_BR_PRIV_HV: _bindgen_ty_89 = 3;
14138pub type _bindgen_ty_89 = crate::types::c_uint;
14139pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_NONE: perf_sample_regs_abi = 0;
14140pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_32: perf_sample_regs_abi = 1;
14141pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_64: perf_sample_regs_abi = 2;
14142pub type perf_sample_regs_abi = crate::types::c_uint;
14143pub const PERF_TXN_ELISION: _bindgen_ty_90 = 1;
14144pub const PERF_TXN_TRANSACTION: _bindgen_ty_90 = 2;
14145pub const PERF_TXN_SYNC: _bindgen_ty_90 = 4;
14146pub const PERF_TXN_ASYNC: _bindgen_ty_90 = 8;
14147pub const PERF_TXN_RETRY: _bindgen_ty_90 = 16;
14148pub const PERF_TXN_CONFLICT: _bindgen_ty_90 = 32;
14149pub const PERF_TXN_CAPACITY_WRITE: _bindgen_ty_90 = 64;
14150pub const PERF_TXN_CAPACITY_READ: _bindgen_ty_90 = 128;
14151pub const PERF_TXN_MAX: _bindgen_ty_90 = 256;
14152pub const PERF_TXN_ABORT_MASK: _bindgen_ty_90 = 18446744069414584320;
14153pub const PERF_TXN_ABORT_SHIFT: _bindgen_ty_90 = 32;
14154pub type _bindgen_ty_90 = crate::types::c_ulong;
14155pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_ENABLED: perf_event_read_format = 1;
14156pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_RUNNING: perf_event_read_format = 2;
14157pub const perf_event_read_format_PERF_FORMAT_ID: perf_event_read_format = 4;
14158pub const perf_event_read_format_PERF_FORMAT_GROUP: perf_event_read_format = 8;
14159pub const perf_event_read_format_PERF_FORMAT_LOST: perf_event_read_format = 16;
14160pub const perf_event_read_format_PERF_FORMAT_MAX: perf_event_read_format = 32;
14161pub type perf_event_read_format = crate::types::c_uint;
14162#[repr(C)]
14163#[derive(Clone, Copy, FromBytes, Immutable)]
14164pub struct perf_event_attr {
14165    pub type_: __u32,
14166    pub size: __u32,
14167    pub config: __u64,
14168    pub __bindgen_anon_1: perf_event_attr__bindgen_ty_1,
14169    pub sample_type: __u64,
14170    pub read_format: __u64,
14171    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
14172    pub __bindgen_anon_2: perf_event_attr__bindgen_ty_2,
14173    pub bp_type: __u32,
14174    pub __bindgen_anon_3: perf_event_attr__bindgen_ty_3,
14175    pub __bindgen_anon_4: perf_event_attr__bindgen_ty_4,
14176    pub branch_sample_type: __u64,
14177    pub sample_regs_user: __u64,
14178    pub sample_stack_user: __u32,
14179    pub clockid: __s32,
14180    pub sample_regs_intr: __u64,
14181    pub aux_watermark: __u32,
14182    pub sample_max_stack: __u16,
14183    pub __reserved_2: __u16,
14184    pub aux_sample_size: __u32,
14185    pub __reserved_3: __u32,
14186    pub sig_data: __u64,
14187    pub config3: __u64,
14188}
14189#[repr(C)]
14190#[derive(Clone, Copy, FromBytes, Immutable)]
14191pub union perf_event_attr__bindgen_ty_1 {
14192    pub sample_period: __u64,
14193    pub sample_freq: __u64,
14194}
14195impl Default for perf_event_attr__bindgen_ty_1 {
14196    fn default() -> Self {
14197        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14198        unsafe {
14199            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14200            s.assume_init()
14201        }
14202    }
14203}
14204#[repr(C)]
14205#[derive(Clone, Copy, FromBytes, Immutable)]
14206pub union perf_event_attr__bindgen_ty_2 {
14207    pub wakeup_events: __u32,
14208    pub wakeup_watermark: __u32,
14209}
14210impl Default for perf_event_attr__bindgen_ty_2 {
14211    fn default() -> Self {
14212        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14213        unsafe {
14214            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14215            s.assume_init()
14216        }
14217    }
14218}
14219#[repr(C)]
14220#[derive(Clone, Copy, FromBytes, Immutable)]
14221pub union perf_event_attr__bindgen_ty_3 {
14222    pub bp_addr: __u64,
14223    pub kprobe_func: __u64,
14224    pub uprobe_path: __u64,
14225    pub config1: __u64,
14226}
14227impl Default for perf_event_attr__bindgen_ty_3 {
14228    fn default() -> Self {
14229        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14230        unsafe {
14231            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14232            s.assume_init()
14233        }
14234    }
14235}
14236#[repr(C)]
14237#[derive(Clone, Copy, FromBytes, Immutable)]
14238pub union perf_event_attr__bindgen_ty_4 {
14239    pub bp_len: __u64,
14240    pub kprobe_addr: __u64,
14241    pub probe_offset: __u64,
14242    pub config2: __u64,
14243}
14244impl Default for perf_event_attr__bindgen_ty_4 {
14245    fn default() -> Self {
14246        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14247        unsafe {
14248            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14249            s.assume_init()
14250        }
14251    }
14252}
14253impl Default for perf_event_attr {
14254    fn default() -> Self {
14255        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14256        unsafe {
14257            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14258            s.assume_init()
14259        }
14260    }
14261}
14262impl perf_event_attr {
14263    #[inline]
14264    pub fn disabled(&self) -> __u64 {
14265        self._bitfield_1.get_const::<0usize, 1u8>() as u64 as _
14266    }
14267    #[inline]
14268    pub fn set_disabled(&mut self, val: __u64) {
14269        let val: u64 = val as _;
14270        self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
14271    }
14272    #[inline]
14273    pub unsafe fn disabled_raw(this: *const Self) -> __u64 {
14274        unsafe {
14275            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
14276                ::std::ptr::addr_of!((*this)._bitfield_1),
14277            ) as u64 as _
14278        }
14279    }
14280    #[inline]
14281    pub unsafe fn set_disabled_raw(this: *mut Self, val: __u64) {
14282        unsafe {
14283            let val: u64 = val as _;
14284            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
14285                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14286                val as u64,
14287            )
14288        }
14289    }
14290    #[inline]
14291    pub fn inherit(&self) -> __u64 {
14292        self._bitfield_1.get_const::<1usize, 1u8>() as u64 as _
14293    }
14294    #[inline]
14295    pub fn set_inherit(&mut self, val: __u64) {
14296        let val: u64 = val as _;
14297        self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
14298    }
14299    #[inline]
14300    pub unsafe fn inherit_raw(this: *const Self) -> __u64 {
14301        unsafe {
14302            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
14303                ::std::ptr::addr_of!((*this)._bitfield_1),
14304            ) as u64 as _
14305        }
14306    }
14307    #[inline]
14308    pub unsafe fn set_inherit_raw(this: *mut Self, val: __u64) {
14309        unsafe {
14310            let val: u64 = val as _;
14311            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
14312                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14313                val as u64,
14314            )
14315        }
14316    }
14317    #[inline]
14318    pub fn pinned(&self) -> __u64 {
14319        self._bitfield_1.get_const::<2usize, 1u8>() as u64 as _
14320    }
14321    #[inline]
14322    pub fn set_pinned(&mut self, val: __u64) {
14323        let val: u64 = val as _;
14324        self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
14325    }
14326    #[inline]
14327    pub unsafe fn pinned_raw(this: *const Self) -> __u64 {
14328        unsafe {
14329            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
14330                ::std::ptr::addr_of!((*this)._bitfield_1),
14331            ) as u64 as _
14332        }
14333    }
14334    #[inline]
14335    pub unsafe fn set_pinned_raw(this: *mut Self, val: __u64) {
14336        unsafe {
14337            let val: u64 = val as _;
14338            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
14339                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14340                val as u64,
14341            )
14342        }
14343    }
14344    #[inline]
14345    pub fn exclusive(&self) -> __u64 {
14346        self._bitfield_1.get_const::<3usize, 1u8>() as u64 as _
14347    }
14348    #[inline]
14349    pub fn set_exclusive(&mut self, val: __u64) {
14350        let val: u64 = val as _;
14351        self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
14352    }
14353    #[inline]
14354    pub unsafe fn exclusive_raw(this: *const Self) -> __u64 {
14355        unsafe {
14356            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
14357                ::std::ptr::addr_of!((*this)._bitfield_1),
14358            ) as u64 as _
14359        }
14360    }
14361    #[inline]
14362    pub unsafe fn set_exclusive_raw(this: *mut Self, val: __u64) {
14363        unsafe {
14364            let val: u64 = val as _;
14365            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
14366                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14367                val as u64,
14368            )
14369        }
14370    }
14371    #[inline]
14372    pub fn exclude_user(&self) -> __u64 {
14373        self._bitfield_1.get_const::<4usize, 1u8>() as u64 as _
14374    }
14375    #[inline]
14376    pub fn set_exclude_user(&mut self, val: __u64) {
14377        let val: u64 = val as _;
14378        self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
14379    }
14380    #[inline]
14381    pub unsafe fn exclude_user_raw(this: *const Self) -> __u64 {
14382        unsafe {
14383            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 1u8>(
14384                ::std::ptr::addr_of!((*this)._bitfield_1),
14385            ) as u64 as _
14386        }
14387    }
14388    #[inline]
14389    pub unsafe fn set_exclude_user_raw(this: *mut Self, val: __u64) {
14390        unsafe {
14391            let val: u64 = val as _;
14392            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 1u8>(
14393                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14394                val as u64,
14395            )
14396        }
14397    }
14398    #[inline]
14399    pub fn exclude_kernel(&self) -> __u64 {
14400        self._bitfield_1.get_const::<5usize, 1u8>() as u64 as _
14401    }
14402    #[inline]
14403    pub fn set_exclude_kernel(&mut self, val: __u64) {
14404        let val: u64 = val as _;
14405        self._bitfield_1.set_const::<5usize, 1u8>(val as u64)
14406    }
14407    #[inline]
14408    pub unsafe fn exclude_kernel_raw(this: *const Self) -> __u64 {
14409        unsafe {
14410            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 1u8>(
14411                ::std::ptr::addr_of!((*this)._bitfield_1),
14412            ) as u64 as _
14413        }
14414    }
14415    #[inline]
14416    pub unsafe fn set_exclude_kernel_raw(this: *mut Self, val: __u64) {
14417        unsafe {
14418            let val: u64 = val as _;
14419            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 1u8>(
14420                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14421                val as u64,
14422            )
14423        }
14424    }
14425    #[inline]
14426    pub fn exclude_hv(&self) -> __u64 {
14427        self._bitfield_1.get_const::<6usize, 1u8>() as u64 as _
14428    }
14429    #[inline]
14430    pub fn set_exclude_hv(&mut self, val: __u64) {
14431        let val: u64 = val as _;
14432        self._bitfield_1.set_const::<6usize, 1u8>(val as u64)
14433    }
14434    #[inline]
14435    pub unsafe fn exclude_hv_raw(this: *const Self) -> __u64 {
14436        unsafe {
14437            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<6usize, 1u8>(
14438                ::std::ptr::addr_of!((*this)._bitfield_1),
14439            ) as u64 as _
14440        }
14441    }
14442    #[inline]
14443    pub unsafe fn set_exclude_hv_raw(this: *mut Self, val: __u64) {
14444        unsafe {
14445            let val: u64 = val as _;
14446            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<6usize, 1u8>(
14447                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14448                val as u64,
14449            )
14450        }
14451    }
14452    #[inline]
14453    pub fn exclude_idle(&self) -> __u64 {
14454        self._bitfield_1.get_const::<7usize, 1u8>() as u64 as _
14455    }
14456    #[inline]
14457    pub fn set_exclude_idle(&mut self, val: __u64) {
14458        let val: u64 = val as _;
14459        self._bitfield_1.set_const::<7usize, 1u8>(val as u64)
14460    }
14461    #[inline]
14462    pub unsafe fn exclude_idle_raw(this: *const Self) -> __u64 {
14463        unsafe {
14464            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<7usize, 1u8>(
14465                ::std::ptr::addr_of!((*this)._bitfield_1),
14466            ) as u64 as _
14467        }
14468    }
14469    #[inline]
14470    pub unsafe fn set_exclude_idle_raw(this: *mut Self, val: __u64) {
14471        unsafe {
14472            let val: u64 = val as _;
14473            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<7usize, 1u8>(
14474                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14475                val as u64,
14476            )
14477        }
14478    }
14479    #[inline]
14480    pub fn mmap(&self) -> __u64 {
14481        self._bitfield_1.get_const::<8usize, 1u8>() as u64 as _
14482    }
14483    #[inline]
14484    pub fn set_mmap(&mut self, val: __u64) {
14485        let val: u64 = val as _;
14486        self._bitfield_1.set_const::<8usize, 1u8>(val as u64)
14487    }
14488    #[inline]
14489    pub unsafe fn mmap_raw(this: *const Self) -> __u64 {
14490        unsafe {
14491            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<8usize, 1u8>(
14492                ::std::ptr::addr_of!((*this)._bitfield_1),
14493            ) as u64 as _
14494        }
14495    }
14496    #[inline]
14497    pub unsafe fn set_mmap_raw(this: *mut Self, val: __u64) {
14498        unsafe {
14499            let val: u64 = val as _;
14500            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<8usize, 1u8>(
14501                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14502                val as u64,
14503            )
14504        }
14505    }
14506    #[inline]
14507    pub fn comm(&self) -> __u64 {
14508        self._bitfield_1.get_const::<9usize, 1u8>() as u64 as _
14509    }
14510    #[inline]
14511    pub fn set_comm(&mut self, val: __u64) {
14512        let val: u64 = val as _;
14513        self._bitfield_1.set_const::<9usize, 1u8>(val as u64)
14514    }
14515    #[inline]
14516    pub unsafe fn comm_raw(this: *const Self) -> __u64 {
14517        unsafe {
14518            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<9usize, 1u8>(
14519                ::std::ptr::addr_of!((*this)._bitfield_1),
14520            ) as u64 as _
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        self._bitfield_1.get_const::<10usize, 1u8>() as u64 as _
14536    }
14537    #[inline]
14538    pub fn set_freq(&mut self, val: __u64) {
14539        let val: u64 = val as _;
14540        self._bitfield_1.set_const::<10usize, 1u8>(val as u64)
14541    }
14542    #[inline]
14543    pub unsafe fn freq_raw(this: *const Self) -> __u64 {
14544        unsafe {
14545            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<10usize, 1u8>(
14546                ::std::ptr::addr_of!((*this)._bitfield_1),
14547            ) as u64 as _
14548        }
14549    }
14550    #[inline]
14551    pub unsafe fn set_freq_raw(this: *mut Self, val: __u64) {
14552        unsafe {
14553            let val: u64 = val as _;
14554            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<10usize, 1u8>(
14555                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14556                val as u64,
14557            )
14558        }
14559    }
14560    #[inline]
14561    pub fn inherit_stat(&self) -> __u64 {
14562        self._bitfield_1.get_const::<11usize, 1u8>() as u64 as _
14563    }
14564    #[inline]
14565    pub fn set_inherit_stat(&mut self, val: __u64) {
14566        let val: u64 = val as _;
14567        self._bitfield_1.set_const::<11usize, 1u8>(val as u64)
14568    }
14569    #[inline]
14570    pub unsafe fn inherit_stat_raw(this: *const Self) -> __u64 {
14571        unsafe {
14572            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<11usize, 1u8>(
14573                ::std::ptr::addr_of!((*this)._bitfield_1),
14574            ) as u64 as _
14575        }
14576    }
14577    #[inline]
14578    pub unsafe fn set_inherit_stat_raw(this: *mut Self, val: __u64) {
14579        unsafe {
14580            let val: u64 = val as _;
14581            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<11usize, 1u8>(
14582                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14583                val as u64,
14584            )
14585        }
14586    }
14587    #[inline]
14588    pub fn enable_on_exec(&self) -> __u64 {
14589        self._bitfield_1.get_const::<12usize, 1u8>() as u64 as _
14590    }
14591    #[inline]
14592    pub fn set_enable_on_exec(&mut self, val: __u64) {
14593        let val: u64 = val as _;
14594        self._bitfield_1.set_const::<12usize, 1u8>(val as u64)
14595    }
14596    #[inline]
14597    pub unsafe fn enable_on_exec_raw(this: *const Self) -> __u64 {
14598        unsafe {
14599            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<12usize, 1u8>(
14600                ::std::ptr::addr_of!((*this)._bitfield_1),
14601            ) as u64 as _
14602        }
14603    }
14604    #[inline]
14605    pub unsafe fn set_enable_on_exec_raw(this: *mut Self, val: __u64) {
14606        unsafe {
14607            let val: u64 = val as _;
14608            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<12usize, 1u8>(
14609                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14610                val as u64,
14611            )
14612        }
14613    }
14614    #[inline]
14615    pub fn task(&self) -> __u64 {
14616        self._bitfield_1.get_const::<13usize, 1u8>() as u64 as _
14617    }
14618    #[inline]
14619    pub fn set_task(&mut self, val: __u64) {
14620        let val: u64 = val as _;
14621        self._bitfield_1.set_const::<13usize, 1u8>(val as u64)
14622    }
14623    #[inline]
14624    pub unsafe fn task_raw(this: *const Self) -> __u64 {
14625        unsafe {
14626            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<13usize, 1u8>(
14627                ::std::ptr::addr_of!((*this)._bitfield_1),
14628            ) as u64 as _
14629        }
14630    }
14631    #[inline]
14632    pub unsafe fn set_task_raw(this: *mut Self, val: __u64) {
14633        unsafe {
14634            let val: u64 = val as _;
14635            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<13usize, 1u8>(
14636                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14637                val as u64,
14638            )
14639        }
14640    }
14641    #[inline]
14642    pub fn watermark(&self) -> __u64 {
14643        self._bitfield_1.get_const::<14usize, 1u8>() as u64 as _
14644    }
14645    #[inline]
14646    pub fn set_watermark(&mut self, val: __u64) {
14647        let val: u64 = val as _;
14648        self._bitfield_1.set_const::<14usize, 1u8>(val as u64)
14649    }
14650    #[inline]
14651    pub unsafe fn watermark_raw(this: *const Self) -> __u64 {
14652        unsafe {
14653            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<14usize, 1u8>(
14654                ::std::ptr::addr_of!((*this)._bitfield_1),
14655            ) as u64 as _
14656        }
14657    }
14658    #[inline]
14659    pub unsafe fn set_watermark_raw(this: *mut Self, val: __u64) {
14660        unsafe {
14661            let val: u64 = val as _;
14662            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<14usize, 1u8>(
14663                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14664                val as u64,
14665            )
14666        }
14667    }
14668    #[inline]
14669    pub fn precise_ip(&self) -> __u64 {
14670        self._bitfield_1.get_const::<15usize, 2u8>() as u64 as _
14671    }
14672    #[inline]
14673    pub fn set_precise_ip(&mut self, val: __u64) {
14674        let val: u64 = val as _;
14675        self._bitfield_1.set_const::<15usize, 2u8>(val as u64)
14676    }
14677    #[inline]
14678    pub unsafe fn precise_ip_raw(this: *const Self) -> __u64 {
14679        unsafe {
14680            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<15usize, 2u8>(
14681                ::std::ptr::addr_of!((*this)._bitfield_1),
14682            ) as u64 as _
14683        }
14684    }
14685    #[inline]
14686    pub unsafe fn set_precise_ip_raw(this: *mut Self, val: __u64) {
14687        unsafe {
14688            let val: u64 = val as _;
14689            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<15usize, 2u8>(
14690                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14691                val as u64,
14692            )
14693        }
14694    }
14695    #[inline]
14696    pub fn mmap_data(&self) -> __u64 {
14697        self._bitfield_1.get_const::<17usize, 1u8>() as u64 as _
14698    }
14699    #[inline]
14700    pub fn set_mmap_data(&mut self, val: __u64) {
14701        let val: u64 = val as _;
14702        self._bitfield_1.set_const::<17usize, 1u8>(val as u64)
14703    }
14704    #[inline]
14705    pub unsafe fn mmap_data_raw(this: *const Self) -> __u64 {
14706        unsafe {
14707            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<17usize, 1u8>(
14708                ::std::ptr::addr_of!((*this)._bitfield_1),
14709            ) as u64 as _
14710        }
14711    }
14712    #[inline]
14713    pub unsafe fn set_mmap_data_raw(this: *mut Self, val: __u64) {
14714        unsafe {
14715            let val: u64 = val as _;
14716            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<17usize, 1u8>(
14717                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14718                val as u64,
14719            )
14720        }
14721    }
14722    #[inline]
14723    pub fn sample_id_all(&self) -> __u64 {
14724        self._bitfield_1.get_const::<18usize, 1u8>() as u64 as _
14725    }
14726    #[inline]
14727    pub fn set_sample_id_all(&mut self, val: __u64) {
14728        let val: u64 = val as _;
14729        self._bitfield_1.set_const::<18usize, 1u8>(val as u64)
14730    }
14731    #[inline]
14732    pub unsafe fn sample_id_all_raw(this: *const Self) -> __u64 {
14733        unsafe {
14734            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<18usize, 1u8>(
14735                ::std::ptr::addr_of!((*this)._bitfield_1),
14736            ) as u64 as _
14737        }
14738    }
14739    #[inline]
14740    pub unsafe fn set_sample_id_all_raw(this: *mut Self, val: __u64) {
14741        unsafe {
14742            let val: u64 = val as _;
14743            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<18usize, 1u8>(
14744                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14745                val as u64,
14746            )
14747        }
14748    }
14749    #[inline]
14750    pub fn exclude_host(&self) -> __u64 {
14751        self._bitfield_1.get_const::<19usize, 1u8>() as u64 as _
14752    }
14753    #[inline]
14754    pub fn set_exclude_host(&mut self, val: __u64) {
14755        let val: u64 = val as _;
14756        self._bitfield_1.set_const::<19usize, 1u8>(val as u64)
14757    }
14758    #[inline]
14759    pub unsafe fn exclude_host_raw(this: *const Self) -> __u64 {
14760        unsafe {
14761            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<19usize, 1u8>(
14762                ::std::ptr::addr_of!((*this)._bitfield_1),
14763            ) as u64 as _
14764        }
14765    }
14766    #[inline]
14767    pub unsafe fn set_exclude_host_raw(this: *mut Self, val: __u64) {
14768        unsafe {
14769            let val: u64 = val as _;
14770            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<19usize, 1u8>(
14771                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14772                val as u64,
14773            )
14774        }
14775    }
14776    #[inline]
14777    pub fn exclude_guest(&self) -> __u64 {
14778        self._bitfield_1.get_const::<20usize, 1u8>() as u64 as _
14779    }
14780    #[inline]
14781    pub fn set_exclude_guest(&mut self, val: __u64) {
14782        let val: u64 = val as _;
14783        self._bitfield_1.set_const::<20usize, 1u8>(val as u64)
14784    }
14785    #[inline]
14786    pub unsafe fn exclude_guest_raw(this: *const Self) -> __u64 {
14787        unsafe {
14788            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<20usize, 1u8>(
14789                ::std::ptr::addr_of!((*this)._bitfield_1),
14790            ) as u64 as _
14791        }
14792    }
14793    #[inline]
14794    pub unsafe fn set_exclude_guest_raw(this: *mut Self, val: __u64) {
14795        unsafe {
14796            let val: u64 = val as _;
14797            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<20usize, 1u8>(
14798                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14799                val as u64,
14800            )
14801        }
14802    }
14803    #[inline]
14804    pub fn exclude_callchain_kernel(&self) -> __u64 {
14805        self._bitfield_1.get_const::<21usize, 1u8>() as u64 as _
14806    }
14807    #[inline]
14808    pub fn set_exclude_callchain_kernel(&mut self, val: __u64) {
14809        let val: u64 = val as _;
14810        self._bitfield_1.set_const::<21usize, 1u8>(val as u64)
14811    }
14812    #[inline]
14813    pub unsafe fn exclude_callchain_kernel_raw(this: *const Self) -> __u64 {
14814        unsafe {
14815            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<21usize, 1u8>(
14816                ::std::ptr::addr_of!((*this)._bitfield_1),
14817            ) as u64 as _
14818        }
14819    }
14820    #[inline]
14821    pub unsafe fn set_exclude_callchain_kernel_raw(this: *mut Self, val: __u64) {
14822        unsafe {
14823            let val: u64 = val as _;
14824            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<21usize, 1u8>(
14825                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14826                val as u64,
14827            )
14828        }
14829    }
14830    #[inline]
14831    pub fn exclude_callchain_user(&self) -> __u64 {
14832        self._bitfield_1.get_const::<22usize, 1u8>() as u64 as _
14833    }
14834    #[inline]
14835    pub fn set_exclude_callchain_user(&mut self, val: __u64) {
14836        let val: u64 = val as _;
14837        self._bitfield_1.set_const::<22usize, 1u8>(val as u64)
14838    }
14839    #[inline]
14840    pub unsafe fn exclude_callchain_user_raw(this: *const Self) -> __u64 {
14841        unsafe {
14842            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<22usize, 1u8>(
14843                ::std::ptr::addr_of!((*this)._bitfield_1),
14844            ) as u64 as _
14845        }
14846    }
14847    #[inline]
14848    pub unsafe fn set_exclude_callchain_user_raw(this: *mut Self, val: __u64) {
14849        unsafe {
14850            let val: u64 = val as _;
14851            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<22usize, 1u8>(
14852                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14853                val as u64,
14854            )
14855        }
14856    }
14857    #[inline]
14858    pub fn mmap2(&self) -> __u64 {
14859        self._bitfield_1.get_const::<23usize, 1u8>() as u64 as _
14860    }
14861    #[inline]
14862    pub fn set_mmap2(&mut self, val: __u64) {
14863        let val: u64 = val as _;
14864        self._bitfield_1.set_const::<23usize, 1u8>(val as u64)
14865    }
14866    #[inline]
14867    pub unsafe fn mmap2_raw(this: *const Self) -> __u64 {
14868        unsafe {
14869            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<23usize, 1u8>(
14870                ::std::ptr::addr_of!((*this)._bitfield_1),
14871            ) as u64 as _
14872        }
14873    }
14874    #[inline]
14875    pub unsafe fn set_mmap2_raw(this: *mut Self, val: __u64) {
14876        unsafe {
14877            let val: u64 = val as _;
14878            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<23usize, 1u8>(
14879                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14880                val as u64,
14881            )
14882        }
14883    }
14884    #[inline]
14885    pub fn comm_exec(&self) -> __u64 {
14886        self._bitfield_1.get_const::<24usize, 1u8>() as u64 as _
14887    }
14888    #[inline]
14889    pub fn set_comm_exec(&mut self, val: __u64) {
14890        let val: u64 = val as _;
14891        self._bitfield_1.set_const::<24usize, 1u8>(val as u64)
14892    }
14893    #[inline]
14894    pub unsafe fn comm_exec_raw(this: *const Self) -> __u64 {
14895        unsafe {
14896            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 1u8>(
14897                ::std::ptr::addr_of!((*this)._bitfield_1),
14898            ) as u64 as _
14899        }
14900    }
14901    #[inline]
14902    pub unsafe fn set_comm_exec_raw(this: *mut Self, val: __u64) {
14903        unsafe {
14904            let val: u64 = val as _;
14905            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 1u8>(
14906                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14907                val as u64,
14908            )
14909        }
14910    }
14911    #[inline]
14912    pub fn use_clockid(&self) -> __u64 {
14913        self._bitfield_1.get_const::<25usize, 1u8>() as u64 as _
14914    }
14915    #[inline]
14916    pub fn set_use_clockid(&mut self, val: __u64) {
14917        let val: u64 = val as _;
14918        self._bitfield_1.set_const::<25usize, 1u8>(val as u64)
14919    }
14920    #[inline]
14921    pub unsafe fn use_clockid_raw(this: *const Self) -> __u64 {
14922        unsafe {
14923            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<25usize, 1u8>(
14924                ::std::ptr::addr_of!((*this)._bitfield_1),
14925            ) as u64 as _
14926        }
14927    }
14928    #[inline]
14929    pub unsafe fn set_use_clockid_raw(this: *mut Self, val: __u64) {
14930        unsafe {
14931            let val: u64 = val as _;
14932            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<25usize, 1u8>(
14933                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14934                val as u64,
14935            )
14936        }
14937    }
14938    #[inline]
14939    pub fn context_switch(&self) -> __u64 {
14940        self._bitfield_1.get_const::<26usize, 1u8>() as u64 as _
14941    }
14942    #[inline]
14943    pub fn set_context_switch(&mut self, val: __u64) {
14944        let val: u64 = val as _;
14945        self._bitfield_1.set_const::<26usize, 1u8>(val as u64)
14946    }
14947    #[inline]
14948    pub unsafe fn context_switch_raw(this: *const Self) -> __u64 {
14949        unsafe {
14950            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 1u8>(
14951                ::std::ptr::addr_of!((*this)._bitfield_1),
14952            ) as u64 as _
14953        }
14954    }
14955    #[inline]
14956    pub unsafe fn set_context_switch_raw(this: *mut Self, val: __u64) {
14957        unsafe {
14958            let val: u64 = val as _;
14959            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 1u8>(
14960                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14961                val as u64,
14962            )
14963        }
14964    }
14965    #[inline]
14966    pub fn write_backward(&self) -> __u64 {
14967        self._bitfield_1.get_const::<27usize, 1u8>() as u64 as _
14968    }
14969    #[inline]
14970    pub fn set_write_backward(&mut self, val: __u64) {
14971        let val: u64 = val as _;
14972        self._bitfield_1.set_const::<27usize, 1u8>(val as u64)
14973    }
14974    #[inline]
14975    pub unsafe fn write_backward_raw(this: *const Self) -> __u64 {
14976        unsafe {
14977            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<27usize, 1u8>(
14978                ::std::ptr::addr_of!((*this)._bitfield_1),
14979            ) as u64 as _
14980        }
14981    }
14982    #[inline]
14983    pub unsafe fn set_write_backward_raw(this: *mut Self, val: __u64) {
14984        unsafe {
14985            let val: u64 = val as _;
14986            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<27usize, 1u8>(
14987                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
14988                val as u64,
14989            )
14990        }
14991    }
14992    #[inline]
14993    pub fn namespaces(&self) -> __u64 {
14994        self._bitfield_1.get_const::<28usize, 1u8>() as u64 as _
14995    }
14996    #[inline]
14997    pub fn set_namespaces(&mut self, val: __u64) {
14998        let val: u64 = val as _;
14999        self._bitfield_1.set_const::<28usize, 1u8>(val as u64)
15000    }
15001    #[inline]
15002    pub unsafe fn namespaces_raw(this: *const Self) -> __u64 {
15003        unsafe {
15004            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<28usize, 1u8>(
15005                ::std::ptr::addr_of!((*this)._bitfield_1),
15006            ) as u64 as _
15007        }
15008    }
15009    #[inline]
15010    pub unsafe fn set_namespaces_raw(this: *mut Self, val: __u64) {
15011        unsafe {
15012            let val: u64 = val as _;
15013            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<28usize, 1u8>(
15014                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15015                val as u64,
15016            )
15017        }
15018    }
15019    #[inline]
15020    pub fn ksymbol(&self) -> __u64 {
15021        self._bitfield_1.get_const::<29usize, 1u8>() as u64 as _
15022    }
15023    #[inline]
15024    pub fn set_ksymbol(&mut self, val: __u64) {
15025        let val: u64 = val as _;
15026        self._bitfield_1.set_const::<29usize, 1u8>(val as u64)
15027    }
15028    #[inline]
15029    pub unsafe fn ksymbol_raw(this: *const Self) -> __u64 {
15030        unsafe {
15031            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<29usize, 1u8>(
15032                ::std::ptr::addr_of!((*this)._bitfield_1),
15033            ) as u64 as _
15034        }
15035    }
15036    #[inline]
15037    pub unsafe fn set_ksymbol_raw(this: *mut Self, val: __u64) {
15038        unsafe {
15039            let val: u64 = val as _;
15040            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<29usize, 1u8>(
15041                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15042                val as u64,
15043            )
15044        }
15045    }
15046    #[inline]
15047    pub fn bpf_event(&self) -> __u64 {
15048        self._bitfield_1.get_const::<30usize, 1u8>() as u64 as _
15049    }
15050    #[inline]
15051    pub fn set_bpf_event(&mut self, val: __u64) {
15052        let val: u64 = val as _;
15053        self._bitfield_1.set_const::<30usize, 1u8>(val as u64)
15054    }
15055    #[inline]
15056    pub unsafe fn bpf_event_raw(this: *const Self) -> __u64 {
15057        unsafe {
15058            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<30usize, 1u8>(
15059                ::std::ptr::addr_of!((*this)._bitfield_1),
15060            ) as u64 as _
15061        }
15062    }
15063    #[inline]
15064    pub unsafe fn set_bpf_event_raw(this: *mut Self, val: __u64) {
15065        unsafe {
15066            let val: u64 = val as _;
15067            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<30usize, 1u8>(
15068                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15069                val as u64,
15070            )
15071        }
15072    }
15073    #[inline]
15074    pub fn aux_output(&self) -> __u64 {
15075        self._bitfield_1.get_const::<31usize, 1u8>() as u64 as _
15076    }
15077    #[inline]
15078    pub fn set_aux_output(&mut self, val: __u64) {
15079        let val: u64 = val as _;
15080        self._bitfield_1.set_const::<31usize, 1u8>(val as u64)
15081    }
15082    #[inline]
15083    pub unsafe fn aux_output_raw(this: *const Self) -> __u64 {
15084        unsafe {
15085            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<31usize, 1u8>(
15086                ::std::ptr::addr_of!((*this)._bitfield_1),
15087            ) as u64 as _
15088        }
15089    }
15090    #[inline]
15091    pub unsafe fn set_aux_output_raw(this: *mut Self, val: __u64) {
15092        unsafe {
15093            let val: u64 = val as _;
15094            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<31usize, 1u8>(
15095                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15096                val as u64,
15097            )
15098        }
15099    }
15100    #[inline]
15101    pub fn cgroup(&self) -> __u64 {
15102        self._bitfield_1.get_const::<32usize, 1u8>() as u64 as _
15103    }
15104    #[inline]
15105    pub fn set_cgroup(&mut self, val: __u64) {
15106        let val: u64 = val as _;
15107        self._bitfield_1.set_const::<32usize, 1u8>(val as u64)
15108    }
15109    #[inline]
15110    pub unsafe fn cgroup_raw(this: *const Self) -> __u64 {
15111        unsafe {
15112            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<32usize, 1u8>(
15113                ::std::ptr::addr_of!((*this)._bitfield_1),
15114            ) as u64 as _
15115        }
15116    }
15117    #[inline]
15118    pub unsafe fn set_cgroup_raw(this: *mut Self, val: __u64) {
15119        unsafe {
15120            let val: u64 = val as _;
15121            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<32usize, 1u8>(
15122                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15123                val as u64,
15124            )
15125        }
15126    }
15127    #[inline]
15128    pub fn text_poke(&self) -> __u64 {
15129        self._bitfield_1.get_const::<33usize, 1u8>() as u64 as _
15130    }
15131    #[inline]
15132    pub fn set_text_poke(&mut self, val: __u64) {
15133        let val: u64 = val as _;
15134        self._bitfield_1.set_const::<33usize, 1u8>(val as u64)
15135    }
15136    #[inline]
15137    pub unsafe fn text_poke_raw(this: *const Self) -> __u64 {
15138        unsafe {
15139            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 1u8>(
15140                ::std::ptr::addr_of!((*this)._bitfield_1),
15141            ) as u64 as _
15142        }
15143    }
15144    #[inline]
15145    pub unsafe fn set_text_poke_raw(this: *mut Self, val: __u64) {
15146        unsafe {
15147            let val: u64 = val as _;
15148            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 1u8>(
15149                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15150                val as u64,
15151            )
15152        }
15153    }
15154    #[inline]
15155    pub fn build_id(&self) -> __u64 {
15156        self._bitfield_1.get_const::<34usize, 1u8>() as u64 as _
15157    }
15158    #[inline]
15159    pub fn set_build_id(&mut self, val: __u64) {
15160        let val: u64 = val as _;
15161        self._bitfield_1.set_const::<34usize, 1u8>(val as u64)
15162    }
15163    #[inline]
15164    pub unsafe fn build_id_raw(this: *const Self) -> __u64 {
15165        unsafe {
15166            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<34usize, 1u8>(
15167                ::std::ptr::addr_of!((*this)._bitfield_1),
15168            ) as u64 as _
15169        }
15170    }
15171    #[inline]
15172    pub unsafe fn set_build_id_raw(this: *mut Self, val: __u64) {
15173        unsafe {
15174            let val: u64 = val as _;
15175            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<34usize, 1u8>(
15176                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15177                val as u64,
15178            )
15179        }
15180    }
15181    #[inline]
15182    pub fn inherit_thread(&self) -> __u64 {
15183        self._bitfield_1.get_const::<35usize, 1u8>() as u64 as _
15184    }
15185    #[inline]
15186    pub fn set_inherit_thread(&mut self, val: __u64) {
15187        let val: u64 = val as _;
15188        self._bitfield_1.set_const::<35usize, 1u8>(val as u64)
15189    }
15190    #[inline]
15191    pub unsafe fn inherit_thread_raw(this: *const Self) -> __u64 {
15192        unsafe {
15193            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<35usize, 1u8>(
15194                ::std::ptr::addr_of!((*this)._bitfield_1),
15195            ) as u64 as _
15196        }
15197    }
15198    #[inline]
15199    pub unsafe fn set_inherit_thread_raw(this: *mut Self, val: __u64) {
15200        unsafe {
15201            let val: u64 = val as _;
15202            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<35usize, 1u8>(
15203                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15204                val as u64,
15205            )
15206        }
15207    }
15208    #[inline]
15209    pub fn remove_on_exec(&self) -> __u64 {
15210        self._bitfield_1.get_const::<36usize, 1u8>() as u64 as _
15211    }
15212    #[inline]
15213    pub fn set_remove_on_exec(&mut self, val: __u64) {
15214        let val: u64 = val as _;
15215        self._bitfield_1.set_const::<36usize, 1u8>(val as u64)
15216    }
15217    #[inline]
15218    pub unsafe fn remove_on_exec_raw(this: *const Self) -> __u64 {
15219        unsafe {
15220            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<36usize, 1u8>(
15221                ::std::ptr::addr_of!((*this)._bitfield_1),
15222            ) as u64 as _
15223        }
15224    }
15225    #[inline]
15226    pub unsafe fn set_remove_on_exec_raw(this: *mut Self, val: __u64) {
15227        unsafe {
15228            let val: u64 = val as _;
15229            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<36usize, 1u8>(
15230                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15231                val as u64,
15232            )
15233        }
15234    }
15235    #[inline]
15236    pub fn sigtrap(&self) -> __u64 {
15237        self._bitfield_1.get_const::<37usize, 1u8>() as u64 as _
15238    }
15239    #[inline]
15240    pub fn set_sigtrap(&mut self, val: __u64) {
15241        let val: u64 = val as _;
15242        self._bitfield_1.set_const::<37usize, 1u8>(val as u64)
15243    }
15244    #[inline]
15245    pub unsafe fn sigtrap_raw(this: *const Self) -> __u64 {
15246        unsafe {
15247            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<37usize, 1u8>(
15248                ::std::ptr::addr_of!((*this)._bitfield_1),
15249            ) as u64 as _
15250        }
15251    }
15252    #[inline]
15253    pub unsafe fn set_sigtrap_raw(this: *mut Self, val: __u64) {
15254        unsafe {
15255            let val: u64 = val as _;
15256            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<37usize, 1u8>(
15257                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15258                val as u64,
15259            )
15260        }
15261    }
15262    #[inline]
15263    pub fn __reserved_1(&self) -> __u64 {
15264        self._bitfield_1.get_const::<38usize, 26u8>() as u64 as _
15265    }
15266    #[inline]
15267    pub fn set___reserved_1(&mut self, val: __u64) {
15268        let val: u64 = val as _;
15269        self._bitfield_1.set_const::<38usize, 26u8>(val as u64)
15270    }
15271    #[inline]
15272    pub unsafe fn __reserved_1_raw(this: *const Self) -> __u64 {
15273        unsafe {
15274            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<38usize, 26u8>(
15275                ::std::ptr::addr_of!((*this)._bitfield_1),
15276            ) as u64 as _
15277        }
15278    }
15279    #[inline]
15280    pub unsafe fn set___reserved_1_raw(this: *mut Self, val: __u64) {
15281        unsafe {
15282            let val: u64 = val as _;
15283            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<38usize, 26u8>(
15284                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15285                val as u64,
15286            )
15287        }
15288    }
15289    #[inline]
15290    pub fn new_bitfield_1(
15291        disabled: __u64,
15292        inherit: __u64,
15293        pinned: __u64,
15294        exclusive: __u64,
15295        exclude_user: __u64,
15296        exclude_kernel: __u64,
15297        exclude_hv: __u64,
15298        exclude_idle: __u64,
15299        mmap: __u64,
15300        comm: __u64,
15301        freq: __u64,
15302        inherit_stat: __u64,
15303        enable_on_exec: __u64,
15304        task: __u64,
15305        watermark: __u64,
15306        precise_ip: __u64,
15307        mmap_data: __u64,
15308        sample_id_all: __u64,
15309        exclude_host: __u64,
15310        exclude_guest: __u64,
15311        exclude_callchain_kernel: __u64,
15312        exclude_callchain_user: __u64,
15313        mmap2: __u64,
15314        comm_exec: __u64,
15315        use_clockid: __u64,
15316        context_switch: __u64,
15317        write_backward: __u64,
15318        namespaces: __u64,
15319        ksymbol: __u64,
15320        bpf_event: __u64,
15321        aux_output: __u64,
15322        cgroup: __u64,
15323        text_poke: __u64,
15324        build_id: __u64,
15325        inherit_thread: __u64,
15326        remove_on_exec: __u64,
15327        sigtrap: __u64,
15328        __reserved_1: __u64,
15329    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
15330        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
15331        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
15332            let disabled: u64 = disabled as _;
15333            disabled as u64
15334        });
15335        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
15336            let inherit: u64 = inherit as _;
15337            inherit as u64
15338        });
15339        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
15340            let pinned: u64 = pinned as _;
15341            pinned as u64
15342        });
15343        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
15344            let exclusive: u64 = exclusive as _;
15345            exclusive as u64
15346        });
15347        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
15348            let exclude_user: u64 = exclude_user as _;
15349            exclude_user as u64
15350        });
15351        __bindgen_bitfield_unit.set_const::<5usize, 1u8>({
15352            let exclude_kernel: u64 = exclude_kernel as _;
15353            exclude_kernel as u64
15354        });
15355        __bindgen_bitfield_unit.set_const::<6usize, 1u8>({
15356            let exclude_hv: u64 = exclude_hv as _;
15357            exclude_hv as u64
15358        });
15359        __bindgen_bitfield_unit.set_const::<7usize, 1u8>({
15360            let exclude_idle: u64 = exclude_idle as _;
15361            exclude_idle as u64
15362        });
15363        __bindgen_bitfield_unit.set_const::<8usize, 1u8>({
15364            let mmap: u64 = mmap as _;
15365            mmap as u64
15366        });
15367        __bindgen_bitfield_unit.set_const::<9usize, 1u8>({
15368            let comm: u64 = comm as _;
15369            comm as u64
15370        });
15371        __bindgen_bitfield_unit.set_const::<10usize, 1u8>({
15372            let freq: u64 = freq as _;
15373            freq as u64
15374        });
15375        __bindgen_bitfield_unit.set_const::<11usize, 1u8>({
15376            let inherit_stat: u64 = inherit_stat as _;
15377            inherit_stat as u64
15378        });
15379        __bindgen_bitfield_unit.set_const::<12usize, 1u8>({
15380            let enable_on_exec: u64 = enable_on_exec as _;
15381            enable_on_exec as u64
15382        });
15383        __bindgen_bitfield_unit.set_const::<13usize, 1u8>({
15384            let task: u64 = task as _;
15385            task as u64
15386        });
15387        __bindgen_bitfield_unit.set_const::<14usize, 1u8>({
15388            let watermark: u64 = watermark as _;
15389            watermark as u64
15390        });
15391        __bindgen_bitfield_unit.set_const::<15usize, 2u8>({
15392            let precise_ip: u64 = precise_ip as _;
15393            precise_ip as u64
15394        });
15395        __bindgen_bitfield_unit.set_const::<17usize, 1u8>({
15396            let mmap_data: u64 = mmap_data as _;
15397            mmap_data as u64
15398        });
15399        __bindgen_bitfield_unit.set_const::<18usize, 1u8>({
15400            let sample_id_all: u64 = sample_id_all as _;
15401            sample_id_all as u64
15402        });
15403        __bindgen_bitfield_unit.set_const::<19usize, 1u8>({
15404            let exclude_host: u64 = exclude_host as _;
15405            exclude_host as u64
15406        });
15407        __bindgen_bitfield_unit.set_const::<20usize, 1u8>({
15408            let exclude_guest: u64 = exclude_guest as _;
15409            exclude_guest as u64
15410        });
15411        __bindgen_bitfield_unit.set_const::<21usize, 1u8>({
15412            let exclude_callchain_kernel: u64 = exclude_callchain_kernel as _;
15413            exclude_callchain_kernel as u64
15414        });
15415        __bindgen_bitfield_unit.set_const::<22usize, 1u8>({
15416            let exclude_callchain_user: u64 = exclude_callchain_user as _;
15417            exclude_callchain_user as u64
15418        });
15419        __bindgen_bitfield_unit.set_const::<23usize, 1u8>({
15420            let mmap2: u64 = mmap2 as _;
15421            mmap2 as u64
15422        });
15423        __bindgen_bitfield_unit.set_const::<24usize, 1u8>({
15424            let comm_exec: u64 = comm_exec as _;
15425            comm_exec as u64
15426        });
15427        __bindgen_bitfield_unit.set_const::<25usize, 1u8>({
15428            let use_clockid: u64 = use_clockid as _;
15429            use_clockid as u64
15430        });
15431        __bindgen_bitfield_unit.set_const::<26usize, 1u8>({
15432            let context_switch: u64 = context_switch as _;
15433            context_switch as u64
15434        });
15435        __bindgen_bitfield_unit.set_const::<27usize, 1u8>({
15436            let write_backward: u64 = write_backward as _;
15437            write_backward as u64
15438        });
15439        __bindgen_bitfield_unit.set_const::<28usize, 1u8>({
15440            let namespaces: u64 = namespaces as _;
15441            namespaces as u64
15442        });
15443        __bindgen_bitfield_unit.set_const::<29usize, 1u8>({
15444            let ksymbol: u64 = ksymbol as _;
15445            ksymbol as u64
15446        });
15447        __bindgen_bitfield_unit.set_const::<30usize, 1u8>({
15448            let bpf_event: u64 = bpf_event as _;
15449            bpf_event as u64
15450        });
15451        __bindgen_bitfield_unit.set_const::<31usize, 1u8>({
15452            let aux_output: u64 = aux_output as _;
15453            aux_output as u64
15454        });
15455        __bindgen_bitfield_unit.set_const::<32usize, 1u8>({
15456            let cgroup: u64 = cgroup as _;
15457            cgroup as u64
15458        });
15459        __bindgen_bitfield_unit.set_const::<33usize, 1u8>({
15460            let text_poke: u64 = text_poke as _;
15461            text_poke as u64
15462        });
15463        __bindgen_bitfield_unit.set_const::<34usize, 1u8>({
15464            let build_id: u64 = build_id as _;
15465            build_id as u64
15466        });
15467        __bindgen_bitfield_unit.set_const::<35usize, 1u8>({
15468            let inherit_thread: u64 = inherit_thread as _;
15469            inherit_thread as u64
15470        });
15471        __bindgen_bitfield_unit.set_const::<36usize, 1u8>({
15472            let remove_on_exec: u64 = remove_on_exec as _;
15473            remove_on_exec as u64
15474        });
15475        __bindgen_bitfield_unit.set_const::<37usize, 1u8>({
15476            let sigtrap: u64 = sigtrap as _;
15477            sigtrap as u64
15478        });
15479        __bindgen_bitfield_unit.set_const::<38usize, 26u8>({
15480            let __reserved_1: u64 = __reserved_1 as _;
15481            __reserved_1 as u64
15482        });
15483        __bindgen_bitfield_unit
15484    }
15485}
15486#[repr(C)]
15487#[derive(Debug, Default)]
15488pub struct perf_event_query_bpf {
15489    pub ids_len: __u32,
15490    pub prog_cnt: __u32,
15491    pub ids: __IncompleteArrayField<__u32>,
15492}
15493pub const perf_event_ioc_flags_PERF_IOC_FLAG_GROUP: perf_event_ioc_flags = 1;
15494pub type perf_event_ioc_flags = crate::types::c_uint;
15495#[repr(C)]
15496#[derive(Clone, Copy, Immutable, IntoBytes)]
15497pub struct perf_event_mmap_page {
15498    pub version: __u32,
15499    pub compat_version: __u32,
15500    pub lock: __u32,
15501    pub index: __u32,
15502    pub offset: __s64,
15503    pub time_enabled: __u64,
15504    pub time_running: __u64,
15505    pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1,
15506    pub pmc_width: __u16,
15507    pub time_shift: __u16,
15508    pub time_mult: __u32,
15509    pub time_offset: __u64,
15510    pub time_zero: __u64,
15511    pub size: __u32,
15512    pub __reserved_1: __u32,
15513    pub time_cycles: __u64,
15514    pub time_mask: __u64,
15515    pub __reserved: [__u8; 928usize],
15516    pub data_head: __u64,
15517    pub data_tail: __u64,
15518    pub data_offset: __u64,
15519    pub data_size: __u64,
15520    pub aux_head: __u64,
15521    pub aux_tail: __u64,
15522    pub aux_offset: __u64,
15523    pub aux_size: __u64,
15524}
15525#[repr(C)]
15526#[derive(Clone, Copy, Immutable, IntoBytes)]
15527pub union perf_event_mmap_page__bindgen_ty_1 {
15528    pub capabilities: __u64,
15529    pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1,
15530}
15531#[repr(C)]
15532#[derive(Clone, Copy, Debug, Default, Immutable, IntoBytes)]
15533pub struct perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
15534    pub _bindgen_align: [u64; 0],
15535    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
15536}
15537impl perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
15538    #[inline]
15539    pub fn cap_bit0(&self) -> __u64 {
15540        self._bitfield_1.get_const::<0usize, 1u8>() as u64 as _
15541    }
15542    #[inline]
15543    pub fn set_cap_bit0(&mut self, val: __u64) {
15544        let val: u64 = val as _;
15545        self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
15546    }
15547    #[inline]
15548    pub unsafe fn cap_bit0_raw(this: *const Self) -> __u64 {
15549        unsafe {
15550            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
15551                ::std::ptr::addr_of!((*this)._bitfield_1),
15552            ) as u64 as _
15553        }
15554    }
15555    #[inline]
15556    pub unsafe fn set_cap_bit0_raw(this: *mut Self, val: __u64) {
15557        unsafe {
15558            let val: u64 = val as _;
15559            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
15560                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15561                val as u64,
15562            )
15563        }
15564    }
15565    #[inline]
15566    pub fn cap_bit0_is_deprecated(&self) -> __u64 {
15567        self._bitfield_1.get_const::<1usize, 1u8>() as u64 as _
15568    }
15569    #[inline]
15570    pub fn set_cap_bit0_is_deprecated(&mut self, val: __u64) {
15571        let val: u64 = val as _;
15572        self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
15573    }
15574    #[inline]
15575    pub unsafe fn cap_bit0_is_deprecated_raw(this: *const Self) -> __u64 {
15576        unsafe {
15577            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
15578                ::std::ptr::addr_of!((*this)._bitfield_1),
15579            ) as u64 as _
15580        }
15581    }
15582    #[inline]
15583    pub unsafe fn set_cap_bit0_is_deprecated_raw(this: *mut Self, val: __u64) {
15584        unsafe {
15585            let val: u64 = val as _;
15586            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
15587                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15588                val as u64,
15589            )
15590        }
15591    }
15592    #[inline]
15593    pub fn cap_user_rdpmc(&self) -> __u64 {
15594        self._bitfield_1.get_const::<2usize, 1u8>() as u64 as _
15595    }
15596    #[inline]
15597    pub fn set_cap_user_rdpmc(&mut self, val: __u64) {
15598        let val: u64 = val as _;
15599        self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
15600    }
15601    #[inline]
15602    pub unsafe fn cap_user_rdpmc_raw(this: *const Self) -> __u64 {
15603        unsafe {
15604            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
15605                ::std::ptr::addr_of!((*this)._bitfield_1),
15606            ) as u64 as _
15607        }
15608    }
15609    #[inline]
15610    pub unsafe fn set_cap_user_rdpmc_raw(this: *mut Self, val: __u64) {
15611        unsafe {
15612            let val: u64 = val as _;
15613            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
15614                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15615                val as u64,
15616            )
15617        }
15618    }
15619    #[inline]
15620    pub fn cap_user_time(&self) -> __u64 {
15621        self._bitfield_1.get_const::<3usize, 1u8>() as u64 as _
15622    }
15623    #[inline]
15624    pub fn set_cap_user_time(&mut self, val: __u64) {
15625        let val: u64 = val as _;
15626        self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
15627    }
15628    #[inline]
15629    pub unsafe fn cap_user_time_raw(this: *const Self) -> __u64 {
15630        unsafe {
15631            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
15632                ::std::ptr::addr_of!((*this)._bitfield_1),
15633            ) as u64 as _
15634        }
15635    }
15636    #[inline]
15637    pub unsafe fn set_cap_user_time_raw(this: *mut Self, val: __u64) {
15638        unsafe {
15639            let val: u64 = val as _;
15640            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
15641                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15642                val as u64,
15643            )
15644        }
15645    }
15646    #[inline]
15647    pub fn cap_user_time_zero(&self) -> __u64 {
15648        self._bitfield_1.get_const::<4usize, 1u8>() as u64 as _
15649    }
15650    #[inline]
15651    pub fn set_cap_user_time_zero(&mut self, val: __u64) {
15652        let val: u64 = val as _;
15653        self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
15654    }
15655    #[inline]
15656    pub unsafe fn cap_user_time_zero_raw(this: *const Self) -> __u64 {
15657        unsafe {
15658            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 1u8>(
15659                ::std::ptr::addr_of!((*this)._bitfield_1),
15660            ) as u64 as _
15661        }
15662    }
15663    #[inline]
15664    pub unsafe fn set_cap_user_time_zero_raw(this: *mut Self, val: __u64) {
15665        unsafe {
15666            let val: u64 = val as _;
15667            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 1u8>(
15668                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15669                val as u64,
15670            )
15671        }
15672    }
15673    #[inline]
15674    pub fn cap_user_time_short(&self) -> __u64 {
15675        self._bitfield_1.get_const::<5usize, 1u8>() as u64 as _
15676    }
15677    #[inline]
15678    pub fn set_cap_user_time_short(&mut self, val: __u64) {
15679        let val: u64 = val as _;
15680        self._bitfield_1.set_const::<5usize, 1u8>(val as u64)
15681    }
15682    #[inline]
15683    pub unsafe fn cap_user_time_short_raw(this: *const Self) -> __u64 {
15684        unsafe {
15685            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 1u8>(
15686                ::std::ptr::addr_of!((*this)._bitfield_1),
15687            ) as u64 as _
15688        }
15689    }
15690    #[inline]
15691    pub unsafe fn set_cap_user_time_short_raw(this: *mut Self, val: __u64) {
15692        unsafe {
15693            let val: u64 = val as _;
15694            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 1u8>(
15695                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15696                val as u64,
15697            )
15698        }
15699    }
15700    #[inline]
15701    pub fn cap_____res(&self) -> __u64 {
15702        self._bitfield_1.get_const::<6usize, 58u8>() as u64 as _
15703    }
15704    #[inline]
15705    pub fn set_cap_____res(&mut self, val: __u64) {
15706        let val: u64 = val as _;
15707        self._bitfield_1.set_const::<6usize, 58u8>(val as u64)
15708    }
15709    #[inline]
15710    pub unsafe fn cap_____res_raw(this: *const Self) -> __u64 {
15711        unsafe {
15712            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<6usize, 58u8>(
15713                ::std::ptr::addr_of!((*this)._bitfield_1),
15714            ) as u64 as _
15715        }
15716    }
15717    #[inline]
15718    pub unsafe fn set_cap_____res_raw(this: *mut Self, val: __u64) {
15719        unsafe {
15720            let val: u64 = val as _;
15721            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<6usize, 58u8>(
15722                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15723                val as u64,
15724            )
15725        }
15726    }
15727    #[inline]
15728    pub fn new_bitfield_1(
15729        cap_bit0: __u64,
15730        cap_bit0_is_deprecated: __u64,
15731        cap_user_rdpmc: __u64,
15732        cap_user_time: __u64,
15733        cap_user_time_zero: __u64,
15734        cap_user_time_short: __u64,
15735        cap_____res: __u64,
15736    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
15737        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
15738        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
15739            let cap_bit0: u64 = cap_bit0 as _;
15740            cap_bit0 as u64
15741        });
15742        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
15743            let cap_bit0_is_deprecated: u64 = cap_bit0_is_deprecated as _;
15744            cap_bit0_is_deprecated as u64
15745        });
15746        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
15747            let cap_user_rdpmc: u64 = cap_user_rdpmc as _;
15748            cap_user_rdpmc as u64
15749        });
15750        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
15751            let cap_user_time: u64 = cap_user_time as _;
15752            cap_user_time as u64
15753        });
15754        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
15755            let cap_user_time_zero: u64 = cap_user_time_zero as _;
15756            cap_user_time_zero as u64
15757        });
15758        __bindgen_bitfield_unit.set_const::<5usize, 1u8>({
15759            let cap_user_time_short: u64 = cap_user_time_short as _;
15760            cap_user_time_short as u64
15761        });
15762        __bindgen_bitfield_unit.set_const::<6usize, 58u8>({
15763            let cap_____res: u64 = cap_____res as _;
15764            cap_____res as u64
15765        });
15766        __bindgen_bitfield_unit
15767    }
15768}
15769impl Default for perf_event_mmap_page__bindgen_ty_1 {
15770    fn default() -> Self {
15771        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15772        unsafe {
15773            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15774            s.assume_init()
15775        }
15776    }
15777}
15778impl Default for perf_event_mmap_page {
15779    fn default() -> Self {
15780        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15781        unsafe {
15782            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15783            s.assume_init()
15784        }
15785    }
15786}
15787#[repr(C)]
15788#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15789pub struct perf_event_header {
15790    pub type_: __u32,
15791    pub misc: __u16,
15792    pub size: __u16,
15793}
15794#[repr(C)]
15795#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15796pub struct perf_ns_link_info {
15797    pub dev: __u64,
15798    pub ino: __u64,
15799}
15800pub const NET_NS_INDEX: _bindgen_ty_91 = 0;
15801pub const UTS_NS_INDEX: _bindgen_ty_91 = 1;
15802pub const IPC_NS_INDEX: _bindgen_ty_91 = 2;
15803pub const PID_NS_INDEX: _bindgen_ty_91 = 3;
15804pub const USER_NS_INDEX: _bindgen_ty_91 = 4;
15805pub const MNT_NS_INDEX: _bindgen_ty_91 = 5;
15806pub const CGROUP_NS_INDEX: _bindgen_ty_91 = 6;
15807pub const NR_NAMESPACES: _bindgen_ty_91 = 7;
15808pub type _bindgen_ty_91 = crate::types::c_uint;
15809pub const perf_event_type_PERF_RECORD_MMAP: perf_event_type = 1;
15810pub const perf_event_type_PERF_RECORD_LOST: perf_event_type = 2;
15811pub const perf_event_type_PERF_RECORD_COMM: perf_event_type = 3;
15812pub const perf_event_type_PERF_RECORD_EXIT: perf_event_type = 4;
15813pub const perf_event_type_PERF_RECORD_THROTTLE: perf_event_type = 5;
15814pub const perf_event_type_PERF_RECORD_UNTHROTTLE: perf_event_type = 6;
15815pub const perf_event_type_PERF_RECORD_FORK: perf_event_type = 7;
15816pub const perf_event_type_PERF_RECORD_READ: perf_event_type = 8;
15817pub const perf_event_type_PERF_RECORD_SAMPLE: perf_event_type = 9;
15818pub const perf_event_type_PERF_RECORD_MMAP2: perf_event_type = 10;
15819pub const perf_event_type_PERF_RECORD_AUX: perf_event_type = 11;
15820pub const perf_event_type_PERF_RECORD_ITRACE_START: perf_event_type = 12;
15821pub const perf_event_type_PERF_RECORD_LOST_SAMPLES: perf_event_type = 13;
15822pub const perf_event_type_PERF_RECORD_SWITCH: perf_event_type = 14;
15823pub const perf_event_type_PERF_RECORD_SWITCH_CPU_WIDE: perf_event_type = 15;
15824pub const perf_event_type_PERF_RECORD_NAMESPACES: perf_event_type = 16;
15825pub const perf_event_type_PERF_RECORD_KSYMBOL: perf_event_type = 17;
15826pub const perf_event_type_PERF_RECORD_BPF_EVENT: perf_event_type = 18;
15827pub const perf_event_type_PERF_RECORD_CGROUP: perf_event_type = 19;
15828pub const perf_event_type_PERF_RECORD_TEXT_POKE: perf_event_type = 20;
15829pub const perf_event_type_PERF_RECORD_AUX_OUTPUT_HW_ID: perf_event_type = 21;
15830pub const perf_event_type_PERF_RECORD_MAX: perf_event_type = 22;
15831pub type perf_event_type = crate::types::c_uint;
15832pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_UNKNOWN: perf_record_ksymbol_type = 0;
15833pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_BPF: perf_record_ksymbol_type = 1;
15834pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_OOL: perf_record_ksymbol_type = 2;
15835pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_MAX: perf_record_ksymbol_type = 3;
15836pub type perf_record_ksymbol_type = crate::types::c_uint;
15837pub const perf_bpf_event_type_PERF_BPF_EVENT_UNKNOWN: perf_bpf_event_type = 0;
15838pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_LOAD: perf_bpf_event_type = 1;
15839pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_UNLOAD: perf_bpf_event_type = 2;
15840pub const perf_bpf_event_type_PERF_BPF_EVENT_MAX: perf_bpf_event_type = 3;
15841pub type perf_bpf_event_type = crate::types::c_uint;
15842pub const perf_callchain_context_PERF_CONTEXT_HV: perf_callchain_context = 18446744073709551584;
15843pub const perf_callchain_context_PERF_CONTEXT_KERNEL: perf_callchain_context = 18446744073709551488;
15844pub const perf_callchain_context_PERF_CONTEXT_USER: perf_callchain_context = 18446744073709551104;
15845pub const perf_callchain_context_PERF_CONTEXT_GUEST: perf_callchain_context = 18446744073709549568;
15846pub const perf_callchain_context_PERF_CONTEXT_GUEST_KERNEL: perf_callchain_context =
15847    18446744073709549440;
15848pub const perf_callchain_context_PERF_CONTEXT_GUEST_USER: perf_callchain_context =
15849    18446744073709549056;
15850pub const perf_callchain_context_PERF_CONTEXT_MAX: perf_callchain_context = 18446744073709547521;
15851pub type perf_callchain_context = crate::types::c_ulong;
15852#[repr(C)]
15853#[derive(Copy, Clone)]
15854pub union perf_mem_data_src {
15855    pub val: __u64,
15856    pub __bindgen_anon_1: perf_mem_data_src__bindgen_ty_1,
15857}
15858#[repr(C)]
15859#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
15860pub struct perf_mem_data_src__bindgen_ty_1 {
15861    pub _bindgen_align: [u64; 0],
15862    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
15863}
15864impl perf_mem_data_src__bindgen_ty_1 {
15865    #[inline]
15866    pub fn mem_op(&self) -> __u64 {
15867        self._bitfield_1.get_const::<0usize, 5u8>() as u64 as _
15868    }
15869    #[inline]
15870    pub fn set_mem_op(&mut self, val: __u64) {
15871        let val: u64 = val as _;
15872        self._bitfield_1.set_const::<0usize, 5u8>(val as u64)
15873    }
15874    #[inline]
15875    pub unsafe fn mem_op_raw(this: *const Self) -> __u64 {
15876        unsafe {
15877            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 5u8>(
15878                ::std::ptr::addr_of!((*this)._bitfield_1),
15879            ) as u64 as _
15880        }
15881    }
15882    #[inline]
15883    pub unsafe fn set_mem_op_raw(this: *mut Self, val: __u64) {
15884        unsafe {
15885            let val: u64 = val as _;
15886            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 5u8>(
15887                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15888                val as u64,
15889            )
15890        }
15891    }
15892    #[inline]
15893    pub fn mem_lvl(&self) -> __u64 {
15894        self._bitfield_1.get_const::<5usize, 14u8>() as u64 as _
15895    }
15896    #[inline]
15897    pub fn set_mem_lvl(&mut self, val: __u64) {
15898        let val: u64 = val as _;
15899        self._bitfield_1.set_const::<5usize, 14u8>(val as u64)
15900    }
15901    #[inline]
15902    pub unsafe fn mem_lvl_raw(this: *const Self) -> __u64 {
15903        unsafe {
15904            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<5usize, 14u8>(
15905                ::std::ptr::addr_of!((*this)._bitfield_1),
15906            ) as u64 as _
15907        }
15908    }
15909    #[inline]
15910    pub unsafe fn set_mem_lvl_raw(this: *mut Self, val: __u64) {
15911        unsafe {
15912            let val: u64 = val as _;
15913            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<5usize, 14u8>(
15914                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15915                val as u64,
15916            )
15917        }
15918    }
15919    #[inline]
15920    pub fn mem_snoop(&self) -> __u64 {
15921        self._bitfield_1.get_const::<19usize, 5u8>() as u64 as _
15922    }
15923    #[inline]
15924    pub fn set_mem_snoop(&mut self, val: __u64) {
15925        let val: u64 = val as _;
15926        self._bitfield_1.set_const::<19usize, 5u8>(val as u64)
15927    }
15928    #[inline]
15929    pub unsafe fn mem_snoop_raw(this: *const Self) -> __u64 {
15930        unsafe {
15931            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<19usize, 5u8>(
15932                ::std::ptr::addr_of!((*this)._bitfield_1),
15933            ) as u64 as _
15934        }
15935    }
15936    #[inline]
15937    pub unsafe fn set_mem_snoop_raw(this: *mut Self, val: __u64) {
15938        unsafe {
15939            let val: u64 = val as _;
15940            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<19usize, 5u8>(
15941                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15942                val as u64,
15943            )
15944        }
15945    }
15946    #[inline]
15947    pub fn mem_lock(&self) -> __u64 {
15948        self._bitfield_1.get_const::<24usize, 2u8>() as u64 as _
15949    }
15950    #[inline]
15951    pub fn set_mem_lock(&mut self, val: __u64) {
15952        let val: u64 = val as _;
15953        self._bitfield_1.set_const::<24usize, 2u8>(val as u64)
15954    }
15955    #[inline]
15956    pub unsafe fn mem_lock_raw(this: *const Self) -> __u64 {
15957        unsafe {
15958            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 2u8>(
15959                ::std::ptr::addr_of!((*this)._bitfield_1),
15960            ) as u64 as _
15961        }
15962    }
15963    #[inline]
15964    pub unsafe fn set_mem_lock_raw(this: *mut Self, val: __u64) {
15965        unsafe {
15966            let val: u64 = val as _;
15967            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 2u8>(
15968                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15969                val as u64,
15970            )
15971        }
15972    }
15973    #[inline]
15974    pub fn mem_dtlb(&self) -> __u64 {
15975        self._bitfield_1.get_const::<26usize, 7u8>() as u64 as _
15976    }
15977    #[inline]
15978    pub fn set_mem_dtlb(&mut self, val: __u64) {
15979        let val: u64 = val as _;
15980        self._bitfield_1.set_const::<26usize, 7u8>(val as u64)
15981    }
15982    #[inline]
15983    pub unsafe fn mem_dtlb_raw(this: *const Self) -> __u64 {
15984        unsafe {
15985            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 7u8>(
15986                ::std::ptr::addr_of!((*this)._bitfield_1),
15987            ) as u64 as _
15988        }
15989    }
15990    #[inline]
15991    pub unsafe fn set_mem_dtlb_raw(this: *mut Self, val: __u64) {
15992        unsafe {
15993            let val: u64 = val as _;
15994            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 7u8>(
15995                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
15996                val as u64,
15997            )
15998        }
15999    }
16000    #[inline]
16001    pub fn mem_lvl_num(&self) -> __u64 {
16002        self._bitfield_1.get_const::<33usize, 4u8>() as u64 as _
16003    }
16004    #[inline]
16005    pub fn set_mem_lvl_num(&mut self, val: __u64) {
16006        let val: u64 = val as _;
16007        self._bitfield_1.set_const::<33usize, 4u8>(val as u64)
16008    }
16009    #[inline]
16010    pub unsafe fn mem_lvl_num_raw(this: *const Self) -> __u64 {
16011        unsafe {
16012            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 4u8>(
16013                ::std::ptr::addr_of!((*this)._bitfield_1),
16014            ) as u64 as _
16015        }
16016    }
16017    #[inline]
16018    pub unsafe fn set_mem_lvl_num_raw(this: *mut Self, val: __u64) {
16019        unsafe {
16020            let val: u64 = val as _;
16021            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 4u8>(
16022                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16023                val as u64,
16024            )
16025        }
16026    }
16027    #[inline]
16028    pub fn mem_remote(&self) -> __u64 {
16029        self._bitfield_1.get_const::<37usize, 1u8>() as u64 as _
16030    }
16031    #[inline]
16032    pub fn set_mem_remote(&mut self, val: __u64) {
16033        let val: u64 = val as _;
16034        self._bitfield_1.set_const::<37usize, 1u8>(val as u64)
16035    }
16036    #[inline]
16037    pub unsafe fn mem_remote_raw(this: *const Self) -> __u64 {
16038        unsafe {
16039            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<37usize, 1u8>(
16040                ::std::ptr::addr_of!((*this)._bitfield_1),
16041            ) as u64 as _
16042        }
16043    }
16044    #[inline]
16045    pub unsafe fn set_mem_remote_raw(this: *mut Self, val: __u64) {
16046        unsafe {
16047            let val: u64 = val as _;
16048            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<37usize, 1u8>(
16049                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16050                val as u64,
16051            )
16052        }
16053    }
16054    #[inline]
16055    pub fn mem_snoopx(&self) -> __u64 {
16056        self._bitfield_1.get_const::<38usize, 2u8>() as u64 as _
16057    }
16058    #[inline]
16059    pub fn set_mem_snoopx(&mut self, val: __u64) {
16060        let val: u64 = val as _;
16061        self._bitfield_1.set_const::<38usize, 2u8>(val as u64)
16062    }
16063    #[inline]
16064    pub unsafe fn mem_snoopx_raw(this: *const Self) -> __u64 {
16065        unsafe {
16066            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<38usize, 2u8>(
16067                ::std::ptr::addr_of!((*this)._bitfield_1),
16068            ) as u64 as _
16069        }
16070    }
16071    #[inline]
16072    pub unsafe fn set_mem_snoopx_raw(this: *mut Self, val: __u64) {
16073        unsafe {
16074            let val: u64 = val as _;
16075            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<38usize, 2u8>(
16076                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16077                val as u64,
16078            )
16079        }
16080    }
16081    #[inline]
16082    pub fn mem_blk(&self) -> __u64 {
16083        self._bitfield_1.get_const::<40usize, 3u8>() as u64 as _
16084    }
16085    #[inline]
16086    pub fn set_mem_blk(&mut self, val: __u64) {
16087        let val: u64 = val as _;
16088        self._bitfield_1.set_const::<40usize, 3u8>(val as u64)
16089    }
16090    #[inline]
16091    pub unsafe fn mem_blk_raw(this: *const Self) -> __u64 {
16092        unsafe {
16093            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<40usize, 3u8>(
16094                ::std::ptr::addr_of!((*this)._bitfield_1),
16095            ) as u64 as _
16096        }
16097    }
16098    #[inline]
16099    pub unsafe fn set_mem_blk_raw(this: *mut Self, val: __u64) {
16100        unsafe {
16101            let val: u64 = val as _;
16102            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<40usize, 3u8>(
16103                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16104                val as u64,
16105            )
16106        }
16107    }
16108    #[inline]
16109    pub fn mem_hops(&self) -> __u64 {
16110        self._bitfield_1.get_const::<43usize, 3u8>() as u64 as _
16111    }
16112    #[inline]
16113    pub fn set_mem_hops(&mut self, val: __u64) {
16114        let val: u64 = val as _;
16115        self._bitfield_1.set_const::<43usize, 3u8>(val as u64)
16116    }
16117    #[inline]
16118    pub unsafe fn mem_hops_raw(this: *const Self) -> __u64 {
16119        unsafe {
16120            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<43usize, 3u8>(
16121                ::std::ptr::addr_of!((*this)._bitfield_1),
16122            ) as u64 as _
16123        }
16124    }
16125    #[inline]
16126    pub unsafe fn set_mem_hops_raw(this: *mut Self, val: __u64) {
16127        unsafe {
16128            let val: u64 = val as _;
16129            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<43usize, 3u8>(
16130                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16131                val as u64,
16132            )
16133        }
16134    }
16135    #[inline]
16136    pub fn mem_rsvd(&self) -> __u64 {
16137        self._bitfield_1.get_const::<46usize, 18u8>() as u64 as _
16138    }
16139    #[inline]
16140    pub fn set_mem_rsvd(&mut self, val: __u64) {
16141        let val: u64 = val as _;
16142        self._bitfield_1.set_const::<46usize, 18u8>(val as u64)
16143    }
16144    #[inline]
16145    pub unsafe fn mem_rsvd_raw(this: *const Self) -> __u64 {
16146        unsafe {
16147            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<46usize, 18u8>(
16148                ::std::ptr::addr_of!((*this)._bitfield_1),
16149            ) as u64 as _
16150        }
16151    }
16152    #[inline]
16153    pub unsafe fn set_mem_rsvd_raw(this: *mut Self, val: __u64) {
16154        unsafe {
16155            let val: u64 = val as _;
16156            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<46usize, 18u8>(
16157                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16158                val as u64,
16159            )
16160        }
16161    }
16162    #[inline]
16163    pub fn new_bitfield_1(
16164        mem_op: __u64,
16165        mem_lvl: __u64,
16166        mem_snoop: __u64,
16167        mem_lock: __u64,
16168        mem_dtlb: __u64,
16169        mem_lvl_num: __u64,
16170        mem_remote: __u64,
16171        mem_snoopx: __u64,
16172        mem_blk: __u64,
16173        mem_hops: __u64,
16174        mem_rsvd: __u64,
16175    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
16176        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
16177        __bindgen_bitfield_unit.set_const::<0usize, 5u8>({
16178            let mem_op: u64 = mem_op as _;
16179            mem_op as u64
16180        });
16181        __bindgen_bitfield_unit.set_const::<5usize, 14u8>({
16182            let mem_lvl: u64 = mem_lvl as _;
16183            mem_lvl as u64
16184        });
16185        __bindgen_bitfield_unit.set_const::<19usize, 5u8>({
16186            let mem_snoop: u64 = mem_snoop as _;
16187            mem_snoop as u64
16188        });
16189        __bindgen_bitfield_unit.set_const::<24usize, 2u8>({
16190            let mem_lock: u64 = mem_lock as _;
16191            mem_lock as u64
16192        });
16193        __bindgen_bitfield_unit.set_const::<26usize, 7u8>({
16194            let mem_dtlb: u64 = mem_dtlb as _;
16195            mem_dtlb as u64
16196        });
16197        __bindgen_bitfield_unit.set_const::<33usize, 4u8>({
16198            let mem_lvl_num: u64 = mem_lvl_num as _;
16199            mem_lvl_num as u64
16200        });
16201        __bindgen_bitfield_unit.set_const::<37usize, 1u8>({
16202            let mem_remote: u64 = mem_remote as _;
16203            mem_remote as u64
16204        });
16205        __bindgen_bitfield_unit.set_const::<38usize, 2u8>({
16206            let mem_snoopx: u64 = mem_snoopx as _;
16207            mem_snoopx as u64
16208        });
16209        __bindgen_bitfield_unit.set_const::<40usize, 3u8>({
16210            let mem_blk: u64 = mem_blk as _;
16211            mem_blk as u64
16212        });
16213        __bindgen_bitfield_unit.set_const::<43usize, 3u8>({
16214            let mem_hops: u64 = mem_hops as _;
16215            mem_hops as u64
16216        });
16217        __bindgen_bitfield_unit.set_const::<46usize, 18u8>({
16218            let mem_rsvd: u64 = mem_rsvd as _;
16219            mem_rsvd as u64
16220        });
16221        __bindgen_bitfield_unit
16222    }
16223}
16224impl Default for perf_mem_data_src {
16225    fn default() -> Self {
16226        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16227        unsafe {
16228            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16229            s.assume_init()
16230        }
16231    }
16232}
16233#[repr(C)]
16234#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16235pub struct perf_branch_entry {
16236    pub from: __u64,
16237    pub to: __u64,
16238    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
16239}
16240impl perf_branch_entry {
16241    #[inline]
16242    pub fn mispred(&self) -> __u64 {
16243        self._bitfield_1.get_const::<0usize, 1u8>() as u64 as _
16244    }
16245    #[inline]
16246    pub fn set_mispred(&mut self, val: __u64) {
16247        let val: u64 = val as _;
16248        self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
16249    }
16250    #[inline]
16251    pub unsafe fn mispred_raw(this: *const Self) -> __u64 {
16252        unsafe {
16253            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<0usize, 1u8>(
16254                ::std::ptr::addr_of!((*this)._bitfield_1),
16255            ) as u64 as _
16256        }
16257    }
16258    #[inline]
16259    pub unsafe fn set_mispred_raw(this: *mut Self, val: __u64) {
16260        unsafe {
16261            let val: u64 = val as _;
16262            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<0usize, 1u8>(
16263                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16264                val as u64,
16265            )
16266        }
16267    }
16268    #[inline]
16269    pub fn predicted(&self) -> __u64 {
16270        self._bitfield_1.get_const::<1usize, 1u8>() as u64 as _
16271    }
16272    #[inline]
16273    pub fn set_predicted(&mut self, val: __u64) {
16274        let val: u64 = val as _;
16275        self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
16276    }
16277    #[inline]
16278    pub unsafe fn predicted_raw(this: *const Self) -> __u64 {
16279        unsafe {
16280            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<1usize, 1u8>(
16281                ::std::ptr::addr_of!((*this)._bitfield_1),
16282            ) as u64 as _
16283        }
16284    }
16285    #[inline]
16286    pub unsafe fn set_predicted_raw(this: *mut Self, val: __u64) {
16287        unsafe {
16288            let val: u64 = val as _;
16289            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<1usize, 1u8>(
16290                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16291                val as u64,
16292            )
16293        }
16294    }
16295    #[inline]
16296    pub fn in_tx(&self) -> __u64 {
16297        self._bitfield_1.get_const::<2usize, 1u8>() as u64 as _
16298    }
16299    #[inline]
16300    pub fn set_in_tx(&mut self, val: __u64) {
16301        let val: u64 = val as _;
16302        self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
16303    }
16304    #[inline]
16305    pub unsafe fn in_tx_raw(this: *const Self) -> __u64 {
16306        unsafe {
16307            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<2usize, 1u8>(
16308                ::std::ptr::addr_of!((*this)._bitfield_1),
16309            ) as u64 as _
16310        }
16311    }
16312    #[inline]
16313    pub unsafe fn set_in_tx_raw(this: *mut Self, val: __u64) {
16314        unsafe {
16315            let val: u64 = val as _;
16316            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<2usize, 1u8>(
16317                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16318                val as u64,
16319            )
16320        }
16321    }
16322    #[inline]
16323    pub fn abort(&self) -> __u64 {
16324        self._bitfield_1.get_const::<3usize, 1u8>() as u64 as _
16325    }
16326    #[inline]
16327    pub fn set_abort(&mut self, val: __u64) {
16328        let val: u64 = val as _;
16329        self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
16330    }
16331    #[inline]
16332    pub unsafe fn abort_raw(this: *const Self) -> __u64 {
16333        unsafe {
16334            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<3usize, 1u8>(
16335                ::std::ptr::addr_of!((*this)._bitfield_1),
16336            ) as u64 as _
16337        }
16338    }
16339    #[inline]
16340    pub unsafe fn set_abort_raw(this: *mut Self, val: __u64) {
16341        unsafe {
16342            let val: u64 = val as _;
16343            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<3usize, 1u8>(
16344                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16345                val as u64,
16346            )
16347        }
16348    }
16349    #[inline]
16350    pub fn cycles(&self) -> __u64 {
16351        self._bitfield_1.get_const::<4usize, 16u8>() as u64 as _
16352    }
16353    #[inline]
16354    pub fn set_cycles(&mut self, val: __u64) {
16355        let val: u64 = val as _;
16356        self._bitfield_1.set_const::<4usize, 16u8>(val as u64)
16357    }
16358    #[inline]
16359    pub unsafe fn cycles_raw(this: *const Self) -> __u64 {
16360        unsafe {
16361            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<4usize, 16u8>(
16362                ::std::ptr::addr_of!((*this)._bitfield_1),
16363            ) as u64 as _
16364        }
16365    }
16366    #[inline]
16367    pub unsafe fn set_cycles_raw(this: *mut Self, val: __u64) {
16368        unsafe {
16369            let val: u64 = val as _;
16370            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<4usize, 16u8>(
16371                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16372                val as u64,
16373            )
16374        }
16375    }
16376    #[inline]
16377    pub fn type_(&self) -> __u64 {
16378        self._bitfield_1.get_const::<20usize, 4u8>() as u64 as _
16379    }
16380    #[inline]
16381    pub fn set_type(&mut self, val: __u64) {
16382        let val: u64 = val as _;
16383        self._bitfield_1.set_const::<20usize, 4u8>(val as u64)
16384    }
16385    #[inline]
16386    pub unsafe fn type__raw(this: *const Self) -> __u64 {
16387        unsafe {
16388            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<20usize, 4u8>(
16389                ::std::ptr::addr_of!((*this)._bitfield_1),
16390            ) as u64 as _
16391        }
16392    }
16393    #[inline]
16394    pub unsafe fn set_type_raw(this: *mut Self, val: __u64) {
16395        unsafe {
16396            let val: u64 = val as _;
16397            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<20usize, 4u8>(
16398                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16399                val as u64,
16400            )
16401        }
16402    }
16403    #[inline]
16404    pub fn spec(&self) -> __u64 {
16405        self._bitfield_1.get_const::<24usize, 2u8>() as u64 as _
16406    }
16407    #[inline]
16408    pub fn set_spec(&mut self, val: __u64) {
16409        let val: u64 = val as _;
16410        self._bitfield_1.set_const::<24usize, 2u8>(val as u64)
16411    }
16412    #[inline]
16413    pub unsafe fn spec_raw(this: *const Self) -> __u64 {
16414        unsafe {
16415            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<24usize, 2u8>(
16416                ::std::ptr::addr_of!((*this)._bitfield_1),
16417            ) as u64 as _
16418        }
16419    }
16420    #[inline]
16421    pub unsafe fn set_spec_raw(this: *mut Self, val: __u64) {
16422        unsafe {
16423            let val: u64 = val as _;
16424            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<24usize, 2u8>(
16425                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16426                val as u64,
16427            )
16428        }
16429    }
16430    #[inline]
16431    pub fn new_type(&self) -> __u64 {
16432        self._bitfield_1.get_const::<26usize, 4u8>() as u64 as _
16433    }
16434    #[inline]
16435    pub fn set_new_type(&mut self, val: __u64) {
16436        let val: u64 = val as _;
16437        self._bitfield_1.set_const::<26usize, 4u8>(val as u64)
16438    }
16439    #[inline]
16440    pub unsafe fn new_type_raw(this: *const Self) -> __u64 {
16441        unsafe {
16442            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<26usize, 4u8>(
16443                ::std::ptr::addr_of!((*this)._bitfield_1),
16444            ) as u64 as _
16445        }
16446    }
16447    #[inline]
16448    pub unsafe fn set_new_type_raw(this: *mut Self, val: __u64) {
16449        unsafe {
16450            let val: u64 = val as _;
16451            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<26usize, 4u8>(
16452                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16453                val as u64,
16454            )
16455        }
16456    }
16457    #[inline]
16458    pub fn priv_(&self) -> __u64 {
16459        self._bitfield_1.get_const::<30usize, 3u8>() as u64 as _
16460    }
16461    #[inline]
16462    pub fn set_priv(&mut self, val: __u64) {
16463        let val: u64 = val as _;
16464        self._bitfield_1.set_const::<30usize, 3u8>(val as u64)
16465    }
16466    #[inline]
16467    pub unsafe fn priv__raw(this: *const Self) -> __u64 {
16468        unsafe {
16469            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<30usize, 3u8>(
16470                ::std::ptr::addr_of!((*this)._bitfield_1),
16471            ) as u64 as _
16472        }
16473    }
16474    #[inline]
16475    pub unsafe fn set_priv_raw(this: *mut Self, val: __u64) {
16476        unsafe {
16477            let val: u64 = val as _;
16478            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<30usize, 3u8>(
16479                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16480                val as u64,
16481            )
16482        }
16483    }
16484    #[inline]
16485    pub fn reserved(&self) -> __u64 {
16486        self._bitfield_1.get_const::<33usize, 31u8>() as u64 as _
16487    }
16488    #[inline]
16489    pub fn set_reserved(&mut self, val: __u64) {
16490        let val: u64 = val as _;
16491        self._bitfield_1.set_const::<33usize, 31u8>(val as u64)
16492    }
16493    #[inline]
16494    pub unsafe fn reserved_raw(this: *const Self) -> __u64 {
16495        unsafe {
16496            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get_const::<33usize, 31u8>(
16497                ::std::ptr::addr_of!((*this)._bitfield_1),
16498            ) as u64 as _
16499        }
16500    }
16501    #[inline]
16502    pub unsafe fn set_reserved_raw(this: *mut Self, val: __u64) {
16503        unsafe {
16504            let val: u64 = val as _;
16505            <__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set_const::<33usize, 31u8>(
16506                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
16507                val as u64,
16508            )
16509        }
16510    }
16511    #[inline]
16512    pub fn new_bitfield_1(
16513        mispred: __u64,
16514        predicted: __u64,
16515        in_tx: __u64,
16516        abort: __u64,
16517        cycles: __u64,
16518        type_: __u64,
16519        spec: __u64,
16520        new_type: __u64,
16521        priv_: __u64,
16522        reserved: __u64,
16523    ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
16524        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
16525        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
16526            let mispred: u64 = mispred as _;
16527            mispred as u64
16528        });
16529        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
16530            let predicted: u64 = predicted as _;
16531            predicted as u64
16532        });
16533        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
16534            let in_tx: u64 = in_tx as _;
16535            in_tx as u64
16536        });
16537        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
16538            let abort: u64 = abort as _;
16539            abort as u64
16540        });
16541        __bindgen_bitfield_unit.set_const::<4usize, 16u8>({
16542            let cycles: u64 = cycles as _;
16543            cycles as u64
16544        });
16545        __bindgen_bitfield_unit.set_const::<20usize, 4u8>({
16546            let type_: u64 = type_ as _;
16547            type_ as u64
16548        });
16549        __bindgen_bitfield_unit.set_const::<24usize, 2u8>({
16550            let spec: u64 = spec as _;
16551            spec as u64
16552        });
16553        __bindgen_bitfield_unit.set_const::<26usize, 4u8>({
16554            let new_type: u64 = new_type as _;
16555            new_type as u64
16556        });
16557        __bindgen_bitfield_unit.set_const::<30usize, 3u8>({
16558            let priv_: u64 = priv_ as _;
16559            priv_ as u64
16560        });
16561        __bindgen_bitfield_unit.set_const::<33usize, 31u8>({
16562            let reserved: u64 = reserved as _;
16563            reserved as u64
16564        });
16565        __bindgen_bitfield_unit
16566    }
16567}
16568#[repr(C)]
16569#[derive(Copy, Clone)]
16570pub union perf_sample_weight {
16571    pub full: __u64,
16572    pub __bindgen_anon_1: perf_sample_weight__bindgen_ty_1,
16573}
16574#[repr(C)]
16575#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16576pub struct perf_sample_weight__bindgen_ty_1 {
16577    pub var1_dw: __u32,
16578    pub var2_w: __u16,
16579    pub var3_w: __u16,
16580}
16581impl Default for perf_sample_weight {
16582    fn default() -> Self {
16583        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16584        unsafe {
16585            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16586            s.assume_init()
16587        }
16588    }
16589}
16590pub const UNAME26: _bindgen_ty_92 = 131072;
16591pub const ADDR_NO_RANDOMIZE: _bindgen_ty_92 = 262144;
16592pub const FDPIC_FUNCPTRS: _bindgen_ty_92 = 524288;
16593pub const MMAP_PAGE_ZERO: _bindgen_ty_92 = 1048576;
16594pub const ADDR_COMPAT_LAYOUT: _bindgen_ty_92 = 2097152;
16595pub const READ_IMPLIES_EXEC: _bindgen_ty_92 = 4194304;
16596pub const ADDR_LIMIT_32BIT: _bindgen_ty_92 = 8388608;
16597pub const SHORT_INODE: _bindgen_ty_92 = 16777216;
16598pub const WHOLE_SECONDS: _bindgen_ty_92 = 33554432;
16599pub const STICKY_TIMEOUTS: _bindgen_ty_92 = 67108864;
16600pub const ADDR_LIMIT_3GB: _bindgen_ty_92 = 134217728;
16601pub type _bindgen_ty_92 = crate::types::c_uint;
16602pub const PER_LINUX: _bindgen_ty_93 = 0;
16603pub const PER_LINUX_32BIT: _bindgen_ty_93 = 8388608;
16604pub const PER_LINUX_FDPIC: _bindgen_ty_93 = 524288;
16605pub const PER_SVR4: _bindgen_ty_93 = 68157441;
16606pub const PER_SVR3: _bindgen_ty_93 = 83886082;
16607pub const PER_SCOSVR3: _bindgen_ty_93 = 117440515;
16608pub const PER_OSR5: _bindgen_ty_93 = 100663299;
16609pub const PER_WYSEV386: _bindgen_ty_93 = 83886084;
16610pub const PER_ISCR4: _bindgen_ty_93 = 67108869;
16611pub const PER_BSD: _bindgen_ty_93 = 6;
16612pub const PER_SUNOS: _bindgen_ty_93 = 67108870;
16613pub const PER_XENIX: _bindgen_ty_93 = 83886087;
16614pub const PER_LINUX32: _bindgen_ty_93 = 8;
16615pub const PER_LINUX32_3GB: _bindgen_ty_93 = 134217736;
16616pub const PER_IRIX32: _bindgen_ty_93 = 67108873;
16617pub const PER_IRIXN32: _bindgen_ty_93 = 67108874;
16618pub const PER_IRIX64: _bindgen_ty_93 = 67108875;
16619pub const PER_RISCOS: _bindgen_ty_93 = 12;
16620pub const PER_SOLARIS: _bindgen_ty_93 = 67108877;
16621pub const PER_UW7: _bindgen_ty_93 = 68157454;
16622pub const PER_OSF4: _bindgen_ty_93 = 15;
16623pub const PER_HPUX: _bindgen_ty_93 = 16;
16624pub const PER_MASK: _bindgen_ty_93 = 255;
16625pub type _bindgen_ty_93 = crate::types::c_uint;
16626#[repr(C, packed)]
16627#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16628pub struct sadb_msg {
16629    pub sadb_msg_version: __u8,
16630    pub sadb_msg_type: __u8,
16631    pub sadb_msg_errno: __u8,
16632    pub sadb_msg_satype: __u8,
16633    pub sadb_msg_len: __u16,
16634    pub sadb_msg_reserved: __u16,
16635    pub sadb_msg_seq: __u32,
16636    pub sadb_msg_pid: __u32,
16637}
16638#[repr(C, packed)]
16639#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16640pub struct sadb_ext {
16641    pub sadb_ext_len: __u16,
16642    pub sadb_ext_type: __u16,
16643}
16644#[repr(C, packed)]
16645#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16646pub struct sadb_sa {
16647    pub sadb_sa_len: __u16,
16648    pub sadb_sa_exttype: __u16,
16649    pub sadb_sa_spi: __be32,
16650    pub sadb_sa_replay: __u8,
16651    pub sadb_sa_state: __u8,
16652    pub sadb_sa_auth: __u8,
16653    pub sadb_sa_encrypt: __u8,
16654    pub sadb_sa_flags: __u32,
16655}
16656#[repr(C, packed)]
16657#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16658pub struct sadb_lifetime {
16659    pub sadb_lifetime_len: __u16,
16660    pub sadb_lifetime_exttype: __u16,
16661    pub sadb_lifetime_allocations: __u32,
16662    pub sadb_lifetime_bytes: __u64,
16663    pub sadb_lifetime_addtime: __u64,
16664    pub sadb_lifetime_usetime: __u64,
16665}
16666#[repr(C, packed)]
16667#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16668pub struct sadb_address {
16669    pub sadb_address_len: __u16,
16670    pub sadb_address_exttype: __u16,
16671    pub sadb_address_proto: __u8,
16672    pub sadb_address_prefixlen: __u8,
16673    pub sadb_address_reserved: __u16,
16674}
16675#[repr(C, packed)]
16676#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16677pub struct sadb_key {
16678    pub sadb_key_len: __u16,
16679    pub sadb_key_exttype: __u16,
16680    pub sadb_key_bits: __u16,
16681    pub sadb_key_reserved: __u16,
16682}
16683#[repr(C, packed)]
16684#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16685pub struct sadb_ident {
16686    pub sadb_ident_len: __u16,
16687    pub sadb_ident_exttype: __u16,
16688    pub sadb_ident_type: __u16,
16689    pub sadb_ident_reserved: __u16,
16690    pub sadb_ident_id: __u64,
16691}
16692#[repr(C, packed)]
16693#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16694pub struct sadb_sens {
16695    pub sadb_sens_len: __u16,
16696    pub sadb_sens_exttype: __u16,
16697    pub sadb_sens_dpd: __u32,
16698    pub sadb_sens_sens_level: __u8,
16699    pub sadb_sens_sens_len: __u8,
16700    pub sadb_sens_integ_level: __u8,
16701    pub sadb_sens_integ_len: __u8,
16702    pub sadb_sens_reserved: __u32,
16703}
16704#[repr(C, packed)]
16705#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16706pub struct sadb_prop {
16707    pub sadb_prop_len: __u16,
16708    pub sadb_prop_exttype: __u16,
16709    pub sadb_prop_replay: __u8,
16710    pub sadb_prop_reserved: [__u8; 3usize],
16711}
16712#[repr(C, packed)]
16713#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16714pub struct sadb_comb {
16715    pub sadb_comb_auth: __u8,
16716    pub sadb_comb_encrypt: __u8,
16717    pub sadb_comb_flags: __u16,
16718    pub sadb_comb_auth_minbits: __u16,
16719    pub sadb_comb_auth_maxbits: __u16,
16720    pub sadb_comb_encrypt_minbits: __u16,
16721    pub sadb_comb_encrypt_maxbits: __u16,
16722    pub sadb_comb_reserved: __u32,
16723    pub sadb_comb_soft_allocations: __u32,
16724    pub sadb_comb_hard_allocations: __u32,
16725    pub sadb_comb_soft_bytes: __u64,
16726    pub sadb_comb_hard_bytes: __u64,
16727    pub sadb_comb_soft_addtime: __u64,
16728    pub sadb_comb_hard_addtime: __u64,
16729    pub sadb_comb_soft_usetime: __u64,
16730    pub sadb_comb_hard_usetime: __u64,
16731}
16732#[repr(C, packed)]
16733#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16734pub struct sadb_supported {
16735    pub sadb_supported_len: __u16,
16736    pub sadb_supported_exttype: __u16,
16737    pub sadb_supported_reserved: __u32,
16738}
16739#[repr(C, packed)]
16740#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16741pub struct sadb_alg {
16742    pub sadb_alg_id: __u8,
16743    pub sadb_alg_ivlen: __u8,
16744    pub sadb_alg_minbits: __u16,
16745    pub sadb_alg_maxbits: __u16,
16746    pub sadb_alg_reserved: __u16,
16747}
16748#[repr(C, packed)]
16749#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16750pub struct sadb_spirange {
16751    pub sadb_spirange_len: __u16,
16752    pub sadb_spirange_exttype: __u16,
16753    pub sadb_spirange_min: __u32,
16754    pub sadb_spirange_max: __u32,
16755    pub sadb_spirange_reserved: __u32,
16756}
16757#[repr(C, packed)]
16758#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16759pub struct sadb_x_kmprivate {
16760    pub sadb_x_kmprivate_len: __u16,
16761    pub sadb_x_kmprivate_exttype: __u16,
16762    pub sadb_x_kmprivate_reserved: __u32,
16763}
16764#[repr(C, packed)]
16765#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16766pub struct sadb_x_sa2 {
16767    pub sadb_x_sa2_len: __u16,
16768    pub sadb_x_sa2_exttype: __u16,
16769    pub sadb_x_sa2_mode: __u8,
16770    pub sadb_x_sa2_reserved1: __u8,
16771    pub sadb_x_sa2_reserved2: __u16,
16772    pub sadb_x_sa2_sequence: __u32,
16773    pub sadb_x_sa2_reqid: __u32,
16774}
16775#[repr(C, packed)]
16776#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16777pub struct sadb_x_policy {
16778    pub sadb_x_policy_len: __u16,
16779    pub sadb_x_policy_exttype: __u16,
16780    pub sadb_x_policy_type: __u16,
16781    pub sadb_x_policy_dir: __u8,
16782    pub sadb_x_policy_reserved: __u8,
16783    pub sadb_x_policy_id: __u32,
16784    pub sadb_x_policy_priority: __u32,
16785}
16786#[repr(C, packed)]
16787#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16788pub struct sadb_x_ipsecrequest {
16789    pub sadb_x_ipsecrequest_len: __u16,
16790    pub sadb_x_ipsecrequest_proto: __u16,
16791    pub sadb_x_ipsecrequest_mode: __u8,
16792    pub sadb_x_ipsecrequest_level: __u8,
16793    pub sadb_x_ipsecrequest_reserved1: __u16,
16794    pub sadb_x_ipsecrequest_reqid: __u32,
16795    pub sadb_x_ipsecrequest_reserved2: __u32,
16796}
16797#[repr(C, packed)]
16798#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16799pub struct sadb_x_nat_t_type {
16800    pub sadb_x_nat_t_type_len: __u16,
16801    pub sadb_x_nat_t_type_exttype: __u16,
16802    pub sadb_x_nat_t_type_type: __u8,
16803    pub sadb_x_nat_t_type_reserved: [__u8; 3usize],
16804}
16805#[repr(C, packed)]
16806#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16807pub struct sadb_x_nat_t_port {
16808    pub sadb_x_nat_t_port_len: __u16,
16809    pub sadb_x_nat_t_port_exttype: __u16,
16810    pub sadb_x_nat_t_port_port: __be16,
16811    pub sadb_x_nat_t_port_reserved: __u16,
16812}
16813#[repr(C, packed)]
16814#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16815pub struct sadb_x_sec_ctx {
16816    pub sadb_x_sec_len: __u16,
16817    pub sadb_x_sec_exttype: __u16,
16818    pub sadb_x_ctx_alg: __u8,
16819    pub sadb_x_ctx_doi: __u8,
16820    pub sadb_x_ctx_len: __u16,
16821}
16822#[repr(C, packed)]
16823#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16824pub struct sadb_x_kmaddress {
16825    pub sadb_x_kmaddress_len: __u16,
16826    pub sadb_x_kmaddress_exttype: __u16,
16827    pub sadb_x_kmaddress_reserved: __u32,
16828}
16829#[repr(C, packed)]
16830#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16831pub struct sadb_x_filter {
16832    pub sadb_x_filter_len: __u16,
16833    pub sadb_x_filter_exttype: __u16,
16834    pub sadb_x_filter_saddr: [__u32; 4usize],
16835    pub sadb_x_filter_daddr: [__u32; 4usize],
16836    pub sadb_x_filter_family: __u16,
16837    pub sadb_x_filter_splen: __u8,
16838    pub sadb_x_filter_dplen: __u8,
16839}
16840#[repr(C)]
16841#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16842pub struct prctl_mm_map {
16843    pub start_code: __u64,
16844    pub end_code: __u64,
16845    pub start_data: __u64,
16846    pub end_data: __u64,
16847    pub start_brk: __u64,
16848    pub brk: __u64,
16849    pub start_stack: __u64,
16850    pub arg_start: __u64,
16851    pub arg_end: __u64,
16852    pub env_start: __u64,
16853    pub env_end: __u64,
16854    pub auxv: uref<__u64>,
16855    pub auxv_size: __u32,
16856    pub exe_fd: __u32,
16857}
16858impl Default for prctl_mm_map {
16859    fn default() -> Self {
16860        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16861        unsafe {
16862            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16863            s.assume_init()
16864        }
16865    }
16866}
16867#[repr(C)]
16868#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16869pub struct ptrace_peeksiginfo_args {
16870    pub off: __u64,
16871    pub flags: __u32,
16872    pub nr: __s32,
16873}
16874#[repr(C)]
16875#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16876pub struct seccomp_metadata {
16877    pub filter_off: __u64,
16878    pub flags: __u64,
16879}
16880#[repr(C)]
16881#[derive(Copy, Clone)]
16882pub struct ptrace_syscall_info {
16883    pub op: __u8,
16884    pub pad: [__u8; 3usize],
16885    pub arch: __u32,
16886    pub instruction_pointer: __u64,
16887    pub stack_pointer: __u64,
16888    pub __bindgen_anon_1: ptrace_syscall_info__bindgen_ty_1,
16889}
16890#[repr(C)]
16891#[derive(Copy, Clone)]
16892pub union ptrace_syscall_info__bindgen_ty_1 {
16893    pub entry: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1,
16894    pub exit: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2,
16895    pub seccomp: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3,
16896}
16897#[repr(C)]
16898#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16899pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1 {
16900    pub nr: __u64,
16901    pub args: [__u64; 6usize],
16902}
16903#[repr(C)]
16904#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16905pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2 {
16906    pub rval: __s64,
16907    pub is_error: __u8,
16908    pub __bindgen_padding_0: [u8; 7usize],
16909}
16910#[repr(C)]
16911#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16912pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3 {
16913    pub nr: __u64,
16914    pub args: [__u64; 6usize],
16915    pub ret_data: __u32,
16916    pub __bindgen_padding_0: [u8; 4usize],
16917}
16918impl Default for ptrace_syscall_info__bindgen_ty_1 {
16919    fn default() -> Self {
16920        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16921        unsafe {
16922            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16923            s.assume_init()
16924        }
16925    }
16926}
16927impl Default for ptrace_syscall_info {
16928    fn default() -> Self {
16929        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16930        unsafe {
16931            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16932            s.assume_init()
16933        }
16934    }
16935}
16936#[repr(C)]
16937#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16938pub struct ptrace_rseq_configuration {
16939    pub rseq_abi_pointer: __u64,
16940    pub rseq_abi_size: __u32,
16941    pub signature: __u32,
16942    pub flags: __u32,
16943    pub pad: __u32,
16944}
16945#[repr(C)]
16946#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16947pub struct ptrace_sud_config {
16948    pub mode: __u64,
16949    pub selector: __u64,
16950    pub offset: __u64,
16951    pub len: __u64,
16952}
16953#[repr(C)]
16954#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16955pub struct pt_regs {
16956    pub r15: crate::types::c_ulong,
16957    pub r14: crate::types::c_ulong,
16958    pub r13: crate::types::c_ulong,
16959    pub r12: crate::types::c_ulong,
16960    pub rbp: crate::types::c_ulong,
16961    pub rbx: crate::types::c_ulong,
16962    pub r11: crate::types::c_ulong,
16963    pub r10: crate::types::c_ulong,
16964    pub r9: crate::types::c_ulong,
16965    pub r8: crate::types::c_ulong,
16966    pub rax: crate::types::c_ulong,
16967    pub rcx: crate::types::c_ulong,
16968    pub rdx: crate::types::c_ulong,
16969    pub rsi: crate::types::c_ulong,
16970    pub rdi: crate::types::c_ulong,
16971    pub orig_rax: crate::types::c_ulong,
16972    pub rip: crate::types::c_ulong,
16973    pub cs: crate::types::c_ulong,
16974    pub eflags: crate::types::c_ulong,
16975    pub rsp: crate::types::c_ulong,
16976    pub ss: crate::types::c_ulong,
16977}
16978#[repr(C)]
16979#[derive(Debug, Default)]
16980pub struct rand_pool_info {
16981    pub entropy_count: crate::types::c_int,
16982    pub buf_size: crate::types::c_int,
16983    pub buf: __IncompleteArrayField<__u32>,
16984}
16985#[repr(C)]
16986#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16987pub struct vgetrandom_opaque_params {
16988    pub size_of_opaque_state: __u32,
16989    pub mmap_prot: __u32,
16990    pub mmap_flags: __u32,
16991    pub reserved: [__u32; 13usize],
16992}
16993#[repr(C)]
16994#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
16995pub struct rusage {
16996    pub ru_utime: timeval,
16997    pub ru_stime: timeval,
16998    pub ru_maxrss: __kernel_long_t,
16999    pub ru_ixrss: __kernel_long_t,
17000    pub ru_idrss: __kernel_long_t,
17001    pub ru_isrss: __kernel_long_t,
17002    pub ru_minflt: __kernel_long_t,
17003    pub ru_majflt: __kernel_long_t,
17004    pub ru_nswap: __kernel_long_t,
17005    pub ru_inblock: __kernel_long_t,
17006    pub ru_oublock: __kernel_long_t,
17007    pub ru_msgsnd: __kernel_long_t,
17008    pub ru_msgrcv: __kernel_long_t,
17009    pub ru_nsignals: __kernel_long_t,
17010    pub ru_nvcsw: __kernel_long_t,
17011    pub ru_nivcsw: __kernel_long_t,
17012}
17013#[repr(C)]
17014#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17015pub struct rlimit {
17016    pub rlim_cur: __kernel_ulong_t,
17017    pub rlim_max: __kernel_ulong_t,
17018}
17019#[repr(C)]
17020#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17021pub struct rlimit64 {
17022    pub rlim_cur: __u64,
17023    pub rlim_max: __u64,
17024}
17025#[repr(C)]
17026#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17027pub struct rtc_time {
17028    pub tm_sec: crate::types::c_int,
17029    pub tm_min: crate::types::c_int,
17030    pub tm_hour: crate::types::c_int,
17031    pub tm_mday: crate::types::c_int,
17032    pub tm_mon: crate::types::c_int,
17033    pub tm_year: crate::types::c_int,
17034    pub tm_wday: crate::types::c_int,
17035    pub tm_yday: crate::types::c_int,
17036    pub tm_isdst: crate::types::c_int,
17037}
17038#[repr(C)]
17039#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17040pub struct rtc_wkalrm {
17041    pub enabled: crate::types::c_uchar,
17042    pub pending: crate::types::c_uchar,
17043    pub __bindgen_padding_0: [u8; 2usize],
17044    pub time: rtc_time,
17045}
17046#[repr(C)]
17047#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17048pub struct rtc_pll_info {
17049    pub pll_ctrl: crate::types::c_int,
17050    pub pll_value: crate::types::c_int,
17051    pub pll_max: crate::types::c_int,
17052    pub pll_min: crate::types::c_int,
17053    pub pll_posmult: crate::types::c_int,
17054    pub pll_negmult: crate::types::c_int,
17055    pub pll_clock: crate::types::c_long,
17056}
17057#[repr(C)]
17058#[derive(Copy, Clone)]
17059pub struct rtc_param {
17060    pub param: __u64,
17061    pub __bindgen_anon_1: rtc_param__bindgen_ty_1,
17062    pub index: __u32,
17063    pub __pad: __u32,
17064}
17065#[repr(C)]
17066#[derive(Copy, Clone)]
17067pub union rtc_param__bindgen_ty_1 {
17068    pub uvalue: __u64,
17069    pub svalue: __s64,
17070    pub ptr: __u64,
17071}
17072impl Default for rtc_param__bindgen_ty_1 {
17073    fn default() -> Self {
17074        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17075        unsafe {
17076            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17077            s.assume_init()
17078        }
17079    }
17080}
17081impl Default for rtc_param {
17082    fn default() -> Self {
17083        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17084        unsafe {
17085            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17086            s.assume_init()
17087        }
17088    }
17089}
17090#[repr(C)]
17091#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17092pub struct clone_args {
17093    pub flags: __u64,
17094    pub pidfd: __u64,
17095    pub child_tid: __u64,
17096    pub parent_tid: __u64,
17097    pub exit_signal: __u64,
17098    pub stack: __u64,
17099    pub stack_size: __u64,
17100    pub tls: __u64,
17101    pub set_tid: __u64,
17102    pub set_tid_size: __u64,
17103    pub cgroup: __u64,
17104}
17105#[repr(C)]
17106#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17107pub struct sched_attr {
17108    pub size: __u32,
17109    pub sched_policy: __u32,
17110    pub sched_flags: __u64,
17111    pub sched_nice: __s32,
17112    pub sched_priority: __u32,
17113    pub sched_runtime: __u64,
17114    pub sched_deadline: __u64,
17115    pub sched_period: __u64,
17116    pub sched_util_min: __u32,
17117    pub sched_util_max: __u32,
17118}
17119#[repr(C)]
17120#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17121pub struct seccomp_data {
17122    pub nr: crate::types::c_int,
17123    pub arch: __u32,
17124    pub instruction_pointer: __u64,
17125    pub args: [__u64; 6usize],
17126}
17127#[repr(C)]
17128#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17129pub struct seccomp_notif_sizes {
17130    pub seccomp_notif: __u16,
17131    pub seccomp_notif_resp: __u16,
17132    pub seccomp_data: __u16,
17133}
17134#[repr(C)]
17135#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17136pub struct seccomp_notif {
17137    pub id: __u64,
17138    pub pid: __u32,
17139    pub flags: __u32,
17140    pub data: seccomp_data,
17141}
17142#[repr(C)]
17143#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17144pub struct seccomp_notif_resp {
17145    pub id: __u64,
17146    pub val: __s64,
17147    pub error: __s32,
17148    pub flags: __u32,
17149}
17150#[repr(C)]
17151#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17152pub struct seccomp_notif_addfd {
17153    pub id: __u64,
17154    pub flags: __u32,
17155    pub srcfd: __u32,
17156    pub newfd: __u32,
17157    pub newfd_flags: __u32,
17158}
17159#[repr(C)]
17160#[repr(align(8))]
17161#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
17162pub union sigval {
17163    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 8usize]>,
17164}
17165impl Default for sigval {
17166    fn default() -> Self {
17167        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17168        unsafe {
17169            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17170            s.assume_init()
17171        }
17172    }
17173}
17174pub type sigval_t = sigval;
17175#[repr(C)]
17176#[derive(Copy, Clone)]
17177pub union __sifields {
17178    pub _kill: __sifields__bindgen_ty_1,
17179    pub _timer: __sifields__bindgen_ty_2,
17180    pub _rt: __sifields__bindgen_ty_3,
17181    pub _sigchld: __sifields__bindgen_ty_4,
17182    pub _sigfault: __sifields__bindgen_ty_5,
17183    pub _sigpoll: __sifields__bindgen_ty_6,
17184    pub _sigsys: __sifields__bindgen_ty_7,
17185}
17186#[repr(C)]
17187#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17188pub struct __sifields__bindgen_ty_1 {
17189    pub _pid: __kernel_pid_t,
17190    pub _uid: __kernel_uid32_t,
17191}
17192#[repr(C)]
17193#[derive(Clone, Copy, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
17194pub struct __sifields__bindgen_ty_2 {
17195    pub _tid: __kernel_timer_t,
17196    pub _overrun: crate::types::c_int,
17197    pub _sigval: sigval_t,
17198    pub _sys_private: crate::types::c_int,
17199    pub __bindgen_padding_0: [u8; 4usize],
17200}
17201#[repr(C)]
17202#[derive(Clone, Copy, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
17203pub struct __sifields__bindgen_ty_3 {
17204    pub _pid: __kernel_pid_t,
17205    pub _uid: __kernel_uid32_t,
17206    pub _sigval: sigval_t,
17207}
17208#[repr(C)]
17209#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17210pub struct __sifields__bindgen_ty_4 {
17211    pub _pid: __kernel_pid_t,
17212    pub _uid: __kernel_uid32_t,
17213    pub _status: crate::types::c_int,
17214    pub __bindgen_padding_0: [u8; 4usize],
17215    pub _utime: __kernel_clock_t,
17216    pub _stime: __kernel_clock_t,
17217}
17218#[repr(C)]
17219#[derive(Copy, Clone)]
17220pub struct __sifields__bindgen_ty_5 {
17221    pub _addr: uaddr,
17222    pub __bindgen_anon_1: __sifields__bindgen_ty_5__bindgen_ty_1,
17223}
17224#[repr(C)]
17225#[derive(Copy, Clone)]
17226pub union __sifields__bindgen_ty_5__bindgen_ty_1 {
17227    pub _trapno: crate::types::c_int,
17228    pub _addr_lsb: crate::types::c_short,
17229    pub _addr_bnd: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
17230    pub _addr_pkey: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2,
17231    pub _perf: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3,
17232}
17233#[repr(C)]
17234#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17235pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
17236    pub _dummy_bnd: [crate::types::c_char; 8usize],
17237    pub _lower: uaddr,
17238    pub _upper: uaddr,
17239}
17240impl Default for __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
17241    fn default() -> Self {
17242        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17243        unsafe {
17244            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17245            s.assume_init()
17246        }
17247    }
17248}
17249#[repr(C)]
17250#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17251pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 {
17252    pub _dummy_pkey: [crate::types::c_char; 8usize],
17253    pub _pkey: __u32,
17254}
17255#[repr(C)]
17256#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17257pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 {
17258    pub _data: crate::types::c_ulong,
17259    pub _type: __u32,
17260    pub _flags: __u32,
17261}
17262impl Default for __sifields__bindgen_ty_5__bindgen_ty_1 {
17263    fn default() -> Self {
17264        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17265        unsafe {
17266            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17267            s.assume_init()
17268        }
17269    }
17270}
17271impl Default for __sifields__bindgen_ty_5 {
17272    fn default() -> Self {
17273        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17274        unsafe {
17275            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17276            s.assume_init()
17277        }
17278    }
17279}
17280#[repr(C)]
17281#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17282pub struct __sifields__bindgen_ty_6 {
17283    pub _band: crate::types::c_long,
17284    pub _fd: crate::types::c_int,
17285    pub __bindgen_padding_0: [u8; 4usize],
17286}
17287#[repr(C)]
17288#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
17289pub struct __sifields__bindgen_ty_7 {
17290    pub _call_addr: uaddr,
17291    pub _syscall: crate::types::c_int,
17292    pub _arch: crate::types::c_uint,
17293}
17294impl Default for __sifields__bindgen_ty_7 {
17295    fn default() -> Self {
17296        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17297        unsafe {
17298            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17299            s.assume_init()
17300        }
17301    }
17302}
17303impl Default for __sifields {
17304    fn default() -> Self {
17305        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17306        unsafe {
17307            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17308            s.assume_init()
17309        }
17310    }
17311}
17312#[repr(C)]
17313#[derive(Copy, Clone)]
17314pub struct siginfo {
17315    pub __bindgen_anon_1: siginfo__bindgen_ty_1,
17316}
17317#[repr(C)]
17318#[derive(Copy, Clone)]
17319pub union siginfo__bindgen_ty_1 {
17320    pub __bindgen_anon_1: siginfo__bindgen_ty_1__bindgen_ty_1,
17321    pub _si_pad: [crate::types::c_int; 32usize],
17322}
17323#[repr(C)]
17324#[derive(Copy, Clone)]
17325pub struct siginfo__bindgen_ty_1__bindgen_ty_1 {
17326    pub si_signo: crate::types::c_int,
17327    pub si_errno: crate::types::c_int,
17328    pub si_code: crate::types::c_int,
17329    pub __bindgen_padding_0: [u8; 4usize],
17330    pub _sifields: __sifields,
17331}
17332impl Default for siginfo__bindgen_ty_1__bindgen_ty_1 {
17333    fn default() -> Self {
17334        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17335        unsafe {
17336            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17337            s.assume_init()
17338        }
17339    }
17340}
17341impl Default for siginfo__bindgen_ty_1 {
17342    fn default() -> Self {
17343        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17344        unsafe {
17345            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17346            s.assume_init()
17347        }
17348    }
17349}
17350impl Default for siginfo {
17351    fn default() -> Self {
17352        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17353        unsafe {
17354            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17355            s.assume_init()
17356        }
17357    }
17358}
17359pub type siginfo_t = siginfo;
17360#[repr(C)]
17361#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
17362pub struct sigevent {
17363    pub sigev_value: sigval_t,
17364    pub sigev_signo: crate::types::c_int,
17365    pub sigev_notify: crate::types::c_int,
17366    pub _sigev_un: sigevent__bindgen_ty_1,
17367}
17368#[repr(C)]
17369#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
17370pub union sigevent__bindgen_ty_1 {
17371    pub _pad: [crate::types::c_int; 12usize],
17372    pub _tid: crate::types::c_int,
17373    pub _sigev_thread: sigevent__bindgen_ty_1__bindgen_ty_1,
17374}
17375#[repr(C)]
17376#[derive(Clone, Copy, Debug, FromBytes, Immutable, KnownLayout)]
17377pub struct sigevent__bindgen_ty_1__bindgen_ty_1 {
17378    pub _function: uaddr,
17379    pub _attribute: uaddr,
17380}
17381impl Default for sigevent__bindgen_ty_1__bindgen_ty_1 {
17382    fn default() -> Self {
17383        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17384        unsafe {
17385            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17386            s.assume_init()
17387        }
17388    }
17389}
17390impl Default for sigevent__bindgen_ty_1 {
17391    fn default() -> Self {
17392        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17393        unsafe {
17394            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17395            s.assume_init()
17396        }
17397    }
17398}
17399impl Default for sigevent {
17400    fn default() -> Self {
17401        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17402        unsafe {
17403            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17404            s.assume_init()
17405        }
17406    }
17407}
17408pub type sigevent_t = sigevent;
17409#[repr(C)]
17410#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17411pub struct signalfd_siginfo {
17412    pub ssi_signo: __u32,
17413    pub ssi_errno: __s32,
17414    pub ssi_code: __s32,
17415    pub ssi_pid: __u32,
17416    pub ssi_uid: __u32,
17417    pub ssi_fd: __s32,
17418    pub ssi_tid: __u32,
17419    pub ssi_band: __u32,
17420    pub ssi_overrun: __u32,
17421    pub ssi_trapno: __u32,
17422    pub ssi_status: __s32,
17423    pub ssi_int: __s32,
17424    pub ssi_ptr: __u64,
17425    pub ssi_utime: __u64,
17426    pub ssi_stime: __u64,
17427    pub ssi_addr: __u64,
17428    pub ssi_addr_lsb: __u16,
17429    pub __pad2: __u16,
17430    pub ssi_syscall: __s32,
17431    pub ssi_call_addr: __u64,
17432    pub ssi_arch: __u32,
17433    pub __pad: [__u8; 28usize],
17434}
17435#[repr(C)]
17436#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17437pub struct sock_diag_req {
17438    pub sdiag_family: __u8,
17439    pub sdiag_protocol: __u8,
17440}
17441pub const SK_MEMINFO_RMEM_ALLOC: _bindgen_ty_94 = 0;
17442pub const SK_MEMINFO_RCVBUF: _bindgen_ty_94 = 1;
17443pub const SK_MEMINFO_WMEM_ALLOC: _bindgen_ty_94 = 2;
17444pub const SK_MEMINFO_SNDBUF: _bindgen_ty_94 = 3;
17445pub const SK_MEMINFO_FWD_ALLOC: _bindgen_ty_94 = 4;
17446pub const SK_MEMINFO_WMEM_QUEUED: _bindgen_ty_94 = 5;
17447pub const SK_MEMINFO_OPTMEM: _bindgen_ty_94 = 6;
17448pub const SK_MEMINFO_BACKLOG: _bindgen_ty_94 = 7;
17449pub const SK_MEMINFO_DROPS: _bindgen_ty_94 = 8;
17450pub const SK_MEMINFO_VARS: _bindgen_ty_94 = 9;
17451pub type _bindgen_ty_94 = crate::types::c_uint;
17452pub const sknetlink_groups_SKNLGRP_NONE: sknetlink_groups = 0;
17453pub const sknetlink_groups_SKNLGRP_INET_TCP_DESTROY: sknetlink_groups = 1;
17454pub const sknetlink_groups_SKNLGRP_INET_UDP_DESTROY: sknetlink_groups = 2;
17455pub const sknetlink_groups_SKNLGRP_INET6_TCP_DESTROY: sknetlink_groups = 3;
17456pub const sknetlink_groups_SKNLGRP_INET6_UDP_DESTROY: sknetlink_groups = 4;
17457pub const sknetlink_groups___SKNLGRP_MAX: sknetlink_groups = 5;
17458pub type sknetlink_groups = crate::types::c_uint;
17459pub const SK_DIAG_BPF_STORAGE_REQ_NONE: _bindgen_ty_95 = 0;
17460pub const SK_DIAG_BPF_STORAGE_REQ_MAP_FD: _bindgen_ty_95 = 1;
17461pub const __SK_DIAG_BPF_STORAGE_REQ_MAX: _bindgen_ty_95 = 2;
17462pub type _bindgen_ty_95 = crate::types::c_uint;
17463pub const SK_DIAG_BPF_STORAGE_REP_NONE: _bindgen_ty_96 = 0;
17464pub const SK_DIAG_BPF_STORAGE: _bindgen_ty_96 = 1;
17465pub const __SK_DIAG_BPF_STORAGE_REP_MAX: _bindgen_ty_96 = 2;
17466pub type _bindgen_ty_96 = crate::types::c_uint;
17467pub const SK_DIAG_BPF_STORAGE_NONE: _bindgen_ty_97 = 0;
17468pub const SK_DIAG_BPF_STORAGE_PAD: _bindgen_ty_97 = 1;
17469pub const SK_DIAG_BPF_STORAGE_MAP_ID: _bindgen_ty_97 = 2;
17470pub const SK_DIAG_BPF_STORAGE_MAP_VALUE: _bindgen_ty_97 = 3;
17471pub const __SK_DIAG_BPF_STORAGE_MAX: _bindgen_ty_97 = 4;
17472pub type _bindgen_ty_97 = crate::types::c_uint;
17473#[repr(C)]
17474#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17475pub struct statx_timestamp {
17476    pub tv_sec: __s64,
17477    pub tv_nsec: __u32,
17478    pub __reserved: __s32,
17479}
17480#[repr(C)]
17481#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17482pub struct statx {
17483    pub stx_mask: __u32,
17484    pub stx_blksize: __u32,
17485    pub stx_attributes: __u64,
17486    pub stx_nlink: __u32,
17487    pub stx_uid: __u32,
17488    pub stx_gid: __u32,
17489    pub stx_mode: __u16,
17490    pub __spare0: [__u16; 1usize],
17491    pub stx_ino: __u64,
17492    pub stx_size: __u64,
17493    pub stx_blocks: __u64,
17494    pub stx_attributes_mask: __u64,
17495    pub stx_atime: statx_timestamp,
17496    pub stx_btime: statx_timestamp,
17497    pub stx_ctime: statx_timestamp,
17498    pub stx_mtime: statx_timestamp,
17499    pub stx_rdev_major: __u32,
17500    pub stx_rdev_minor: __u32,
17501    pub stx_dev_major: __u32,
17502    pub stx_dev_minor: __u32,
17503    pub stx_mnt_id: __u64,
17504    pub stx_dio_mem_align: __u32,
17505    pub stx_dio_offset_align: __u32,
17506    pub stx_subvol: __u64,
17507    pub stx_atomic_write_unit_min: __u32,
17508    pub stx_atomic_write_unit_max: __u32,
17509    pub stx_atomic_write_segments_max: __u32,
17510    pub __spare1: [__u32; 1usize],
17511    pub __spare3: [__u64; 9usize],
17512}
17513#[repr(C)]
17514#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17515pub struct sync_merge_data {
17516    pub name: [crate::types::c_char; 32usize],
17517    pub fd2: __s32,
17518    pub fence: __s32,
17519    pub flags: __u32,
17520    pub pad: __u32,
17521}
17522#[repr(C)]
17523#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17524pub struct sync_fence_info {
17525    pub obj_name: [crate::types::c_char; 32usize],
17526    pub driver_name: [crate::types::c_char; 32usize],
17527    pub status: __s32,
17528    pub flags: __u32,
17529    pub timestamp_ns: __u64,
17530}
17531#[repr(C)]
17532#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17533pub struct sync_file_info {
17534    pub name: [crate::types::c_char; 32usize],
17535    pub status: __s32,
17536    pub flags: __u32,
17537    pub num_fences: __u32,
17538    pub pad: __u32,
17539    pub sync_fence_info: __u64,
17540}
17541#[repr(C)]
17542#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17543pub struct sync_set_deadline {
17544    pub deadline_ns: __u64,
17545    pub pad: __u64,
17546}
17547#[repr(C)]
17548#[derive(Debug, Default, Immutable, IntoBytes, KnownLayout)]
17549pub struct sysinfo {
17550    pub uptime: __kernel_long_t,
17551    pub loads: [__kernel_ulong_t; 3usize],
17552    pub totalram: __kernel_ulong_t,
17553    pub freeram: __kernel_ulong_t,
17554    pub sharedram: __kernel_ulong_t,
17555    pub bufferram: __kernel_ulong_t,
17556    pub totalswap: __kernel_ulong_t,
17557    pub freeswap: __kernel_ulong_t,
17558    pub procs: __u16,
17559    pub pad: __u16,
17560    pub __bindgen_padding_0: [u8; 4usize],
17561    pub totalhigh: __kernel_ulong_t,
17562    pub freehigh: __kernel_ulong_t,
17563    pub mem_unit: __u32,
17564    pub _f: __IncompleteArrayField<crate::types::c_char>,
17565    pub __bindgen_padding_1: [u8; 4usize],
17566}
17567#[repr(C)]
17568#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17569pub struct taskstats {
17570    pub version: __u16,
17571    pub __bindgen_padding_0: [u8; 2usize],
17572    pub ac_exitcode: __u32,
17573    pub ac_flag: __u8,
17574    pub ac_nice: __u8,
17575    pub __bindgen_padding_1: [u8; 6usize],
17576    pub cpu_count: __u64,
17577    pub cpu_delay_total: __u64,
17578    pub blkio_count: __u64,
17579    pub blkio_delay_total: __u64,
17580    pub swapin_count: __u64,
17581    pub swapin_delay_total: __u64,
17582    pub cpu_run_real_total: __u64,
17583    pub cpu_run_virtual_total: __u64,
17584    pub ac_comm: [crate::types::c_char; 32usize],
17585    pub ac_sched: __u8,
17586    pub ac_pad: [__u8; 3usize],
17587    pub __bindgen_padding_2: [u8; 4usize],
17588    pub ac_uid: __u32,
17589    pub ac_gid: __u32,
17590    pub ac_pid: __u32,
17591    pub ac_ppid: __u32,
17592    pub ac_btime: __u32,
17593    pub __bindgen_padding_3: [u8; 4usize],
17594    pub ac_etime: __u64,
17595    pub ac_utime: __u64,
17596    pub ac_stime: __u64,
17597    pub ac_minflt: __u64,
17598    pub ac_majflt: __u64,
17599    pub coremem: __u64,
17600    pub virtmem: __u64,
17601    pub hiwater_rss: __u64,
17602    pub hiwater_vm: __u64,
17603    pub read_char: __u64,
17604    pub write_char: __u64,
17605    pub read_syscalls: __u64,
17606    pub write_syscalls: __u64,
17607    pub read_bytes: __u64,
17608    pub write_bytes: __u64,
17609    pub cancelled_write_bytes: __u64,
17610    pub nvcsw: __u64,
17611    pub nivcsw: __u64,
17612    pub ac_utimescaled: __u64,
17613    pub ac_stimescaled: __u64,
17614    pub cpu_scaled_run_real_total: __u64,
17615    pub freepages_count: __u64,
17616    pub freepages_delay_total: __u64,
17617    pub thrashing_count: __u64,
17618    pub thrashing_delay_total: __u64,
17619    pub ac_btime64: __u64,
17620    pub compact_count: __u64,
17621    pub compact_delay_total: __u64,
17622    pub ac_tgid: __u32,
17623    pub __bindgen_padding_4: [u8; 4usize],
17624    pub ac_tgetime: __u64,
17625    pub ac_exe_dev: __u64,
17626    pub ac_exe_inode: __u64,
17627    pub wpcopy_count: __u64,
17628    pub wpcopy_delay_total: __u64,
17629    pub irq_count: __u64,
17630    pub irq_delay_total: __u64,
17631}
17632pub const TASKSTATS_CMD_UNSPEC: _bindgen_ty_98 = 0;
17633pub const TASKSTATS_CMD_GET: _bindgen_ty_98 = 1;
17634pub const TASKSTATS_CMD_NEW: _bindgen_ty_98 = 2;
17635pub const __TASKSTATS_CMD_MAX: _bindgen_ty_98 = 3;
17636pub type _bindgen_ty_98 = crate::types::c_uint;
17637pub const TASKSTATS_TYPE_UNSPEC: _bindgen_ty_99 = 0;
17638pub const TASKSTATS_TYPE_PID: _bindgen_ty_99 = 1;
17639pub const TASKSTATS_TYPE_TGID: _bindgen_ty_99 = 2;
17640pub const TASKSTATS_TYPE_STATS: _bindgen_ty_99 = 3;
17641pub const TASKSTATS_TYPE_AGGR_PID: _bindgen_ty_99 = 4;
17642pub const TASKSTATS_TYPE_AGGR_TGID: _bindgen_ty_99 = 5;
17643pub const TASKSTATS_TYPE_NULL: _bindgen_ty_99 = 6;
17644pub const __TASKSTATS_TYPE_MAX: _bindgen_ty_99 = 7;
17645pub type _bindgen_ty_99 = crate::types::c_uint;
17646pub const TASKSTATS_CMD_ATTR_UNSPEC: _bindgen_ty_100 = 0;
17647pub const TASKSTATS_CMD_ATTR_PID: _bindgen_ty_100 = 1;
17648pub const TASKSTATS_CMD_ATTR_TGID: _bindgen_ty_100 = 2;
17649pub const TASKSTATS_CMD_ATTR_REGISTER_CPUMASK: _bindgen_ty_100 = 3;
17650pub const TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK: _bindgen_ty_100 = 4;
17651pub const __TASKSTATS_CMD_ATTR_MAX: _bindgen_ty_100 = 5;
17652pub type _bindgen_ty_100 = crate::types::c_uint;
17653pub type cc_t = crate::types::c_uchar;
17654pub type speed_t = crate::types::c_uint;
17655pub type tcflag_t = crate::types::c_uint;
17656#[repr(C)]
17657#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17658pub struct termios {
17659    pub c_iflag: tcflag_t,
17660    pub c_oflag: tcflag_t,
17661    pub c_cflag: tcflag_t,
17662    pub c_lflag: tcflag_t,
17663    pub c_line: cc_t,
17664    pub c_cc: [cc_t; 19usize],
17665}
17666#[repr(C)]
17667#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17668pub struct termios2 {
17669    pub c_iflag: tcflag_t,
17670    pub c_oflag: tcflag_t,
17671    pub c_cflag: tcflag_t,
17672    pub c_lflag: tcflag_t,
17673    pub c_line: cc_t,
17674    pub c_cc: [cc_t; 19usize],
17675    pub c_ispeed: speed_t,
17676    pub c_ospeed: speed_t,
17677}
17678#[repr(C)]
17679#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17680pub struct ktermios {
17681    pub c_iflag: tcflag_t,
17682    pub c_oflag: tcflag_t,
17683    pub c_cflag: tcflag_t,
17684    pub c_lflag: tcflag_t,
17685    pub c_line: cc_t,
17686    pub c_cc: [cc_t; 19usize],
17687    pub c_ispeed: speed_t,
17688    pub c_ospeed: speed_t,
17689}
17690#[repr(C)]
17691#[derive(
17692    Clone, Copy, Debug, Default, Eq, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq,
17693)]
17694pub struct winsize {
17695    pub ws_row: crate::types::c_ushort,
17696    pub ws_col: crate::types::c_ushort,
17697    pub ws_xpixel: crate::types::c_ushort,
17698    pub ws_ypixel: crate::types::c_ushort,
17699}
17700#[repr(C)]
17701#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17702pub struct termio {
17703    pub c_iflag: crate::types::c_ushort,
17704    pub c_oflag: crate::types::c_ushort,
17705    pub c_cflag: crate::types::c_ushort,
17706    pub c_lflag: crate::types::c_ushort,
17707    pub c_line: crate::types::c_uchar,
17708    pub c_cc: [crate::types::c_uchar; 8usize],
17709    pub __bindgen_padding_0: u8,
17710}
17711pub const thermal_device_mode_THERMAL_DEVICE_DISABLED: thermal_device_mode = 0;
17712pub const thermal_device_mode_THERMAL_DEVICE_ENABLED: thermal_device_mode = 1;
17713pub type thermal_device_mode = crate::types::c_uint;
17714pub const thermal_trip_type_THERMAL_TRIP_ACTIVE: thermal_trip_type = 0;
17715pub const thermal_trip_type_THERMAL_TRIP_PASSIVE: thermal_trip_type = 1;
17716pub const thermal_trip_type_THERMAL_TRIP_HOT: thermal_trip_type = 2;
17717pub const thermal_trip_type_THERMAL_TRIP_CRITICAL: thermal_trip_type = 3;
17718pub type thermal_trip_type = crate::types::c_uint;
17719pub const thermal_genl_attr_THERMAL_GENL_ATTR_UNSPEC: thermal_genl_attr = 0;
17720pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ: thermal_genl_attr = 1;
17721pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_ID: thermal_genl_attr = 2;
17722pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TEMP: thermal_genl_attr = 3;
17723pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP: thermal_genl_attr = 4;
17724pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_ID: thermal_genl_attr = 5;
17725pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_TYPE: thermal_genl_attr = 6;
17726pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_TEMP: thermal_genl_attr = 7;
17727pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_TRIP_HYST: thermal_genl_attr = 8;
17728pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_MODE: thermal_genl_attr = 9;
17729pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_NAME: thermal_genl_attr = 10;
17730pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_CDEV_WEIGHT: thermal_genl_attr = 11;
17731pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_GOV: thermal_genl_attr = 12;
17732pub const thermal_genl_attr_THERMAL_GENL_ATTR_TZ_GOV_NAME: thermal_genl_attr = 13;
17733pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV: thermal_genl_attr = 14;
17734pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_ID: thermal_genl_attr = 15;
17735pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_CUR_STATE: thermal_genl_attr = 16;
17736pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_MAX_STATE: thermal_genl_attr = 17;
17737pub const thermal_genl_attr_THERMAL_GENL_ATTR_CDEV_NAME: thermal_genl_attr = 18;
17738pub const thermal_genl_attr_THERMAL_GENL_ATTR_GOV_NAME: thermal_genl_attr = 19;
17739pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY: thermal_genl_attr = 20;
17740pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_ID: thermal_genl_attr = 21;
17741pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_PERFORMANCE: thermal_genl_attr = 22;
17742pub const thermal_genl_attr_THERMAL_GENL_ATTR_CPU_CAPABILITY_EFFICIENCY: thermal_genl_attr = 23;
17743pub const thermal_genl_attr___THERMAL_GENL_ATTR_MAX: thermal_genl_attr = 24;
17744pub type thermal_genl_attr = crate::types::c_uint;
17745pub const thermal_genl_sampling_THERMAL_GENL_SAMPLING_TEMP: thermal_genl_sampling = 0;
17746pub const thermal_genl_sampling___THERMAL_GENL_SAMPLING_MAX: thermal_genl_sampling = 1;
17747pub type thermal_genl_sampling = crate::types::c_uint;
17748pub const thermal_genl_event_THERMAL_GENL_EVENT_UNSPEC: thermal_genl_event = 0;
17749pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_CREATE: thermal_genl_event = 1;
17750pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_DELETE: thermal_genl_event = 2;
17751pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_DISABLE: thermal_genl_event = 3;
17752pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_ENABLE: thermal_genl_event = 4;
17753pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_UP: thermal_genl_event = 5;
17754pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_DOWN: thermal_genl_event = 6;
17755pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_CHANGE: thermal_genl_event = 7;
17756pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_ADD: thermal_genl_event = 8;
17757pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_TRIP_DELETE: thermal_genl_event = 9;
17758pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_ADD: thermal_genl_event = 10;
17759pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_DELETE: thermal_genl_event = 11;
17760pub const thermal_genl_event_THERMAL_GENL_EVENT_CDEV_STATE_UPDATE: thermal_genl_event = 12;
17761pub const thermal_genl_event_THERMAL_GENL_EVENT_TZ_GOV_CHANGE: thermal_genl_event = 13;
17762pub const thermal_genl_event_THERMAL_GENL_EVENT_CPU_CAPABILITY_CHANGE: thermal_genl_event = 14;
17763pub const thermal_genl_event___THERMAL_GENL_EVENT_MAX: thermal_genl_event = 15;
17764pub type thermal_genl_event = crate::types::c_uint;
17765pub const thermal_genl_cmd_THERMAL_GENL_CMD_UNSPEC: thermal_genl_cmd = 0;
17766pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_ID: thermal_genl_cmd = 1;
17767pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_TRIP: thermal_genl_cmd = 2;
17768pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_TEMP: thermal_genl_cmd = 3;
17769pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_GOV: thermal_genl_cmd = 4;
17770pub const thermal_genl_cmd_THERMAL_GENL_CMD_TZ_GET_MODE: thermal_genl_cmd = 5;
17771pub const thermal_genl_cmd_THERMAL_GENL_CMD_CDEV_GET: thermal_genl_cmd = 6;
17772pub const thermal_genl_cmd___THERMAL_GENL_CMD_MAX: thermal_genl_cmd = 7;
17773pub type thermal_genl_cmd = crate::types::c_uint;
17774#[repr(C)]
17775#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17776pub struct tms {
17777    pub tms_utime: __kernel_clock_t,
17778    pub tms_stime: __kernel_clock_t,
17779    pub tms_cutime: __kernel_clock_t,
17780    pub tms_cstime: __kernel_clock_t,
17781}
17782#[repr(C)]
17783#[derive(Copy, Clone)]
17784pub struct uinput_ff_upload {
17785    pub request_id: __u32,
17786    pub retval: __s32,
17787    pub effect: ff_effect,
17788    pub old: ff_effect,
17789}
17790impl Default for uinput_ff_upload {
17791    fn default() -> Self {
17792        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17793        unsafe {
17794            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17795            s.assume_init()
17796        }
17797    }
17798}
17799#[repr(C)]
17800#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17801pub struct uinput_ff_erase {
17802    pub request_id: __u32,
17803    pub retval: __s32,
17804    pub effect_id: __u32,
17805}
17806#[repr(C)]
17807#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17808pub struct uinput_setup {
17809    pub id: input_id,
17810    pub name: [crate::types::c_char; 80usize],
17811    pub ff_effects_max: __u32,
17812}
17813impl Default for uinput_setup {
17814    fn default() -> Self {
17815        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17816        unsafe {
17817            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17818            s.assume_init()
17819        }
17820    }
17821}
17822#[repr(C)]
17823#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17824pub struct uinput_abs_setup {
17825    pub code: __u16,
17826    pub __bindgen_padding_0: [u8; 2usize],
17827    pub absinfo: input_absinfo,
17828}
17829#[repr(C)]
17830#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17831pub struct uinput_user_dev {
17832    pub name: [crate::types::c_char; 80usize],
17833    pub id: input_id,
17834    pub ff_effects_max: __u32,
17835    pub absmax: [__s32; 64usize],
17836    pub absmin: [__s32; 64usize],
17837    pub absfuzz: [__s32; 64usize],
17838    pub absflat: [__s32; 64usize],
17839}
17840impl Default for uinput_user_dev {
17841    fn default() -> Self {
17842        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17843        unsafe {
17844            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17845            s.assume_init()
17846        }
17847    }
17848}
17849#[repr(C)]
17850#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17851pub struct iovec {
17852    pub iov_base: uaddr,
17853    pub iov_len: __kernel_size_t,
17854}
17855impl Default for iovec {
17856    fn default() -> Self {
17857        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17858        unsafe {
17859            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17860            s.assume_init()
17861        }
17862    }
17863}
17864#[repr(C)]
17865#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17866pub struct dmabuf_cmsg {
17867    pub frag_offset: __u64,
17868    pub frag_size: __u32,
17869    pub frag_token: __u32,
17870    pub dmabuf_id: __u32,
17871    pub flags: __u32,
17872}
17873#[repr(C)]
17874#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17875pub struct dmabuf_token {
17876    pub token_start: __u32,
17877    pub token_count: __u32,
17878}
17879#[repr(C)]
17880#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17881pub struct sockaddr_un {
17882    pub sun_family: __kernel_sa_family_t,
17883    pub sun_path: [crate::types::c_char; 108usize],
17884}
17885impl Default for sockaddr_un {
17886    fn default() -> Self {
17887        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17888        unsafe {
17889            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17890            s.assume_init()
17891        }
17892    }
17893}
17894#[repr(C, packed)]
17895#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17896pub struct usb_ctrlrequest {
17897    pub bRequestType: __u8,
17898    pub bRequest: __u8,
17899    pub wValue: __le16,
17900    pub wIndex: __le16,
17901    pub wLength: __le16,
17902}
17903#[repr(C, packed)]
17904#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17905pub struct usb_descriptor_header {
17906    pub bLength: __u8,
17907    pub bDescriptorType: __u8,
17908}
17909#[repr(C, packed)]
17910#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17911pub struct usb_device_descriptor {
17912    pub bLength: __u8,
17913    pub bDescriptorType: __u8,
17914    pub bcdUSB: __le16,
17915    pub bDeviceClass: __u8,
17916    pub bDeviceSubClass: __u8,
17917    pub bDeviceProtocol: __u8,
17918    pub bMaxPacketSize0: __u8,
17919    pub idVendor: __le16,
17920    pub idProduct: __le16,
17921    pub bcdDevice: __le16,
17922    pub iManufacturer: __u8,
17923    pub iProduct: __u8,
17924    pub iSerialNumber: __u8,
17925    pub bNumConfigurations: __u8,
17926}
17927#[repr(C, packed)]
17928#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17929pub struct usb_config_descriptor {
17930    pub bLength: __u8,
17931    pub bDescriptorType: __u8,
17932    pub wTotalLength: __le16,
17933    pub bNumInterfaces: __u8,
17934    pub bConfigurationValue: __u8,
17935    pub iConfiguration: __u8,
17936    pub bmAttributes: __u8,
17937    pub bMaxPower: __u8,
17938}
17939#[repr(C, packed)]
17940pub struct usb_string_descriptor {
17941    pub bLength: __u8,
17942    pub bDescriptorType: __u8,
17943    pub __bindgen_anon_1: usb_string_descriptor__bindgen_ty_1,
17944}
17945#[repr(C)]
17946pub struct usb_string_descriptor__bindgen_ty_1 {
17947    pub legacy_padding: __BindgenUnionField<__le16>,
17948    pub __bindgen_anon_1: __BindgenUnionField<usb_string_descriptor__bindgen_ty_1__bindgen_ty_1>,
17949    pub bindgen_union_field: u16,
17950}
17951#[repr(C)]
17952#[derive(Debug, Default)]
17953pub struct usb_string_descriptor__bindgen_ty_1__bindgen_ty_1 {
17954    pub __empty_wData: usb_string_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
17955    pub wData: __IncompleteArrayField<__le16>,
17956}
17957#[repr(C)]
17958#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17959pub struct usb_string_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
17960impl Default for usb_string_descriptor__bindgen_ty_1 {
17961    fn default() -> Self {
17962        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17963        unsafe {
17964            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17965            s.assume_init()
17966        }
17967    }
17968}
17969impl Default for usb_string_descriptor {
17970    fn default() -> Self {
17971        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17972        unsafe {
17973            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17974            s.assume_init()
17975        }
17976    }
17977}
17978#[repr(C, packed)]
17979#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17980pub struct usb_interface_descriptor {
17981    pub bLength: __u8,
17982    pub bDescriptorType: __u8,
17983    pub bInterfaceNumber: __u8,
17984    pub bAlternateSetting: __u8,
17985    pub bNumEndpoints: __u8,
17986    pub bInterfaceClass: __u8,
17987    pub bInterfaceSubClass: __u8,
17988    pub bInterfaceProtocol: __u8,
17989    pub iInterface: __u8,
17990}
17991#[repr(C, packed)]
17992#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
17993pub struct usb_endpoint_descriptor {
17994    pub bLength: __u8,
17995    pub bDescriptorType: __u8,
17996    pub bEndpointAddress: __u8,
17997    pub bmAttributes: __u8,
17998    pub wMaxPacketSize: __le16,
17999    pub bInterval: __u8,
18000    pub bRefresh: __u8,
18001    pub bSynchAddress: __u8,
18002}
18003#[repr(C, packed)]
18004#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18005pub struct usb_ssp_isoc_ep_comp_descriptor {
18006    pub bLength: __u8,
18007    pub bDescriptorType: __u8,
18008    pub wReseved: __le16,
18009    pub dwBytesPerInterval: __le32,
18010}
18011#[repr(C, packed)]
18012#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18013pub struct usb_ss_ep_comp_descriptor {
18014    pub bLength: __u8,
18015    pub bDescriptorType: __u8,
18016    pub bMaxBurst: __u8,
18017    pub bmAttributes: __u8,
18018    pub wBytesPerInterval: __le16,
18019}
18020#[repr(C, packed)]
18021#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18022pub struct usb_qualifier_descriptor {
18023    pub bLength: __u8,
18024    pub bDescriptorType: __u8,
18025    pub bcdUSB: __le16,
18026    pub bDeviceClass: __u8,
18027    pub bDeviceSubClass: __u8,
18028    pub bDeviceProtocol: __u8,
18029    pub bMaxPacketSize0: __u8,
18030    pub bNumConfigurations: __u8,
18031    pub bRESERVED: __u8,
18032}
18033#[repr(C, packed)]
18034#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18035pub struct usb_otg_descriptor {
18036    pub bLength: __u8,
18037    pub bDescriptorType: __u8,
18038    pub bmAttributes: __u8,
18039}
18040#[repr(C, packed)]
18041#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18042pub struct usb_otg20_descriptor {
18043    pub bLength: __u8,
18044    pub bDescriptorType: __u8,
18045    pub bmAttributes: __u8,
18046    pub bcdOTG: __le16,
18047}
18048#[repr(C, packed)]
18049#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18050pub struct usb_debug_descriptor {
18051    pub bLength: __u8,
18052    pub bDescriptorType: __u8,
18053    pub bDebugInEndpoint: __u8,
18054    pub bDebugOutEndpoint: __u8,
18055}
18056#[repr(C, packed)]
18057#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18058pub struct usb_interface_assoc_descriptor {
18059    pub bLength: __u8,
18060    pub bDescriptorType: __u8,
18061    pub bFirstInterface: __u8,
18062    pub bInterfaceCount: __u8,
18063    pub bFunctionClass: __u8,
18064    pub bFunctionSubClass: __u8,
18065    pub bFunctionProtocol: __u8,
18066    pub iFunction: __u8,
18067}
18068#[repr(C, packed)]
18069#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18070pub struct usb_security_descriptor {
18071    pub bLength: __u8,
18072    pub bDescriptorType: __u8,
18073    pub wTotalLength: __le16,
18074    pub bNumEncryptionTypes: __u8,
18075}
18076#[repr(C, packed)]
18077pub struct usb_key_descriptor {
18078    pub bLength: __u8,
18079    pub bDescriptorType: __u8,
18080    pub tTKID: [__u8; 3usize],
18081    pub bReserved: __u8,
18082    pub bKeyData: __IncompleteArrayField<__u8>,
18083}
18084impl Default for usb_key_descriptor {
18085    fn default() -> Self {
18086        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18087        unsafe {
18088            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18089            s.assume_init()
18090        }
18091    }
18092}
18093#[repr(C, packed)]
18094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18095pub struct usb_encryption_descriptor {
18096    pub bLength: __u8,
18097    pub bDescriptorType: __u8,
18098    pub bEncryptionType: __u8,
18099    pub bEncryptionValue: __u8,
18100    pub bAuthKeyIndex: __u8,
18101}
18102#[repr(C, packed)]
18103#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18104pub struct usb_bos_descriptor {
18105    pub bLength: __u8,
18106    pub bDescriptorType: __u8,
18107    pub wTotalLength: __le16,
18108    pub bNumDeviceCaps: __u8,
18109}
18110#[repr(C, packed)]
18111#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18112pub struct usb_dev_cap_header {
18113    pub bLength: __u8,
18114    pub bDescriptorType: __u8,
18115    pub bDevCapabilityType: __u8,
18116}
18117#[repr(C, packed)]
18118#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18119pub struct usb_wireless_cap_descriptor {
18120    pub bLength: __u8,
18121    pub bDescriptorType: __u8,
18122    pub bDevCapabilityType: __u8,
18123    pub bmAttributes: __u8,
18124    pub wPHYRates: __le16,
18125    pub bmTFITXPowerInfo: __u8,
18126    pub bmFFITXPowerInfo: __u8,
18127    pub bmBandGroup: __le16,
18128    pub bReserved: __u8,
18129}
18130#[repr(C, packed)]
18131#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18132pub struct usb_ext_cap_descriptor {
18133    pub bLength: __u8,
18134    pub bDescriptorType: __u8,
18135    pub bDevCapabilityType: __u8,
18136    pub bmAttributes: __le32,
18137}
18138#[repr(C, packed)]
18139#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18140pub struct usb_ss_cap_descriptor {
18141    pub bLength: __u8,
18142    pub bDescriptorType: __u8,
18143    pub bDevCapabilityType: __u8,
18144    pub bmAttributes: __u8,
18145    pub wSpeedSupported: __le16,
18146    pub bFunctionalitySupport: __u8,
18147    pub bU1devExitLat: __u8,
18148    pub bU2DevExitLat: __le16,
18149}
18150#[repr(C, packed)]
18151#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18152pub struct usb_ss_container_id_descriptor {
18153    pub bLength: __u8,
18154    pub bDescriptorType: __u8,
18155    pub bDevCapabilityType: __u8,
18156    pub bReserved: __u8,
18157    pub ContainerID: [__u8; 16usize],
18158}
18159#[repr(C, packed)]
18160pub struct usb_plat_dev_cap_descriptor {
18161    pub bLength: __u8,
18162    pub bDescriptorType: __u8,
18163    pub bDevCapabilityType: __u8,
18164    pub bReserved: __u8,
18165    pub UUID: [__u8; 16usize],
18166    pub CapabilityData: __IncompleteArrayField<__u8>,
18167}
18168impl Default for usb_plat_dev_cap_descriptor {
18169    fn default() -> Self {
18170        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18171        unsafe {
18172            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18173            s.assume_init()
18174        }
18175    }
18176}
18177#[repr(C, packed)]
18178pub struct usb_ssp_cap_descriptor {
18179    pub bLength: __u8,
18180    pub bDescriptorType: __u8,
18181    pub bDevCapabilityType: __u8,
18182    pub bReserved: __u8,
18183    pub bmAttributes: __le32,
18184    pub wFunctionalitySupport: __le16,
18185    pub wReserved: __le16,
18186    pub __bindgen_anon_1: usb_ssp_cap_descriptor__bindgen_ty_1,
18187}
18188#[repr(C)]
18189pub struct usb_ssp_cap_descriptor__bindgen_ty_1 {
18190    pub legacy_padding: __BindgenUnionField<__le32>,
18191    pub __bindgen_anon_1: __BindgenUnionField<usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1>,
18192    pub bindgen_union_field: u32,
18193}
18194#[repr(C)]
18195#[derive(Debug, Default)]
18196pub struct usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1 {
18197    pub __empty_bmSublinkSpeedAttr:
18198        usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18199    pub bmSublinkSpeedAttr: __IncompleteArrayField<__le32>,
18200}
18201#[repr(C)]
18202#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18203pub struct usb_ssp_cap_descriptor__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {}
18204impl Default for usb_ssp_cap_descriptor__bindgen_ty_1 {
18205    fn default() -> Self {
18206        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18207        unsafe {
18208            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18209            s.assume_init()
18210        }
18211    }
18212}
18213impl Default for usb_ssp_cap_descriptor {
18214    fn default() -> Self {
18215        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18216        unsafe {
18217            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18218            s.assume_init()
18219        }
18220    }
18221}
18222#[repr(C, packed)]
18223#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18224pub struct usb_pd_cap_descriptor {
18225    pub bLength: __u8,
18226    pub bDescriptorType: __u8,
18227    pub bDevCapabilityType: __u8,
18228    pub bReserved: __u8,
18229    pub bmAttributes: __le32,
18230    pub bmProviderPorts: __le16,
18231    pub bmConsumerPorts: __le16,
18232    pub bcdBCVersion: __le16,
18233    pub bcdPDVersion: __le16,
18234    pub bcdUSBTypeCVersion: __le16,
18235}
18236#[repr(C, packed)]
18237#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18238pub struct usb_pd_cap_battery_info_descriptor {
18239    pub bLength: __u8,
18240    pub bDescriptorType: __u8,
18241    pub bDevCapabilityType: __u8,
18242    pub iBattery: __u8,
18243    pub iSerial: __u8,
18244    pub iManufacturer: __u8,
18245    pub bBatteryId: __u8,
18246    pub bReserved: __u8,
18247    pub dwChargedThreshold: __le32,
18248    pub dwWeakThreshold: __le32,
18249    pub dwBatteryDesignCapacity: __le32,
18250    pub dwBatteryLastFullchargeCapacity: __le32,
18251}
18252#[repr(C, packed)]
18253#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18254pub struct usb_pd_cap_consumer_port_descriptor {
18255    pub bLength: __u8,
18256    pub bDescriptorType: __u8,
18257    pub bDevCapabilityType: __u8,
18258    pub bReserved: __u8,
18259    pub bmCapabilities: __u8,
18260    pub wMinVoltage: __le16,
18261    pub wMaxVoltage: __le16,
18262    pub wReserved: __u16,
18263    pub dwMaxOperatingPower: __le32,
18264    pub dwMaxPeakPower: __le32,
18265    pub dwMaxPeakPowerTime: __le32,
18266}
18267#[repr(C, packed)]
18268pub struct usb_pd_cap_provider_port_descriptor {
18269    pub bLength: __u8,
18270    pub bDescriptorType: __u8,
18271    pub bDevCapabilityType: __u8,
18272    pub bReserved1: __u8,
18273    pub bmCapabilities: __u8,
18274    pub bNumOfPDObjects: __u8,
18275    pub bReserved2: __u8,
18276    pub wPowerDataObject: __IncompleteArrayField<__le32>,
18277}
18278impl Default for usb_pd_cap_provider_port_descriptor {
18279    fn default() -> Self {
18280        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18281        unsafe {
18282            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18283            s.assume_init()
18284        }
18285    }
18286}
18287#[repr(C, packed)]
18288#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18289pub struct usb_ptm_cap_descriptor {
18290    pub bLength: __u8,
18291    pub bDescriptorType: __u8,
18292    pub bDevCapabilityType: __u8,
18293}
18294#[repr(C, packed)]
18295#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18296pub struct usb_wireless_ep_comp_descriptor {
18297    pub bLength: __u8,
18298    pub bDescriptorType: __u8,
18299    pub bMaxBurst: __u8,
18300    pub bMaxSequence: __u8,
18301    pub wMaxStreamDelay: __le16,
18302    pub wOverTheAirPacketSize: __le16,
18303    pub bOverTheAirInterval: __u8,
18304    pub bmCompAttributes: __u8,
18305}
18306#[repr(C, packed)]
18307#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18308pub struct usb_handshake {
18309    pub bMessageNumber: __u8,
18310    pub bStatus: __u8,
18311    pub tTKID: [__u8; 3usize],
18312    pub bReserved: __u8,
18313    pub CDID: [__u8; 16usize],
18314    pub nonce: [__u8; 16usize],
18315    pub MIC: [__u8; 8usize],
18316}
18317#[repr(C, packed)]
18318#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18319pub struct usb_connection_context {
18320    pub CHID: [__u8; 16usize],
18321    pub CDID: [__u8; 16usize],
18322    pub CK: [__u8; 16usize],
18323}
18324pub const usb_device_speed_USB_SPEED_UNKNOWN: usb_device_speed = 0;
18325pub const usb_device_speed_USB_SPEED_LOW: usb_device_speed = 1;
18326pub const usb_device_speed_USB_SPEED_FULL: usb_device_speed = 2;
18327pub const usb_device_speed_USB_SPEED_HIGH: usb_device_speed = 3;
18328pub const usb_device_speed_USB_SPEED_WIRELESS: usb_device_speed = 4;
18329pub const usb_device_speed_USB_SPEED_SUPER: usb_device_speed = 5;
18330pub const usb_device_speed_USB_SPEED_SUPER_PLUS: usb_device_speed = 6;
18331pub type usb_device_speed = crate::types::c_uint;
18332pub const usb_device_state_USB_STATE_NOTATTACHED: usb_device_state = 0;
18333pub const usb_device_state_USB_STATE_ATTACHED: usb_device_state = 1;
18334pub const usb_device_state_USB_STATE_POWERED: usb_device_state = 2;
18335pub const usb_device_state_USB_STATE_RECONNECTING: usb_device_state = 3;
18336pub const usb_device_state_USB_STATE_UNAUTHENTICATED: usb_device_state = 4;
18337pub const usb_device_state_USB_STATE_DEFAULT: usb_device_state = 5;
18338pub const usb_device_state_USB_STATE_ADDRESS: usb_device_state = 6;
18339pub const usb_device_state_USB_STATE_CONFIGURED: usb_device_state = 7;
18340pub const usb_device_state_USB_STATE_SUSPENDED: usb_device_state = 8;
18341pub type usb_device_state = crate::types::c_uint;
18342pub const usb3_link_state_USB3_LPM_U0: usb3_link_state = 0;
18343pub const usb3_link_state_USB3_LPM_U1: usb3_link_state = 1;
18344pub const usb3_link_state_USB3_LPM_U2: usb3_link_state = 2;
18345pub const usb3_link_state_USB3_LPM_U3: usb3_link_state = 3;
18346pub type usb3_link_state = crate::types::c_uint;
18347#[repr(C, packed)]
18348#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18349pub struct usb_set_sel_req {
18350    pub u1_sel: __u8,
18351    pub u1_pel: __u8,
18352    pub u2_sel: __le16,
18353    pub u2_pel: __le16,
18354}
18355pub const FUNCTIONFS_DESCRIPTORS_MAGIC: _bindgen_ty_101 = 1;
18356pub const FUNCTIONFS_STRINGS_MAGIC: _bindgen_ty_101 = 2;
18357pub const FUNCTIONFS_DESCRIPTORS_MAGIC_V2: _bindgen_ty_101 = 3;
18358pub type _bindgen_ty_101 = crate::types::c_uint;
18359pub const functionfs_flags_FUNCTIONFS_HAS_FS_DESC: functionfs_flags = 1;
18360pub const functionfs_flags_FUNCTIONFS_HAS_HS_DESC: functionfs_flags = 2;
18361pub const functionfs_flags_FUNCTIONFS_HAS_SS_DESC: functionfs_flags = 4;
18362pub const functionfs_flags_FUNCTIONFS_HAS_MS_OS_DESC: functionfs_flags = 8;
18363pub const functionfs_flags_FUNCTIONFS_VIRTUAL_ADDR: functionfs_flags = 16;
18364pub const functionfs_flags_FUNCTIONFS_EVENTFD: functionfs_flags = 32;
18365pub const functionfs_flags_FUNCTIONFS_ALL_CTRL_RECIP: functionfs_flags = 64;
18366pub const functionfs_flags_FUNCTIONFS_CONFIG0_SETUP: functionfs_flags = 128;
18367pub type functionfs_flags = crate::types::c_uint;
18368#[repr(C, packed)]
18369#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18370pub struct usb_endpoint_descriptor_no_audio {
18371    pub bLength: __u8,
18372    pub bDescriptorType: __u8,
18373    pub bEndpointAddress: __u8,
18374    pub bmAttributes: __u8,
18375    pub wMaxPacketSize: __le16,
18376    pub bInterval: __u8,
18377}
18378#[repr(C, packed)]
18379#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18380pub struct usb_dfu_functional_descriptor {
18381    pub bLength: __u8,
18382    pub bDescriptorType: __u8,
18383    pub bmAttributes: __u8,
18384    pub wDetachTimeOut: __le16,
18385    pub wTransferSize: __le16,
18386    pub bcdDFUVersion: __le16,
18387}
18388#[repr(C, packed)]
18389#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18390pub struct usb_functionfs_descs_head_v2 {
18391    pub magic: __le32,
18392    pub length: __le32,
18393    pub flags: __le32,
18394}
18395#[repr(C, packed)]
18396#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18397pub struct usb_functionfs_descs_head {
18398    pub magic: __le32,
18399    pub length: __le32,
18400    pub fs_count: __le32,
18401    pub hs_count: __le32,
18402}
18403#[repr(C, packed)]
18404#[derive(Copy, Clone)]
18405pub struct usb_os_desc_header {
18406    pub interface: __u8,
18407    pub dwLength: __le32,
18408    pub bcdVersion: __le16,
18409    pub wIndex: __le16,
18410    pub __bindgen_anon_1: usb_os_desc_header__bindgen_ty_1,
18411}
18412#[repr(C)]
18413#[derive(Copy, Clone)]
18414pub union usb_os_desc_header__bindgen_ty_1 {
18415    pub __bindgen_anon_1: usb_os_desc_header__bindgen_ty_1__bindgen_ty_1,
18416    pub wCount: __le16,
18417}
18418#[repr(C)]
18419#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18420pub struct usb_os_desc_header__bindgen_ty_1__bindgen_ty_1 {
18421    pub bCount: __u8,
18422    pub Reserved: __u8,
18423}
18424impl Default for usb_os_desc_header__bindgen_ty_1 {
18425    fn default() -> Self {
18426        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18427        unsafe {
18428            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18429            s.assume_init()
18430        }
18431    }
18432}
18433impl Default for usb_os_desc_header {
18434    fn default() -> Self {
18435        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18436        unsafe {
18437            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18438            s.assume_init()
18439        }
18440    }
18441}
18442#[repr(C)]
18443#[derive(Copy, Clone)]
18444pub struct usb_ext_compat_desc {
18445    pub bFirstInterfaceNumber: __u8,
18446    pub Reserved1: __u8,
18447    pub __bindgen_anon_1: usb_ext_compat_desc__bindgen_ty_1,
18448    pub Reserved2: [__u8; 6usize],
18449}
18450#[repr(C)]
18451#[derive(Copy, Clone)]
18452pub union usb_ext_compat_desc__bindgen_ty_1 {
18453    pub __bindgen_anon_1: usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_1,
18454    pub IDs: usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_2,
18455}
18456#[repr(C)]
18457#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18458pub struct usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_1 {
18459    pub CompatibleID: [__u8; 8usize],
18460    pub SubCompatibleID: [__u8; 8usize],
18461}
18462#[repr(C)]
18463#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18464pub struct usb_ext_compat_desc__bindgen_ty_1__bindgen_ty_2 {
18465    pub CompatibleID: [__u8; 8usize],
18466    pub SubCompatibleID: [__u8; 8usize],
18467}
18468impl Default for usb_ext_compat_desc__bindgen_ty_1 {
18469    fn default() -> Self {
18470        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18471        unsafe {
18472            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18473            s.assume_init()
18474        }
18475    }
18476}
18477impl Default for usb_ext_compat_desc {
18478    fn default() -> Self {
18479        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18480        unsafe {
18481            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18482            s.assume_init()
18483        }
18484    }
18485}
18486#[repr(C, packed)]
18487#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18488pub struct usb_ext_prop_desc {
18489    pub dwSize: __le32,
18490    pub dwPropertyDataType: __le32,
18491    pub wPropertyNameLength: __le16,
18492}
18493#[repr(C, packed)]
18494#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18495pub struct usb_ffs_dmabuf_transfer_req {
18496    pub fd: crate::types::c_int,
18497    pub flags: __u32,
18498    pub length: __u64,
18499}
18500#[repr(C, packed)]
18501#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18502pub struct usb_functionfs_strings_head {
18503    pub magic: __le32,
18504    pub length: __le32,
18505    pub str_count: __le32,
18506    pub lang_count: __le32,
18507}
18508pub const usb_functionfs_event_type_FUNCTIONFS_BIND: usb_functionfs_event_type = 0;
18509pub const usb_functionfs_event_type_FUNCTIONFS_UNBIND: usb_functionfs_event_type = 1;
18510pub const usb_functionfs_event_type_FUNCTIONFS_ENABLE: usb_functionfs_event_type = 2;
18511pub const usb_functionfs_event_type_FUNCTIONFS_DISABLE: usb_functionfs_event_type = 3;
18512pub const usb_functionfs_event_type_FUNCTIONFS_SETUP: usb_functionfs_event_type = 4;
18513pub const usb_functionfs_event_type_FUNCTIONFS_SUSPEND: usb_functionfs_event_type = 5;
18514pub const usb_functionfs_event_type_FUNCTIONFS_RESUME: usb_functionfs_event_type = 6;
18515pub type usb_functionfs_event_type = crate::types::c_uint;
18516#[repr(C, packed)]
18517#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
18518pub struct usb_functionfs_event {
18519    pub u: usb_functionfs_event__bindgen_ty_1,
18520    pub type_: __u8,
18521    pub _pad: [__u8; 3usize],
18522}
18523#[repr(C, packed)]
18524#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
18525pub union usb_functionfs_event__bindgen_ty_1 {
18526    pub setup: usb_ctrlrequest,
18527}
18528impl Default for usb_functionfs_event__bindgen_ty_1 {
18529    fn default() -> Self {
18530        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18531        unsafe {
18532            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18533            s.assume_init()
18534        }
18535    }
18536}
18537impl Default for usb_functionfs_event {
18538    fn default() -> Self {
18539        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18540        unsafe {
18541            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18542            s.assume_init()
18543        }
18544    }
18545}
18546#[repr(C)]
18547#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18548pub struct usbdevfs_ctrltransfer {
18549    pub bRequestType: __u8,
18550    pub bRequest: __u8,
18551    pub wValue: __u16,
18552    pub wIndex: __u16,
18553    pub wLength: __u16,
18554    pub timeout: __u32,
18555    pub __bindgen_padding_0: [u8; 4usize],
18556    pub data: uaddr,
18557}
18558impl Default for usbdevfs_ctrltransfer {
18559    fn default() -> Self {
18560        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18561        unsafe {
18562            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18563            s.assume_init()
18564        }
18565    }
18566}
18567#[repr(C)]
18568#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18569pub struct usbdevfs_bulktransfer {
18570    pub ep: crate::types::c_uint,
18571    pub len: crate::types::c_uint,
18572    pub timeout: crate::types::c_uint,
18573    pub __bindgen_padding_0: [u8; 4usize],
18574    pub data: uaddr,
18575}
18576impl Default for usbdevfs_bulktransfer {
18577    fn default() -> Self {
18578        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18579        unsafe {
18580            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18581            s.assume_init()
18582        }
18583    }
18584}
18585#[repr(C)]
18586#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18587pub struct usbdevfs_setinterface {
18588    pub interface: crate::types::c_uint,
18589    pub altsetting: crate::types::c_uint,
18590}
18591#[repr(C)]
18592#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18593pub struct usbdevfs_disconnectsignal {
18594    pub signr: crate::types::c_uint,
18595    pub __bindgen_padding_0: [u8; 4usize],
18596    pub context: uaddr,
18597}
18598impl Default for usbdevfs_disconnectsignal {
18599    fn default() -> Self {
18600        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18601        unsafe {
18602            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18603            s.assume_init()
18604        }
18605    }
18606}
18607#[repr(C)]
18608#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18609pub struct usbdevfs_getdriver {
18610    pub interface: crate::types::c_uint,
18611    pub driver: [crate::types::c_char; 256usize],
18612}
18613impl Default for usbdevfs_getdriver {
18614    fn default() -> Self {
18615        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18616        unsafe {
18617            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18618            s.assume_init()
18619        }
18620    }
18621}
18622#[repr(C)]
18623#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18624pub struct usbdevfs_connectinfo {
18625    pub devnum: crate::types::c_uint,
18626    pub slow: crate::types::c_uchar,
18627    pub __bindgen_padding_0: [u8; 3usize],
18628}
18629#[repr(C)]
18630#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18631pub struct usbdevfs_conninfo_ex {
18632    pub size: __u32,
18633    pub busnum: __u32,
18634    pub devnum: __u32,
18635    pub speed: __u32,
18636    pub num_ports: __u8,
18637    pub ports: [__u8; 7usize],
18638}
18639#[repr(C)]
18640#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18641pub struct usbdevfs_iso_packet_desc {
18642    pub length: crate::types::c_uint,
18643    pub actual_length: crate::types::c_uint,
18644    pub status: crate::types::c_uint,
18645}
18646#[repr(C)]
18647pub struct usbdevfs_urb {
18648    pub type_: crate::types::c_uchar,
18649    pub endpoint: crate::types::c_uchar,
18650    pub __bindgen_padding_0: [u8; 2usize],
18651    pub status: crate::types::c_int,
18652    pub flags: crate::types::c_uint,
18653    pub __bindgen_padding_1: [u8; 4usize],
18654    pub buffer: uaddr,
18655    pub buffer_length: crate::types::c_int,
18656    pub actual_length: crate::types::c_int,
18657    pub start_frame: crate::types::c_int,
18658    pub __bindgen_anon_1: usbdevfs_urb__bindgen_ty_1,
18659    pub error_count: crate::types::c_int,
18660    pub signr: crate::types::c_uint,
18661    pub usercontext: uaddr,
18662    pub iso_frame_desc: __IncompleteArrayField<usbdevfs_iso_packet_desc>,
18663}
18664#[repr(C)]
18665#[derive(Copy, Clone)]
18666pub union usbdevfs_urb__bindgen_ty_1 {
18667    pub number_of_packets: crate::types::c_int,
18668    pub stream_id: crate::types::c_uint,
18669}
18670impl Default for usbdevfs_urb__bindgen_ty_1 {
18671    fn default() -> Self {
18672        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18673        unsafe {
18674            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18675            s.assume_init()
18676        }
18677    }
18678}
18679impl Default for usbdevfs_urb {
18680    fn default() -> Self {
18681        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18682        unsafe {
18683            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18684            s.assume_init()
18685        }
18686    }
18687}
18688#[repr(C)]
18689#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18690pub struct usbdevfs_ioctl {
18691    pub ifno: crate::types::c_int,
18692    pub ioctl_code: crate::types::c_int,
18693    pub data: uaddr,
18694}
18695impl Default for usbdevfs_ioctl {
18696    fn default() -> Self {
18697        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18698        unsafe {
18699            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18700            s.assume_init()
18701        }
18702    }
18703}
18704#[repr(C)]
18705#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18706pub struct usbdevfs_hub_portinfo {
18707    pub nports: crate::types::c_char,
18708    pub port: [crate::types::c_char; 127usize],
18709}
18710impl Default for usbdevfs_hub_portinfo {
18711    fn default() -> Self {
18712        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18713        unsafe {
18714            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18715            s.assume_init()
18716        }
18717    }
18718}
18719#[repr(C)]
18720#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18721pub struct usbdevfs_disconnect_claim {
18722    pub interface: crate::types::c_uint,
18723    pub flags: crate::types::c_uint,
18724    pub driver: [crate::types::c_char; 256usize],
18725}
18726impl Default for usbdevfs_disconnect_claim {
18727    fn default() -> Self {
18728        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18729        unsafe {
18730            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18731            s.assume_init()
18732        }
18733    }
18734}
18735#[repr(C)]
18736#[derive(Debug, Default)]
18737pub struct usbdevfs_streams {
18738    pub num_streams: crate::types::c_uint,
18739    pub num_eps: crate::types::c_uint,
18740    pub eps: __IncompleteArrayField<crate::types::c_uchar>,
18741}
18742#[repr(C, packed)]
18743#[derive(Copy, Clone)]
18744pub struct uffd_msg {
18745    pub event: __u8,
18746    pub reserved1: __u8,
18747    pub reserved2: __u16,
18748    pub reserved3: __u32,
18749    pub arg: uffd_msg__bindgen_ty_1,
18750}
18751#[repr(C)]
18752#[derive(Copy, Clone)]
18753pub union uffd_msg__bindgen_ty_1 {
18754    pub pagefault: uffd_msg__bindgen_ty_1__bindgen_ty_1,
18755    pub fork: uffd_msg__bindgen_ty_1__bindgen_ty_2,
18756    pub remap: uffd_msg__bindgen_ty_1__bindgen_ty_3,
18757    pub remove: uffd_msg__bindgen_ty_1__bindgen_ty_4,
18758    pub reserved: uffd_msg__bindgen_ty_1__bindgen_ty_5,
18759}
18760#[repr(C)]
18761#[derive(Copy, Clone)]
18762pub struct uffd_msg__bindgen_ty_1__bindgen_ty_1 {
18763    pub flags: __u64,
18764    pub address: __u64,
18765    pub feat: uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
18766    pub __bindgen_padding_0: [u8; 4usize],
18767}
18768#[repr(C)]
18769#[derive(Copy, Clone)]
18770pub union uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
18771    pub ptid: __u32,
18772}
18773impl Default for uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
18774    fn default() -> Self {
18775        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18776        unsafe {
18777            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18778            s.assume_init()
18779        }
18780    }
18781}
18782impl Default for uffd_msg__bindgen_ty_1__bindgen_ty_1 {
18783    fn default() -> Self {
18784        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18785        unsafe {
18786            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18787            s.assume_init()
18788        }
18789    }
18790}
18791#[repr(C)]
18792#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18793pub struct uffd_msg__bindgen_ty_1__bindgen_ty_2 {
18794    pub ufd: __u32,
18795}
18796#[repr(C)]
18797#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18798pub struct uffd_msg__bindgen_ty_1__bindgen_ty_3 {
18799    pub from: __u64,
18800    pub to: __u64,
18801    pub len: __u64,
18802}
18803#[repr(C)]
18804#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18805pub struct uffd_msg__bindgen_ty_1__bindgen_ty_4 {
18806    pub start: __u64,
18807    pub end: __u64,
18808}
18809#[repr(C)]
18810#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18811pub struct uffd_msg__bindgen_ty_1__bindgen_ty_5 {
18812    pub reserved1: __u64,
18813    pub reserved2: __u64,
18814    pub reserved3: __u64,
18815}
18816impl Default for uffd_msg__bindgen_ty_1 {
18817    fn default() -> Self {
18818        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18819        unsafe {
18820            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18821            s.assume_init()
18822        }
18823    }
18824}
18825impl Default for uffd_msg {
18826    fn default() -> Self {
18827        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18828        unsafe {
18829            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18830            s.assume_init()
18831        }
18832    }
18833}
18834#[repr(C)]
18835#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18836pub struct uffdio_api {
18837    pub api: __u64,
18838    pub features: __u64,
18839    pub ioctls: __u64,
18840}
18841#[repr(C)]
18842#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18843pub struct uffdio_range {
18844    pub start: __u64,
18845    pub len: __u64,
18846}
18847#[repr(C)]
18848#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18849pub struct uffdio_register {
18850    pub range: uffdio_range,
18851    pub mode: __u64,
18852    pub ioctls: __u64,
18853}
18854#[repr(C)]
18855#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18856pub struct uffdio_copy {
18857    pub dst: __u64,
18858    pub src: __u64,
18859    pub len: __u64,
18860    pub mode: __u64,
18861    pub copy: __s64,
18862}
18863#[repr(C)]
18864#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18865pub struct uffdio_zeropage {
18866    pub range: uffdio_range,
18867    pub mode: __u64,
18868    pub zeropage: __s64,
18869}
18870#[repr(C)]
18871#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18872pub struct uffdio_writeprotect {
18873    pub range: uffdio_range,
18874    pub mode: __u64,
18875}
18876#[repr(C)]
18877#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18878pub struct uffdio_continue {
18879    pub range: uffdio_range,
18880    pub mode: __u64,
18881    pub mapped: __s64,
18882}
18883#[repr(C)]
18884#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18885pub struct uffdio_poison {
18886    pub range: uffdio_range,
18887    pub mode: __u64,
18888    pub updated: __s64,
18889}
18890#[repr(C)]
18891#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18892pub struct uffdio_move {
18893    pub dst: __u64,
18894    pub src: __u64,
18895    pub len: __u64,
18896    pub mode: __u64,
18897    pub move_: __s64,
18898}
18899#[repr(C)]
18900#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18901pub struct oldold_utsname {
18902    pub sysname: [crate::types::c_char; 9usize],
18903    pub nodename: [crate::types::c_char; 9usize],
18904    pub release: [crate::types::c_char; 9usize],
18905    pub version: [crate::types::c_char; 9usize],
18906    pub machine: [crate::types::c_char; 9usize],
18907}
18908#[repr(C)]
18909#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18910pub struct old_utsname {
18911    pub sysname: [crate::types::c_char; 65usize],
18912    pub nodename: [crate::types::c_char; 65usize],
18913    pub release: [crate::types::c_char; 65usize],
18914    pub version: [crate::types::c_char; 65usize],
18915    pub machine: [crate::types::c_char; 65usize],
18916}
18917impl Default for old_utsname {
18918    fn default() -> Self {
18919        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18920        unsafe {
18921            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18922            s.assume_init()
18923        }
18924    }
18925}
18926#[repr(C)]
18927#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18928pub struct new_utsname {
18929    pub sysname: [crate::types::c_char; 65usize],
18930    pub nodename: [crate::types::c_char; 65usize],
18931    pub release: [crate::types::c_char; 65usize],
18932    pub version: [crate::types::c_char; 65usize],
18933    pub machine: [crate::types::c_char; 65usize],
18934    pub domainname: [crate::types::c_char; 65usize],
18935}
18936impl Default for new_utsname {
18937    fn default() -> Self {
18938        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18939        unsafe {
18940            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18941            s.assume_init()
18942        }
18943    }
18944}
18945#[repr(C)]
18946#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18947pub struct sockaddr_vm {
18948    pub svm_family: __kernel_sa_family_t,
18949    pub svm_reserved1: crate::types::c_ushort,
18950    pub svm_port: crate::types::c_uint,
18951    pub svm_cid: crate::types::c_uint,
18952    pub svm_flags: __u8,
18953    pub svm_zero: [crate::types::c_uchar; 3usize],
18954}
18955pub const watch_notification_type_WATCH_TYPE_META: watch_notification_type = 0;
18956pub const watch_notification_type_WATCH_TYPE_KEY_NOTIFY: watch_notification_type = 1;
18957pub const watch_notification_type_WATCH_TYPE__NR: watch_notification_type = 2;
18958pub type watch_notification_type = crate::types::c_uint;
18959pub const watch_meta_notification_subtype_WATCH_META_REMOVAL_NOTIFICATION:
18960    watch_meta_notification_subtype = 0;
18961pub const watch_meta_notification_subtype_WATCH_META_LOSS_NOTIFICATION:
18962    watch_meta_notification_subtype = 1;
18963pub type watch_meta_notification_subtype = crate::types::c_uint;
18964#[repr(C)]
18965#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
18966pub struct watch_notification {
18967    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
18968    pub info: __u32,
18969}
18970impl watch_notification {
18971    #[inline]
18972    pub fn type_(&self) -> __u32 {
18973        self._bitfield_1.get_const::<0usize, 24u8>() as u32 as _
18974    }
18975    #[inline]
18976    pub fn set_type(&mut self, val: __u32) {
18977        let val: u32 = val as _;
18978        self._bitfield_1.set_const::<0usize, 24u8>(val as u64)
18979    }
18980    #[inline]
18981    pub unsafe fn type__raw(this: *const Self) -> __u32 {
18982        unsafe {
18983            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<0usize, 24u8>(
18984                ::std::ptr::addr_of!((*this)._bitfield_1),
18985            ) as u32 as _
18986        }
18987    }
18988    #[inline]
18989    pub unsafe fn set_type_raw(this: *mut Self, val: __u32) {
18990        unsafe {
18991            let val: u32 = val as _;
18992            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<0usize, 24u8>(
18993                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
18994                val as u64,
18995            )
18996        }
18997    }
18998    #[inline]
18999    pub fn subtype(&self) -> __u32 {
19000        self._bitfield_1.get_const::<24usize, 8u8>() as u32 as _
19001    }
19002    #[inline]
19003    pub fn set_subtype(&mut self, val: __u32) {
19004        let val: u32 = val as _;
19005        self._bitfield_1.set_const::<24usize, 8u8>(val as u64)
19006    }
19007    #[inline]
19008    pub unsafe fn subtype_raw(this: *const Self) -> __u32 {
19009        unsafe {
19010            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<24usize, 8u8>(
19011                ::std::ptr::addr_of!((*this)._bitfield_1),
19012            ) as u32 as _
19013        }
19014    }
19015    #[inline]
19016    pub unsafe fn set_subtype_raw(this: *mut Self, val: __u32) {
19017        unsafe {
19018            let val: u32 = val as _;
19019            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<24usize, 8u8>(
19020                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19021                val as u64,
19022            )
19023        }
19024    }
19025    #[inline]
19026    pub fn new_bitfield_1(type_: __u32, subtype: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
19027        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
19028        __bindgen_bitfield_unit.set_const::<0usize, 24u8>({
19029            let type_: u32 = type_ as _;
19030            type_ as u64
19031        });
19032        __bindgen_bitfield_unit.set_const::<24usize, 8u8>({
19033            let subtype: u32 = subtype as _;
19034            subtype as u64
19035        });
19036        __bindgen_bitfield_unit
19037    }
19038}
19039#[repr(C)]
19040#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19041pub struct watch_notification_type_filter {
19042    pub type_: __u32,
19043    pub info_filter: __u32,
19044    pub info_mask: __u32,
19045    pub subtype_filter: [__u32; 8usize],
19046}
19047#[repr(C)]
19048#[derive(Debug, Default)]
19049pub struct watch_notification_filter {
19050    pub nr_filters: __u32,
19051    pub __reserved: __u32,
19052    pub filters: __IncompleteArrayField<watch_notification_type_filter>,
19053}
19054#[repr(C)]
19055#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19056pub struct watch_notification_removal {
19057    pub watch: watch_notification,
19058    pub id: __u64,
19059}
19060pub const key_notification_subtype_NOTIFY_KEY_INSTANTIATED: key_notification_subtype = 0;
19061pub const key_notification_subtype_NOTIFY_KEY_UPDATED: key_notification_subtype = 1;
19062pub const key_notification_subtype_NOTIFY_KEY_LINKED: key_notification_subtype = 2;
19063pub const key_notification_subtype_NOTIFY_KEY_UNLINKED: key_notification_subtype = 3;
19064pub const key_notification_subtype_NOTIFY_KEY_CLEARED: key_notification_subtype = 4;
19065pub const key_notification_subtype_NOTIFY_KEY_REVOKED: key_notification_subtype = 5;
19066pub const key_notification_subtype_NOTIFY_KEY_INVALIDATED: key_notification_subtype = 6;
19067pub const key_notification_subtype_NOTIFY_KEY_SETATTR: key_notification_subtype = 7;
19068pub type key_notification_subtype = crate::types::c_uint;
19069#[repr(C)]
19070#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19071pub struct key_notification {
19072    pub watch: watch_notification,
19073    pub key_id: __u32,
19074    pub aux: __u32,
19075}
19076#[repr(C)]
19077#[derive(Copy, Clone)]
19078pub union xfrm_address_t {
19079    pub a4: __be32,
19080    pub a6: [__be32; 4usize],
19081    pub in6: in6_addr,
19082}
19083impl Default for xfrm_address_t {
19084    fn default() -> Self {
19085        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19086        unsafe {
19087            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19088            s.assume_init()
19089        }
19090    }
19091}
19092#[repr(C)]
19093#[derive(Copy, Clone)]
19094pub struct xfrm_id {
19095    pub daddr: xfrm_address_t,
19096    pub spi: __be32,
19097    pub proto: __u8,
19098    pub __bindgen_padding_0: [u8; 3usize],
19099}
19100impl Default for xfrm_id {
19101    fn default() -> Self {
19102        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19103        unsafe {
19104            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19105            s.assume_init()
19106        }
19107    }
19108}
19109#[repr(C)]
19110#[derive(Debug, Default)]
19111pub struct xfrm_sec_ctx {
19112    pub ctx_doi: __u8,
19113    pub ctx_alg: __u8,
19114    pub ctx_len: __u16,
19115    pub ctx_sid: __u32,
19116    pub ctx_str: __IncompleteArrayField<crate::types::c_char>,
19117}
19118#[repr(C)]
19119#[derive(Copy, Clone)]
19120pub struct xfrm_selector {
19121    pub daddr: xfrm_address_t,
19122    pub saddr: xfrm_address_t,
19123    pub dport: __be16,
19124    pub dport_mask: __be16,
19125    pub sport: __be16,
19126    pub sport_mask: __be16,
19127    pub family: __u16,
19128    pub prefixlen_d: __u8,
19129    pub prefixlen_s: __u8,
19130    pub proto: __u8,
19131    pub __bindgen_padding_0: [u8; 3usize],
19132    pub ifindex: crate::types::c_int,
19133    pub user: __kernel_uid32_t,
19134}
19135impl Default for xfrm_selector {
19136    fn default() -> Self {
19137        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19138        unsafe {
19139            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19140            s.assume_init()
19141        }
19142    }
19143}
19144#[repr(C)]
19145#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19146pub struct xfrm_lifetime_cfg {
19147    pub soft_byte_limit: __u64,
19148    pub hard_byte_limit: __u64,
19149    pub soft_packet_limit: __u64,
19150    pub hard_packet_limit: __u64,
19151    pub soft_add_expires_seconds: __u64,
19152    pub hard_add_expires_seconds: __u64,
19153    pub soft_use_expires_seconds: __u64,
19154    pub hard_use_expires_seconds: __u64,
19155}
19156#[repr(C)]
19157#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19158pub struct xfrm_lifetime_cur {
19159    pub bytes: __u64,
19160    pub packets: __u64,
19161    pub add_time: __u64,
19162    pub use_time: __u64,
19163}
19164#[repr(C)]
19165#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19166pub struct xfrm_replay_state {
19167    pub oseq: __u32,
19168    pub seq: __u32,
19169    pub bitmap: __u32,
19170}
19171#[repr(C)]
19172#[derive(Debug, Default)]
19173pub struct xfrm_replay_state_esn {
19174    pub bmp_len: crate::types::c_uint,
19175    pub oseq: __u32,
19176    pub seq: __u32,
19177    pub oseq_hi: __u32,
19178    pub seq_hi: __u32,
19179    pub replay_window: __u32,
19180    pub bmp: __IncompleteArrayField<__u32>,
19181}
19182#[repr(C)]
19183#[derive(Debug)]
19184pub struct xfrm_algo {
19185    pub alg_name: [crate::types::c_char; 64usize],
19186    pub alg_key_len: crate::types::c_uint,
19187    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19188}
19189impl Default for xfrm_algo {
19190    fn default() -> Self {
19191        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19192        unsafe {
19193            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19194            s.assume_init()
19195        }
19196    }
19197}
19198#[repr(C)]
19199#[derive(Debug)]
19200pub struct xfrm_algo_auth {
19201    pub alg_name: [crate::types::c_char; 64usize],
19202    pub alg_key_len: crate::types::c_uint,
19203    pub alg_trunc_len: crate::types::c_uint,
19204    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19205}
19206impl Default for xfrm_algo_auth {
19207    fn default() -> Self {
19208        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19209        unsafe {
19210            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19211            s.assume_init()
19212        }
19213    }
19214}
19215#[repr(C)]
19216#[derive(Debug)]
19217pub struct xfrm_algo_aead {
19218    pub alg_name: [crate::types::c_char; 64usize],
19219    pub alg_key_len: crate::types::c_uint,
19220    pub alg_icv_len: crate::types::c_uint,
19221    pub alg_key: __IncompleteArrayField<crate::types::c_char>,
19222}
19223impl Default for xfrm_algo_aead {
19224    fn default() -> Self {
19225        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19226        unsafe {
19227            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19228            s.assume_init()
19229        }
19230    }
19231}
19232#[repr(C)]
19233#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19234pub struct xfrm_stats {
19235    pub replay_window: __u32,
19236    pub replay: __u32,
19237    pub integrity_failed: __u32,
19238}
19239pub const XFRM_POLICY_TYPE_MAIN: _bindgen_ty_102 = 0;
19240pub const XFRM_POLICY_TYPE_SUB: _bindgen_ty_102 = 1;
19241pub const XFRM_POLICY_TYPE_MAX: _bindgen_ty_102 = 2;
19242pub const XFRM_POLICY_TYPE_ANY: _bindgen_ty_102 = 255;
19243pub type _bindgen_ty_102 = crate::types::c_uint;
19244pub const XFRM_POLICY_IN: _bindgen_ty_103 = 0;
19245pub const XFRM_POLICY_OUT: _bindgen_ty_103 = 1;
19246pub const XFRM_POLICY_FWD: _bindgen_ty_103 = 2;
19247pub const XFRM_POLICY_MASK: _bindgen_ty_103 = 3;
19248pub const XFRM_POLICY_MAX: _bindgen_ty_103 = 3;
19249pub type _bindgen_ty_103 = crate::types::c_uint;
19250pub const xfrm_sa_dir_XFRM_SA_DIR_IN: xfrm_sa_dir = 1;
19251pub const xfrm_sa_dir_XFRM_SA_DIR_OUT: xfrm_sa_dir = 2;
19252pub type xfrm_sa_dir = crate::types::c_uint;
19253pub const XFRM_SHARE_ANY: _bindgen_ty_104 = 0;
19254pub const XFRM_SHARE_SESSION: _bindgen_ty_104 = 1;
19255pub const XFRM_SHARE_USER: _bindgen_ty_104 = 2;
19256pub const XFRM_SHARE_UNIQUE: _bindgen_ty_104 = 3;
19257pub type _bindgen_ty_104 = crate::types::c_uint;
19258pub const XFRM_MSG_BASE: _bindgen_ty_105 = 16;
19259pub const XFRM_MSG_NEWSA: _bindgen_ty_105 = 16;
19260pub const XFRM_MSG_DELSA: _bindgen_ty_105 = 17;
19261pub const XFRM_MSG_GETSA: _bindgen_ty_105 = 18;
19262pub const XFRM_MSG_NEWPOLICY: _bindgen_ty_105 = 19;
19263pub const XFRM_MSG_DELPOLICY: _bindgen_ty_105 = 20;
19264pub const XFRM_MSG_GETPOLICY: _bindgen_ty_105 = 21;
19265pub const XFRM_MSG_ALLOCSPI: _bindgen_ty_105 = 22;
19266pub const XFRM_MSG_ACQUIRE: _bindgen_ty_105 = 23;
19267pub const XFRM_MSG_EXPIRE: _bindgen_ty_105 = 24;
19268pub const XFRM_MSG_UPDPOLICY: _bindgen_ty_105 = 25;
19269pub const XFRM_MSG_UPDSA: _bindgen_ty_105 = 26;
19270pub const XFRM_MSG_POLEXPIRE: _bindgen_ty_105 = 27;
19271pub const XFRM_MSG_FLUSHSA: _bindgen_ty_105 = 28;
19272pub const XFRM_MSG_FLUSHPOLICY: _bindgen_ty_105 = 29;
19273pub const XFRM_MSG_NEWAE: _bindgen_ty_105 = 30;
19274pub const XFRM_MSG_GETAE: _bindgen_ty_105 = 31;
19275pub const XFRM_MSG_REPORT: _bindgen_ty_105 = 32;
19276pub const XFRM_MSG_MIGRATE: _bindgen_ty_105 = 33;
19277pub const XFRM_MSG_NEWSADINFO: _bindgen_ty_105 = 34;
19278pub const XFRM_MSG_GETSADINFO: _bindgen_ty_105 = 35;
19279pub const XFRM_MSG_NEWSPDINFO: _bindgen_ty_105 = 36;
19280pub const XFRM_MSG_GETSPDINFO: _bindgen_ty_105 = 37;
19281pub const XFRM_MSG_MAPPING: _bindgen_ty_105 = 38;
19282pub const XFRM_MSG_SETDEFAULT: _bindgen_ty_105 = 39;
19283pub const XFRM_MSG_GETDEFAULT: _bindgen_ty_105 = 40;
19284pub const __XFRM_MSG_MAX: _bindgen_ty_105 = 41;
19285pub type _bindgen_ty_105 = crate::types::c_uint;
19286#[repr(C)]
19287#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19288pub struct xfrm_user_sec_ctx {
19289    pub len: __u16,
19290    pub exttype: __u16,
19291    pub ctx_alg: __u8,
19292    pub ctx_doi: __u8,
19293    pub ctx_len: __u16,
19294}
19295#[repr(C)]
19296#[derive(Copy, Clone)]
19297pub struct xfrm_user_tmpl {
19298    pub id: xfrm_id,
19299    pub family: __u16,
19300    pub __bindgen_padding_0: [u8; 2usize],
19301    pub saddr: xfrm_address_t,
19302    pub reqid: __u32,
19303    pub mode: __u8,
19304    pub share: __u8,
19305    pub optional: __u8,
19306    pub __bindgen_padding_1: u8,
19307    pub aalgos: __u32,
19308    pub ealgos: __u32,
19309    pub calgos: __u32,
19310}
19311impl Default for xfrm_user_tmpl {
19312    fn default() -> Self {
19313        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19314        unsafe {
19315            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19316            s.assume_init()
19317        }
19318    }
19319}
19320#[repr(C)]
19321#[derive(Copy, Clone)]
19322pub struct xfrm_encap_tmpl {
19323    pub encap_type: __u16,
19324    pub encap_sport: __be16,
19325    pub encap_dport: __be16,
19326    pub __bindgen_padding_0: [u8; 2usize],
19327    pub encap_oa: xfrm_address_t,
19328}
19329impl Default for xfrm_encap_tmpl {
19330    fn default() -> Self {
19331        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19332        unsafe {
19333            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19334            s.assume_init()
19335        }
19336    }
19337}
19338pub const xfrm_ae_ftype_t_XFRM_AE_UNSPEC: xfrm_ae_ftype_t = 0;
19339pub const xfrm_ae_ftype_t_XFRM_AE_RTHR: xfrm_ae_ftype_t = 1;
19340pub const xfrm_ae_ftype_t_XFRM_AE_RVAL: xfrm_ae_ftype_t = 2;
19341pub const xfrm_ae_ftype_t_XFRM_AE_LVAL: xfrm_ae_ftype_t = 4;
19342pub const xfrm_ae_ftype_t_XFRM_AE_ETHR: xfrm_ae_ftype_t = 8;
19343pub const xfrm_ae_ftype_t_XFRM_AE_CR: xfrm_ae_ftype_t = 16;
19344pub const xfrm_ae_ftype_t_XFRM_AE_CE: xfrm_ae_ftype_t = 32;
19345pub const xfrm_ae_ftype_t_XFRM_AE_CU: xfrm_ae_ftype_t = 64;
19346pub const xfrm_ae_ftype_t___XFRM_AE_MAX: xfrm_ae_ftype_t = 65;
19347pub type xfrm_ae_ftype_t = crate::types::c_uint;
19348#[repr(C)]
19349#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19350pub struct xfrm_userpolicy_type {
19351    pub type_: __u8,
19352    pub __bindgen_padding_0: u8,
19353    pub reserved1: __u16,
19354    pub reserved2: __u8,
19355    pub __bindgen_padding_1: u8,
19356}
19357pub const xfrm_attr_type_t_XFRMA_UNSPEC: xfrm_attr_type_t = 0;
19358pub const xfrm_attr_type_t_XFRMA_ALG_AUTH: xfrm_attr_type_t = 1;
19359pub const xfrm_attr_type_t_XFRMA_ALG_CRYPT: xfrm_attr_type_t = 2;
19360pub const xfrm_attr_type_t_XFRMA_ALG_COMP: xfrm_attr_type_t = 3;
19361pub const xfrm_attr_type_t_XFRMA_ENCAP: xfrm_attr_type_t = 4;
19362pub const xfrm_attr_type_t_XFRMA_TMPL: xfrm_attr_type_t = 5;
19363pub const xfrm_attr_type_t_XFRMA_SA: xfrm_attr_type_t = 6;
19364pub const xfrm_attr_type_t_XFRMA_POLICY: xfrm_attr_type_t = 7;
19365pub const xfrm_attr_type_t_XFRMA_SEC_CTX: xfrm_attr_type_t = 8;
19366pub const xfrm_attr_type_t_XFRMA_LTIME_VAL: xfrm_attr_type_t = 9;
19367pub const xfrm_attr_type_t_XFRMA_REPLAY_VAL: xfrm_attr_type_t = 10;
19368pub const xfrm_attr_type_t_XFRMA_REPLAY_THRESH: xfrm_attr_type_t = 11;
19369pub const xfrm_attr_type_t_XFRMA_ETIMER_THRESH: xfrm_attr_type_t = 12;
19370pub const xfrm_attr_type_t_XFRMA_SRCADDR: xfrm_attr_type_t = 13;
19371pub const xfrm_attr_type_t_XFRMA_COADDR: xfrm_attr_type_t = 14;
19372pub const xfrm_attr_type_t_XFRMA_LASTUSED: xfrm_attr_type_t = 15;
19373pub const xfrm_attr_type_t_XFRMA_POLICY_TYPE: xfrm_attr_type_t = 16;
19374pub const xfrm_attr_type_t_XFRMA_MIGRATE: xfrm_attr_type_t = 17;
19375pub const xfrm_attr_type_t_XFRMA_ALG_AEAD: xfrm_attr_type_t = 18;
19376pub const xfrm_attr_type_t_XFRMA_KMADDRESS: xfrm_attr_type_t = 19;
19377pub const xfrm_attr_type_t_XFRMA_ALG_AUTH_TRUNC: xfrm_attr_type_t = 20;
19378pub const xfrm_attr_type_t_XFRMA_MARK: xfrm_attr_type_t = 21;
19379pub const xfrm_attr_type_t_XFRMA_TFCPAD: xfrm_attr_type_t = 22;
19380pub const xfrm_attr_type_t_XFRMA_REPLAY_ESN_VAL: xfrm_attr_type_t = 23;
19381pub const xfrm_attr_type_t_XFRMA_SA_EXTRA_FLAGS: xfrm_attr_type_t = 24;
19382pub const xfrm_attr_type_t_XFRMA_PROTO: xfrm_attr_type_t = 25;
19383pub const xfrm_attr_type_t_XFRMA_ADDRESS_FILTER: xfrm_attr_type_t = 26;
19384pub const xfrm_attr_type_t_XFRMA_PAD: xfrm_attr_type_t = 27;
19385pub const xfrm_attr_type_t_XFRMA_OFFLOAD_DEV: xfrm_attr_type_t = 28;
19386pub const xfrm_attr_type_t_XFRMA_SET_MARK: xfrm_attr_type_t = 29;
19387pub const xfrm_attr_type_t_XFRMA_SET_MARK_MASK: xfrm_attr_type_t = 30;
19388pub const xfrm_attr_type_t_XFRMA_IF_ID: xfrm_attr_type_t = 31;
19389pub const xfrm_attr_type_t_XFRMA_MTIMER_THRESH: xfrm_attr_type_t = 32;
19390pub const xfrm_attr_type_t_XFRMA_SA_DIR: xfrm_attr_type_t = 33;
19391pub const xfrm_attr_type_t_XFRMA_NAT_KEEPALIVE_INTERVAL: xfrm_attr_type_t = 34;
19392pub const xfrm_attr_type_t___XFRMA_MAX: xfrm_attr_type_t = 35;
19393pub type xfrm_attr_type_t = crate::types::c_uint;
19394#[repr(C)]
19395#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19396pub struct xfrm_mark {
19397    pub v: __u32,
19398    pub m: __u32,
19399}
19400pub const xfrm_sadattr_type_t_XFRMA_SAD_UNSPEC: xfrm_sadattr_type_t = 0;
19401pub const xfrm_sadattr_type_t_XFRMA_SAD_CNT: xfrm_sadattr_type_t = 1;
19402pub const xfrm_sadattr_type_t_XFRMA_SAD_HINFO: xfrm_sadattr_type_t = 2;
19403pub const xfrm_sadattr_type_t___XFRMA_SAD_MAX: xfrm_sadattr_type_t = 3;
19404pub type xfrm_sadattr_type_t = crate::types::c_uint;
19405#[repr(C)]
19406#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19407pub struct xfrmu_sadhinfo {
19408    pub sadhcnt: __u32,
19409    pub sadhmcnt: __u32,
19410}
19411pub const xfrm_spdattr_type_t_XFRMA_SPD_UNSPEC: xfrm_spdattr_type_t = 0;
19412pub const xfrm_spdattr_type_t_XFRMA_SPD_INFO: xfrm_spdattr_type_t = 1;
19413pub const xfrm_spdattr_type_t_XFRMA_SPD_HINFO: xfrm_spdattr_type_t = 2;
19414pub const xfrm_spdattr_type_t_XFRMA_SPD_IPV4_HTHRESH: xfrm_spdattr_type_t = 3;
19415pub const xfrm_spdattr_type_t_XFRMA_SPD_IPV6_HTHRESH: xfrm_spdattr_type_t = 4;
19416pub const xfrm_spdattr_type_t___XFRMA_SPD_MAX: xfrm_spdattr_type_t = 5;
19417pub type xfrm_spdattr_type_t = crate::types::c_uint;
19418#[repr(C)]
19419#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19420pub struct xfrmu_spdinfo {
19421    pub incnt: __u32,
19422    pub outcnt: __u32,
19423    pub fwdcnt: __u32,
19424    pub inscnt: __u32,
19425    pub outscnt: __u32,
19426    pub fwdscnt: __u32,
19427}
19428#[repr(C)]
19429#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19430pub struct xfrmu_spdhinfo {
19431    pub spdhcnt: __u32,
19432    pub spdhmcnt: __u32,
19433}
19434#[repr(C)]
19435#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19436pub struct xfrmu_spdhthresh {
19437    pub lbits: __u8,
19438    pub rbits: __u8,
19439}
19440#[repr(C)]
19441#[derive(Copy, Clone)]
19442pub struct xfrm_usersa_info {
19443    pub sel: xfrm_selector,
19444    pub id: xfrm_id,
19445    pub saddr: xfrm_address_t,
19446    pub lft: xfrm_lifetime_cfg,
19447    pub curlft: xfrm_lifetime_cur,
19448    pub stats: xfrm_stats,
19449    pub seq: __u32,
19450    pub reqid: __u32,
19451    pub family: __u16,
19452    pub mode: __u8,
19453    pub replay_window: __u8,
19454    pub flags: __u8,
19455    pub __bindgen_padding_0: [u8; 7usize],
19456}
19457impl Default for xfrm_usersa_info {
19458    fn default() -> Self {
19459        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19460        unsafe {
19461            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19462            s.assume_init()
19463        }
19464    }
19465}
19466#[repr(C)]
19467#[derive(Copy, Clone)]
19468pub struct xfrm_usersa_id {
19469    pub daddr: xfrm_address_t,
19470    pub spi: __be32,
19471    pub family: __u16,
19472    pub proto: __u8,
19473    pub __bindgen_padding_0: u8,
19474}
19475impl Default for xfrm_usersa_id {
19476    fn default() -> Self {
19477        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19478        unsafe {
19479            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19480            s.assume_init()
19481        }
19482    }
19483}
19484#[repr(C)]
19485#[derive(Copy, Clone)]
19486pub struct xfrm_aevent_id {
19487    pub sa_id: xfrm_usersa_id,
19488    pub saddr: xfrm_address_t,
19489    pub flags: __u32,
19490    pub reqid: __u32,
19491}
19492impl Default for xfrm_aevent_id {
19493    fn default() -> Self {
19494        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19495        unsafe {
19496            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19497            s.assume_init()
19498        }
19499    }
19500}
19501#[repr(C)]
19502#[derive(Copy, Clone)]
19503pub struct xfrm_userspi_info {
19504    pub info: xfrm_usersa_info,
19505    pub min: __u32,
19506    pub max: __u32,
19507}
19508impl Default for xfrm_userspi_info {
19509    fn default() -> Self {
19510        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19511        unsafe {
19512            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19513            s.assume_init()
19514        }
19515    }
19516}
19517#[repr(C)]
19518#[derive(Copy, Clone)]
19519pub struct xfrm_userpolicy_info {
19520    pub sel: xfrm_selector,
19521    pub lft: xfrm_lifetime_cfg,
19522    pub curlft: xfrm_lifetime_cur,
19523    pub priority: __u32,
19524    pub index: __u32,
19525    pub dir: __u8,
19526    pub action: __u8,
19527    pub flags: __u8,
19528    pub share: __u8,
19529    pub __bindgen_padding_0: [u8; 4usize],
19530}
19531impl Default for xfrm_userpolicy_info {
19532    fn default() -> Self {
19533        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19534        unsafe {
19535            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19536            s.assume_init()
19537        }
19538    }
19539}
19540#[repr(C)]
19541#[derive(Copy, Clone)]
19542pub struct xfrm_userpolicy_id {
19543    pub sel: xfrm_selector,
19544    pub index: __u32,
19545    pub dir: __u8,
19546    pub __bindgen_padding_0: [u8; 3usize],
19547}
19548impl Default for xfrm_userpolicy_id {
19549    fn default() -> Self {
19550        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19551        unsafe {
19552            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19553            s.assume_init()
19554        }
19555    }
19556}
19557#[repr(C)]
19558#[derive(Copy, Clone)]
19559pub struct xfrm_user_acquire {
19560    pub id: xfrm_id,
19561    pub saddr: xfrm_address_t,
19562    pub sel: xfrm_selector,
19563    pub policy: xfrm_userpolicy_info,
19564    pub aalgos: __u32,
19565    pub ealgos: __u32,
19566    pub calgos: __u32,
19567    pub seq: __u32,
19568}
19569impl Default for xfrm_user_acquire {
19570    fn default() -> Self {
19571        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19572        unsafe {
19573            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19574            s.assume_init()
19575        }
19576    }
19577}
19578#[repr(C)]
19579#[derive(Copy, Clone)]
19580pub struct xfrm_user_expire {
19581    pub state: xfrm_usersa_info,
19582    pub hard: __u8,
19583    pub __bindgen_padding_0: [u8; 7usize],
19584}
19585impl Default for xfrm_user_expire {
19586    fn default() -> Self {
19587        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19588        unsafe {
19589            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19590            s.assume_init()
19591        }
19592    }
19593}
19594#[repr(C)]
19595#[derive(Copy, Clone)]
19596pub struct xfrm_user_polexpire {
19597    pub pol: xfrm_userpolicy_info,
19598    pub hard: __u8,
19599    pub __bindgen_padding_0: [u8; 7usize],
19600}
19601impl Default for xfrm_user_polexpire {
19602    fn default() -> Self {
19603        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19604        unsafe {
19605            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19606            s.assume_init()
19607        }
19608    }
19609}
19610#[repr(C)]
19611#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19612pub struct xfrm_usersa_flush {
19613    pub proto: __u8,
19614}
19615#[repr(C)]
19616#[derive(Copy, Clone)]
19617pub struct xfrm_user_report {
19618    pub proto: __u8,
19619    pub __bindgen_padding_0: [u8; 3usize],
19620    pub sel: xfrm_selector,
19621}
19622impl Default for xfrm_user_report {
19623    fn default() -> Self {
19624        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19625        unsafe {
19626            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19627            s.assume_init()
19628        }
19629    }
19630}
19631#[repr(C)]
19632#[derive(Copy, Clone)]
19633pub struct xfrm_user_kmaddress {
19634    pub local: xfrm_address_t,
19635    pub remote: xfrm_address_t,
19636    pub reserved: __u32,
19637    pub family: __u16,
19638    pub __bindgen_padding_0: [u8; 2usize],
19639}
19640impl Default for xfrm_user_kmaddress {
19641    fn default() -> Self {
19642        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19643        unsafe {
19644            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19645            s.assume_init()
19646        }
19647    }
19648}
19649#[repr(C)]
19650#[derive(Copy, Clone)]
19651pub struct xfrm_user_migrate {
19652    pub old_daddr: xfrm_address_t,
19653    pub old_saddr: xfrm_address_t,
19654    pub new_daddr: xfrm_address_t,
19655    pub new_saddr: xfrm_address_t,
19656    pub proto: __u8,
19657    pub mode: __u8,
19658    pub reserved: __u16,
19659    pub reqid: __u32,
19660    pub old_family: __u16,
19661    pub new_family: __u16,
19662}
19663impl Default for xfrm_user_migrate {
19664    fn default() -> Self {
19665        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19666        unsafe {
19667            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19668            s.assume_init()
19669        }
19670    }
19671}
19672#[repr(C)]
19673#[derive(Copy, Clone)]
19674pub struct xfrm_user_mapping {
19675    pub id: xfrm_usersa_id,
19676    pub reqid: __u32,
19677    pub old_saddr: xfrm_address_t,
19678    pub new_saddr: xfrm_address_t,
19679    pub old_sport: __be16,
19680    pub new_sport: __be16,
19681}
19682impl Default for xfrm_user_mapping {
19683    fn default() -> Self {
19684        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19685        unsafe {
19686            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19687            s.assume_init()
19688        }
19689    }
19690}
19691#[repr(C)]
19692#[derive(Copy, Clone)]
19693pub struct xfrm_address_filter {
19694    pub saddr: xfrm_address_t,
19695    pub daddr: xfrm_address_t,
19696    pub family: __u16,
19697    pub splen: __u8,
19698    pub dplen: __u8,
19699}
19700impl Default for xfrm_address_filter {
19701    fn default() -> Self {
19702        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19703        unsafe {
19704            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19705            s.assume_init()
19706        }
19707    }
19708}
19709#[repr(C)]
19710#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19711pub struct xfrm_user_offload {
19712    pub ifindex: crate::types::c_int,
19713    pub flags: __u8,
19714    pub __bindgen_padding_0: [u8; 3usize],
19715}
19716#[repr(C)]
19717#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19718pub struct xfrm_userpolicy_default {
19719    pub in_: __u8,
19720    pub fwd: __u8,
19721    pub out: __u8,
19722}
19723pub const xfrm_nlgroups_XFRMNLGRP_NONE: xfrm_nlgroups = 0;
19724pub const xfrm_nlgroups_XFRMNLGRP_ACQUIRE: xfrm_nlgroups = 1;
19725pub const xfrm_nlgroups_XFRMNLGRP_EXPIRE: xfrm_nlgroups = 2;
19726pub const xfrm_nlgroups_XFRMNLGRP_SA: xfrm_nlgroups = 3;
19727pub const xfrm_nlgroups_XFRMNLGRP_POLICY: xfrm_nlgroups = 4;
19728pub const xfrm_nlgroups_XFRMNLGRP_AEVENTS: xfrm_nlgroups = 5;
19729pub const xfrm_nlgroups_XFRMNLGRP_REPORT: xfrm_nlgroups = 6;
19730pub const xfrm_nlgroups_XFRMNLGRP_MIGRATE: xfrm_nlgroups = 7;
19731pub const xfrm_nlgroups_XFRMNLGRP_MAPPING: xfrm_nlgroups = 8;
19732pub const xfrm_nlgroups___XFRMNLGRP_MAX: xfrm_nlgroups = 9;
19733pub type xfrm_nlgroups = crate::types::c_uint;
19734#[repr(C)]
19735#[derive(Copy, Clone)]
19736pub struct ucontext {
19737    pub uc_flags: crate::types::c_ulong,
19738    pub uc_link: uref<ucontext>,
19739    pub uc_stack: stack_t,
19740    pub uc_mcontext: sigcontext,
19741    pub uc_sigmask: sigset_t,
19742}
19743impl Default for ucontext {
19744    fn default() -> Self {
19745        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19746        unsafe {
19747            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19748            s.assume_init()
19749        }
19750    }
19751}
19752pub const bpf_cond_pseudo_jmp_BPF_MAY_GOTO: bpf_cond_pseudo_jmp = 0;
19753pub type bpf_cond_pseudo_jmp = crate::types::c_uint;
19754pub const BPF_REG_0: _bindgen_ty_106 = 0;
19755pub const BPF_REG_1: _bindgen_ty_106 = 1;
19756pub const BPF_REG_2: _bindgen_ty_106 = 2;
19757pub const BPF_REG_3: _bindgen_ty_106 = 3;
19758pub const BPF_REG_4: _bindgen_ty_106 = 4;
19759pub const BPF_REG_5: _bindgen_ty_106 = 5;
19760pub const BPF_REG_6: _bindgen_ty_106 = 6;
19761pub const BPF_REG_7: _bindgen_ty_106 = 7;
19762pub const BPF_REG_8: _bindgen_ty_106 = 8;
19763pub const BPF_REG_9: _bindgen_ty_106 = 9;
19764pub const BPF_REG_10: _bindgen_ty_106 = 10;
19765pub const __MAX_BPF_REG: _bindgen_ty_106 = 11;
19766pub type _bindgen_ty_106 = crate::types::c_uint;
19767#[repr(C)]
19768#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout, PartialEq)]
19769pub struct bpf_insn {
19770    pub code: __u8,
19771    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
19772    pub off: __s16,
19773    pub imm: __s32,
19774}
19775impl bpf_insn {
19776    #[inline]
19777    pub fn dst_reg(&self) -> __u8 {
19778        self._bitfield_1.get_const::<0usize, 4u8>() as u8 as _
19779    }
19780    #[inline]
19781    pub fn set_dst_reg(&mut self, val: __u8) {
19782        let val: u8 = val as _;
19783        self._bitfield_1.set_const::<0usize, 4u8>(val as u64)
19784    }
19785    #[inline]
19786    pub unsafe fn dst_reg_raw(this: *const Self) -> __u8 {
19787        unsafe {
19788            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 4u8>(
19789                ::std::ptr::addr_of!((*this)._bitfield_1),
19790            ) as u8 as _
19791        }
19792    }
19793    #[inline]
19794    pub unsafe fn set_dst_reg_raw(this: *mut Self, val: __u8) {
19795        unsafe {
19796            let val: u8 = val as _;
19797            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 4u8>(
19798                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19799                val as u64,
19800            )
19801        }
19802    }
19803    #[inline]
19804    pub fn src_reg(&self) -> __u8 {
19805        self._bitfield_1.get_const::<4usize, 4u8>() as u8 as _
19806    }
19807    #[inline]
19808    pub fn set_src_reg(&mut self, val: __u8) {
19809        let val: u8 = val as _;
19810        self._bitfield_1.set_const::<4usize, 4u8>(val as u64)
19811    }
19812    #[inline]
19813    pub unsafe fn src_reg_raw(this: *const Self) -> __u8 {
19814        unsafe {
19815            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<4usize, 4u8>(
19816                ::std::ptr::addr_of!((*this)._bitfield_1),
19817            ) as u8 as _
19818        }
19819    }
19820    #[inline]
19821    pub unsafe fn set_src_reg_raw(this: *mut Self, val: __u8) {
19822        unsafe {
19823            let val: u8 = val as _;
19824            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<4usize, 4u8>(
19825                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
19826                val as u64,
19827            )
19828        }
19829    }
19830    #[inline]
19831    pub fn new_bitfield_1(dst_reg: __u8, src_reg: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
19832        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
19833        __bindgen_bitfield_unit.set_const::<0usize, 4u8>({
19834            let dst_reg: u8 = dst_reg as _;
19835            dst_reg as u64
19836        });
19837        __bindgen_bitfield_unit.set_const::<4usize, 4u8>({
19838            let src_reg: u8 = src_reg as _;
19839            src_reg as u64
19840        });
19841        __bindgen_bitfield_unit
19842    }
19843}
19844#[repr(C)]
19845#[derive(Debug, Default)]
19846pub struct bpf_lpm_trie_key {
19847    pub prefixlen: __u32,
19848    pub data: __IncompleteArrayField<__u8>,
19849}
19850#[repr(C)]
19851#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19852pub struct bpf_lpm_trie_key_hdr {
19853    pub prefixlen: __u32,
19854}
19855#[repr(C)]
19856pub struct bpf_lpm_trie_key_u8 {
19857    pub __bindgen_anon_1: bpf_lpm_trie_key_u8__bindgen_ty_1,
19858    pub data: __IncompleteArrayField<__u8>,
19859}
19860#[repr(C)]
19861#[derive(Copy, Clone)]
19862pub union bpf_lpm_trie_key_u8__bindgen_ty_1 {
19863    pub hdr: bpf_lpm_trie_key_hdr,
19864    pub prefixlen: __u32,
19865}
19866impl Default for bpf_lpm_trie_key_u8__bindgen_ty_1 {
19867    fn default() -> Self {
19868        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19869        unsafe {
19870            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19871            s.assume_init()
19872        }
19873    }
19874}
19875impl Default for bpf_lpm_trie_key_u8 {
19876    fn default() -> Self {
19877        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19878        unsafe {
19879            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19880            s.assume_init()
19881        }
19882    }
19883}
19884#[repr(C)]
19885#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19886pub struct bpf_cgroup_storage_key {
19887    pub cgroup_inode_id: __u64,
19888    pub attach_type: __u32,
19889    pub __bindgen_padding_0: [u8; 4usize],
19890}
19891pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_ORDER_UNSPEC: bpf_cgroup_iter_order = 0;
19892pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_SELF_ONLY: bpf_cgroup_iter_order = 1;
19893pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_DESCENDANTS_PRE: bpf_cgroup_iter_order = 2;
19894pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_DESCENDANTS_POST: bpf_cgroup_iter_order = 3;
19895pub const bpf_cgroup_iter_order_BPF_CGROUP_ITER_ANCESTORS_UP: bpf_cgroup_iter_order = 4;
19896pub type bpf_cgroup_iter_order = crate::types::c_uint;
19897#[repr(C)]
19898#[derive(Copy, Clone)]
19899pub union bpf_iter_link_info {
19900    pub map: bpf_iter_link_info__bindgen_ty_1,
19901    pub cgroup: bpf_iter_link_info__bindgen_ty_2,
19902    pub task: bpf_iter_link_info__bindgen_ty_3,
19903}
19904#[repr(C)]
19905#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19906pub struct bpf_iter_link_info__bindgen_ty_1 {
19907    pub map_fd: __u32,
19908}
19909#[repr(C)]
19910#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19911pub struct bpf_iter_link_info__bindgen_ty_2 {
19912    pub order: bpf_cgroup_iter_order,
19913    pub cgroup_fd: __u32,
19914    pub cgroup_id: __u64,
19915}
19916impl Default for bpf_iter_link_info__bindgen_ty_2 {
19917    fn default() -> Self {
19918        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19919        unsafe {
19920            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19921            s.assume_init()
19922        }
19923    }
19924}
19925#[repr(C)]
19926#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
19927pub struct bpf_iter_link_info__bindgen_ty_3 {
19928    pub tid: __u32,
19929    pub pid: __u32,
19930    pub pid_fd: __u32,
19931}
19932impl Default for bpf_iter_link_info {
19933    fn default() -> Self {
19934        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19935        unsafe {
19936            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19937            s.assume_init()
19938        }
19939    }
19940}
19941pub const bpf_cmd_BPF_MAP_CREATE: bpf_cmd = 0;
19942pub const bpf_cmd_BPF_MAP_LOOKUP_ELEM: bpf_cmd = 1;
19943pub const bpf_cmd_BPF_MAP_UPDATE_ELEM: bpf_cmd = 2;
19944pub const bpf_cmd_BPF_MAP_DELETE_ELEM: bpf_cmd = 3;
19945pub const bpf_cmd_BPF_MAP_GET_NEXT_KEY: bpf_cmd = 4;
19946pub const bpf_cmd_BPF_PROG_LOAD: bpf_cmd = 5;
19947pub const bpf_cmd_BPF_OBJ_PIN: bpf_cmd = 6;
19948pub const bpf_cmd_BPF_OBJ_GET: bpf_cmd = 7;
19949pub const bpf_cmd_BPF_PROG_ATTACH: bpf_cmd = 8;
19950pub const bpf_cmd_BPF_PROG_DETACH: bpf_cmd = 9;
19951pub const bpf_cmd_BPF_PROG_TEST_RUN: bpf_cmd = 10;
19952pub const bpf_cmd_BPF_PROG_RUN: bpf_cmd = 10;
19953pub const bpf_cmd_BPF_PROG_GET_NEXT_ID: bpf_cmd = 11;
19954pub const bpf_cmd_BPF_MAP_GET_NEXT_ID: bpf_cmd = 12;
19955pub const bpf_cmd_BPF_PROG_GET_FD_BY_ID: bpf_cmd = 13;
19956pub const bpf_cmd_BPF_MAP_GET_FD_BY_ID: bpf_cmd = 14;
19957pub const bpf_cmd_BPF_OBJ_GET_INFO_BY_FD: bpf_cmd = 15;
19958pub const bpf_cmd_BPF_PROG_QUERY: bpf_cmd = 16;
19959pub const bpf_cmd_BPF_RAW_TRACEPOINT_OPEN: bpf_cmd = 17;
19960pub const bpf_cmd_BPF_BTF_LOAD: bpf_cmd = 18;
19961pub const bpf_cmd_BPF_BTF_GET_FD_BY_ID: bpf_cmd = 19;
19962pub const bpf_cmd_BPF_TASK_FD_QUERY: bpf_cmd = 20;
19963pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_ELEM: bpf_cmd = 21;
19964pub const bpf_cmd_BPF_MAP_FREEZE: bpf_cmd = 22;
19965pub const bpf_cmd_BPF_BTF_GET_NEXT_ID: bpf_cmd = 23;
19966pub const bpf_cmd_BPF_MAP_LOOKUP_BATCH: bpf_cmd = 24;
19967pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_BATCH: bpf_cmd = 25;
19968pub const bpf_cmd_BPF_MAP_UPDATE_BATCH: bpf_cmd = 26;
19969pub const bpf_cmd_BPF_MAP_DELETE_BATCH: bpf_cmd = 27;
19970pub const bpf_cmd_BPF_LINK_CREATE: bpf_cmd = 28;
19971pub const bpf_cmd_BPF_LINK_UPDATE: bpf_cmd = 29;
19972pub const bpf_cmd_BPF_LINK_GET_FD_BY_ID: bpf_cmd = 30;
19973pub const bpf_cmd_BPF_LINK_GET_NEXT_ID: bpf_cmd = 31;
19974pub const bpf_cmd_BPF_ENABLE_STATS: bpf_cmd = 32;
19975pub const bpf_cmd_BPF_ITER_CREATE: bpf_cmd = 33;
19976pub const bpf_cmd_BPF_LINK_DETACH: bpf_cmd = 34;
19977pub const bpf_cmd_BPF_PROG_BIND_MAP: bpf_cmd = 35;
19978pub const bpf_cmd_BPF_TOKEN_CREATE: bpf_cmd = 36;
19979pub const bpf_cmd___MAX_BPF_CMD: bpf_cmd = 37;
19980pub type bpf_cmd = crate::types::c_uint;
19981pub const bpf_map_type_BPF_MAP_TYPE_UNSPEC: bpf_map_type = 0;
19982pub const bpf_map_type_BPF_MAP_TYPE_HASH: bpf_map_type = 1;
19983pub const bpf_map_type_BPF_MAP_TYPE_ARRAY: bpf_map_type = 2;
19984pub const bpf_map_type_BPF_MAP_TYPE_PROG_ARRAY: bpf_map_type = 3;
19985pub const bpf_map_type_BPF_MAP_TYPE_PERF_EVENT_ARRAY: bpf_map_type = 4;
19986pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_HASH: bpf_map_type = 5;
19987pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_ARRAY: bpf_map_type = 6;
19988pub const bpf_map_type_BPF_MAP_TYPE_STACK_TRACE: bpf_map_type = 7;
19989pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_ARRAY: bpf_map_type = 8;
19990pub const bpf_map_type_BPF_MAP_TYPE_LRU_HASH: bpf_map_type = 9;
19991pub const bpf_map_type_BPF_MAP_TYPE_LRU_PERCPU_HASH: bpf_map_type = 10;
19992pub const bpf_map_type_BPF_MAP_TYPE_LPM_TRIE: bpf_map_type = 11;
19993pub const bpf_map_type_BPF_MAP_TYPE_ARRAY_OF_MAPS: bpf_map_type = 12;
19994pub const bpf_map_type_BPF_MAP_TYPE_HASH_OF_MAPS: bpf_map_type = 13;
19995pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP: bpf_map_type = 14;
19996pub const bpf_map_type_BPF_MAP_TYPE_SOCKMAP: bpf_map_type = 15;
19997pub const bpf_map_type_BPF_MAP_TYPE_CPUMAP: bpf_map_type = 16;
19998pub const bpf_map_type_BPF_MAP_TYPE_XSKMAP: bpf_map_type = 17;
19999pub const bpf_map_type_BPF_MAP_TYPE_SOCKHASH: bpf_map_type = 18;
20000pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED: bpf_map_type = 19;
20001pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE: bpf_map_type = 19;
20002pub const bpf_map_type_BPF_MAP_TYPE_REUSEPORT_SOCKARRAY: bpf_map_type = 20;
20003pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE_DEPRECATED: bpf_map_type = 21;
20004pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE: bpf_map_type = 21;
20005pub const bpf_map_type_BPF_MAP_TYPE_QUEUE: bpf_map_type = 22;
20006pub const bpf_map_type_BPF_MAP_TYPE_STACK: bpf_map_type = 23;
20007pub const bpf_map_type_BPF_MAP_TYPE_SK_STORAGE: bpf_map_type = 24;
20008pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP_HASH: bpf_map_type = 25;
20009pub const bpf_map_type_BPF_MAP_TYPE_STRUCT_OPS: bpf_map_type = 26;
20010pub const bpf_map_type_BPF_MAP_TYPE_RINGBUF: bpf_map_type = 27;
20011pub const bpf_map_type_BPF_MAP_TYPE_INODE_STORAGE: bpf_map_type = 28;
20012pub const bpf_map_type_BPF_MAP_TYPE_TASK_STORAGE: bpf_map_type = 29;
20013pub const bpf_map_type_BPF_MAP_TYPE_BLOOM_FILTER: bpf_map_type = 30;
20014pub const bpf_map_type_BPF_MAP_TYPE_USER_RINGBUF: bpf_map_type = 31;
20015pub const bpf_map_type_BPF_MAP_TYPE_CGRP_STORAGE: bpf_map_type = 32;
20016pub const bpf_map_type_BPF_MAP_TYPE_ARENA: bpf_map_type = 33;
20017pub const bpf_map_type___MAX_BPF_MAP_TYPE: bpf_map_type = 34;
20018pub type bpf_map_type = crate::types::c_uint;
20019pub const bpf_prog_type_BPF_PROG_TYPE_UNSPEC: bpf_prog_type = 0;
20020pub const bpf_prog_type_BPF_PROG_TYPE_SOCKET_FILTER: bpf_prog_type = 1;
20021pub const bpf_prog_type_BPF_PROG_TYPE_KPROBE: bpf_prog_type = 2;
20022pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_CLS: bpf_prog_type = 3;
20023pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_ACT: bpf_prog_type = 4;
20024pub const bpf_prog_type_BPF_PROG_TYPE_TRACEPOINT: bpf_prog_type = 5;
20025pub const bpf_prog_type_BPF_PROG_TYPE_XDP: bpf_prog_type = 6;
20026pub const bpf_prog_type_BPF_PROG_TYPE_PERF_EVENT: bpf_prog_type = 7;
20027pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SKB: bpf_prog_type = 8;
20028pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK: bpf_prog_type = 9;
20029pub const bpf_prog_type_BPF_PROG_TYPE_LWT_IN: bpf_prog_type = 10;
20030pub const bpf_prog_type_BPF_PROG_TYPE_LWT_OUT: bpf_prog_type = 11;
20031pub const bpf_prog_type_BPF_PROG_TYPE_LWT_XMIT: bpf_prog_type = 12;
20032pub const bpf_prog_type_BPF_PROG_TYPE_SOCK_OPS: bpf_prog_type = 13;
20033pub const bpf_prog_type_BPF_PROG_TYPE_SK_SKB: bpf_prog_type = 14;
20034pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_DEVICE: bpf_prog_type = 15;
20035pub const bpf_prog_type_BPF_PROG_TYPE_SK_MSG: bpf_prog_type = 16;
20036pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT: bpf_prog_type = 17;
20037pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK_ADDR: bpf_prog_type = 18;
20038pub const bpf_prog_type_BPF_PROG_TYPE_LWT_SEG6LOCAL: bpf_prog_type = 19;
20039pub const bpf_prog_type_BPF_PROG_TYPE_LIRC_MODE2: bpf_prog_type = 20;
20040pub const bpf_prog_type_BPF_PROG_TYPE_SK_REUSEPORT: bpf_prog_type = 21;
20041pub const bpf_prog_type_BPF_PROG_TYPE_FLOW_DISSECTOR: bpf_prog_type = 22;
20042pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SYSCTL: bpf_prog_type = 23;
20043pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE: bpf_prog_type = 24;
20044pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCKOPT: bpf_prog_type = 25;
20045pub const bpf_prog_type_BPF_PROG_TYPE_TRACING: bpf_prog_type = 26;
20046pub const bpf_prog_type_BPF_PROG_TYPE_STRUCT_OPS: bpf_prog_type = 27;
20047pub const bpf_prog_type_BPF_PROG_TYPE_EXT: bpf_prog_type = 28;
20048pub const bpf_prog_type_BPF_PROG_TYPE_LSM: bpf_prog_type = 29;
20049pub const bpf_prog_type_BPF_PROG_TYPE_SK_LOOKUP: bpf_prog_type = 30;
20050pub const bpf_prog_type_BPF_PROG_TYPE_SYSCALL: bpf_prog_type = 31;
20051pub const bpf_prog_type_BPF_PROG_TYPE_NETFILTER: bpf_prog_type = 32;
20052pub const bpf_prog_type___MAX_BPF_PROG_TYPE: bpf_prog_type = 33;
20053pub type bpf_prog_type = crate::types::c_uint;
20054pub const bpf_attach_type_BPF_CGROUP_INET_INGRESS: bpf_attach_type = 0;
20055pub const bpf_attach_type_BPF_CGROUP_INET_EGRESS: bpf_attach_type = 1;
20056pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_CREATE: bpf_attach_type = 2;
20057pub const bpf_attach_type_BPF_CGROUP_SOCK_OPS: bpf_attach_type = 3;
20058pub const bpf_attach_type_BPF_SK_SKB_STREAM_PARSER: bpf_attach_type = 4;
20059pub const bpf_attach_type_BPF_SK_SKB_STREAM_VERDICT: bpf_attach_type = 5;
20060pub const bpf_attach_type_BPF_CGROUP_DEVICE: bpf_attach_type = 6;
20061pub const bpf_attach_type_BPF_SK_MSG_VERDICT: bpf_attach_type = 7;
20062pub const bpf_attach_type_BPF_CGROUP_INET4_BIND: bpf_attach_type = 8;
20063pub const bpf_attach_type_BPF_CGROUP_INET6_BIND: bpf_attach_type = 9;
20064pub const bpf_attach_type_BPF_CGROUP_INET4_CONNECT: bpf_attach_type = 10;
20065pub const bpf_attach_type_BPF_CGROUP_INET6_CONNECT: bpf_attach_type = 11;
20066pub const bpf_attach_type_BPF_CGROUP_INET4_POST_BIND: bpf_attach_type = 12;
20067pub const bpf_attach_type_BPF_CGROUP_INET6_POST_BIND: bpf_attach_type = 13;
20068pub const bpf_attach_type_BPF_CGROUP_UDP4_SENDMSG: bpf_attach_type = 14;
20069pub const bpf_attach_type_BPF_CGROUP_UDP6_SENDMSG: bpf_attach_type = 15;
20070pub const bpf_attach_type_BPF_LIRC_MODE2: bpf_attach_type = 16;
20071pub const bpf_attach_type_BPF_FLOW_DISSECTOR: bpf_attach_type = 17;
20072pub const bpf_attach_type_BPF_CGROUP_SYSCTL: bpf_attach_type = 18;
20073pub const bpf_attach_type_BPF_CGROUP_UDP4_RECVMSG: bpf_attach_type = 19;
20074pub const bpf_attach_type_BPF_CGROUP_UDP6_RECVMSG: bpf_attach_type = 20;
20075pub const bpf_attach_type_BPF_CGROUP_GETSOCKOPT: bpf_attach_type = 21;
20076pub const bpf_attach_type_BPF_CGROUP_SETSOCKOPT: bpf_attach_type = 22;
20077pub const bpf_attach_type_BPF_TRACE_RAW_TP: bpf_attach_type = 23;
20078pub const bpf_attach_type_BPF_TRACE_FENTRY: bpf_attach_type = 24;
20079pub const bpf_attach_type_BPF_TRACE_FEXIT: bpf_attach_type = 25;
20080pub const bpf_attach_type_BPF_MODIFY_RETURN: bpf_attach_type = 26;
20081pub const bpf_attach_type_BPF_LSM_MAC: bpf_attach_type = 27;
20082pub const bpf_attach_type_BPF_TRACE_ITER: bpf_attach_type = 28;
20083pub const bpf_attach_type_BPF_CGROUP_INET4_GETPEERNAME: bpf_attach_type = 29;
20084pub const bpf_attach_type_BPF_CGROUP_INET6_GETPEERNAME: bpf_attach_type = 30;
20085pub const bpf_attach_type_BPF_CGROUP_INET4_GETSOCKNAME: bpf_attach_type = 31;
20086pub const bpf_attach_type_BPF_CGROUP_INET6_GETSOCKNAME: bpf_attach_type = 32;
20087pub const bpf_attach_type_BPF_XDP_DEVMAP: bpf_attach_type = 33;
20088pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_RELEASE: bpf_attach_type = 34;
20089pub const bpf_attach_type_BPF_XDP_CPUMAP: bpf_attach_type = 35;
20090pub const bpf_attach_type_BPF_SK_LOOKUP: bpf_attach_type = 36;
20091pub const bpf_attach_type_BPF_XDP: bpf_attach_type = 37;
20092pub const bpf_attach_type_BPF_SK_SKB_VERDICT: bpf_attach_type = 38;
20093pub const bpf_attach_type_BPF_SK_REUSEPORT_SELECT: bpf_attach_type = 39;
20094pub const bpf_attach_type_BPF_SK_REUSEPORT_SELECT_OR_MIGRATE: bpf_attach_type = 40;
20095pub const bpf_attach_type_BPF_PERF_EVENT: bpf_attach_type = 41;
20096pub const bpf_attach_type_BPF_TRACE_KPROBE_MULTI: bpf_attach_type = 42;
20097pub const bpf_attach_type_BPF_LSM_CGROUP: bpf_attach_type = 43;
20098pub const bpf_attach_type_BPF_STRUCT_OPS: bpf_attach_type = 44;
20099pub const bpf_attach_type_BPF_NETFILTER: bpf_attach_type = 45;
20100pub const bpf_attach_type_BPF_TCX_INGRESS: bpf_attach_type = 46;
20101pub const bpf_attach_type_BPF_TCX_EGRESS: bpf_attach_type = 47;
20102pub const bpf_attach_type_BPF_TRACE_UPROBE_MULTI: bpf_attach_type = 48;
20103pub const bpf_attach_type_BPF_CGROUP_UNIX_CONNECT: bpf_attach_type = 49;
20104pub const bpf_attach_type_BPF_CGROUP_UNIX_SENDMSG: bpf_attach_type = 50;
20105pub const bpf_attach_type_BPF_CGROUP_UNIX_RECVMSG: bpf_attach_type = 51;
20106pub const bpf_attach_type_BPF_CGROUP_UNIX_GETPEERNAME: bpf_attach_type = 52;
20107pub const bpf_attach_type_BPF_CGROUP_UNIX_GETSOCKNAME: bpf_attach_type = 53;
20108pub const bpf_attach_type_BPF_NETKIT_PRIMARY: bpf_attach_type = 54;
20109pub const bpf_attach_type_BPF_NETKIT_PEER: bpf_attach_type = 55;
20110pub const bpf_attach_type_BPF_TRACE_KPROBE_SESSION: bpf_attach_type = 56;
20111pub const bpf_attach_type___MAX_BPF_ATTACH_TYPE: bpf_attach_type = 57;
20112pub type bpf_attach_type = crate::types::c_uint;
20113pub const bpf_link_type_BPF_LINK_TYPE_UNSPEC: bpf_link_type = 0;
20114pub const bpf_link_type_BPF_LINK_TYPE_RAW_TRACEPOINT: bpf_link_type = 1;
20115pub const bpf_link_type_BPF_LINK_TYPE_TRACING: bpf_link_type = 2;
20116pub const bpf_link_type_BPF_LINK_TYPE_CGROUP: bpf_link_type = 3;
20117pub const bpf_link_type_BPF_LINK_TYPE_ITER: bpf_link_type = 4;
20118pub const bpf_link_type_BPF_LINK_TYPE_NETNS: bpf_link_type = 5;
20119pub const bpf_link_type_BPF_LINK_TYPE_XDP: bpf_link_type = 6;
20120pub const bpf_link_type_BPF_LINK_TYPE_PERF_EVENT: bpf_link_type = 7;
20121pub const bpf_link_type_BPF_LINK_TYPE_KPROBE_MULTI: bpf_link_type = 8;
20122pub const bpf_link_type_BPF_LINK_TYPE_STRUCT_OPS: bpf_link_type = 9;
20123pub const bpf_link_type_BPF_LINK_TYPE_NETFILTER: bpf_link_type = 10;
20124pub const bpf_link_type_BPF_LINK_TYPE_TCX: bpf_link_type = 11;
20125pub const bpf_link_type_BPF_LINK_TYPE_UPROBE_MULTI: bpf_link_type = 12;
20126pub const bpf_link_type_BPF_LINK_TYPE_NETKIT: bpf_link_type = 13;
20127pub const bpf_link_type_BPF_LINK_TYPE_SOCKMAP: bpf_link_type = 14;
20128pub const bpf_link_type___MAX_BPF_LINK_TYPE: bpf_link_type = 15;
20129pub type bpf_link_type = crate::types::c_uint;
20130pub const bpf_perf_event_type_BPF_PERF_EVENT_UNSPEC: bpf_perf_event_type = 0;
20131pub const bpf_perf_event_type_BPF_PERF_EVENT_UPROBE: bpf_perf_event_type = 1;
20132pub const bpf_perf_event_type_BPF_PERF_EVENT_URETPROBE: bpf_perf_event_type = 2;
20133pub const bpf_perf_event_type_BPF_PERF_EVENT_KPROBE: bpf_perf_event_type = 3;
20134pub const bpf_perf_event_type_BPF_PERF_EVENT_KRETPROBE: bpf_perf_event_type = 4;
20135pub const bpf_perf_event_type_BPF_PERF_EVENT_TRACEPOINT: bpf_perf_event_type = 5;
20136pub const bpf_perf_event_type_BPF_PERF_EVENT_EVENT: bpf_perf_event_type = 6;
20137pub type bpf_perf_event_type = crate::types::c_uint;
20138pub const BPF_F_KPROBE_MULTI_RETURN: _bindgen_ty_107 = 1;
20139pub type _bindgen_ty_107 = crate::types::c_uint;
20140pub const BPF_F_UPROBE_MULTI_RETURN: _bindgen_ty_108 = 1;
20141pub type _bindgen_ty_108 = crate::types::c_uint;
20142pub const bpf_addr_space_cast_BPF_ADDR_SPACE_CAST: bpf_addr_space_cast = 1;
20143pub type bpf_addr_space_cast = crate::types::c_uint;
20144pub const BPF_ANY: _bindgen_ty_109 = 0;
20145pub const BPF_NOEXIST: _bindgen_ty_109 = 1;
20146pub const BPF_EXIST: _bindgen_ty_109 = 2;
20147pub const BPF_F_LOCK: _bindgen_ty_109 = 4;
20148pub type _bindgen_ty_109 = crate::types::c_uint;
20149pub const BPF_F_NO_PREALLOC: _bindgen_ty_110 = 1;
20150pub const BPF_F_NO_COMMON_LRU: _bindgen_ty_110 = 2;
20151pub const BPF_F_NUMA_NODE: _bindgen_ty_110 = 4;
20152pub const BPF_F_RDONLY: _bindgen_ty_110 = 8;
20153pub const BPF_F_WRONLY: _bindgen_ty_110 = 16;
20154pub const BPF_F_STACK_BUILD_ID: _bindgen_ty_110 = 32;
20155pub const BPF_F_ZERO_SEED: _bindgen_ty_110 = 64;
20156pub const BPF_F_RDONLY_PROG: _bindgen_ty_110 = 128;
20157pub const BPF_F_WRONLY_PROG: _bindgen_ty_110 = 256;
20158pub const BPF_F_CLONE: _bindgen_ty_110 = 512;
20159pub const BPF_F_MMAPABLE: _bindgen_ty_110 = 1024;
20160pub const BPF_F_PRESERVE_ELEMS: _bindgen_ty_110 = 2048;
20161pub const BPF_F_INNER_MAP: _bindgen_ty_110 = 4096;
20162pub const BPF_F_LINK: _bindgen_ty_110 = 8192;
20163pub const BPF_F_PATH_FD: _bindgen_ty_110 = 16384;
20164pub const BPF_F_VTYPE_BTF_OBJ_FD: _bindgen_ty_110 = 32768;
20165pub const BPF_F_TOKEN_FD: _bindgen_ty_110 = 65536;
20166pub const BPF_F_SEGV_ON_FAULT: _bindgen_ty_110 = 131072;
20167pub const BPF_F_NO_USER_CONV: _bindgen_ty_110 = 262144;
20168pub type _bindgen_ty_110 = crate::types::c_uint;
20169pub const bpf_stats_type_BPF_STATS_RUN_TIME: bpf_stats_type = 0;
20170pub type bpf_stats_type = crate::types::c_uint;
20171pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_EMPTY: bpf_stack_build_id_status = 0;
20172pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_VALID: bpf_stack_build_id_status = 1;
20173pub const bpf_stack_build_id_status_BPF_STACK_BUILD_ID_IP: bpf_stack_build_id_status = 2;
20174pub type bpf_stack_build_id_status = crate::types::c_uint;
20175#[repr(C)]
20176#[derive(Copy, Clone)]
20177pub struct bpf_stack_build_id {
20178    pub status: __s32,
20179    pub build_id: [crate::types::c_uchar; 20usize],
20180    pub __bindgen_anon_1: bpf_stack_build_id__bindgen_ty_1,
20181}
20182#[repr(C)]
20183#[derive(Copy, Clone)]
20184pub union bpf_stack_build_id__bindgen_ty_1 {
20185    pub offset: __u64,
20186    pub ip: __u64,
20187}
20188impl Default for bpf_stack_build_id__bindgen_ty_1 {
20189    fn default() -> Self {
20190        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20191        unsafe {
20192            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20193            s.assume_init()
20194        }
20195    }
20196}
20197impl Default for bpf_stack_build_id {
20198    fn default() -> Self {
20199        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20200        unsafe {
20201            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20202            s.assume_init()
20203        }
20204    }
20205}
20206#[repr(C)]
20207#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20208pub union bpf_attr {
20209    pub __bindgen_anon_1: bpf_attr__bindgen_ty_1,
20210    pub __bindgen_anon_2: bpf_attr__bindgen_ty_2,
20211    pub batch: bpf_attr__bindgen_ty_3,
20212    pub __bindgen_anon_3: bpf_attr__bindgen_ty_4,
20213    pub __bindgen_anon_4: bpf_attr__bindgen_ty_5,
20214    pub __bindgen_anon_5: bpf_attr__bindgen_ty_6,
20215    pub test: bpf_attr__bindgen_ty_7,
20216    pub __bindgen_anon_6: bpf_attr__bindgen_ty_8,
20217    pub info: bpf_attr__bindgen_ty_9,
20218    pub query: bpf_attr__bindgen_ty_10,
20219    pub raw_tracepoint: bpf_attr__bindgen_ty_11,
20220    pub __bindgen_anon_7: bpf_attr__bindgen_ty_12,
20221    pub task_fd_query: bpf_attr__bindgen_ty_13,
20222    pub link_create: bpf_attr__bindgen_ty_14,
20223    pub link_update: bpf_attr__bindgen_ty_15,
20224    pub link_detach: bpf_attr__bindgen_ty_16,
20225    pub enable_stats: bpf_attr__bindgen_ty_17,
20226    pub iter_create: bpf_attr__bindgen_ty_18,
20227    pub prog_bind_map: bpf_attr__bindgen_ty_19,
20228    pub token_create: bpf_attr__bindgen_ty_20,
20229}
20230#[repr(C)]
20231#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20232pub struct bpf_attr__bindgen_ty_1 {
20233    pub map_type: __u32,
20234    pub key_size: __u32,
20235    pub value_size: __u32,
20236    pub max_entries: __u32,
20237    pub map_flags: __u32,
20238    pub inner_map_fd: __u32,
20239    pub numa_node: __u32,
20240    pub map_name: [crate::types::c_char; 16usize],
20241    pub map_ifindex: __u32,
20242    pub btf_fd: __u32,
20243    pub btf_key_type_id: __u32,
20244    pub btf_value_type_id: __u32,
20245    pub btf_vmlinux_value_type_id: __u32,
20246    pub map_extra: __u64,
20247    pub value_type_btf_obj_fd: __s32,
20248    pub map_token_fd: __s32,
20249}
20250#[repr(C)]
20251#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20252pub struct bpf_attr__bindgen_ty_2 {
20253    pub map_fd: __u32,
20254    pub __bindgen_padding_0: [u8; 4usize],
20255    pub key: __u64,
20256    pub __bindgen_anon_1: bpf_attr__bindgen_ty_2__bindgen_ty_1,
20257    pub flags: __u64,
20258}
20259#[repr(C)]
20260#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20261pub union bpf_attr__bindgen_ty_2__bindgen_ty_1 {
20262    pub value: __u64,
20263    pub next_key: __u64,
20264}
20265impl Default for bpf_attr__bindgen_ty_2__bindgen_ty_1 {
20266    fn default() -> Self {
20267        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20268        unsafe {
20269            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20270            s.assume_init()
20271        }
20272    }
20273}
20274impl Default for bpf_attr__bindgen_ty_2 {
20275    fn default() -> Self {
20276        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20277        unsafe {
20278            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20279            s.assume_init()
20280        }
20281    }
20282}
20283#[repr(C)]
20284#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20285pub struct bpf_attr__bindgen_ty_3 {
20286    pub in_batch: __u64,
20287    pub out_batch: __u64,
20288    pub keys: __u64,
20289    pub values: __u64,
20290    pub count: __u32,
20291    pub map_fd: __u32,
20292    pub elem_flags: __u64,
20293    pub flags: __u64,
20294}
20295#[repr(C)]
20296#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20297pub struct bpf_attr__bindgen_ty_4 {
20298    pub prog_type: __u32,
20299    pub insn_cnt: __u32,
20300    pub insns: __u64,
20301    pub license: __u64,
20302    pub log_level: __u32,
20303    pub log_size: __u32,
20304    pub log_buf: __u64,
20305    pub kern_version: __u32,
20306    pub prog_flags: __u32,
20307    pub prog_name: [crate::types::c_char; 16usize],
20308    pub prog_ifindex: __u32,
20309    pub expected_attach_type: __u32,
20310    pub prog_btf_fd: __u32,
20311    pub func_info_rec_size: __u32,
20312    pub func_info: __u64,
20313    pub func_info_cnt: __u32,
20314    pub line_info_rec_size: __u32,
20315    pub line_info: __u64,
20316    pub line_info_cnt: __u32,
20317    pub attach_btf_id: __u32,
20318    pub __bindgen_anon_1: bpf_attr__bindgen_ty_4__bindgen_ty_1,
20319    pub core_relo_cnt: __u32,
20320    pub fd_array: __u64,
20321    pub core_relos: __u64,
20322    pub core_relo_rec_size: __u32,
20323    pub log_true_size: __u32,
20324    pub prog_token_fd: __s32,
20325    pub __bindgen_padding_0: [u8; 4usize],
20326}
20327#[repr(C)]
20328#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20329pub union bpf_attr__bindgen_ty_4__bindgen_ty_1 {
20330    pub attach_prog_fd: __u32,
20331    pub attach_btf_obj_fd: __u32,
20332}
20333impl Default for bpf_attr__bindgen_ty_4__bindgen_ty_1 {
20334    fn default() -> Self {
20335        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20336        unsafe {
20337            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20338            s.assume_init()
20339        }
20340    }
20341}
20342impl Default for bpf_attr__bindgen_ty_4 {
20343    fn default() -> Self {
20344        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20345        unsafe {
20346            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20347            s.assume_init()
20348        }
20349    }
20350}
20351#[repr(C)]
20352#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20353pub struct bpf_attr__bindgen_ty_5 {
20354    pub pathname: __u64,
20355    pub bpf_fd: __u32,
20356    pub file_flags: __u32,
20357    pub path_fd: __s32,
20358    pub __bindgen_padding_0: [u8; 4usize],
20359}
20360#[repr(C)]
20361#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20362pub struct bpf_attr__bindgen_ty_6 {
20363    pub __bindgen_anon_1: bpf_attr__bindgen_ty_6__bindgen_ty_1,
20364    pub attach_bpf_fd: __u32,
20365    pub attach_type: __u32,
20366    pub attach_flags: __u32,
20367    pub replace_bpf_fd: __u32,
20368    pub __bindgen_anon_2: bpf_attr__bindgen_ty_6__bindgen_ty_2,
20369    pub expected_revision: __u64,
20370}
20371#[repr(C)]
20372#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20373pub union bpf_attr__bindgen_ty_6__bindgen_ty_1 {
20374    pub target_fd: __u32,
20375    pub target_ifindex: __u32,
20376}
20377impl Default for bpf_attr__bindgen_ty_6__bindgen_ty_1 {
20378    fn default() -> Self {
20379        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20380        unsafe {
20381            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20382            s.assume_init()
20383        }
20384    }
20385}
20386#[repr(C)]
20387#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20388pub union bpf_attr__bindgen_ty_6__bindgen_ty_2 {
20389    pub relative_fd: __u32,
20390    pub relative_id: __u32,
20391}
20392impl Default for bpf_attr__bindgen_ty_6__bindgen_ty_2 {
20393    fn default() -> Self {
20394        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20395        unsafe {
20396            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20397            s.assume_init()
20398        }
20399    }
20400}
20401impl Default for bpf_attr__bindgen_ty_6 {
20402    fn default() -> Self {
20403        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20404        unsafe {
20405            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20406            s.assume_init()
20407        }
20408    }
20409}
20410#[repr(C)]
20411#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20412pub struct bpf_attr__bindgen_ty_7 {
20413    pub prog_fd: __u32,
20414    pub retval: __u32,
20415    pub data_size_in: __u32,
20416    pub data_size_out: __u32,
20417    pub data_in: __u64,
20418    pub data_out: __u64,
20419    pub repeat: __u32,
20420    pub duration: __u32,
20421    pub ctx_size_in: __u32,
20422    pub ctx_size_out: __u32,
20423    pub ctx_in: __u64,
20424    pub ctx_out: __u64,
20425    pub flags: __u32,
20426    pub cpu: __u32,
20427    pub batch_size: __u32,
20428    pub __bindgen_padding_0: [u8; 4usize],
20429}
20430#[repr(C)]
20431#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20432pub struct bpf_attr__bindgen_ty_8 {
20433    pub __bindgen_anon_1: bpf_attr__bindgen_ty_8__bindgen_ty_1,
20434    pub next_id: __u32,
20435    pub open_flags: __u32,
20436}
20437#[repr(C)]
20438#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20439pub union bpf_attr__bindgen_ty_8__bindgen_ty_1 {
20440    pub start_id: __u32,
20441    pub prog_id: __u32,
20442    pub map_id: __u32,
20443    pub btf_id: __u32,
20444    pub link_id: __u32,
20445}
20446impl Default for bpf_attr__bindgen_ty_8__bindgen_ty_1 {
20447    fn default() -> Self {
20448        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20449        unsafe {
20450            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20451            s.assume_init()
20452        }
20453    }
20454}
20455impl Default for bpf_attr__bindgen_ty_8 {
20456    fn default() -> Self {
20457        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20458        unsafe {
20459            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20460            s.assume_init()
20461        }
20462    }
20463}
20464#[repr(C)]
20465#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20466pub struct bpf_attr__bindgen_ty_9 {
20467    pub bpf_fd: __u32,
20468    pub info_len: __u32,
20469    pub info: __u64,
20470}
20471#[repr(C)]
20472#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20473pub struct bpf_attr__bindgen_ty_10 {
20474    pub __bindgen_anon_1: bpf_attr__bindgen_ty_10__bindgen_ty_1,
20475    pub attach_type: __u32,
20476    pub query_flags: __u32,
20477    pub attach_flags: __u32,
20478    pub prog_ids: __u64,
20479    pub __bindgen_anon_2: bpf_attr__bindgen_ty_10__bindgen_ty_2,
20480    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
20481    pub prog_attach_flags: __u64,
20482    pub link_ids: __u64,
20483    pub link_attach_flags: __u64,
20484    pub revision: __u64,
20485}
20486#[repr(C)]
20487#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20488pub union bpf_attr__bindgen_ty_10__bindgen_ty_1 {
20489    pub target_fd: __u32,
20490    pub target_ifindex: __u32,
20491}
20492impl Default for bpf_attr__bindgen_ty_10__bindgen_ty_1 {
20493    fn default() -> Self {
20494        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20495        unsafe {
20496            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20497            s.assume_init()
20498        }
20499    }
20500}
20501#[repr(C)]
20502#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
20503pub union bpf_attr__bindgen_ty_10__bindgen_ty_2 {
20504    pub prog_cnt: __u32,
20505    pub count: __u32,
20506}
20507impl Default for bpf_attr__bindgen_ty_10__bindgen_ty_2 {
20508    fn default() -> Self {
20509        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20510        unsafe {
20511            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20512            s.assume_init()
20513        }
20514    }
20515}
20516impl Default for bpf_attr__bindgen_ty_10 {
20517    fn default() -> Self {
20518        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20519        unsafe {
20520            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20521            s.assume_init()
20522        }
20523    }
20524}
20525impl bpf_attr__bindgen_ty_10 {
20526    #[inline]
20527    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
20528        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
20529        __bindgen_bitfield_unit
20530    }
20531}
20532#[repr(C)]
20533#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20534pub struct bpf_attr__bindgen_ty_11 {
20535    pub name: __u64,
20536    pub prog_fd: __u32,
20537    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
20538    pub cookie: __u64,
20539}
20540impl bpf_attr__bindgen_ty_11 {
20541    #[inline]
20542    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
20543        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
20544        __bindgen_bitfield_unit
20545    }
20546}
20547#[repr(C)]
20548#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20549pub struct bpf_attr__bindgen_ty_12 {
20550    pub btf: __u64,
20551    pub btf_log_buf: __u64,
20552    pub btf_size: __u32,
20553    pub btf_log_size: __u32,
20554    pub btf_log_level: __u32,
20555    pub btf_log_true_size: __u32,
20556    pub btf_flags: __u32,
20557    pub btf_token_fd: __s32,
20558}
20559#[repr(C)]
20560#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20561pub struct bpf_attr__bindgen_ty_13 {
20562    pub pid: __u32,
20563    pub fd: __u32,
20564    pub flags: __u32,
20565    pub buf_len: __u32,
20566    pub buf: __u64,
20567    pub prog_id: __u32,
20568    pub fd_type: __u32,
20569    pub probe_offset: __u64,
20570    pub probe_addr: __u64,
20571}
20572#[repr(C)]
20573#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20574pub struct bpf_attr__bindgen_ty_14 {
20575    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_1,
20576    pub __bindgen_anon_2: bpf_attr__bindgen_ty_14__bindgen_ty_2,
20577    pub attach_type: __u32,
20578    pub flags: __u32,
20579    pub __bindgen_anon_3: bpf_attr__bindgen_ty_14__bindgen_ty_3,
20580}
20581#[repr(C)]
20582#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20583pub union bpf_attr__bindgen_ty_14__bindgen_ty_1 {
20584    pub prog_fd: __u32,
20585    pub map_fd: __u32,
20586}
20587impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_1 {
20588    fn default() -> Self {
20589        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20590        unsafe {
20591            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20592            s.assume_init()
20593        }
20594    }
20595}
20596#[repr(C)]
20597#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20598pub union bpf_attr__bindgen_ty_14__bindgen_ty_2 {
20599    pub target_fd: __u32,
20600    pub target_ifindex: __u32,
20601}
20602impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_2 {
20603    fn default() -> Self {
20604        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20605        unsafe {
20606            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20607            s.assume_init()
20608        }
20609    }
20610}
20611#[repr(C)]
20612#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20613pub union bpf_attr__bindgen_ty_14__bindgen_ty_3 {
20614    pub target_btf_id: __u32,
20615    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_1,
20616    pub perf_event: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_2,
20617    pub kprobe_multi: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_3,
20618    pub tracing: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_4,
20619    pub netfilter: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_5,
20620    pub tcx: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6,
20621    pub uprobe_multi: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_7,
20622    pub netkit: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8,
20623}
20624#[repr(C)]
20625#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20626pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_1 {
20627    pub iter_info: __u64,
20628    pub iter_info_len: __u32,
20629    pub __bindgen_padding_0: [u8; 4usize],
20630}
20631#[repr(C)]
20632#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20633pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_2 {
20634    pub bpf_cookie: __u64,
20635}
20636#[repr(C)]
20637#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20638pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_3 {
20639    pub flags: __u32,
20640    pub cnt: __u32,
20641    pub syms: __u64,
20642    pub addrs: __u64,
20643    pub cookies: __u64,
20644}
20645#[repr(C)]
20646#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20647pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_4 {
20648    pub target_btf_id: __u32,
20649    pub __bindgen_padding_0: [u8; 4usize],
20650    pub cookie: __u64,
20651}
20652#[repr(C)]
20653#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20654pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_5 {
20655    pub pf: __u32,
20656    pub hooknum: __u32,
20657    pub priority: __s32,
20658    pub flags: __u32,
20659}
20660#[repr(C)]
20661#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20662pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6 {
20663    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1,
20664    pub __bindgen_padding_0: [u8; 4usize],
20665    pub expected_revision: __u64,
20666}
20667#[repr(C)]
20668#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20669pub union bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1 {
20670    pub relative_fd: __u32,
20671    pub relative_id: __u32,
20672}
20673impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6__bindgen_ty_1 {
20674    fn default() -> Self {
20675        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20676        unsafe {
20677            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20678            s.assume_init()
20679        }
20680    }
20681}
20682impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_6 {
20683    fn default() -> Self {
20684        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20685        unsafe {
20686            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20687            s.assume_init()
20688        }
20689    }
20690}
20691#[repr(C)]
20692#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20693pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_7 {
20694    pub path: __u64,
20695    pub offsets: __u64,
20696    pub ref_ctr_offsets: __u64,
20697    pub cookies: __u64,
20698    pub cnt: __u32,
20699    pub flags: __u32,
20700    pub pid: __u32,
20701    pub __bindgen_padding_0: [u8; 4usize],
20702}
20703#[repr(C)]
20704#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20705pub struct bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8 {
20706    pub __bindgen_anon_1: bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1,
20707    pub __bindgen_padding_0: [u8; 4usize],
20708    pub expected_revision: __u64,
20709}
20710#[repr(C)]
20711#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20712pub union bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1 {
20713    pub relative_fd: __u32,
20714    pub relative_id: __u32,
20715}
20716impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8__bindgen_ty_1 {
20717    fn default() -> Self {
20718        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20719        unsafe {
20720            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20721            s.assume_init()
20722        }
20723    }
20724}
20725impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3__bindgen_ty_8 {
20726    fn default() -> Self {
20727        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20728        unsafe {
20729            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20730            s.assume_init()
20731        }
20732    }
20733}
20734impl Default for bpf_attr__bindgen_ty_14__bindgen_ty_3 {
20735    fn default() -> Self {
20736        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20737        unsafe {
20738            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20739            s.assume_init()
20740        }
20741    }
20742}
20743impl Default for bpf_attr__bindgen_ty_14 {
20744    fn default() -> Self {
20745        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20746        unsafe {
20747            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20748            s.assume_init()
20749        }
20750    }
20751}
20752#[repr(C)]
20753#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20754pub struct bpf_attr__bindgen_ty_15 {
20755    pub link_fd: __u32,
20756    pub __bindgen_anon_1: bpf_attr__bindgen_ty_15__bindgen_ty_1,
20757    pub flags: __u32,
20758    pub __bindgen_anon_2: bpf_attr__bindgen_ty_15__bindgen_ty_2,
20759}
20760#[repr(C)]
20761#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20762pub union bpf_attr__bindgen_ty_15__bindgen_ty_1 {
20763    pub new_prog_fd: __u32,
20764    pub new_map_fd: __u32,
20765}
20766impl Default for bpf_attr__bindgen_ty_15__bindgen_ty_1 {
20767    fn default() -> Self {
20768        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20769        unsafe {
20770            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20771            s.assume_init()
20772        }
20773    }
20774}
20775#[repr(C)]
20776#[derive(Clone, Copy, FromBytes, Immutable, KnownLayout)]
20777pub union bpf_attr__bindgen_ty_15__bindgen_ty_2 {
20778    pub old_prog_fd: __u32,
20779    pub old_map_fd: __u32,
20780}
20781impl Default for bpf_attr__bindgen_ty_15__bindgen_ty_2 {
20782    fn default() -> Self {
20783        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20784        unsafe {
20785            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20786            s.assume_init()
20787        }
20788    }
20789}
20790impl Default for bpf_attr__bindgen_ty_15 {
20791    fn default() -> Self {
20792        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20793        unsafe {
20794            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20795            s.assume_init()
20796        }
20797    }
20798}
20799#[repr(C)]
20800#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20801pub struct bpf_attr__bindgen_ty_16 {
20802    pub link_fd: __u32,
20803}
20804#[repr(C)]
20805#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20806pub struct bpf_attr__bindgen_ty_17 {
20807    pub type_: __u32,
20808}
20809#[repr(C)]
20810#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20811pub struct bpf_attr__bindgen_ty_18 {
20812    pub link_fd: __u32,
20813    pub flags: __u32,
20814}
20815#[repr(C)]
20816#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
20817pub struct bpf_attr__bindgen_ty_19 {
20818    pub prog_fd: __u32,
20819    pub map_fd: __u32,
20820    pub flags: __u32,
20821}
20822#[repr(C)]
20823#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, KnownLayout)]
20824pub struct bpf_attr__bindgen_ty_20 {
20825    pub flags: __u32,
20826    pub bpffs_fd: __u32,
20827}
20828impl Default for bpf_attr {
20829    fn default() -> Self {
20830        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20831        unsafe {
20832            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20833            s.assume_init()
20834        }
20835    }
20836}
20837pub const bpf_func_id_BPF_FUNC_unspec: bpf_func_id = 0;
20838pub const bpf_func_id_BPF_FUNC_map_lookup_elem: bpf_func_id = 1;
20839pub const bpf_func_id_BPF_FUNC_map_update_elem: bpf_func_id = 2;
20840pub const bpf_func_id_BPF_FUNC_map_delete_elem: bpf_func_id = 3;
20841pub const bpf_func_id_BPF_FUNC_probe_read: bpf_func_id = 4;
20842pub const bpf_func_id_BPF_FUNC_ktime_get_ns: bpf_func_id = 5;
20843pub const bpf_func_id_BPF_FUNC_trace_printk: bpf_func_id = 6;
20844pub const bpf_func_id_BPF_FUNC_get_prandom_u32: bpf_func_id = 7;
20845pub const bpf_func_id_BPF_FUNC_get_smp_processor_id: bpf_func_id = 8;
20846pub const bpf_func_id_BPF_FUNC_skb_store_bytes: bpf_func_id = 9;
20847pub const bpf_func_id_BPF_FUNC_l3_csum_replace: bpf_func_id = 10;
20848pub const bpf_func_id_BPF_FUNC_l4_csum_replace: bpf_func_id = 11;
20849pub const bpf_func_id_BPF_FUNC_tail_call: bpf_func_id = 12;
20850pub const bpf_func_id_BPF_FUNC_clone_redirect: bpf_func_id = 13;
20851pub const bpf_func_id_BPF_FUNC_get_current_pid_tgid: bpf_func_id = 14;
20852pub const bpf_func_id_BPF_FUNC_get_current_uid_gid: bpf_func_id = 15;
20853pub const bpf_func_id_BPF_FUNC_get_current_comm: bpf_func_id = 16;
20854pub const bpf_func_id_BPF_FUNC_get_cgroup_classid: bpf_func_id = 17;
20855pub const bpf_func_id_BPF_FUNC_skb_vlan_push: bpf_func_id = 18;
20856pub const bpf_func_id_BPF_FUNC_skb_vlan_pop: bpf_func_id = 19;
20857pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_key: bpf_func_id = 20;
20858pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_key: bpf_func_id = 21;
20859pub const bpf_func_id_BPF_FUNC_perf_event_read: bpf_func_id = 22;
20860pub const bpf_func_id_BPF_FUNC_redirect: bpf_func_id = 23;
20861pub const bpf_func_id_BPF_FUNC_get_route_realm: bpf_func_id = 24;
20862pub const bpf_func_id_BPF_FUNC_perf_event_output: bpf_func_id = 25;
20863pub const bpf_func_id_BPF_FUNC_skb_load_bytes: bpf_func_id = 26;
20864pub const bpf_func_id_BPF_FUNC_get_stackid: bpf_func_id = 27;
20865pub const bpf_func_id_BPF_FUNC_csum_diff: bpf_func_id = 28;
20866pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_opt: bpf_func_id = 29;
20867pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_opt: bpf_func_id = 30;
20868pub const bpf_func_id_BPF_FUNC_skb_change_proto: bpf_func_id = 31;
20869pub const bpf_func_id_BPF_FUNC_skb_change_type: bpf_func_id = 32;
20870pub const bpf_func_id_BPF_FUNC_skb_under_cgroup: bpf_func_id = 33;
20871pub const bpf_func_id_BPF_FUNC_get_hash_recalc: bpf_func_id = 34;
20872pub const bpf_func_id_BPF_FUNC_get_current_task: bpf_func_id = 35;
20873pub const bpf_func_id_BPF_FUNC_probe_write_user: bpf_func_id = 36;
20874pub const bpf_func_id_BPF_FUNC_current_task_under_cgroup: bpf_func_id = 37;
20875pub const bpf_func_id_BPF_FUNC_skb_change_tail: bpf_func_id = 38;
20876pub const bpf_func_id_BPF_FUNC_skb_pull_data: bpf_func_id = 39;
20877pub const bpf_func_id_BPF_FUNC_csum_update: bpf_func_id = 40;
20878pub const bpf_func_id_BPF_FUNC_set_hash_invalid: bpf_func_id = 41;
20879pub const bpf_func_id_BPF_FUNC_get_numa_node_id: bpf_func_id = 42;
20880pub const bpf_func_id_BPF_FUNC_skb_change_head: bpf_func_id = 43;
20881pub const bpf_func_id_BPF_FUNC_xdp_adjust_head: bpf_func_id = 44;
20882pub const bpf_func_id_BPF_FUNC_probe_read_str: bpf_func_id = 45;
20883pub const bpf_func_id_BPF_FUNC_get_socket_cookie: bpf_func_id = 46;
20884pub const bpf_func_id_BPF_FUNC_get_socket_uid: bpf_func_id = 47;
20885pub const bpf_func_id_BPF_FUNC_set_hash: bpf_func_id = 48;
20886pub const bpf_func_id_BPF_FUNC_setsockopt: bpf_func_id = 49;
20887pub const bpf_func_id_BPF_FUNC_skb_adjust_room: bpf_func_id = 50;
20888pub const bpf_func_id_BPF_FUNC_redirect_map: bpf_func_id = 51;
20889pub const bpf_func_id_BPF_FUNC_sk_redirect_map: bpf_func_id = 52;
20890pub const bpf_func_id_BPF_FUNC_sock_map_update: bpf_func_id = 53;
20891pub const bpf_func_id_BPF_FUNC_xdp_adjust_meta: bpf_func_id = 54;
20892pub const bpf_func_id_BPF_FUNC_perf_event_read_value: bpf_func_id = 55;
20893pub const bpf_func_id_BPF_FUNC_perf_prog_read_value: bpf_func_id = 56;
20894pub const bpf_func_id_BPF_FUNC_getsockopt: bpf_func_id = 57;
20895pub const bpf_func_id_BPF_FUNC_override_return: bpf_func_id = 58;
20896pub const bpf_func_id_BPF_FUNC_sock_ops_cb_flags_set: bpf_func_id = 59;
20897pub const bpf_func_id_BPF_FUNC_msg_redirect_map: bpf_func_id = 60;
20898pub const bpf_func_id_BPF_FUNC_msg_apply_bytes: bpf_func_id = 61;
20899pub const bpf_func_id_BPF_FUNC_msg_cork_bytes: bpf_func_id = 62;
20900pub const bpf_func_id_BPF_FUNC_msg_pull_data: bpf_func_id = 63;
20901pub const bpf_func_id_BPF_FUNC_bind: bpf_func_id = 64;
20902pub const bpf_func_id_BPF_FUNC_xdp_adjust_tail: bpf_func_id = 65;
20903pub const bpf_func_id_BPF_FUNC_skb_get_xfrm_state: bpf_func_id = 66;
20904pub const bpf_func_id_BPF_FUNC_get_stack: bpf_func_id = 67;
20905pub const bpf_func_id_BPF_FUNC_skb_load_bytes_relative: bpf_func_id = 68;
20906pub const bpf_func_id_BPF_FUNC_fib_lookup: bpf_func_id = 69;
20907pub const bpf_func_id_BPF_FUNC_sock_hash_update: bpf_func_id = 70;
20908pub const bpf_func_id_BPF_FUNC_msg_redirect_hash: bpf_func_id = 71;
20909pub const bpf_func_id_BPF_FUNC_sk_redirect_hash: bpf_func_id = 72;
20910pub const bpf_func_id_BPF_FUNC_lwt_push_encap: bpf_func_id = 73;
20911pub const bpf_func_id_BPF_FUNC_lwt_seg6_store_bytes: bpf_func_id = 74;
20912pub const bpf_func_id_BPF_FUNC_lwt_seg6_adjust_srh: bpf_func_id = 75;
20913pub const bpf_func_id_BPF_FUNC_lwt_seg6_action: bpf_func_id = 76;
20914pub const bpf_func_id_BPF_FUNC_rc_repeat: bpf_func_id = 77;
20915pub const bpf_func_id_BPF_FUNC_rc_keydown: bpf_func_id = 78;
20916pub const bpf_func_id_BPF_FUNC_skb_cgroup_id: bpf_func_id = 79;
20917pub const bpf_func_id_BPF_FUNC_get_current_cgroup_id: bpf_func_id = 80;
20918pub const bpf_func_id_BPF_FUNC_get_local_storage: bpf_func_id = 81;
20919pub const bpf_func_id_BPF_FUNC_sk_select_reuseport: bpf_func_id = 82;
20920pub const bpf_func_id_BPF_FUNC_skb_ancestor_cgroup_id: bpf_func_id = 83;
20921pub const bpf_func_id_BPF_FUNC_sk_lookup_tcp: bpf_func_id = 84;
20922pub const bpf_func_id_BPF_FUNC_sk_lookup_udp: bpf_func_id = 85;
20923pub const bpf_func_id_BPF_FUNC_sk_release: bpf_func_id = 86;
20924pub const bpf_func_id_BPF_FUNC_map_push_elem: bpf_func_id = 87;
20925pub const bpf_func_id_BPF_FUNC_map_pop_elem: bpf_func_id = 88;
20926pub const bpf_func_id_BPF_FUNC_map_peek_elem: bpf_func_id = 89;
20927pub const bpf_func_id_BPF_FUNC_msg_push_data: bpf_func_id = 90;
20928pub const bpf_func_id_BPF_FUNC_msg_pop_data: bpf_func_id = 91;
20929pub const bpf_func_id_BPF_FUNC_rc_pointer_rel: bpf_func_id = 92;
20930pub const bpf_func_id_BPF_FUNC_spin_lock: bpf_func_id = 93;
20931pub const bpf_func_id_BPF_FUNC_spin_unlock: bpf_func_id = 94;
20932pub const bpf_func_id_BPF_FUNC_sk_fullsock: bpf_func_id = 95;
20933pub const bpf_func_id_BPF_FUNC_tcp_sock: bpf_func_id = 96;
20934pub const bpf_func_id_BPF_FUNC_skb_ecn_set_ce: bpf_func_id = 97;
20935pub const bpf_func_id_BPF_FUNC_get_listener_sock: bpf_func_id = 98;
20936pub const bpf_func_id_BPF_FUNC_skc_lookup_tcp: bpf_func_id = 99;
20937pub const bpf_func_id_BPF_FUNC_tcp_check_syncookie: bpf_func_id = 100;
20938pub const bpf_func_id_BPF_FUNC_sysctl_get_name: bpf_func_id = 101;
20939pub const bpf_func_id_BPF_FUNC_sysctl_get_current_value: bpf_func_id = 102;
20940pub const bpf_func_id_BPF_FUNC_sysctl_get_new_value: bpf_func_id = 103;
20941pub const bpf_func_id_BPF_FUNC_sysctl_set_new_value: bpf_func_id = 104;
20942pub const bpf_func_id_BPF_FUNC_strtol: bpf_func_id = 105;
20943pub const bpf_func_id_BPF_FUNC_strtoul: bpf_func_id = 106;
20944pub const bpf_func_id_BPF_FUNC_sk_storage_get: bpf_func_id = 107;
20945pub const bpf_func_id_BPF_FUNC_sk_storage_delete: bpf_func_id = 108;
20946pub const bpf_func_id_BPF_FUNC_send_signal: bpf_func_id = 109;
20947pub const bpf_func_id_BPF_FUNC_tcp_gen_syncookie: bpf_func_id = 110;
20948pub const bpf_func_id_BPF_FUNC_skb_output: bpf_func_id = 111;
20949pub const bpf_func_id_BPF_FUNC_probe_read_user: bpf_func_id = 112;
20950pub const bpf_func_id_BPF_FUNC_probe_read_kernel: bpf_func_id = 113;
20951pub const bpf_func_id_BPF_FUNC_probe_read_user_str: bpf_func_id = 114;
20952pub const bpf_func_id_BPF_FUNC_probe_read_kernel_str: bpf_func_id = 115;
20953pub const bpf_func_id_BPF_FUNC_tcp_send_ack: bpf_func_id = 116;
20954pub const bpf_func_id_BPF_FUNC_send_signal_thread: bpf_func_id = 117;
20955pub const bpf_func_id_BPF_FUNC_jiffies64: bpf_func_id = 118;
20956pub const bpf_func_id_BPF_FUNC_read_branch_records: bpf_func_id = 119;
20957pub const bpf_func_id_BPF_FUNC_get_ns_current_pid_tgid: bpf_func_id = 120;
20958pub const bpf_func_id_BPF_FUNC_xdp_output: bpf_func_id = 121;
20959pub const bpf_func_id_BPF_FUNC_get_netns_cookie: bpf_func_id = 122;
20960pub const bpf_func_id_BPF_FUNC_get_current_ancestor_cgroup_id: bpf_func_id = 123;
20961pub const bpf_func_id_BPF_FUNC_sk_assign: bpf_func_id = 124;
20962pub const bpf_func_id_BPF_FUNC_ktime_get_boot_ns: bpf_func_id = 125;
20963pub const bpf_func_id_BPF_FUNC_seq_printf: bpf_func_id = 126;
20964pub const bpf_func_id_BPF_FUNC_seq_write: bpf_func_id = 127;
20965pub const bpf_func_id_BPF_FUNC_sk_cgroup_id: bpf_func_id = 128;
20966pub const bpf_func_id_BPF_FUNC_sk_ancestor_cgroup_id: bpf_func_id = 129;
20967pub const bpf_func_id_BPF_FUNC_ringbuf_output: bpf_func_id = 130;
20968pub const bpf_func_id_BPF_FUNC_ringbuf_reserve: bpf_func_id = 131;
20969pub const bpf_func_id_BPF_FUNC_ringbuf_submit: bpf_func_id = 132;
20970pub const bpf_func_id_BPF_FUNC_ringbuf_discard: bpf_func_id = 133;
20971pub const bpf_func_id_BPF_FUNC_ringbuf_query: bpf_func_id = 134;
20972pub const bpf_func_id_BPF_FUNC_csum_level: bpf_func_id = 135;
20973pub const bpf_func_id_BPF_FUNC_skc_to_tcp6_sock: bpf_func_id = 136;
20974pub const bpf_func_id_BPF_FUNC_skc_to_tcp_sock: bpf_func_id = 137;
20975pub const bpf_func_id_BPF_FUNC_skc_to_tcp_timewait_sock: bpf_func_id = 138;
20976pub const bpf_func_id_BPF_FUNC_skc_to_tcp_request_sock: bpf_func_id = 139;
20977pub const bpf_func_id_BPF_FUNC_skc_to_udp6_sock: bpf_func_id = 140;
20978pub const bpf_func_id_BPF_FUNC_get_task_stack: bpf_func_id = 141;
20979pub const bpf_func_id_BPF_FUNC_load_hdr_opt: bpf_func_id = 142;
20980pub const bpf_func_id_BPF_FUNC_store_hdr_opt: bpf_func_id = 143;
20981pub const bpf_func_id_BPF_FUNC_reserve_hdr_opt: bpf_func_id = 144;
20982pub const bpf_func_id_BPF_FUNC_inode_storage_get: bpf_func_id = 145;
20983pub const bpf_func_id_BPF_FUNC_inode_storage_delete: bpf_func_id = 146;
20984pub const bpf_func_id_BPF_FUNC_d_path: bpf_func_id = 147;
20985pub const bpf_func_id_BPF_FUNC_copy_from_user: bpf_func_id = 148;
20986pub const bpf_func_id_BPF_FUNC_snprintf_btf: bpf_func_id = 149;
20987pub const bpf_func_id_BPF_FUNC_seq_printf_btf: bpf_func_id = 150;
20988pub const bpf_func_id_BPF_FUNC_skb_cgroup_classid: bpf_func_id = 151;
20989pub const bpf_func_id_BPF_FUNC_redirect_neigh: bpf_func_id = 152;
20990pub const bpf_func_id_BPF_FUNC_per_cpu_ptr: bpf_func_id = 153;
20991pub const bpf_func_id_BPF_FUNC_this_cpu_ptr: bpf_func_id = 154;
20992pub const bpf_func_id_BPF_FUNC_redirect_peer: bpf_func_id = 155;
20993pub const bpf_func_id_BPF_FUNC_task_storage_get: bpf_func_id = 156;
20994pub const bpf_func_id_BPF_FUNC_task_storage_delete: bpf_func_id = 157;
20995pub const bpf_func_id_BPF_FUNC_get_current_task_btf: bpf_func_id = 158;
20996pub const bpf_func_id_BPF_FUNC_bprm_opts_set: bpf_func_id = 159;
20997pub const bpf_func_id_BPF_FUNC_ktime_get_coarse_ns: bpf_func_id = 160;
20998pub const bpf_func_id_BPF_FUNC_ima_inode_hash: bpf_func_id = 161;
20999pub const bpf_func_id_BPF_FUNC_sock_from_file: bpf_func_id = 162;
21000pub const bpf_func_id_BPF_FUNC_check_mtu: bpf_func_id = 163;
21001pub const bpf_func_id_BPF_FUNC_for_each_map_elem: bpf_func_id = 164;
21002pub const bpf_func_id_BPF_FUNC_snprintf: bpf_func_id = 165;
21003pub const bpf_func_id_BPF_FUNC_sys_bpf: bpf_func_id = 166;
21004pub const bpf_func_id_BPF_FUNC_btf_find_by_name_kind: bpf_func_id = 167;
21005pub const bpf_func_id_BPF_FUNC_sys_close: bpf_func_id = 168;
21006pub const bpf_func_id_BPF_FUNC_timer_init: bpf_func_id = 169;
21007pub const bpf_func_id_BPF_FUNC_timer_set_callback: bpf_func_id = 170;
21008pub const bpf_func_id_BPF_FUNC_timer_start: bpf_func_id = 171;
21009pub const bpf_func_id_BPF_FUNC_timer_cancel: bpf_func_id = 172;
21010pub const bpf_func_id_BPF_FUNC_get_func_ip: bpf_func_id = 173;
21011pub const bpf_func_id_BPF_FUNC_get_attach_cookie: bpf_func_id = 174;
21012pub const bpf_func_id_BPF_FUNC_task_pt_regs: bpf_func_id = 175;
21013pub const bpf_func_id_BPF_FUNC_get_branch_snapshot: bpf_func_id = 176;
21014pub const bpf_func_id_BPF_FUNC_trace_vprintk: bpf_func_id = 177;
21015pub const bpf_func_id_BPF_FUNC_skc_to_unix_sock: bpf_func_id = 178;
21016pub const bpf_func_id_BPF_FUNC_kallsyms_lookup_name: bpf_func_id = 179;
21017pub const bpf_func_id_BPF_FUNC_find_vma: bpf_func_id = 180;
21018pub const bpf_func_id_BPF_FUNC_loop: bpf_func_id = 181;
21019pub const bpf_func_id_BPF_FUNC_strncmp: bpf_func_id = 182;
21020pub const bpf_func_id_BPF_FUNC_get_func_arg: bpf_func_id = 183;
21021pub const bpf_func_id_BPF_FUNC_get_func_ret: bpf_func_id = 184;
21022pub const bpf_func_id_BPF_FUNC_get_func_arg_cnt: bpf_func_id = 185;
21023pub const bpf_func_id_BPF_FUNC_get_retval: bpf_func_id = 186;
21024pub const bpf_func_id_BPF_FUNC_set_retval: bpf_func_id = 187;
21025pub const bpf_func_id_BPF_FUNC_xdp_get_buff_len: bpf_func_id = 188;
21026pub const bpf_func_id_BPF_FUNC_xdp_load_bytes: bpf_func_id = 189;
21027pub const bpf_func_id_BPF_FUNC_xdp_store_bytes: bpf_func_id = 190;
21028pub const bpf_func_id_BPF_FUNC_copy_from_user_task: bpf_func_id = 191;
21029pub const bpf_func_id_BPF_FUNC_skb_set_tstamp: bpf_func_id = 192;
21030pub const bpf_func_id_BPF_FUNC_ima_file_hash: bpf_func_id = 193;
21031pub const bpf_func_id_BPF_FUNC_kptr_xchg: bpf_func_id = 194;
21032pub const bpf_func_id_BPF_FUNC_map_lookup_percpu_elem: bpf_func_id = 195;
21033pub const bpf_func_id_BPF_FUNC_skc_to_mptcp_sock: bpf_func_id = 196;
21034pub const bpf_func_id_BPF_FUNC_dynptr_from_mem: bpf_func_id = 197;
21035pub const bpf_func_id_BPF_FUNC_ringbuf_reserve_dynptr: bpf_func_id = 198;
21036pub const bpf_func_id_BPF_FUNC_ringbuf_submit_dynptr: bpf_func_id = 199;
21037pub const bpf_func_id_BPF_FUNC_ringbuf_discard_dynptr: bpf_func_id = 200;
21038pub const bpf_func_id_BPF_FUNC_dynptr_read: bpf_func_id = 201;
21039pub const bpf_func_id_BPF_FUNC_dynptr_write: bpf_func_id = 202;
21040pub const bpf_func_id_BPF_FUNC_dynptr_data: bpf_func_id = 203;
21041pub const bpf_func_id_BPF_FUNC_tcp_raw_gen_syncookie_ipv4: bpf_func_id = 204;
21042pub const bpf_func_id_BPF_FUNC_tcp_raw_gen_syncookie_ipv6: bpf_func_id = 205;
21043pub const bpf_func_id_BPF_FUNC_tcp_raw_check_syncookie_ipv4: bpf_func_id = 206;
21044pub const bpf_func_id_BPF_FUNC_tcp_raw_check_syncookie_ipv6: bpf_func_id = 207;
21045pub const bpf_func_id_BPF_FUNC_ktime_get_tai_ns: bpf_func_id = 208;
21046pub const bpf_func_id_BPF_FUNC_user_ringbuf_drain: bpf_func_id = 209;
21047pub const bpf_func_id_BPF_FUNC_cgrp_storage_get: bpf_func_id = 210;
21048pub const bpf_func_id_BPF_FUNC_cgrp_storage_delete: bpf_func_id = 211;
21049pub const bpf_func_id___BPF_FUNC_MAX_ID: bpf_func_id = 212;
21050pub type bpf_func_id = crate::types::c_uint;
21051pub const BPF_F_RECOMPUTE_CSUM: _bindgen_ty_111 = 1;
21052pub const BPF_F_INVALIDATE_HASH: _bindgen_ty_111 = 2;
21053pub type _bindgen_ty_111 = crate::types::c_uint;
21054pub const BPF_F_HDR_FIELD_MASK: _bindgen_ty_112 = 15;
21055pub type _bindgen_ty_112 = crate::types::c_uint;
21056pub const BPF_F_PSEUDO_HDR: _bindgen_ty_113 = 16;
21057pub const BPF_F_MARK_MANGLED_0: _bindgen_ty_113 = 32;
21058pub const BPF_F_MARK_ENFORCE: _bindgen_ty_113 = 64;
21059pub type _bindgen_ty_113 = crate::types::c_uint;
21060pub const BPF_F_TUNINFO_IPV6: _bindgen_ty_114 = 1;
21061pub type _bindgen_ty_114 = crate::types::c_uint;
21062pub const BPF_F_SKIP_FIELD_MASK: _bindgen_ty_115 = 255;
21063pub const BPF_F_USER_STACK: _bindgen_ty_115 = 256;
21064pub const BPF_F_FAST_STACK_CMP: _bindgen_ty_115 = 512;
21065pub const BPF_F_REUSE_STACKID: _bindgen_ty_115 = 1024;
21066pub const BPF_F_USER_BUILD_ID: _bindgen_ty_115 = 2048;
21067pub type _bindgen_ty_115 = crate::types::c_uint;
21068pub const BPF_F_ZERO_CSUM_TX: _bindgen_ty_116 = 2;
21069pub const BPF_F_DONT_FRAGMENT: _bindgen_ty_116 = 4;
21070pub const BPF_F_SEQ_NUMBER: _bindgen_ty_116 = 8;
21071pub const BPF_F_NO_TUNNEL_KEY: _bindgen_ty_116 = 16;
21072pub type _bindgen_ty_116 = crate::types::c_uint;
21073pub const BPF_F_TUNINFO_FLAGS: _bindgen_ty_117 = 16;
21074pub type _bindgen_ty_117 = crate::types::c_uint;
21075pub const BPF_F_INDEX_MASK: _bindgen_ty_118 = 4294967295;
21076pub const BPF_F_CURRENT_CPU: _bindgen_ty_118 = 4294967295;
21077pub const BPF_F_CTXLEN_MASK: _bindgen_ty_118 = 4503595332403200;
21078pub type _bindgen_ty_118 = crate::types::c_ulong;
21079pub const BPF_F_CURRENT_NETNS: _bindgen_ty_119 = -1;
21080pub type _bindgen_ty_119 = crate::types::c_int;
21081pub const BPF_CSUM_LEVEL_QUERY: _bindgen_ty_120 = 0;
21082pub const BPF_CSUM_LEVEL_INC: _bindgen_ty_120 = 1;
21083pub const BPF_CSUM_LEVEL_DEC: _bindgen_ty_120 = 2;
21084pub const BPF_CSUM_LEVEL_RESET: _bindgen_ty_120 = 3;
21085pub type _bindgen_ty_120 = crate::types::c_uint;
21086pub const BPF_F_ADJ_ROOM_FIXED_GSO: _bindgen_ty_121 = 1;
21087pub const BPF_F_ADJ_ROOM_ENCAP_L3_IPV4: _bindgen_ty_121 = 2;
21088pub const BPF_F_ADJ_ROOM_ENCAP_L3_IPV6: _bindgen_ty_121 = 4;
21089pub const BPF_F_ADJ_ROOM_ENCAP_L4_GRE: _bindgen_ty_121 = 8;
21090pub const BPF_F_ADJ_ROOM_ENCAP_L4_UDP: _bindgen_ty_121 = 16;
21091pub const BPF_F_ADJ_ROOM_NO_CSUM_RESET: _bindgen_ty_121 = 32;
21092pub const BPF_F_ADJ_ROOM_ENCAP_L2_ETH: _bindgen_ty_121 = 64;
21093pub const BPF_F_ADJ_ROOM_DECAP_L3_IPV4: _bindgen_ty_121 = 128;
21094pub const BPF_F_ADJ_ROOM_DECAP_L3_IPV6: _bindgen_ty_121 = 256;
21095pub type _bindgen_ty_121 = crate::types::c_uint;
21096pub const BPF_ADJ_ROOM_ENCAP_L2_MASK: _bindgen_ty_122 = 255;
21097pub const BPF_ADJ_ROOM_ENCAP_L2_SHIFT: _bindgen_ty_122 = 56;
21098pub type _bindgen_ty_122 = crate::types::c_uint;
21099pub const BPF_F_SYSCTL_BASE_NAME: _bindgen_ty_123 = 1;
21100pub type _bindgen_ty_123 = crate::types::c_uint;
21101pub const BPF_LOCAL_STORAGE_GET_F_CREATE: _bindgen_ty_124 = 1;
21102pub const BPF_SK_STORAGE_GET_F_CREATE: _bindgen_ty_124 = 1;
21103pub type _bindgen_ty_124 = crate::types::c_uint;
21104pub const BPF_F_GET_BRANCH_RECORDS_SIZE: _bindgen_ty_125 = 1;
21105pub type _bindgen_ty_125 = crate::types::c_uint;
21106pub const BPF_RB_NO_WAKEUP: _bindgen_ty_126 = 1;
21107pub const BPF_RB_FORCE_WAKEUP: _bindgen_ty_126 = 2;
21108pub type _bindgen_ty_126 = crate::types::c_uint;
21109pub const BPF_RB_AVAIL_DATA: _bindgen_ty_127 = 0;
21110pub const BPF_RB_RING_SIZE: _bindgen_ty_127 = 1;
21111pub const BPF_RB_CONS_POS: _bindgen_ty_127 = 2;
21112pub const BPF_RB_PROD_POS: _bindgen_ty_127 = 3;
21113pub type _bindgen_ty_127 = crate::types::c_uint;
21114pub const BPF_RINGBUF_BUSY_BIT: _bindgen_ty_128 = 2147483648;
21115pub const BPF_RINGBUF_DISCARD_BIT: _bindgen_ty_128 = 1073741824;
21116pub const BPF_RINGBUF_HDR_SZ: _bindgen_ty_128 = 8;
21117pub type _bindgen_ty_128 = crate::types::c_uint;
21118pub const BPF_SK_LOOKUP_F_REPLACE: _bindgen_ty_129 = 1;
21119pub const BPF_SK_LOOKUP_F_NO_REUSEPORT: _bindgen_ty_129 = 2;
21120pub type _bindgen_ty_129 = crate::types::c_uint;
21121pub const bpf_adj_room_mode_BPF_ADJ_ROOM_NET: bpf_adj_room_mode = 0;
21122pub const bpf_adj_room_mode_BPF_ADJ_ROOM_MAC: bpf_adj_room_mode = 1;
21123pub type bpf_adj_room_mode = crate::types::c_uint;
21124pub const bpf_hdr_start_off_BPF_HDR_START_MAC: bpf_hdr_start_off = 0;
21125pub const bpf_hdr_start_off_BPF_HDR_START_NET: bpf_hdr_start_off = 1;
21126pub type bpf_hdr_start_off = crate::types::c_uint;
21127pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_SEG6: bpf_lwt_encap_mode = 0;
21128pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_SEG6_INLINE: bpf_lwt_encap_mode = 1;
21129pub const bpf_lwt_encap_mode_BPF_LWT_ENCAP_IP: bpf_lwt_encap_mode = 2;
21130pub type bpf_lwt_encap_mode = crate::types::c_uint;
21131pub const BPF_F_BPRM_SECUREEXEC: _bindgen_ty_130 = 1;
21132pub type _bindgen_ty_130 = crate::types::c_uint;
21133pub const BPF_F_INGRESS: _bindgen_ty_131 = 1;
21134pub const BPF_F_BROADCAST: _bindgen_ty_131 = 8;
21135pub const BPF_F_EXCLUDE_INGRESS: _bindgen_ty_131 = 16;
21136pub type _bindgen_ty_131 = crate::types::c_uint;
21137pub const BPF_SKB_TSTAMP_UNSPEC: _bindgen_ty_132 = 0;
21138pub const BPF_SKB_TSTAMP_DELIVERY_MONO: _bindgen_ty_132 = 1;
21139pub const BPF_SKB_CLOCK_REALTIME: _bindgen_ty_132 = 0;
21140pub const BPF_SKB_CLOCK_MONOTONIC: _bindgen_ty_132 = 1;
21141pub const BPF_SKB_CLOCK_TAI: _bindgen_ty_132 = 2;
21142pub type _bindgen_ty_132 = crate::types::c_uint;
21143#[repr(C)]
21144#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21145pub struct __sk_buff {
21146    pub len: __u32,
21147    pub pkt_type: __u32,
21148    pub mark: __u32,
21149    pub queue_mapping: __u32,
21150    pub protocol: __u32,
21151    pub vlan_present: __u32,
21152    pub vlan_tci: __u32,
21153    pub vlan_proto: __u32,
21154    pub priority: __u32,
21155    pub ingress_ifindex: __u32,
21156    pub ifindex: __u32,
21157    pub tc_index: __u32,
21158    pub cb: [__u32; 5usize],
21159    pub hash: __u32,
21160    pub tc_classid: __u32,
21161    pub data: __u32,
21162    pub data_end: __u32,
21163    pub napi_id: __u32,
21164    pub family: __u32,
21165    pub remote_ip4: __u32,
21166    pub local_ip4: __u32,
21167    pub remote_ip6: [__u32; 4usize],
21168    pub local_ip6: [__u32; 4usize],
21169    pub remote_port: __u32,
21170    pub local_port: __u32,
21171    pub data_meta: __u32,
21172    pub __bindgen_anon_1: __sk_buff__bindgen_ty_1,
21173    pub tstamp: __u64,
21174    pub wire_len: __u32,
21175    pub gso_segs: __u32,
21176    pub __bindgen_anon_2: __sk_buff__bindgen_ty_2,
21177    pub gso_size: __u32,
21178    pub tstamp_type: __u8,
21179    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 3usize]>,
21180    pub hwtstamp: __u64,
21181}
21182#[repr(C)]
21183#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21184pub union __sk_buff__bindgen_ty_1 {
21185    pub flow_keys: uref<bpf_flow_keys>,
21186    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21187}
21188impl Default for __sk_buff__bindgen_ty_1 {
21189    fn default() -> Self {
21190        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21191        unsafe {
21192            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21193            s.assume_init()
21194        }
21195    }
21196}
21197impl __sk_buff__bindgen_ty_1 {
21198    #[inline]
21199    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21200        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21201        __bindgen_bitfield_unit
21202    }
21203}
21204#[repr(C)]
21205#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
21206pub union __sk_buff__bindgen_ty_2 {
21207    pub sk: uref<bpf_sock>,
21208    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21209}
21210impl Default for __sk_buff__bindgen_ty_2 {
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}
21219impl __sk_buff__bindgen_ty_2 {
21220    #[inline]
21221    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21222        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21223        __bindgen_bitfield_unit
21224    }
21225}
21226impl Default for __sk_buff {
21227    fn default() -> Self {
21228        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21229        unsafe {
21230            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21231            s.assume_init()
21232        }
21233    }
21234}
21235impl __sk_buff {
21236    #[inline]
21237    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 3usize]> {
21238        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 3usize]> = Default::default();
21239        __bindgen_bitfield_unit
21240    }
21241}
21242#[repr(C)]
21243#[derive(Copy, Clone)]
21244pub struct bpf_tunnel_key {
21245    pub tunnel_id: __u32,
21246    pub __bindgen_anon_1: bpf_tunnel_key__bindgen_ty_1,
21247    pub tunnel_tos: __u8,
21248    pub tunnel_ttl: __u8,
21249    pub __bindgen_anon_2: bpf_tunnel_key__bindgen_ty_2,
21250    pub tunnel_label: __u32,
21251    pub __bindgen_anon_3: bpf_tunnel_key__bindgen_ty_3,
21252}
21253#[repr(C)]
21254#[derive(Copy, Clone)]
21255pub union bpf_tunnel_key__bindgen_ty_1 {
21256    pub remote_ipv4: __u32,
21257    pub remote_ipv6: [__u32; 4usize],
21258}
21259impl Default for bpf_tunnel_key__bindgen_ty_1 {
21260    fn default() -> Self {
21261        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21262        unsafe {
21263            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21264            s.assume_init()
21265        }
21266    }
21267}
21268#[repr(C)]
21269#[derive(Copy, Clone)]
21270pub union bpf_tunnel_key__bindgen_ty_2 {
21271    pub tunnel_ext: __u16,
21272    pub tunnel_flags: __be16,
21273}
21274impl Default for bpf_tunnel_key__bindgen_ty_2 {
21275    fn default() -> Self {
21276        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21277        unsafe {
21278            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21279            s.assume_init()
21280        }
21281    }
21282}
21283#[repr(C)]
21284#[derive(Copy, Clone)]
21285pub union bpf_tunnel_key__bindgen_ty_3 {
21286    pub local_ipv4: __u32,
21287    pub local_ipv6: [__u32; 4usize],
21288}
21289impl Default for bpf_tunnel_key__bindgen_ty_3 {
21290    fn default() -> Self {
21291        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21292        unsafe {
21293            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21294            s.assume_init()
21295        }
21296    }
21297}
21298impl Default for bpf_tunnel_key {
21299    fn default() -> Self {
21300        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21301        unsafe {
21302            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21303            s.assume_init()
21304        }
21305    }
21306}
21307#[repr(C)]
21308#[derive(Copy, Clone)]
21309pub struct bpf_xfrm_state {
21310    pub reqid: __u32,
21311    pub spi: __u32,
21312    pub family: __u16,
21313    pub ext: __u16,
21314    pub __bindgen_anon_1: bpf_xfrm_state__bindgen_ty_1,
21315}
21316#[repr(C)]
21317#[derive(Copy, Clone)]
21318pub union bpf_xfrm_state__bindgen_ty_1 {
21319    pub remote_ipv4: __u32,
21320    pub remote_ipv6: [__u32; 4usize],
21321}
21322impl Default for bpf_xfrm_state__bindgen_ty_1 {
21323    fn default() -> Self {
21324        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21325        unsafe {
21326            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21327            s.assume_init()
21328        }
21329    }
21330}
21331impl Default for bpf_xfrm_state {
21332    fn default() -> Self {
21333        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21334        unsafe {
21335            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21336            s.assume_init()
21337        }
21338    }
21339}
21340pub const bpf_ret_code_BPF_OK: bpf_ret_code = 0;
21341pub const bpf_ret_code_BPF_DROP: bpf_ret_code = 2;
21342pub const bpf_ret_code_BPF_REDIRECT: bpf_ret_code = 7;
21343pub const bpf_ret_code_BPF_LWT_REROUTE: bpf_ret_code = 128;
21344pub const bpf_ret_code_BPF_FLOW_DISSECTOR_CONTINUE: bpf_ret_code = 129;
21345pub type bpf_ret_code = crate::types::c_uint;
21346#[repr(C)]
21347#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21348pub struct bpf_sock {
21349    pub bound_dev_if: __u32,
21350    pub family: __u32,
21351    pub type_: __u32,
21352    pub protocol: __u32,
21353    pub mark: __u32,
21354    pub priority: __u32,
21355    pub src_ip4: __u32,
21356    pub src_ip6: [__u32; 4usize],
21357    pub src_port: __u32,
21358    pub dst_port: __be16,
21359    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
21360    pub dst_ip4: __u32,
21361    pub dst_ip6: [__u32; 4usize],
21362    pub state: __u32,
21363    pub rx_queue_mapping: __s32,
21364}
21365impl bpf_sock {
21366    #[inline]
21367    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 2usize]> {
21368        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
21369        __bindgen_bitfield_unit
21370    }
21371}
21372#[repr(C)]
21373#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21374pub struct bpf_tcp_sock {
21375    pub snd_cwnd: __u32,
21376    pub srtt_us: __u32,
21377    pub rtt_min: __u32,
21378    pub snd_ssthresh: __u32,
21379    pub rcv_nxt: __u32,
21380    pub snd_nxt: __u32,
21381    pub snd_una: __u32,
21382    pub mss_cache: __u32,
21383    pub ecn_flags: __u32,
21384    pub rate_delivered: __u32,
21385    pub rate_interval_us: __u32,
21386    pub packets_out: __u32,
21387    pub retrans_out: __u32,
21388    pub total_retrans: __u32,
21389    pub segs_in: __u32,
21390    pub data_segs_in: __u32,
21391    pub segs_out: __u32,
21392    pub data_segs_out: __u32,
21393    pub lost_out: __u32,
21394    pub sacked_out: __u32,
21395    pub bytes_received: __u64,
21396    pub bytes_acked: __u64,
21397    pub dsack_dups: __u32,
21398    pub delivered: __u32,
21399    pub delivered_ce: __u32,
21400    pub icsk_retransmits: __u32,
21401}
21402#[repr(C)]
21403#[derive(Copy, Clone)]
21404pub struct bpf_sock_tuple {
21405    pub __bindgen_anon_1: bpf_sock_tuple__bindgen_ty_1,
21406}
21407#[repr(C)]
21408#[derive(Copy, Clone)]
21409pub union bpf_sock_tuple__bindgen_ty_1 {
21410    pub ipv4: bpf_sock_tuple__bindgen_ty_1__bindgen_ty_1,
21411    pub ipv6: bpf_sock_tuple__bindgen_ty_1__bindgen_ty_2,
21412}
21413#[repr(C)]
21414#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21415pub struct bpf_sock_tuple__bindgen_ty_1__bindgen_ty_1 {
21416    pub saddr: __be32,
21417    pub daddr: __be32,
21418    pub sport: __be16,
21419    pub dport: __be16,
21420}
21421#[repr(C)]
21422#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21423pub struct bpf_sock_tuple__bindgen_ty_1__bindgen_ty_2 {
21424    pub saddr: [__be32; 4usize],
21425    pub daddr: [__be32; 4usize],
21426    pub sport: __be16,
21427    pub dport: __be16,
21428}
21429impl Default for bpf_sock_tuple__bindgen_ty_1 {
21430    fn default() -> Self {
21431        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21432        unsafe {
21433            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21434            s.assume_init()
21435        }
21436    }
21437}
21438impl Default for bpf_sock_tuple {
21439    fn default() -> Self {
21440        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21441        unsafe {
21442            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21443            s.assume_init()
21444        }
21445    }
21446}
21447pub const tcx_action_base_TCX_NEXT: tcx_action_base = -1;
21448pub const tcx_action_base_TCX_PASS: tcx_action_base = 0;
21449pub const tcx_action_base_TCX_DROP: tcx_action_base = 2;
21450pub const tcx_action_base_TCX_REDIRECT: tcx_action_base = 7;
21451pub type tcx_action_base = crate::types::c_int;
21452#[repr(C)]
21453#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21454pub struct bpf_xdp_sock {
21455    pub queue_id: __u32,
21456}
21457pub const xdp_action_XDP_ABORTED: xdp_action = 0;
21458pub const xdp_action_XDP_DROP: xdp_action = 1;
21459pub const xdp_action_XDP_PASS: xdp_action = 2;
21460pub const xdp_action_XDP_TX: xdp_action = 3;
21461pub const xdp_action_XDP_REDIRECT: xdp_action = 4;
21462pub type xdp_action = crate::types::c_uint;
21463#[repr(C)]
21464#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21465pub struct xdp_md {
21466    pub data: __u32,
21467    pub data_end: __u32,
21468    pub data_meta: __u32,
21469    pub ingress_ifindex: __u32,
21470    pub rx_queue_index: __u32,
21471    pub egress_ifindex: __u32,
21472}
21473#[repr(C)]
21474#[derive(Copy, Clone)]
21475pub struct bpf_devmap_val {
21476    pub ifindex: __u32,
21477    pub bpf_prog: bpf_devmap_val__bindgen_ty_1,
21478}
21479#[repr(C)]
21480#[derive(Copy, Clone)]
21481pub union bpf_devmap_val__bindgen_ty_1 {
21482    pub fd: crate::types::c_int,
21483    pub id: __u32,
21484}
21485impl Default for bpf_devmap_val__bindgen_ty_1 {
21486    fn default() -> Self {
21487        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21488        unsafe {
21489            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21490            s.assume_init()
21491        }
21492    }
21493}
21494impl Default for bpf_devmap_val {
21495    fn default() -> Self {
21496        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21497        unsafe {
21498            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21499            s.assume_init()
21500        }
21501    }
21502}
21503#[repr(C)]
21504#[derive(Copy, Clone)]
21505pub struct bpf_cpumap_val {
21506    pub qsize: __u32,
21507    pub bpf_prog: bpf_cpumap_val__bindgen_ty_1,
21508}
21509#[repr(C)]
21510#[derive(Copy, Clone)]
21511pub union bpf_cpumap_val__bindgen_ty_1 {
21512    pub fd: crate::types::c_int,
21513    pub id: __u32,
21514}
21515impl Default for bpf_cpumap_val__bindgen_ty_1 {
21516    fn default() -> Self {
21517        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21518        unsafe {
21519            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21520            s.assume_init()
21521        }
21522    }
21523}
21524impl Default for bpf_cpumap_val {
21525    fn default() -> Self {
21526        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21527        unsafe {
21528            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21529            s.assume_init()
21530        }
21531    }
21532}
21533pub const sk_action_SK_DROP: sk_action = 0;
21534pub const sk_action_SK_PASS: sk_action = 1;
21535pub type sk_action = crate::types::c_uint;
21536#[repr(C)]
21537#[derive(Copy, Clone)]
21538pub struct sk_msg_md {
21539    pub __bindgen_anon_1: sk_msg_md__bindgen_ty_1,
21540    pub __bindgen_anon_2: sk_msg_md__bindgen_ty_2,
21541    pub family: __u32,
21542    pub remote_ip4: __u32,
21543    pub local_ip4: __u32,
21544    pub remote_ip6: [__u32; 4usize],
21545    pub local_ip6: [__u32; 4usize],
21546    pub remote_port: __u32,
21547    pub local_port: __u32,
21548    pub size: __u32,
21549    pub __bindgen_anon_3: sk_msg_md__bindgen_ty_3,
21550}
21551#[repr(C)]
21552#[derive(Copy, Clone)]
21553pub union sk_msg_md__bindgen_ty_1 {
21554    pub data: uaddr,
21555    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21556}
21557impl Default for sk_msg_md__bindgen_ty_1 {
21558    fn default() -> Self {
21559        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21560        unsafe {
21561            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21562            s.assume_init()
21563        }
21564    }
21565}
21566impl sk_msg_md__bindgen_ty_1 {
21567    #[inline]
21568    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21569        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21570        __bindgen_bitfield_unit
21571    }
21572}
21573#[repr(C)]
21574#[derive(Copy, Clone)]
21575pub union sk_msg_md__bindgen_ty_2 {
21576    pub data_end: uaddr,
21577    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21578}
21579impl Default for sk_msg_md__bindgen_ty_2 {
21580    fn default() -> Self {
21581        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21582        unsafe {
21583            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21584            s.assume_init()
21585        }
21586    }
21587}
21588impl sk_msg_md__bindgen_ty_2 {
21589    #[inline]
21590    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21591        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21592        __bindgen_bitfield_unit
21593    }
21594}
21595#[repr(C)]
21596#[derive(Copy, Clone)]
21597pub union sk_msg_md__bindgen_ty_3 {
21598    pub sk: uref<bpf_sock>,
21599    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21600}
21601impl Default for sk_msg_md__bindgen_ty_3 {
21602    fn default() -> Self {
21603        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21604        unsafe {
21605            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21606            s.assume_init()
21607        }
21608    }
21609}
21610impl sk_msg_md__bindgen_ty_3 {
21611    #[inline]
21612    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21613        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21614        __bindgen_bitfield_unit
21615    }
21616}
21617impl Default for sk_msg_md {
21618    fn default() -> Self {
21619        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21620        unsafe {
21621            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21622            s.assume_init()
21623        }
21624    }
21625}
21626#[repr(C)]
21627#[derive(Copy, Clone)]
21628pub struct sk_reuseport_md {
21629    pub __bindgen_anon_1: sk_reuseport_md__bindgen_ty_1,
21630    pub __bindgen_anon_2: sk_reuseport_md__bindgen_ty_2,
21631    pub len: __u32,
21632    pub eth_protocol: __u32,
21633    pub ip_protocol: __u32,
21634    pub bind_inany: __u32,
21635    pub hash: __u32,
21636    pub __bindgen_padding_0: [u8; 4usize],
21637    pub __bindgen_anon_3: sk_reuseport_md__bindgen_ty_3,
21638    pub __bindgen_anon_4: sk_reuseport_md__bindgen_ty_4,
21639}
21640#[repr(C)]
21641#[derive(Copy, Clone)]
21642pub union sk_reuseport_md__bindgen_ty_1 {
21643    pub data: uaddr,
21644    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21645}
21646impl Default for sk_reuseport_md__bindgen_ty_1 {
21647    fn default() -> Self {
21648        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21649        unsafe {
21650            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21651            s.assume_init()
21652        }
21653    }
21654}
21655impl sk_reuseport_md__bindgen_ty_1 {
21656    #[inline]
21657    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21658        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21659        __bindgen_bitfield_unit
21660    }
21661}
21662#[repr(C)]
21663#[derive(Copy, Clone)]
21664pub union sk_reuseport_md__bindgen_ty_2 {
21665    pub data_end: uaddr,
21666    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21667}
21668impl Default for sk_reuseport_md__bindgen_ty_2 {
21669    fn default() -> Self {
21670        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21671        unsafe {
21672            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21673            s.assume_init()
21674        }
21675    }
21676}
21677impl sk_reuseport_md__bindgen_ty_2 {
21678    #[inline]
21679    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21680        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21681        __bindgen_bitfield_unit
21682    }
21683}
21684#[repr(C)]
21685#[derive(Copy, Clone)]
21686pub union sk_reuseport_md__bindgen_ty_3 {
21687    pub sk: uref<bpf_sock>,
21688    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21689}
21690impl Default for sk_reuseport_md__bindgen_ty_3 {
21691    fn default() -> Self {
21692        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21693        unsafe {
21694            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21695            s.assume_init()
21696        }
21697    }
21698}
21699impl sk_reuseport_md__bindgen_ty_3 {
21700    #[inline]
21701    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21702        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21703        __bindgen_bitfield_unit
21704    }
21705}
21706#[repr(C)]
21707#[derive(Copy, Clone)]
21708pub union sk_reuseport_md__bindgen_ty_4 {
21709    pub migrating_sk: uref<bpf_sock>,
21710    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
21711}
21712impl Default for sk_reuseport_md__bindgen_ty_4 {
21713    fn default() -> Self {
21714        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21715        unsafe {
21716            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21717            s.assume_init()
21718        }
21719    }
21720}
21721impl sk_reuseport_md__bindgen_ty_4 {
21722    #[inline]
21723    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
21724        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
21725        __bindgen_bitfield_unit
21726    }
21727}
21728impl Default for sk_reuseport_md {
21729    fn default() -> Self {
21730        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21731        unsafe {
21732            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21733            s.assume_init()
21734        }
21735    }
21736}
21737#[repr(C)]
21738#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
21739pub struct bpf_prog_info {
21740    pub type_: __u32,
21741    pub id: __u32,
21742    pub tag: [__u8; 8usize],
21743    pub jited_prog_len: __u32,
21744    pub xlated_prog_len: __u32,
21745    pub jited_prog_insns: __u64,
21746    pub xlated_prog_insns: __u64,
21747    pub load_time: __u64,
21748    pub created_by_uid: __u32,
21749    pub nr_map_ids: __u32,
21750    pub map_ids: __u64,
21751    pub name: [crate::types::c_char; 16usize],
21752    pub ifindex: __u32,
21753    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
21754    pub netns_dev: __u64,
21755    pub netns_ino: __u64,
21756    pub nr_jited_ksyms: __u32,
21757    pub nr_jited_func_lens: __u32,
21758    pub jited_ksyms: __u64,
21759    pub jited_func_lens: __u64,
21760    pub btf_id: __u32,
21761    pub func_info_rec_size: __u32,
21762    pub func_info: __u64,
21763    pub nr_func_info: __u32,
21764    pub nr_line_info: __u32,
21765    pub line_info: __u64,
21766    pub jited_line_info: __u64,
21767    pub nr_jited_line_info: __u32,
21768    pub line_info_rec_size: __u32,
21769    pub jited_line_info_rec_size: __u32,
21770    pub nr_prog_tags: __u32,
21771    pub prog_tags: __u64,
21772    pub run_time_ns: __u64,
21773    pub run_cnt: __u64,
21774    pub recursion_misses: __u64,
21775    pub verified_insns: __u32,
21776    pub attach_btf_obj_id: __u32,
21777    pub attach_btf_id: __u32,
21778    pub __bindgen_padding_0: [u8; 4usize],
21779}
21780impl bpf_prog_info {
21781    #[inline]
21782    pub fn gpl_compatible(&self) -> __u32 {
21783        self._bitfield_1.get_const::<0usize, 1u8>() as u32 as _
21784    }
21785    #[inline]
21786    pub fn set_gpl_compatible(&mut self, val: __u32) {
21787        let val: u32 = val as _;
21788        self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
21789    }
21790    #[inline]
21791    pub unsafe fn gpl_compatible_raw(this: *const Self) -> __u32 {
21792        unsafe {
21793            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<0usize, 1u8>(
21794                ::std::ptr::addr_of!((*this)._bitfield_1),
21795            ) as u32 as _
21796        }
21797    }
21798    #[inline]
21799    pub unsafe fn set_gpl_compatible_raw(this: *mut Self, val: __u32) {
21800        unsafe {
21801            let val: u32 = val as _;
21802            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<0usize, 1u8>(
21803                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
21804                val as u64,
21805            )
21806        }
21807    }
21808    #[inline]
21809    pub fn new_bitfield_1(gpl_compatible: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
21810        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
21811        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
21812            let gpl_compatible: u32 = gpl_compatible as _;
21813            gpl_compatible as u64
21814        });
21815        __bindgen_bitfield_unit
21816    }
21817}
21818#[repr(C)]
21819#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21820pub struct bpf_map_info {
21821    pub type_: __u32,
21822    pub id: __u32,
21823    pub key_size: __u32,
21824    pub value_size: __u32,
21825    pub max_entries: __u32,
21826    pub map_flags: __u32,
21827    pub name: [crate::types::c_char; 16usize],
21828    pub ifindex: __u32,
21829    pub btf_vmlinux_value_type_id: __u32,
21830    pub netns_dev: __u64,
21831    pub netns_ino: __u64,
21832    pub btf_id: __u32,
21833    pub btf_key_type_id: __u32,
21834    pub btf_value_type_id: __u32,
21835    pub btf_vmlinux_id: __u32,
21836    pub map_extra: __u64,
21837}
21838#[repr(C)]
21839#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21840pub struct bpf_btf_info {
21841    pub btf: __u64,
21842    pub btf_size: __u32,
21843    pub id: __u32,
21844    pub name: __u64,
21845    pub name_len: __u32,
21846    pub kernel_btf: __u32,
21847}
21848#[repr(C)]
21849#[derive(Copy, Clone)]
21850pub struct bpf_link_info {
21851    pub type_: __u32,
21852    pub id: __u32,
21853    pub prog_id: __u32,
21854    pub __bindgen_padding_0: [u8; 4usize],
21855    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1,
21856}
21857#[repr(C)]
21858#[derive(Copy, Clone)]
21859pub union bpf_link_info__bindgen_ty_1 {
21860    pub raw_tracepoint: bpf_link_info__bindgen_ty_1__bindgen_ty_1,
21861    pub tracing: bpf_link_info__bindgen_ty_1__bindgen_ty_2,
21862    pub cgroup: bpf_link_info__bindgen_ty_1__bindgen_ty_3,
21863    pub iter: bpf_link_info__bindgen_ty_1__bindgen_ty_4,
21864    pub netns: bpf_link_info__bindgen_ty_1__bindgen_ty_5,
21865    pub xdp: bpf_link_info__bindgen_ty_1__bindgen_ty_6,
21866    pub struct_ops: bpf_link_info__bindgen_ty_1__bindgen_ty_7,
21867    pub netfilter: bpf_link_info__bindgen_ty_1__bindgen_ty_8,
21868    pub kprobe_multi: bpf_link_info__bindgen_ty_1__bindgen_ty_9,
21869    pub uprobe_multi: bpf_link_info__bindgen_ty_1__bindgen_ty_10,
21870    pub perf_event: bpf_link_info__bindgen_ty_1__bindgen_ty_11,
21871    pub tcx: bpf_link_info__bindgen_ty_1__bindgen_ty_12,
21872    pub netkit: bpf_link_info__bindgen_ty_1__bindgen_ty_13,
21873    pub sockmap: bpf_link_info__bindgen_ty_1__bindgen_ty_14,
21874}
21875#[repr(C)]
21876#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21877pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_1 {
21878    pub tp_name: __u64,
21879    pub tp_name_len: __u32,
21880    pub __bindgen_padding_0: [u8; 4usize],
21881}
21882#[repr(C)]
21883#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21884pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_2 {
21885    pub attach_type: __u32,
21886    pub target_obj_id: __u32,
21887    pub target_btf_id: __u32,
21888}
21889#[repr(C)]
21890#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21891pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_3 {
21892    pub cgroup_id: __u64,
21893    pub attach_type: __u32,
21894    pub __bindgen_padding_0: [u8; 4usize],
21895}
21896#[repr(C)]
21897#[derive(Copy, Clone)]
21898pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4 {
21899    pub target_name: __u64,
21900    pub target_name_len: __u32,
21901    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1,
21902    pub __bindgen_anon_2: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2,
21903}
21904#[repr(C)]
21905#[derive(Copy, Clone)]
21906pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 {
21907    pub map: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1,
21908}
21909#[repr(C)]
21910#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21911pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 {
21912    pub map_id: __u32,
21913}
21914impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 {
21915    fn default() -> Self {
21916        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21917        unsafe {
21918            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21919            s.assume_init()
21920        }
21921    }
21922}
21923#[repr(C)]
21924#[derive(Copy, Clone)]
21925pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2 {
21926    pub cgroup: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_1,
21927    pub task: bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_2,
21928}
21929#[repr(C)]
21930#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21931pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_1 {
21932    pub cgroup_id: __u64,
21933    pub order: __u32,
21934    pub __bindgen_padding_0: [u8; 4usize],
21935}
21936#[repr(C)]
21937#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21938pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2__bindgen_ty_2 {
21939    pub tid: __u32,
21940    pub pid: __u32,
21941}
21942impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_2 {
21943    fn default() -> Self {
21944        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21945        unsafe {
21946            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21947            s.assume_init()
21948        }
21949    }
21950}
21951impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_4 {
21952    fn default() -> Self {
21953        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21954        unsafe {
21955            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21956            s.assume_init()
21957        }
21958    }
21959}
21960#[repr(C)]
21961#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21962pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_5 {
21963    pub netns_ino: __u32,
21964    pub attach_type: __u32,
21965}
21966#[repr(C)]
21967#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21968pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_6 {
21969    pub ifindex: __u32,
21970}
21971#[repr(C)]
21972#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21973pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_7 {
21974    pub map_id: __u32,
21975}
21976#[repr(C)]
21977#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21978pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_8 {
21979    pub pf: __u32,
21980    pub hooknum: __u32,
21981    pub priority: __s32,
21982    pub flags: __u32,
21983}
21984#[repr(C)]
21985#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21986pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_9 {
21987    pub addrs: __u64,
21988    pub count: __u32,
21989    pub flags: __u32,
21990    pub missed: __u64,
21991    pub cookies: __u64,
21992}
21993#[repr(C)]
21994#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
21995pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_10 {
21996    pub path: __u64,
21997    pub offsets: __u64,
21998    pub ref_ctr_offsets: __u64,
21999    pub cookies: __u64,
22000    pub path_size: __u32,
22001    pub count: __u32,
22002    pub flags: __u32,
22003    pub pid: __u32,
22004}
22005#[repr(C)]
22006#[derive(Copy, Clone)]
22007pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
22008    pub type_: __u32,
22009    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
22010    pub __bindgen_anon_1: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1,
22011}
22012#[repr(C)]
22013#[derive(Copy, Clone)]
22014pub union bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1 {
22015    pub uprobe: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_1,
22016    pub kprobe: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_2,
22017    pub tracepoint: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3,
22018    pub event: bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4,
22019}
22020#[repr(C)]
22021#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22022pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_1 {
22023    pub file_name: __u64,
22024    pub name_len: __u32,
22025    pub offset: __u32,
22026    pub cookie: __u64,
22027}
22028#[repr(C)]
22029#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22030pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_2 {
22031    pub func_name: __u64,
22032    pub name_len: __u32,
22033    pub offset: __u32,
22034    pub addr: __u64,
22035    pub missed: __u64,
22036    pub cookie: __u64,
22037}
22038#[repr(C)]
22039#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22040pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3 {
22041    pub tp_name: __u64,
22042    pub name_len: __u32,
22043    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
22044    pub cookie: __u64,
22045}
22046impl bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_3 {
22047    #[inline]
22048    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
22049        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
22050        __bindgen_bitfield_unit
22051    }
22052}
22053#[repr(C)]
22054#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22055pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4 {
22056    pub config: __u64,
22057    pub type_: __u32,
22058    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
22059    pub cookie: __u64,
22060}
22061impl bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1__bindgen_ty_4 {
22062    #[inline]
22063    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
22064        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
22065        __bindgen_bitfield_unit
22066    }
22067}
22068impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_11__bindgen_ty_1 {
22069    fn default() -> Self {
22070        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22071        unsafe {
22072            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22073            s.assume_init()
22074        }
22075    }
22076}
22077impl Default for bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
22078    fn default() -> Self {
22079        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22080        unsafe {
22081            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22082            s.assume_init()
22083        }
22084    }
22085}
22086impl bpf_link_info__bindgen_ty_1__bindgen_ty_11 {
22087    #[inline]
22088    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 4usize]> {
22089        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
22090        __bindgen_bitfield_unit
22091    }
22092}
22093#[repr(C)]
22094#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22095pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_12 {
22096    pub ifindex: __u32,
22097    pub attach_type: __u32,
22098}
22099#[repr(C)]
22100#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22101pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_13 {
22102    pub ifindex: __u32,
22103    pub attach_type: __u32,
22104}
22105#[repr(C)]
22106#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22107pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_14 {
22108    pub map_id: __u32,
22109    pub attach_type: __u32,
22110}
22111impl Default for bpf_link_info__bindgen_ty_1 {
22112    fn default() -> Self {
22113        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22114        unsafe {
22115            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22116            s.assume_init()
22117        }
22118    }
22119}
22120impl Default for bpf_link_info {
22121    fn default() -> Self {
22122        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22123        unsafe {
22124            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22125            s.assume_init()
22126        }
22127    }
22128}
22129#[repr(C)]
22130#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22131pub struct bpf_sock_addr {
22132    pub user_family: __u32,
22133    pub user_ip4: __u32,
22134    pub user_ip6: [__u32; 4usize],
22135    pub user_port: __u32,
22136    pub family: __u32,
22137    pub type_: __u32,
22138    pub protocol: __u32,
22139    pub msg_src_ip4: __u32,
22140    pub msg_src_ip6: [__u32; 4usize],
22141    pub __bindgen_padding_0: [u8; 4usize],
22142    pub __bindgen_anon_1: bpf_sock_addr__bindgen_ty_1,
22143}
22144#[repr(C)]
22145#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22146pub union bpf_sock_addr__bindgen_ty_1 {
22147    pub sk: uref<bpf_sock>,
22148    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22149}
22150impl Default for bpf_sock_addr__bindgen_ty_1 {
22151    fn default() -> Self {
22152        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22153        unsafe {
22154            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22155            s.assume_init()
22156        }
22157    }
22158}
22159impl bpf_sock_addr__bindgen_ty_1 {
22160    #[inline]
22161    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22162        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22163        __bindgen_bitfield_unit
22164    }
22165}
22166impl Default for bpf_sock_addr {
22167    fn default() -> Self {
22168        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22169        unsafe {
22170            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22171            s.assume_init()
22172        }
22173    }
22174}
22175#[repr(C)]
22176#[derive(Copy, Clone)]
22177pub struct bpf_sock_ops {
22178    pub op: __u32,
22179    pub __bindgen_anon_1: bpf_sock_ops__bindgen_ty_1,
22180    pub family: __u32,
22181    pub remote_ip4: __u32,
22182    pub local_ip4: __u32,
22183    pub remote_ip6: [__u32; 4usize],
22184    pub local_ip6: [__u32; 4usize],
22185    pub remote_port: __u32,
22186    pub local_port: __u32,
22187    pub is_fullsock: __u32,
22188    pub snd_cwnd: __u32,
22189    pub srtt_us: __u32,
22190    pub bpf_sock_ops_cb_flags: __u32,
22191    pub state: __u32,
22192    pub rtt_min: __u32,
22193    pub snd_ssthresh: __u32,
22194    pub rcv_nxt: __u32,
22195    pub snd_nxt: __u32,
22196    pub snd_una: __u32,
22197    pub mss_cache: __u32,
22198    pub ecn_flags: __u32,
22199    pub rate_delivered: __u32,
22200    pub rate_interval_us: __u32,
22201    pub packets_out: __u32,
22202    pub retrans_out: __u32,
22203    pub total_retrans: __u32,
22204    pub segs_in: __u32,
22205    pub data_segs_in: __u32,
22206    pub segs_out: __u32,
22207    pub data_segs_out: __u32,
22208    pub lost_out: __u32,
22209    pub sacked_out: __u32,
22210    pub sk_txhash: __u32,
22211    pub bytes_received: __u64,
22212    pub bytes_acked: __u64,
22213    pub __bindgen_anon_2: bpf_sock_ops__bindgen_ty_2,
22214    pub __bindgen_anon_3: bpf_sock_ops__bindgen_ty_3,
22215    pub __bindgen_anon_4: bpf_sock_ops__bindgen_ty_4,
22216    pub skb_len: __u32,
22217    pub skb_tcp_flags: __u32,
22218    pub skb_hwtstamp: __u64,
22219}
22220#[repr(C)]
22221#[derive(Copy, Clone)]
22222pub union bpf_sock_ops__bindgen_ty_1 {
22223    pub args: [__u32; 4usize],
22224    pub reply: __u32,
22225    pub replylong: [__u32; 4usize],
22226}
22227impl Default for bpf_sock_ops__bindgen_ty_1 {
22228    fn default() -> Self {
22229        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22230        unsafe {
22231            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22232            s.assume_init()
22233        }
22234    }
22235}
22236#[repr(C)]
22237#[derive(Copy, Clone)]
22238pub union bpf_sock_ops__bindgen_ty_2 {
22239    pub sk: uref<bpf_sock>,
22240    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22241}
22242impl Default for bpf_sock_ops__bindgen_ty_2 {
22243    fn default() -> Self {
22244        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22245        unsafe {
22246            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22247            s.assume_init()
22248        }
22249    }
22250}
22251impl bpf_sock_ops__bindgen_ty_2 {
22252    #[inline]
22253    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22254        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22255        __bindgen_bitfield_unit
22256    }
22257}
22258#[repr(C)]
22259#[derive(Copy, Clone)]
22260pub union bpf_sock_ops__bindgen_ty_3 {
22261    pub skb_data: uaddr,
22262    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22263}
22264impl Default for bpf_sock_ops__bindgen_ty_3 {
22265    fn default() -> Self {
22266        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22267        unsafe {
22268            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22269            s.assume_init()
22270        }
22271    }
22272}
22273impl bpf_sock_ops__bindgen_ty_3 {
22274    #[inline]
22275    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22276        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22277        __bindgen_bitfield_unit
22278    }
22279}
22280#[repr(C)]
22281#[derive(Copy, Clone)]
22282pub union bpf_sock_ops__bindgen_ty_4 {
22283    pub skb_data_end: uaddr,
22284    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22285}
22286impl Default for bpf_sock_ops__bindgen_ty_4 {
22287    fn default() -> Self {
22288        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22289        unsafe {
22290            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22291            s.assume_init()
22292        }
22293    }
22294}
22295impl bpf_sock_ops__bindgen_ty_4 {
22296    #[inline]
22297    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22298        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22299        __bindgen_bitfield_unit
22300    }
22301}
22302impl Default for bpf_sock_ops {
22303    fn default() -> Self {
22304        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22305        unsafe {
22306            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22307            s.assume_init()
22308        }
22309    }
22310}
22311pub const BPF_SOCK_OPS_RTO_CB_FLAG: _bindgen_ty_133 = 1;
22312pub const BPF_SOCK_OPS_RETRANS_CB_FLAG: _bindgen_ty_133 = 2;
22313pub const BPF_SOCK_OPS_STATE_CB_FLAG: _bindgen_ty_133 = 4;
22314pub const BPF_SOCK_OPS_RTT_CB_FLAG: _bindgen_ty_133 = 8;
22315pub const BPF_SOCK_OPS_PARSE_ALL_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 16;
22316pub const BPF_SOCK_OPS_PARSE_UNKNOWN_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 32;
22317pub const BPF_SOCK_OPS_WRITE_HDR_OPT_CB_FLAG: _bindgen_ty_133 = 64;
22318pub const BPF_SOCK_OPS_ALL_CB_FLAGS: _bindgen_ty_133 = 127;
22319pub type _bindgen_ty_133 = crate::types::c_uint;
22320pub const BPF_SOCK_OPS_VOID: _bindgen_ty_134 = 0;
22321pub const BPF_SOCK_OPS_TIMEOUT_INIT: _bindgen_ty_134 = 1;
22322pub const BPF_SOCK_OPS_RWND_INIT: _bindgen_ty_134 = 2;
22323pub const BPF_SOCK_OPS_TCP_CONNECT_CB: _bindgen_ty_134 = 3;
22324pub const BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB: _bindgen_ty_134 = 4;
22325pub const BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB: _bindgen_ty_134 = 5;
22326pub const BPF_SOCK_OPS_NEEDS_ECN: _bindgen_ty_134 = 6;
22327pub const BPF_SOCK_OPS_BASE_RTT: _bindgen_ty_134 = 7;
22328pub const BPF_SOCK_OPS_RTO_CB: _bindgen_ty_134 = 8;
22329pub const BPF_SOCK_OPS_RETRANS_CB: _bindgen_ty_134 = 9;
22330pub const BPF_SOCK_OPS_STATE_CB: _bindgen_ty_134 = 10;
22331pub const BPF_SOCK_OPS_TCP_LISTEN_CB: _bindgen_ty_134 = 11;
22332pub const BPF_SOCK_OPS_RTT_CB: _bindgen_ty_134 = 12;
22333pub const BPF_SOCK_OPS_PARSE_HDR_OPT_CB: _bindgen_ty_134 = 13;
22334pub const BPF_SOCK_OPS_HDR_OPT_LEN_CB: _bindgen_ty_134 = 14;
22335pub const BPF_SOCK_OPS_WRITE_HDR_OPT_CB: _bindgen_ty_134 = 15;
22336pub type _bindgen_ty_134 = crate::types::c_uint;
22337pub const BPF_TCP_ESTABLISHED: _bindgen_ty_135 = 1;
22338pub const BPF_TCP_SYN_SENT: _bindgen_ty_135 = 2;
22339pub const BPF_TCP_SYN_RECV: _bindgen_ty_135 = 3;
22340pub const BPF_TCP_FIN_WAIT1: _bindgen_ty_135 = 4;
22341pub const BPF_TCP_FIN_WAIT2: _bindgen_ty_135 = 5;
22342pub const BPF_TCP_TIME_WAIT: _bindgen_ty_135 = 6;
22343pub const BPF_TCP_CLOSE: _bindgen_ty_135 = 7;
22344pub const BPF_TCP_CLOSE_WAIT: _bindgen_ty_135 = 8;
22345pub const BPF_TCP_LAST_ACK: _bindgen_ty_135 = 9;
22346pub const BPF_TCP_LISTEN: _bindgen_ty_135 = 10;
22347pub const BPF_TCP_CLOSING: _bindgen_ty_135 = 11;
22348pub const BPF_TCP_NEW_SYN_RECV: _bindgen_ty_135 = 12;
22349pub const BPF_TCP_BOUND_INACTIVE: _bindgen_ty_135 = 13;
22350pub const BPF_TCP_MAX_STATES: _bindgen_ty_135 = 14;
22351pub type _bindgen_ty_135 = crate::types::c_uint;
22352pub const TCP_BPF_IW: _bindgen_ty_136 = 1001;
22353pub const TCP_BPF_SNDCWND_CLAMP: _bindgen_ty_136 = 1002;
22354pub const TCP_BPF_DELACK_MAX: _bindgen_ty_136 = 1003;
22355pub const TCP_BPF_RTO_MIN: _bindgen_ty_136 = 1004;
22356pub const TCP_BPF_SYN: _bindgen_ty_136 = 1005;
22357pub const TCP_BPF_SYN_IP: _bindgen_ty_136 = 1006;
22358pub const TCP_BPF_SYN_MAC: _bindgen_ty_136 = 1007;
22359pub const TCP_BPF_SOCK_OPS_CB_FLAGS: _bindgen_ty_136 = 1008;
22360pub type _bindgen_ty_136 = crate::types::c_uint;
22361pub const BPF_LOAD_HDR_OPT_TCP_SYN: _bindgen_ty_137 = 1;
22362pub type _bindgen_ty_137 = crate::types::c_uint;
22363pub const BPF_WRITE_HDR_TCP_CURRENT_MSS: _bindgen_ty_138 = 1;
22364pub const BPF_WRITE_HDR_TCP_SYNACK_COOKIE: _bindgen_ty_138 = 2;
22365pub type _bindgen_ty_138 = crate::types::c_uint;
22366#[repr(C)]
22367#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22368pub struct bpf_perf_event_value {
22369    pub counter: __u64,
22370    pub enabled: __u64,
22371    pub running: __u64,
22372}
22373pub const BPF_DEVCG_ACC_MKNOD: _bindgen_ty_139 = 1;
22374pub const BPF_DEVCG_ACC_READ: _bindgen_ty_139 = 2;
22375pub const BPF_DEVCG_ACC_WRITE: _bindgen_ty_139 = 4;
22376pub type _bindgen_ty_139 = crate::types::c_uint;
22377pub const BPF_DEVCG_DEV_BLOCK: _bindgen_ty_140 = 1;
22378pub const BPF_DEVCG_DEV_CHAR: _bindgen_ty_140 = 2;
22379pub type _bindgen_ty_140 = crate::types::c_uint;
22380#[repr(C)]
22381#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22382pub struct bpf_cgroup_dev_ctx {
22383    pub access_type: __u32,
22384    pub major: __u32,
22385    pub minor: __u32,
22386}
22387#[repr(C)]
22388#[derive(Debug, Default)]
22389pub struct bpf_raw_tracepoint_args {
22390    pub args: __IncompleteArrayField<__u64>,
22391}
22392pub const BPF_FIB_LOOKUP_DIRECT: _bindgen_ty_141 = 1;
22393pub const BPF_FIB_LOOKUP_OUTPUT: _bindgen_ty_141 = 2;
22394pub const BPF_FIB_LOOKUP_SKIP_NEIGH: _bindgen_ty_141 = 4;
22395pub const BPF_FIB_LOOKUP_TBID: _bindgen_ty_141 = 8;
22396pub const BPF_FIB_LOOKUP_SRC: _bindgen_ty_141 = 16;
22397pub const BPF_FIB_LOOKUP_MARK: _bindgen_ty_141 = 32;
22398pub type _bindgen_ty_141 = crate::types::c_uint;
22399pub const BPF_FIB_LKUP_RET_SUCCESS: _bindgen_ty_142 = 0;
22400pub const BPF_FIB_LKUP_RET_BLACKHOLE: _bindgen_ty_142 = 1;
22401pub const BPF_FIB_LKUP_RET_UNREACHABLE: _bindgen_ty_142 = 2;
22402pub const BPF_FIB_LKUP_RET_PROHIBIT: _bindgen_ty_142 = 3;
22403pub const BPF_FIB_LKUP_RET_NOT_FWDED: _bindgen_ty_142 = 4;
22404pub const BPF_FIB_LKUP_RET_FWD_DISABLED: _bindgen_ty_142 = 5;
22405pub const BPF_FIB_LKUP_RET_UNSUPP_LWT: _bindgen_ty_142 = 6;
22406pub const BPF_FIB_LKUP_RET_NO_NEIGH: _bindgen_ty_142 = 7;
22407pub const BPF_FIB_LKUP_RET_FRAG_NEEDED: _bindgen_ty_142 = 8;
22408pub const BPF_FIB_LKUP_RET_NO_SRC_ADDR: _bindgen_ty_142 = 9;
22409pub type _bindgen_ty_142 = crate::types::c_uint;
22410#[repr(C)]
22411#[derive(Copy, Clone)]
22412pub struct bpf_fib_lookup {
22413    pub family: __u8,
22414    pub l4_protocol: __u8,
22415    pub sport: __be16,
22416    pub dport: __be16,
22417    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_1,
22418    pub ifindex: __u32,
22419    pub __bindgen_anon_2: bpf_fib_lookup__bindgen_ty_2,
22420    pub __bindgen_anon_3: bpf_fib_lookup__bindgen_ty_3,
22421    pub __bindgen_anon_4: bpf_fib_lookup__bindgen_ty_4,
22422    pub __bindgen_anon_5: bpf_fib_lookup__bindgen_ty_5,
22423    pub __bindgen_anon_6: bpf_fib_lookup__bindgen_ty_6,
22424}
22425#[repr(C, packed(2))]
22426#[derive(Copy, Clone)]
22427pub union bpf_fib_lookup__bindgen_ty_1 {
22428    pub tot_len: __u16,
22429    pub mtu_result: __u16,
22430}
22431impl Default for bpf_fib_lookup__bindgen_ty_1 {
22432    fn default() -> Self {
22433        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22434        unsafe {
22435            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22436            s.assume_init()
22437        }
22438    }
22439}
22440#[repr(C)]
22441#[derive(Copy, Clone)]
22442pub union bpf_fib_lookup__bindgen_ty_2 {
22443    pub tos: __u8,
22444    pub flowinfo: __be32,
22445    pub rt_metric: __u32,
22446}
22447impl Default for bpf_fib_lookup__bindgen_ty_2 {
22448    fn default() -> Self {
22449        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22450        unsafe {
22451            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22452            s.assume_init()
22453        }
22454    }
22455}
22456#[repr(C)]
22457#[derive(Copy, Clone)]
22458pub union bpf_fib_lookup__bindgen_ty_3 {
22459    pub ipv4_src: __be32,
22460    pub ipv6_src: [__u32; 4usize],
22461}
22462impl Default for bpf_fib_lookup__bindgen_ty_3 {
22463    fn default() -> Self {
22464        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22465        unsafe {
22466            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22467            s.assume_init()
22468        }
22469    }
22470}
22471#[repr(C)]
22472#[derive(Copy, Clone)]
22473pub union bpf_fib_lookup__bindgen_ty_4 {
22474    pub ipv4_dst: __be32,
22475    pub ipv6_dst: [__u32; 4usize],
22476}
22477impl Default for bpf_fib_lookup__bindgen_ty_4 {
22478    fn default() -> Self {
22479        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22480        unsafe {
22481            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22482            s.assume_init()
22483        }
22484    }
22485}
22486#[repr(C)]
22487#[derive(Copy, Clone)]
22488pub union bpf_fib_lookup__bindgen_ty_5 {
22489    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_5__bindgen_ty_1,
22490    pub tbid: __u32,
22491}
22492#[repr(C)]
22493#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22494pub struct bpf_fib_lookup__bindgen_ty_5__bindgen_ty_1 {
22495    pub h_vlan_proto: __be16,
22496    pub h_vlan_TCI: __be16,
22497}
22498impl Default for bpf_fib_lookup__bindgen_ty_5 {
22499    fn default() -> Self {
22500        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22501        unsafe {
22502            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22503            s.assume_init()
22504        }
22505    }
22506}
22507#[repr(C)]
22508#[derive(Copy, Clone)]
22509pub union bpf_fib_lookup__bindgen_ty_6 {
22510    pub __bindgen_anon_1: bpf_fib_lookup__bindgen_ty_6__bindgen_ty_1,
22511    pub __bindgen_anon_2: bpf_fib_lookup__bindgen_ty_6__bindgen_ty_2,
22512}
22513#[repr(C)]
22514#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22515pub struct bpf_fib_lookup__bindgen_ty_6__bindgen_ty_1 {
22516    pub mark: __u32,
22517}
22518#[repr(C)]
22519#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22520pub struct bpf_fib_lookup__bindgen_ty_6__bindgen_ty_2 {
22521    pub smac: [__u8; 6usize],
22522    pub dmac: [__u8; 6usize],
22523}
22524impl Default for bpf_fib_lookup__bindgen_ty_6 {
22525    fn default() -> Self {
22526        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22527        unsafe {
22528            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22529            s.assume_init()
22530        }
22531    }
22532}
22533impl Default for bpf_fib_lookup {
22534    fn default() -> Self {
22535        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22536        unsafe {
22537            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22538            s.assume_init()
22539        }
22540    }
22541}
22542#[repr(C)]
22543#[derive(Copy, Clone)]
22544pub struct bpf_redir_neigh {
22545    pub nh_family: __u32,
22546    pub __bindgen_anon_1: bpf_redir_neigh__bindgen_ty_1,
22547}
22548#[repr(C)]
22549#[derive(Copy, Clone)]
22550pub union bpf_redir_neigh__bindgen_ty_1 {
22551    pub ipv4_nh: __be32,
22552    pub ipv6_nh: [__u32; 4usize],
22553}
22554impl Default for bpf_redir_neigh__bindgen_ty_1 {
22555    fn default() -> Self {
22556        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22557        unsafe {
22558            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22559            s.assume_init()
22560        }
22561    }
22562}
22563impl Default for bpf_redir_neigh {
22564    fn default() -> Self {
22565        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22566        unsafe {
22567            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22568            s.assume_init()
22569        }
22570    }
22571}
22572pub const bpf_check_mtu_flags_BPF_MTU_CHK_SEGS: bpf_check_mtu_flags = 1;
22573pub type bpf_check_mtu_flags = crate::types::c_uint;
22574pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_SUCCESS: bpf_check_mtu_ret = 0;
22575pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_FRAG_NEEDED: bpf_check_mtu_ret = 1;
22576pub const bpf_check_mtu_ret_BPF_MTU_CHK_RET_SEGS_TOOBIG: bpf_check_mtu_ret = 2;
22577pub type bpf_check_mtu_ret = crate::types::c_uint;
22578pub const bpf_task_fd_type_BPF_FD_TYPE_RAW_TRACEPOINT: bpf_task_fd_type = 0;
22579pub const bpf_task_fd_type_BPF_FD_TYPE_TRACEPOINT: bpf_task_fd_type = 1;
22580pub const bpf_task_fd_type_BPF_FD_TYPE_KPROBE: bpf_task_fd_type = 2;
22581pub const bpf_task_fd_type_BPF_FD_TYPE_KRETPROBE: bpf_task_fd_type = 3;
22582pub const bpf_task_fd_type_BPF_FD_TYPE_UPROBE: bpf_task_fd_type = 4;
22583pub const bpf_task_fd_type_BPF_FD_TYPE_URETPROBE: bpf_task_fd_type = 5;
22584pub type bpf_task_fd_type = crate::types::c_uint;
22585pub const BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG: _bindgen_ty_143 = 1;
22586pub const BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL: _bindgen_ty_143 = 2;
22587pub const BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP: _bindgen_ty_143 = 4;
22588pub type _bindgen_ty_143 = crate::types::c_uint;
22589#[repr(C)]
22590#[derive(Copy, Clone)]
22591pub struct bpf_flow_keys {
22592    pub nhoff: __u16,
22593    pub thoff: __u16,
22594    pub addr_proto: __u16,
22595    pub is_frag: __u8,
22596    pub is_first_frag: __u8,
22597    pub is_encap: __u8,
22598    pub ip_proto: __u8,
22599    pub n_proto: __be16,
22600    pub sport: __be16,
22601    pub dport: __be16,
22602    pub __bindgen_anon_1: bpf_flow_keys__bindgen_ty_1,
22603    pub flags: __u32,
22604    pub flow_label: __be32,
22605}
22606#[repr(C)]
22607#[derive(Copy, Clone)]
22608pub union bpf_flow_keys__bindgen_ty_1 {
22609    pub __bindgen_anon_1: bpf_flow_keys__bindgen_ty_1__bindgen_ty_1,
22610    pub __bindgen_anon_2: bpf_flow_keys__bindgen_ty_1__bindgen_ty_2,
22611}
22612#[repr(C)]
22613#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22614pub struct bpf_flow_keys__bindgen_ty_1__bindgen_ty_1 {
22615    pub ipv4_src: __be32,
22616    pub ipv4_dst: __be32,
22617}
22618#[repr(C)]
22619#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22620pub struct bpf_flow_keys__bindgen_ty_1__bindgen_ty_2 {
22621    pub ipv6_src: [__u32; 4usize],
22622    pub ipv6_dst: [__u32; 4usize],
22623}
22624impl Default for bpf_flow_keys__bindgen_ty_1 {
22625    fn default() -> Self {
22626        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22627        unsafe {
22628            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22629            s.assume_init()
22630        }
22631    }
22632}
22633impl Default for bpf_flow_keys {
22634    fn default() -> Self {
22635        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22636        unsafe {
22637            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22638            s.assume_init()
22639        }
22640    }
22641}
22642#[repr(C)]
22643#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22644pub struct bpf_func_info {
22645    pub insn_off: __u32,
22646    pub type_id: __u32,
22647}
22648#[repr(C)]
22649#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22650pub struct bpf_line_info {
22651    pub insn_off: __u32,
22652    pub file_name_off: __u32,
22653    pub line_off: __u32,
22654    pub line_col: __u32,
22655}
22656#[repr(C)]
22657#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22658pub struct bpf_spin_lock {
22659    pub val: __u32,
22660}
22661#[repr(C)]
22662#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22663pub struct bpf_timer {
22664    pub __opaque: [__u64; 2usize],
22665}
22666#[repr(C)]
22667#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22668pub struct bpf_wq {
22669    pub __opaque: [__u64; 2usize],
22670}
22671#[repr(C)]
22672#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22673pub struct bpf_dynptr {
22674    pub __opaque: [__u64; 2usize],
22675}
22676#[repr(C)]
22677#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22678pub struct bpf_list_head {
22679    pub __opaque: [__u64; 2usize],
22680}
22681#[repr(C)]
22682#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22683pub struct bpf_list_node {
22684    pub __opaque: [__u64; 3usize],
22685}
22686#[repr(C)]
22687#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22688pub struct bpf_rb_root {
22689    pub __opaque: [__u64; 2usize],
22690}
22691#[repr(C)]
22692#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22693pub struct bpf_rb_node {
22694    pub __opaque: [__u64; 4usize],
22695}
22696#[repr(C)]
22697#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22698pub struct bpf_refcount {
22699    pub __opaque: [__u32; 1usize],
22700}
22701#[repr(C)]
22702#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22703pub struct bpf_sysctl {
22704    pub write: __u32,
22705    pub file_pos: __u32,
22706}
22707#[repr(C)]
22708#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22709pub struct bpf_sockopt {
22710    pub __bindgen_anon_1: bpf_sockopt__bindgen_ty_1,
22711    pub __bindgen_anon_2: bpf_sockopt__bindgen_ty_2,
22712    pub __bindgen_anon_3: bpf_sockopt__bindgen_ty_3,
22713    pub level: __s32,
22714    pub optname: __s32,
22715    pub optlen: __s32,
22716    pub retval: __s32,
22717}
22718#[repr(C)]
22719#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22720pub union bpf_sockopt__bindgen_ty_1 {
22721    pub sk: uref<bpf_sock>,
22722    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22723}
22724impl Default for bpf_sockopt__bindgen_ty_1 {
22725    fn default() -> Self {
22726        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22727        unsafe {
22728            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22729            s.assume_init()
22730        }
22731    }
22732}
22733impl bpf_sockopt__bindgen_ty_1 {
22734    #[inline]
22735    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22736        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22737        __bindgen_bitfield_unit
22738    }
22739}
22740#[repr(C)]
22741#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22742pub union bpf_sockopt__bindgen_ty_2 {
22743    pub optval: uaddr,
22744    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22745}
22746impl Default for bpf_sockopt__bindgen_ty_2 {
22747    fn default() -> Self {
22748        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22749        unsafe {
22750            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22751            s.assume_init()
22752        }
22753    }
22754}
22755impl bpf_sockopt__bindgen_ty_2 {
22756    #[inline]
22757    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22758        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22759        __bindgen_bitfield_unit
22760    }
22761}
22762#[repr(C)]
22763#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
22764pub union bpf_sockopt__bindgen_ty_3 {
22765    pub optval_end: uaddr,
22766    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22767}
22768impl Default for bpf_sockopt__bindgen_ty_3 {
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_sockopt__bindgen_ty_3 {
22778    #[inline]
22779    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22780        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22781        __bindgen_bitfield_unit
22782    }
22783}
22784impl Default for bpf_sockopt {
22785    fn default() -> Self {
22786        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22787        unsafe {
22788            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22789            s.assume_init()
22790        }
22791    }
22792}
22793#[repr(C)]
22794#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22795pub struct bpf_pidns_info {
22796    pub pid: __u32,
22797    pub tgid: __u32,
22798}
22799#[repr(C)]
22800#[derive(Copy, Clone)]
22801pub struct bpf_sk_lookup {
22802    pub __bindgen_anon_1: bpf_sk_lookup__bindgen_ty_1,
22803    pub family: __u32,
22804    pub protocol: __u32,
22805    pub remote_ip4: __u32,
22806    pub remote_ip6: [__u32; 4usize],
22807    pub remote_port: __be16,
22808    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
22809    pub local_ip4: __u32,
22810    pub local_ip6: [__u32; 4usize],
22811    pub local_port: __u32,
22812    pub ingress_ifindex: __u32,
22813    pub __bindgen_padding_0: [u8; 4usize],
22814}
22815#[repr(C)]
22816#[derive(Copy, Clone)]
22817pub union bpf_sk_lookup__bindgen_ty_1 {
22818    pub __bindgen_anon_1: bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1,
22819    pub cookie: __u64,
22820}
22821#[repr(C)]
22822#[derive(Copy, Clone)]
22823pub union bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22824    pub sk: uref<bpf_sock>,
22825    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
22826}
22827impl Default for bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
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}
22836impl bpf_sk_lookup__bindgen_ty_1__bindgen_ty_1 {
22837    #[inline]
22838    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 8usize]> {
22839        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
22840        __bindgen_bitfield_unit
22841    }
22842}
22843impl Default for bpf_sk_lookup__bindgen_ty_1 {
22844    fn default() -> Self {
22845        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22846        unsafe {
22847            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22848            s.assume_init()
22849        }
22850    }
22851}
22852impl Default for bpf_sk_lookup {
22853    fn default() -> Self {
22854        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22855        unsafe {
22856            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22857            s.assume_init()
22858        }
22859    }
22860}
22861impl bpf_sk_lookup {
22862    #[inline]
22863    pub fn new_bitfield_1() -> __BindgenBitfieldUnit<[u8; 2usize]> {
22864        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
22865        __bindgen_bitfield_unit
22866    }
22867}
22868#[repr(C)]
22869#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22870pub struct btf_ptr {
22871    pub ptr: uaddr,
22872    pub type_id: __u32,
22873    pub flags: __u32,
22874}
22875impl Default for btf_ptr {
22876    fn default() -> Self {
22877        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22878        unsafe {
22879            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22880            s.assume_init()
22881        }
22882    }
22883}
22884pub const BTF_F_COMPACT: _bindgen_ty_144 = 1;
22885pub const BTF_F_NONAME: _bindgen_ty_144 = 2;
22886pub const BTF_F_PTR_RAW: _bindgen_ty_144 = 4;
22887pub const BTF_F_ZERO: _bindgen_ty_144 = 8;
22888pub type _bindgen_ty_144 = crate::types::c_uint;
22889pub const bpf_core_relo_kind_BPF_CORE_FIELD_BYTE_OFFSET: bpf_core_relo_kind = 0;
22890pub const bpf_core_relo_kind_BPF_CORE_FIELD_BYTE_SIZE: bpf_core_relo_kind = 1;
22891pub const bpf_core_relo_kind_BPF_CORE_FIELD_EXISTS: bpf_core_relo_kind = 2;
22892pub const bpf_core_relo_kind_BPF_CORE_FIELD_SIGNED: bpf_core_relo_kind = 3;
22893pub const bpf_core_relo_kind_BPF_CORE_FIELD_LSHIFT_U64: bpf_core_relo_kind = 4;
22894pub const bpf_core_relo_kind_BPF_CORE_FIELD_RSHIFT_U64: bpf_core_relo_kind = 5;
22895pub const bpf_core_relo_kind_BPF_CORE_TYPE_ID_LOCAL: bpf_core_relo_kind = 6;
22896pub const bpf_core_relo_kind_BPF_CORE_TYPE_ID_TARGET: bpf_core_relo_kind = 7;
22897pub const bpf_core_relo_kind_BPF_CORE_TYPE_EXISTS: bpf_core_relo_kind = 8;
22898pub const bpf_core_relo_kind_BPF_CORE_TYPE_SIZE: bpf_core_relo_kind = 9;
22899pub const bpf_core_relo_kind_BPF_CORE_ENUMVAL_EXISTS: bpf_core_relo_kind = 10;
22900pub const bpf_core_relo_kind_BPF_CORE_ENUMVAL_VALUE: bpf_core_relo_kind = 11;
22901pub const bpf_core_relo_kind_BPF_CORE_TYPE_MATCHES: bpf_core_relo_kind = 12;
22902pub type bpf_core_relo_kind = crate::types::c_uint;
22903#[repr(C)]
22904#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22905pub struct bpf_core_relo {
22906    pub insn_off: __u32,
22907    pub type_id: __u32,
22908    pub access_str_off: __u32,
22909    pub kind: bpf_core_relo_kind,
22910}
22911impl Default for bpf_core_relo {
22912    fn default() -> Self {
22913        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22914        unsafe {
22915            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22916            s.assume_init()
22917        }
22918    }
22919}
22920pub const BPF_F_TIMER_ABS: _bindgen_ty_145 = 1;
22921pub const BPF_F_TIMER_CPU_PIN: _bindgen_ty_145 = 2;
22922pub type _bindgen_ty_145 = crate::types::c_uint;
22923#[repr(C)]
22924#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22925pub struct bpf_iter_num {
22926    pub __opaque: [__u64; 1usize],
22927}
22928pub const bpf_kfunc_flags_BPF_F_PAD_ZEROS: bpf_kfunc_flags = 1;
22929pub type bpf_kfunc_flags = crate::types::c_uint;
22930pub type bpf_user_pt_regs_t = pt_regs;
22931#[repr(C)]
22932#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22933pub struct bpf_perf_event_data {
22934    pub regs: bpf_user_pt_regs_t,
22935    pub sample_period: __u64,
22936    pub addr: __u64,
22937}
22938#[repr(C)]
22939#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22940pub struct fuse_attr {
22941    pub ino: u64,
22942    pub size: u64,
22943    pub blocks: u64,
22944    pub atime: u64,
22945    pub mtime: u64,
22946    pub ctime: u64,
22947    pub atimensec: u32,
22948    pub mtimensec: u32,
22949    pub ctimensec: u32,
22950    pub mode: u32,
22951    pub nlink: u32,
22952    pub uid: u32,
22953    pub gid: u32,
22954    pub rdev: u32,
22955    pub blksize: u32,
22956    pub flags: u32,
22957}
22958#[repr(C)]
22959#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22960pub struct fuse_sx_time {
22961    pub tv_sec: i64,
22962    pub tv_nsec: u32,
22963    pub __reserved: i32,
22964}
22965#[repr(C)]
22966#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22967pub struct fuse_statx {
22968    pub mask: u32,
22969    pub blksize: u32,
22970    pub attributes: u64,
22971    pub nlink: u32,
22972    pub uid: u32,
22973    pub gid: u32,
22974    pub mode: u16,
22975    pub __spare0: [u16; 1usize],
22976    pub ino: u64,
22977    pub size: u64,
22978    pub blocks: u64,
22979    pub attributes_mask: u64,
22980    pub atime: fuse_sx_time,
22981    pub btime: fuse_sx_time,
22982    pub ctime: fuse_sx_time,
22983    pub mtime: fuse_sx_time,
22984    pub rdev_major: u32,
22985    pub rdev_minor: u32,
22986    pub dev_major: u32,
22987    pub dev_minor: u32,
22988    pub __spare2: [u64; 14usize],
22989}
22990#[repr(C)]
22991#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
22992pub struct fuse_kstatfs {
22993    pub blocks: u64,
22994    pub bfree: u64,
22995    pub bavail: u64,
22996    pub files: u64,
22997    pub ffree: u64,
22998    pub bsize: u32,
22999    pub namelen: u32,
23000    pub frsize: u32,
23001    pub padding: u32,
23002    pub spare: [u32; 6usize],
23003}
23004#[repr(C)]
23005#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23006pub struct fuse_file_lock {
23007    pub start: u64,
23008    pub end: u64,
23009    pub type_: u32,
23010    pub pid: u32,
23011}
23012pub const fuse_ext_type_FUSE_MAX_NR_SECCTX: fuse_ext_type = 31;
23013pub const fuse_ext_type_FUSE_EXT_GROUPS: fuse_ext_type = 32;
23014#[doc = " extension type\n FUSE_MAX_NR_SECCTX: maximum value of &fuse_secctx_header.nr_secctx\n FUSE_EXT_GROUPS: &fuse_supp_groups extension"]
23015pub type fuse_ext_type = crate::types::c_uint;
23016pub const fuse_opcode_FUSE_LOOKUP: fuse_opcode = 1;
23017pub const fuse_opcode_FUSE_FORGET: fuse_opcode = 2;
23018pub const fuse_opcode_FUSE_GETATTR: fuse_opcode = 3;
23019pub const fuse_opcode_FUSE_SETATTR: fuse_opcode = 4;
23020pub const fuse_opcode_FUSE_READLINK: fuse_opcode = 5;
23021pub const fuse_opcode_FUSE_SYMLINK: fuse_opcode = 6;
23022pub const fuse_opcode_FUSE_MKNOD: fuse_opcode = 8;
23023pub const fuse_opcode_FUSE_MKDIR: fuse_opcode = 9;
23024pub const fuse_opcode_FUSE_UNLINK: fuse_opcode = 10;
23025pub const fuse_opcode_FUSE_RMDIR: fuse_opcode = 11;
23026pub const fuse_opcode_FUSE_RENAME: fuse_opcode = 12;
23027pub const fuse_opcode_FUSE_LINK: fuse_opcode = 13;
23028pub const fuse_opcode_FUSE_OPEN: fuse_opcode = 14;
23029pub const fuse_opcode_FUSE_READ: fuse_opcode = 15;
23030pub const fuse_opcode_FUSE_WRITE: fuse_opcode = 16;
23031pub const fuse_opcode_FUSE_STATFS: fuse_opcode = 17;
23032pub const fuse_opcode_FUSE_RELEASE: fuse_opcode = 18;
23033pub const fuse_opcode_FUSE_FSYNC: fuse_opcode = 20;
23034pub const fuse_opcode_FUSE_SETXATTR: fuse_opcode = 21;
23035pub const fuse_opcode_FUSE_GETXATTR: fuse_opcode = 22;
23036pub const fuse_opcode_FUSE_LISTXATTR: fuse_opcode = 23;
23037pub const fuse_opcode_FUSE_REMOVEXATTR: fuse_opcode = 24;
23038pub const fuse_opcode_FUSE_FLUSH: fuse_opcode = 25;
23039pub const fuse_opcode_FUSE_INIT: fuse_opcode = 26;
23040pub const fuse_opcode_FUSE_OPENDIR: fuse_opcode = 27;
23041pub const fuse_opcode_FUSE_READDIR: fuse_opcode = 28;
23042pub const fuse_opcode_FUSE_RELEASEDIR: fuse_opcode = 29;
23043pub const fuse_opcode_FUSE_FSYNCDIR: fuse_opcode = 30;
23044pub const fuse_opcode_FUSE_GETLK: fuse_opcode = 31;
23045pub const fuse_opcode_FUSE_SETLK: fuse_opcode = 32;
23046pub const fuse_opcode_FUSE_SETLKW: fuse_opcode = 33;
23047pub const fuse_opcode_FUSE_ACCESS: fuse_opcode = 34;
23048pub const fuse_opcode_FUSE_CREATE: fuse_opcode = 35;
23049pub const fuse_opcode_FUSE_INTERRUPT: fuse_opcode = 36;
23050pub const fuse_opcode_FUSE_BMAP: fuse_opcode = 37;
23051pub const fuse_opcode_FUSE_DESTROY: fuse_opcode = 38;
23052pub const fuse_opcode_FUSE_IOCTL: fuse_opcode = 39;
23053pub const fuse_opcode_FUSE_POLL: fuse_opcode = 40;
23054pub const fuse_opcode_FUSE_NOTIFY_REPLY: fuse_opcode = 41;
23055pub const fuse_opcode_FUSE_BATCH_FORGET: fuse_opcode = 42;
23056pub const fuse_opcode_FUSE_FALLOCATE: fuse_opcode = 43;
23057pub const fuse_opcode_FUSE_READDIRPLUS: fuse_opcode = 44;
23058pub const fuse_opcode_FUSE_RENAME2: fuse_opcode = 45;
23059pub const fuse_opcode_FUSE_LSEEK: fuse_opcode = 46;
23060pub const fuse_opcode_FUSE_COPY_FILE_RANGE: fuse_opcode = 47;
23061pub const fuse_opcode_FUSE_SETUPMAPPING: fuse_opcode = 48;
23062pub const fuse_opcode_FUSE_REMOVEMAPPING: fuse_opcode = 49;
23063pub const fuse_opcode_FUSE_SYNCFS: fuse_opcode = 50;
23064pub const fuse_opcode_FUSE_TMPFILE: fuse_opcode = 51;
23065pub const fuse_opcode_FUSE_STATX: fuse_opcode = 52;
23066pub const fuse_opcode_FUSE_CANONICAL_PATH: fuse_opcode = 2016;
23067pub const fuse_opcode_CUSE_INIT: fuse_opcode = 4096;
23068pub const fuse_opcode_CUSE_INIT_BSWAP_RESERVED: fuse_opcode = 1048576;
23069pub const fuse_opcode_FUSE_INIT_BSWAP_RESERVED: fuse_opcode = 436207616;
23070pub type fuse_opcode = crate::types::c_uint;
23071pub const fuse_notify_code_FUSE_NOTIFY_POLL: fuse_notify_code = 1;
23072pub const fuse_notify_code_FUSE_NOTIFY_INVAL_INODE: fuse_notify_code = 2;
23073pub const fuse_notify_code_FUSE_NOTIFY_INVAL_ENTRY: fuse_notify_code = 3;
23074pub const fuse_notify_code_FUSE_NOTIFY_STORE: fuse_notify_code = 4;
23075pub const fuse_notify_code_FUSE_NOTIFY_RETRIEVE: fuse_notify_code = 5;
23076pub const fuse_notify_code_FUSE_NOTIFY_DELETE: fuse_notify_code = 6;
23077pub const fuse_notify_code_FUSE_NOTIFY_CODE_MAX: fuse_notify_code = 7;
23078pub type fuse_notify_code = crate::types::c_uint;
23079#[repr(C)]
23080#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23081pub struct fuse_entry_out {
23082    pub nodeid: u64,
23083    pub generation: u64,
23084    pub entry_valid: u64,
23085    pub attr_valid: u64,
23086    pub entry_valid_nsec: u32,
23087    pub attr_valid_nsec: u32,
23088    pub attr: fuse_attr,
23089}
23090#[repr(C)]
23091#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23092pub struct fuse_entry_bpf_out {
23093    pub backing_action: u64,
23094    pub backing_fd: u64,
23095    pub bpf_action: u64,
23096    pub bpf_fd: u64,
23097}
23098#[repr(C)]
23099#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23100pub struct fuse_forget_in {
23101    pub nlookup: u64,
23102}
23103#[repr(C)]
23104#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23105pub struct fuse_forget_one {
23106    pub nodeid: u64,
23107    pub nlookup: u64,
23108}
23109#[repr(C)]
23110#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23111pub struct fuse_batch_forget_in {
23112    pub count: u32,
23113    pub dummy: u32,
23114}
23115#[repr(C)]
23116#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23117pub struct fuse_getattr_in {
23118    pub getattr_flags: u32,
23119    pub dummy: u32,
23120    pub fh: u64,
23121}
23122#[repr(C)]
23123#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23124pub struct fuse_attr_out {
23125    pub attr_valid: u64,
23126    pub attr_valid_nsec: u32,
23127    pub dummy: u32,
23128    pub attr: fuse_attr,
23129}
23130#[repr(C)]
23131#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23132pub struct fuse_statx_in {
23133    pub getattr_flags: u32,
23134    pub reserved: u32,
23135    pub fh: u64,
23136    pub sx_flags: u32,
23137    pub sx_mask: u32,
23138}
23139#[repr(C)]
23140#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23141pub struct fuse_statx_out {
23142    pub attr_valid: u64,
23143    pub attr_valid_nsec: u32,
23144    pub flags: u32,
23145    pub spare: [u64; 2usize],
23146    pub stat: fuse_statx,
23147}
23148#[repr(C)]
23149#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23150pub struct fuse_mknod_in {
23151    pub mode: u32,
23152    pub rdev: u32,
23153    pub umask: u32,
23154    pub padding: u32,
23155}
23156#[repr(C)]
23157#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23158pub struct fuse_mkdir_in {
23159    pub mode: u32,
23160    pub umask: u32,
23161}
23162#[repr(C)]
23163#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23164pub struct fuse_rename_in {
23165    pub newdir: u64,
23166}
23167#[repr(C)]
23168#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23169pub struct fuse_rename2_in {
23170    pub newdir: u64,
23171    pub flags: u32,
23172    pub padding: u32,
23173}
23174#[repr(C)]
23175#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23176pub struct fuse_link_in {
23177    pub oldnodeid: u64,
23178}
23179#[repr(C)]
23180#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23181pub struct fuse_setattr_in {
23182    pub valid: u32,
23183    pub padding: u32,
23184    pub fh: u64,
23185    pub size: u64,
23186    pub lock_owner: u64,
23187    pub atime: u64,
23188    pub mtime: u64,
23189    pub ctime: u64,
23190    pub atimensec: u32,
23191    pub mtimensec: u32,
23192    pub ctimensec: u32,
23193    pub mode: u32,
23194    pub unused4: u32,
23195    pub uid: u32,
23196    pub gid: u32,
23197    pub unused5: u32,
23198}
23199#[repr(C)]
23200#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23201pub struct fuse_open_in {
23202    pub flags: u32,
23203    pub open_flags: u32,
23204}
23205#[repr(C)]
23206#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23207pub struct fuse_create_in {
23208    pub flags: u32,
23209    pub mode: u32,
23210    pub umask: u32,
23211    pub open_flags: u32,
23212}
23213#[repr(C)]
23214#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
23215pub struct fuse_open_out {
23216    pub fh: u64,
23217    pub open_flags: u32,
23218    pub __bindgen_anon_1: fuse_open_out__bindgen_ty_1,
23219}
23220#[repr(C)]
23221#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
23222pub union fuse_open_out__bindgen_ty_1 {
23223    pub passthrough_fh: u32,
23224    pub backing_id: i32,
23225}
23226impl Default for fuse_open_out__bindgen_ty_1 {
23227    fn default() -> Self {
23228        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23229        unsafe {
23230            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23231            s.assume_init()
23232        }
23233    }
23234}
23235impl Default for fuse_open_out {
23236    fn default() -> Self {
23237        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23238        unsafe {
23239            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23240            s.assume_init()
23241        }
23242    }
23243}
23244#[repr(C)]
23245#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23246pub struct fuse_release_in {
23247    pub fh: u64,
23248    pub flags: u32,
23249    pub release_flags: u32,
23250    pub lock_owner: u64,
23251}
23252#[repr(C)]
23253#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23254pub struct fuse_flush_in {
23255    pub fh: u64,
23256    pub unused: u32,
23257    pub padding: u32,
23258    pub lock_owner: u64,
23259}
23260#[repr(C)]
23261#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23262pub struct fuse_read_in {
23263    pub fh: u64,
23264    pub offset: u64,
23265    pub size: u32,
23266    pub read_flags: u32,
23267    pub lock_owner: u64,
23268    pub flags: u32,
23269    pub padding: u32,
23270}
23271#[repr(C)]
23272#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23273pub struct fuse_read_out {
23274    pub offset: u64,
23275    pub again: u32,
23276    pub padding: u32,
23277}
23278#[repr(C)]
23279#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23280pub struct fuse_passthrough_out_v0 {
23281    pub fd: u32,
23282    pub len: u32,
23283    pub vec: uaddr,
23284}
23285impl Default for fuse_passthrough_out_v0 {
23286    fn default() -> Self {
23287        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23288        unsafe {
23289            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23290            s.assume_init()
23291        }
23292    }
23293}
23294#[repr(C)]
23295#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23296pub struct fuse_write_in {
23297    pub fh: u64,
23298    pub offset: u64,
23299    pub size: u32,
23300    pub write_flags: u32,
23301    pub lock_owner: u64,
23302    pub flags: u32,
23303    pub padding: u32,
23304}
23305#[repr(C)]
23306#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23307pub struct fuse_write_out {
23308    pub size: u32,
23309    pub padding: u32,
23310}
23311#[repr(C)]
23312#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23313pub struct fuse_statfs_out {
23314    pub st: fuse_kstatfs,
23315}
23316#[repr(C)]
23317#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23318pub struct fuse_fsync_in {
23319    pub fh: u64,
23320    pub fsync_flags: u32,
23321    pub padding: u32,
23322}
23323#[repr(C)]
23324#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23325pub struct fuse_setxattr_in {
23326    pub size: u32,
23327    pub flags: u32,
23328    pub setxattr_flags: u32,
23329    pub padding: u32,
23330}
23331#[repr(C)]
23332#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23333pub struct fuse_getxattr_in {
23334    pub size: u32,
23335    pub padding: u32,
23336}
23337#[repr(C)]
23338#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23339pub struct fuse_getxattr_out {
23340    pub size: u32,
23341    pub padding: u32,
23342}
23343#[repr(C)]
23344#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23345pub struct fuse_lk_in {
23346    pub fh: u64,
23347    pub owner: u64,
23348    pub lk: fuse_file_lock,
23349    pub lk_flags: u32,
23350    pub padding: u32,
23351}
23352#[repr(C)]
23353#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23354pub struct fuse_lk_out {
23355    pub lk: fuse_file_lock,
23356}
23357#[repr(C)]
23358#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23359pub struct fuse_access_in {
23360    pub mask: u32,
23361    pub padding: u32,
23362}
23363#[repr(C)]
23364#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23365pub struct fuse_init_in {
23366    pub major: u32,
23367    pub minor: u32,
23368    pub max_readahead: u32,
23369    pub flags: u32,
23370    pub flags2: u32,
23371    pub unused: [u32; 11usize],
23372}
23373#[repr(C)]
23374#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23375pub struct fuse_init_out {
23376    pub major: u32,
23377    pub minor: u32,
23378    pub max_readahead: u32,
23379    pub flags: u32,
23380    pub max_background: u16,
23381    pub congestion_threshold: u16,
23382    pub max_write: u32,
23383    pub time_gran: u32,
23384    pub max_pages: u16,
23385    pub map_alignment: u16,
23386    pub flags2: u32,
23387    pub max_stack_depth: u32,
23388    pub unused: [u32; 6usize],
23389}
23390#[repr(C)]
23391#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23392pub struct cuse_init_in {
23393    pub major: u32,
23394    pub minor: u32,
23395    pub unused: u32,
23396    pub flags: u32,
23397}
23398#[repr(C)]
23399#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23400pub struct cuse_init_out {
23401    pub major: u32,
23402    pub minor: u32,
23403    pub unused: u32,
23404    pub flags: u32,
23405    pub max_read: u32,
23406    pub max_write: u32,
23407    pub dev_major: u32,
23408    pub dev_minor: u32,
23409    pub spare: [u32; 10usize],
23410}
23411#[repr(C)]
23412#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23413pub struct fuse_interrupt_in {
23414    pub unique: u64,
23415}
23416#[repr(C)]
23417#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23418pub struct fuse_bmap_in {
23419    pub block: u64,
23420    pub blocksize: u32,
23421    pub padding: u32,
23422}
23423#[repr(C)]
23424#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23425pub struct fuse_bmap_out {
23426    pub block: u64,
23427}
23428#[repr(C)]
23429#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23430pub struct fuse_ioctl_in {
23431    pub fh: u64,
23432    pub flags: u32,
23433    pub cmd: u32,
23434    pub arg: u64,
23435    pub in_size: u32,
23436    pub out_size: u32,
23437}
23438#[repr(C)]
23439#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23440pub struct fuse_ioctl_iovec {
23441    pub base: u64,
23442    pub len: u64,
23443}
23444#[repr(C)]
23445#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23446pub struct fuse_ioctl_out {
23447    pub result: i32,
23448    pub flags: u32,
23449    pub in_iovs: u32,
23450    pub out_iovs: u32,
23451}
23452#[repr(C)]
23453#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23454pub struct fuse_poll_in {
23455    pub fh: u64,
23456    pub kh: u64,
23457    pub flags: u32,
23458    pub events: u32,
23459}
23460#[repr(C)]
23461#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23462pub struct fuse_poll_out {
23463    pub revents: u32,
23464    pub padding: u32,
23465}
23466#[repr(C)]
23467#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23468pub struct fuse_notify_poll_wakeup_out {
23469    pub kh: u64,
23470}
23471#[repr(C)]
23472#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23473pub struct fuse_fallocate_in {
23474    pub fh: u64,
23475    pub offset: u64,
23476    pub length: u64,
23477    pub mode: u32,
23478    pub padding: u32,
23479}
23480#[repr(C)]
23481#[derive(Clone, Copy, Debug, FromBytes, Immutable, IntoBytes, KnownLayout)]
23482pub struct fuse_in_header {
23483    pub len: u32,
23484    pub opcode: u32,
23485    pub unique: u64,
23486    pub nodeid: u64,
23487    pub uid: u32,
23488    pub gid: u32,
23489    pub pid: u32,
23490    pub __bindgen_anon_1: fuse_in_header__bindgen_ty_1,
23491}
23492#[repr(C)]
23493#[derive(Clone, Copy, FromBytes, Immutable, IntoBytes, KnownLayout)]
23494pub union fuse_in_header__bindgen_ty_1 {
23495    pub error_in: u32,
23496    pub __bindgen_anon_1: fuse_in_header__bindgen_ty_1__bindgen_ty_1,
23497}
23498#[repr(C)]
23499#[derive(Clone, Copy, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23500pub struct fuse_in_header__bindgen_ty_1__bindgen_ty_1 {
23501    pub total_extlen: u16,
23502    pub padding: u16,
23503}
23504impl Default for fuse_in_header__bindgen_ty_1 {
23505    fn default() -> Self {
23506        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23507        unsafe {
23508            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23509            s.assume_init()
23510        }
23511    }
23512}
23513impl Default for fuse_in_header {
23514    fn default() -> Self {
23515        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23516        unsafe {
23517            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23518            s.assume_init()
23519        }
23520    }
23521}
23522#[repr(C)]
23523#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23524pub struct fuse_out_header {
23525    pub len: u32,
23526    pub error: i32,
23527    pub unique: u64,
23528}
23529#[repr(C)]
23530#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23531pub struct fuse_dirent {
23532    pub ino: u64,
23533    pub off: u64,
23534    pub namelen: u32,
23535    pub type_: u32,
23536    pub name: __IncompleteArrayField<crate::types::c_char>,
23537}
23538#[repr(C)]
23539#[derive(Clone, Debug, Default, FromBytes, Immutable, IntoBytes, KnownLayout)]
23540pub struct fuse_direntplus {
23541    pub entry_out: fuse_entry_out,
23542    pub dirent: fuse_dirent,
23543}
23544#[repr(C)]
23545#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23546pub struct fuse_notify_inval_inode_out {
23547    pub ino: u64,
23548    pub off: i64,
23549    pub len: i64,
23550}
23551#[repr(C)]
23552#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23553pub struct fuse_notify_inval_entry_out {
23554    pub parent: u64,
23555    pub namelen: u32,
23556    pub flags: u32,
23557}
23558#[repr(C)]
23559#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23560pub struct fuse_notify_delete_out {
23561    pub parent: u64,
23562    pub child: u64,
23563    pub namelen: u32,
23564    pub padding: u32,
23565}
23566#[repr(C)]
23567#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23568pub struct fuse_notify_store_out {
23569    pub nodeid: u64,
23570    pub offset: u64,
23571    pub size: u32,
23572    pub padding: u32,
23573}
23574#[repr(C)]
23575#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23576pub struct fuse_notify_retrieve_out {
23577    pub notify_unique: u64,
23578    pub nodeid: u64,
23579    pub offset: u64,
23580    pub size: u32,
23581    pub padding: u32,
23582}
23583#[repr(C)]
23584#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23585pub struct fuse_notify_retrieve_in {
23586    pub dummy1: u64,
23587    pub offset: u64,
23588    pub size: u32,
23589    pub dummy2: u32,
23590    pub dummy3: u64,
23591    pub dummy4: u64,
23592}
23593#[repr(C)]
23594#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23595pub struct fuse_backing_map {
23596    pub fd: i32,
23597    pub flags: u32,
23598    pub padding: u64,
23599}
23600#[repr(C)]
23601#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23602pub struct fuse_lseek_in {
23603    pub fh: u64,
23604    pub offset: u64,
23605    pub whence: u32,
23606    pub padding: u32,
23607}
23608#[repr(C)]
23609#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23610pub struct fuse_lseek_out {
23611    pub offset: u64,
23612}
23613#[repr(C)]
23614#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23615pub struct fuse_copy_file_range_in {
23616    pub fh_in: u64,
23617    pub off_in: u64,
23618    pub nodeid_out: u64,
23619    pub fh_out: u64,
23620    pub off_out: u64,
23621    pub len: u64,
23622    pub flags: u64,
23623}
23624#[repr(C)]
23625#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23626pub struct fuse_setupmapping_in {
23627    pub fh: u64,
23628    pub foffset: u64,
23629    pub len: u64,
23630    pub flags: u64,
23631    pub moffset: u64,
23632}
23633#[repr(C)]
23634#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23635pub struct fuse_removemapping_in {
23636    pub count: u32,
23637}
23638#[repr(C)]
23639#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23640pub struct fuse_removemapping_one {
23641    pub moffset: u64,
23642    pub len: u64,
23643}
23644#[repr(C)]
23645#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23646pub struct fuse_syncfs_in {
23647    pub padding: u64,
23648}
23649#[repr(C)]
23650#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23651pub struct fuse_secctx {
23652    pub size: u32,
23653    pub padding: u32,
23654}
23655#[repr(C)]
23656#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23657pub struct fuse_secctx_header {
23658    pub size: u32,
23659    pub nr_secctx: u32,
23660}
23661#[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"]
23662#[repr(C)]
23663#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23664pub struct fuse_ext_header {
23665    pub size: u32,
23666    pub type_: u32,
23667}
23668#[doc = " struct fuse_supp_groups - Supplementary group extension\n @nr_groups: number of supplementary groups\n @groups: flexible array of group IDs"]
23669#[repr(C)]
23670#[derive(Debug, Default)]
23671pub struct fuse_supp_groups {
23672    pub nr_groups: u32,
23673    pub groups: __IncompleteArrayField<u32>,
23674}
23675#[repr(C)]
23676#[derive(Debug)]
23677pub struct fuse_mount {
23678    _unused: [u8; 0],
23679}
23680#[doc = " One input argument of a request"]
23681#[repr(C)]
23682#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23683pub struct fuse_bpf_in_arg {
23684    pub size: u32,
23685    pub __bindgen_padding_0: [u8; 4usize],
23686    pub value: uaddr,
23687    pub end_offset: uaddr,
23688}
23689impl Default for fuse_bpf_in_arg {
23690    fn default() -> Self {
23691        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23692        unsafe {
23693            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23694            s.assume_init()
23695        }
23696    }
23697}
23698#[doc = " One output argument of a request"]
23699#[repr(C)]
23700#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23701pub struct fuse_bpf_arg {
23702    pub size: u32,
23703    pub __bindgen_padding_0: [u8; 4usize],
23704    pub value: uaddr,
23705    pub end_offset: uaddr,
23706}
23707impl Default for fuse_bpf_arg {
23708    fn default() -> Self {
23709        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23710        unsafe {
23711            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23712            s.assume_init()
23713        }
23714    }
23715}
23716#[repr(C)]
23717#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23718pub struct fuse_bpf_args {
23719    pub nodeid: u64,
23720    pub opcode: u32,
23721    pub error_in: u32,
23722    pub in_numargs: u32,
23723    pub out_numargs: u32,
23724    pub flags: u32,
23725    pub __bindgen_padding_0: [u8; 4usize],
23726    pub in_args: [fuse_bpf_in_arg; 5usize],
23727    pub out_args: [fuse_bpf_arg; 3usize],
23728}
23729impl Default for fuse_bpf_args {
23730    fn default() -> Self {
23731        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23732        unsafe {
23733            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23734            s.assume_init()
23735        }
23736    }
23737}
23738pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_PMEM: kgsl_user_mem_type = 0;
23739pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ASHMEM: kgsl_user_mem_type = 1;
23740pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ADDR: kgsl_user_mem_type = 2;
23741pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_ION: kgsl_user_mem_type = 3;
23742pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_DMABUF: kgsl_user_mem_type = 3;
23743pub const kgsl_user_mem_type_KGSL_USER_MEM_TYPE_MAX: kgsl_user_mem_type = 7;
23744pub type kgsl_user_mem_type = crate::types::c_uint;
23745pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_NO_ERROR: kgsl_ctx_reset_stat = 0;
23746pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_GUILTY_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 1;
23747pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_INNOCENT_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 2;
23748pub const kgsl_ctx_reset_stat_KGSL_CTX_STAT_UNKNOWN_CONTEXT_RESET_EXT: kgsl_ctx_reset_stat = 3;
23749pub type kgsl_ctx_reset_stat = crate::types::c_uint;
23750#[repr(C)]
23751#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23752pub struct kgsl_devinfo {
23753    pub device_id: crate::types::c_uint,
23754    pub chip_id: crate::types::c_uint,
23755    pub mmu_enabled: crate::types::c_uint,
23756    pub __bindgen_padding_0: [u8; 4usize],
23757    pub gmem_gpubaseaddr: crate::types::c_ulong,
23758    pub gpu_id: crate::types::c_uint,
23759    pub __bindgen_padding_1: [u8; 4usize],
23760    pub gmem_sizebytes: __kernel_size_t,
23761}
23762#[repr(C)]
23763#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23764pub struct kgsl_devmemstore {
23765    pub soptimestamp: crate::types::c_uint,
23766    pub sbz: crate::types::c_uint,
23767    pub eoptimestamp: crate::types::c_uint,
23768    pub sbz2: crate::types::c_uint,
23769    pub preempted: crate::types::c_uint,
23770    pub sbz3: crate::types::c_uint,
23771    pub ref_wait_ts: crate::types::c_uint,
23772    pub sbz4: crate::types::c_uint,
23773    pub current_context: crate::types::c_uint,
23774    pub sbz5: crate::types::c_uint,
23775}
23776pub const kgsl_timestamp_type_KGSL_TIMESTAMP_CONSUMED: kgsl_timestamp_type = 1;
23777pub const kgsl_timestamp_type_KGSL_TIMESTAMP_RETIRED: kgsl_timestamp_type = 2;
23778pub const kgsl_timestamp_type_KGSL_TIMESTAMP_QUEUED: kgsl_timestamp_type = 3;
23779pub type kgsl_timestamp_type = crate::types::c_uint;
23780#[repr(C)]
23781#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23782pub struct kgsl_capabilities_properties {
23783    pub list: __u64,
23784    pub count: __u32,
23785    pub __bindgen_padding_0: [u8; 4usize],
23786}
23787#[repr(C)]
23788#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23789pub struct kgsl_capabilities {
23790    pub data: __u64,
23791    pub size: __u64,
23792    pub querytype: __u32,
23793    pub __bindgen_padding_0: [u8; 4usize],
23794}
23795#[repr(C)]
23796#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23797pub struct kgsl_shadowprop {
23798    pub gpuaddr: crate::types::c_ulong,
23799    pub size: __kernel_size_t,
23800    pub flags: crate::types::c_uint,
23801    pub __bindgen_padding_0: [u8; 4usize],
23802}
23803#[repr(C)]
23804#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23805pub struct kgsl_qdss_stm_prop {
23806    pub gpuaddr: __u64,
23807    pub size: __u64,
23808}
23809#[repr(C)]
23810#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23811pub struct kgsl_qtimer_prop {
23812    pub gpuaddr: __u64,
23813    pub size: __u64,
23814}
23815#[repr(C)]
23816#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23817pub struct kgsl_version {
23818    pub drv_major: crate::types::c_uint,
23819    pub drv_minor: crate::types::c_uint,
23820    pub dev_major: crate::types::c_uint,
23821    pub dev_minor: crate::types::c_uint,
23822}
23823#[repr(C)]
23824#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23825pub struct kgsl_sp_generic_mem {
23826    pub local: __u64,
23827    pub pvt: __u64,
23828}
23829#[repr(C)]
23830#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23831pub struct kgsl_ucode_version {
23832    pub pfp: crate::types::c_uint,
23833    pub pm4: crate::types::c_uint,
23834}
23835#[repr(C)]
23836#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23837pub struct kgsl_gpmu_version {
23838    pub major: crate::types::c_uint,
23839    pub minor: crate::types::c_uint,
23840    pub features: crate::types::c_uint,
23841}
23842#[repr(C)]
23843#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23844pub struct kgsl_context_property {
23845    pub data: __u64,
23846    pub size: __u32,
23847    pub type_: __u32,
23848    pub contextid: __u32,
23849    pub __bindgen_padding_0: [u8; 4usize],
23850}
23851#[repr(C)]
23852#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23853pub struct kgsl_context_property_fault {
23854    pub faults: __s32,
23855    pub timestamp: __u32,
23856}
23857#[repr(C)]
23858#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23859pub struct kgsl_gpu_model {
23860    pub gpu_model: [crate::types::c_char; 32usize],
23861}
23862#[repr(C)]
23863#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23864pub struct kgsl_ibdesc {
23865    pub gpuaddr: crate::types::c_ulong,
23866    pub __pad: crate::types::c_ulong,
23867    pub sizedwords: __kernel_size_t,
23868    pub ctrl: crate::types::c_uint,
23869    pub __bindgen_padding_0: [u8; 4usize],
23870}
23871#[repr(C)]
23872#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23873pub struct kgsl_cmdbatch_profiling_buffer {
23874    pub wall_clock_s: __u64,
23875    pub wall_clock_ns: __u64,
23876    pub gpu_ticks_queued: __u64,
23877    pub gpu_ticks_submitted: __u64,
23878    pub gpu_ticks_retired: __u64,
23879}
23880#[repr(C)]
23881#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23882pub struct kgsl_device_getproperty {
23883    pub type_: crate::types::c_uint,
23884    pub __bindgen_padding_0: [u8; 4usize],
23885    pub value: uaddr,
23886    pub sizebytes: __kernel_size_t,
23887}
23888impl Default for kgsl_device_getproperty {
23889    fn default() -> Self {
23890        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23891        unsafe {
23892            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23893            s.assume_init()
23894        }
23895    }
23896}
23897#[repr(C)]
23898#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23899pub struct kgsl_device_waittimestamp {
23900    pub timestamp: crate::types::c_uint,
23901    pub timeout: crate::types::c_uint,
23902}
23903#[repr(C)]
23904#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23905pub struct kgsl_device_waittimestamp_ctxtid {
23906    pub context_id: crate::types::c_uint,
23907    pub timestamp: crate::types::c_uint,
23908    pub timeout: crate::types::c_uint,
23909}
23910#[repr(C)]
23911#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23912pub struct kgsl_ringbuffer_issueibcmds {
23913    pub drawctxt_id: crate::types::c_uint,
23914    pub __bindgen_padding_0: [u8; 4usize],
23915    pub ibdesc_addr: crate::types::c_ulong,
23916    pub numibs: crate::types::c_uint,
23917    pub timestamp: crate::types::c_uint,
23918    pub flags: crate::types::c_uint,
23919    pub __bindgen_padding_1: [u8; 4usize],
23920}
23921#[repr(C)]
23922#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23923pub struct kgsl_cmdstream_readtimestamp {
23924    pub type_: crate::types::c_uint,
23925    pub timestamp: crate::types::c_uint,
23926}
23927#[repr(C)]
23928#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23929pub struct kgsl_cmdstream_freememontimestamp {
23930    pub gpuaddr: crate::types::c_ulong,
23931    pub type_: crate::types::c_uint,
23932    pub timestamp: crate::types::c_uint,
23933}
23934#[repr(C)]
23935#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23936pub struct kgsl_drawctxt_create {
23937    pub flags: crate::types::c_uint,
23938    pub drawctxt_id: crate::types::c_uint,
23939}
23940#[repr(C)]
23941#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23942pub struct kgsl_drawctxt_destroy {
23943    pub drawctxt_id: crate::types::c_uint,
23944}
23945#[repr(C)]
23946#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23947pub struct kgsl_map_user_mem {
23948    pub fd: crate::types::c_int,
23949    pub __bindgen_padding_0: [u8; 4usize],
23950    pub gpuaddr: crate::types::c_ulong,
23951    pub len: __kernel_size_t,
23952    pub offset: __kernel_size_t,
23953    pub hostptr: crate::types::c_ulong,
23954    pub memtype: kgsl_user_mem_type,
23955    pub flags: crate::types::c_uint,
23956}
23957impl Default for kgsl_map_user_mem {
23958    fn default() -> Self {
23959        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23960        unsafe {
23961            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23962            s.assume_init()
23963        }
23964    }
23965}
23966#[repr(C)]
23967#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23968pub struct kgsl_cmdstream_readtimestamp_ctxtid {
23969    pub context_id: crate::types::c_uint,
23970    pub type_: crate::types::c_uint,
23971    pub timestamp: crate::types::c_uint,
23972}
23973#[repr(C)]
23974#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23975pub struct kgsl_cmdstream_freememontimestamp_ctxtid {
23976    pub context_id: crate::types::c_uint,
23977    pub __bindgen_padding_0: [u8; 4usize],
23978    pub gpuaddr: crate::types::c_ulong,
23979    pub type_: crate::types::c_uint,
23980    pub timestamp: crate::types::c_uint,
23981}
23982#[repr(C)]
23983#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23984pub struct kgsl_sharedmem_from_pmem {
23985    pub pmem_fd: crate::types::c_int,
23986    pub __bindgen_padding_0: [u8; 4usize],
23987    pub gpuaddr: crate::types::c_ulong,
23988    pub len: crate::types::c_uint,
23989    pub offset: crate::types::c_uint,
23990}
23991#[repr(C)]
23992#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23993pub struct kgsl_sharedmem_free {
23994    pub gpuaddr: crate::types::c_ulong,
23995}
23996#[repr(C)]
23997#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
23998pub struct kgsl_cff_user_event {
23999    pub cff_opcode: crate::types::c_uchar,
24000    pub __bindgen_padding_0: [u8; 3usize],
24001    pub op1: crate::types::c_uint,
24002    pub op2: crate::types::c_uint,
24003    pub op3: crate::types::c_uint,
24004    pub op4: crate::types::c_uint,
24005    pub op5: crate::types::c_uint,
24006    pub __pad: [crate::types::c_uint; 2usize],
24007}
24008#[repr(C)]
24009#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24010pub struct kgsl_gmem_desc {
24011    pub x: crate::types::c_uint,
24012    pub y: crate::types::c_uint,
24013    pub width: crate::types::c_uint,
24014    pub height: crate::types::c_uint,
24015    pub pitch: crate::types::c_uint,
24016}
24017#[repr(C)]
24018#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24019pub struct kgsl_buffer_desc {
24020    pub hostptr: uaddr,
24021    pub gpuaddr: crate::types::c_ulong,
24022    pub size: crate::types::c_int,
24023    pub format: crate::types::c_uint,
24024    pub pitch: crate::types::c_uint,
24025    pub enabled: crate::types::c_uint,
24026}
24027impl Default for kgsl_buffer_desc {
24028    fn default() -> Self {
24029        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24030        unsafe {
24031            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24032            s.assume_init()
24033        }
24034    }
24035}
24036#[repr(C)]
24037#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24038pub struct kgsl_bind_gmem_shadow {
24039    pub drawctxt_id: crate::types::c_uint,
24040    pub gmem_desc: kgsl_gmem_desc,
24041    pub shadow_x: crate::types::c_uint,
24042    pub shadow_y: crate::types::c_uint,
24043    pub shadow_buffer: kgsl_buffer_desc,
24044    pub buffer_id: crate::types::c_uint,
24045    pub __bindgen_padding_0: [u8; 4usize],
24046}
24047impl Default for kgsl_bind_gmem_shadow {
24048    fn default() -> Self {
24049        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24050        unsafe {
24051            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24052            s.assume_init()
24053        }
24054    }
24055}
24056#[repr(C)]
24057#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24058pub struct kgsl_sharedmem_from_vmalloc {
24059    pub gpuaddr: crate::types::c_ulong,
24060    pub hostptr: crate::types::c_uint,
24061    pub flags: crate::types::c_uint,
24062}
24063#[repr(C)]
24064#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24065pub struct kgsl_drawctxt_set_bin_base_offset {
24066    pub drawctxt_id: crate::types::c_uint,
24067    pub offset: crate::types::c_uint,
24068}
24069pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MIN: kgsl_cmdwindow_type = 0;
24070pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_2D: kgsl_cmdwindow_type = 0;
24071pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_3D: kgsl_cmdwindow_type = 1;
24072pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MMU: kgsl_cmdwindow_type = 2;
24073pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_ARBITER: kgsl_cmdwindow_type = 255;
24074pub const kgsl_cmdwindow_type_KGSL_CMDWINDOW_MAX: kgsl_cmdwindow_type = 255;
24075pub type kgsl_cmdwindow_type = crate::types::c_uint;
24076#[repr(C)]
24077#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24078pub struct kgsl_cmdwindow_write {
24079    pub target: kgsl_cmdwindow_type,
24080    pub addr: crate::types::c_uint,
24081    pub data: crate::types::c_uint,
24082}
24083impl Default for kgsl_cmdwindow_write {
24084    fn default() -> Self {
24085        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24086        unsafe {
24087            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24088            s.assume_init()
24089        }
24090    }
24091}
24092#[repr(C)]
24093#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24094pub struct kgsl_gpumem_alloc {
24095    pub gpuaddr: crate::types::c_ulong,
24096    pub size: __kernel_size_t,
24097    pub flags: crate::types::c_uint,
24098    pub __bindgen_padding_0: [u8; 4usize],
24099}
24100#[repr(C)]
24101#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24102pub struct kgsl_cff_syncmem {
24103    pub gpuaddr: crate::types::c_ulong,
24104    pub len: __kernel_size_t,
24105    pub __pad: [crate::types::c_uint; 2usize],
24106}
24107#[repr(C)]
24108#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24109pub struct kgsl_timestamp_event {
24110    pub type_: crate::types::c_int,
24111    pub timestamp: crate::types::c_uint,
24112    pub context_id: crate::types::c_uint,
24113    pub __bindgen_padding_0: [u8; 4usize],
24114    pub priv_: uaddr,
24115    pub len: __kernel_size_t,
24116}
24117impl Default for kgsl_timestamp_event {
24118    fn default() -> Self {
24119        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24120        unsafe {
24121            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24122            s.assume_init()
24123        }
24124    }
24125}
24126#[repr(C)]
24127#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24128pub struct kgsl_timestamp_event_genlock {
24129    pub handle: crate::types::c_int,
24130}
24131#[repr(C)]
24132#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24133pub struct kgsl_timestamp_event_fence {
24134    pub fence_fd: crate::types::c_int,
24135}
24136#[repr(C)]
24137#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24138pub struct kgsl_gpumem_alloc_id {
24139    pub id: crate::types::c_uint,
24140    pub flags: crate::types::c_uint,
24141    pub size: __kernel_size_t,
24142    pub mmapsize: __kernel_size_t,
24143    pub gpuaddr: crate::types::c_ulong,
24144    pub __pad: [crate::types::c_ulong; 2usize],
24145}
24146#[repr(C)]
24147#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24148pub struct kgsl_gpumem_free_id {
24149    pub id: crate::types::c_uint,
24150    pub __pad: crate::types::c_uint,
24151}
24152#[repr(C)]
24153#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24154pub struct kgsl_gpumem_get_info {
24155    pub gpuaddr: crate::types::c_ulong,
24156    pub id: crate::types::c_uint,
24157    pub flags: crate::types::c_uint,
24158    pub size: __kernel_size_t,
24159    pub mmapsize: __kernel_size_t,
24160    pub useraddr: crate::types::c_ulong,
24161    pub __pad: [crate::types::c_ulong; 4usize],
24162}
24163#[repr(C)]
24164#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24165pub struct kgsl_gpumem_sync_cache {
24166    pub gpuaddr: crate::types::c_ulong,
24167    pub id: crate::types::c_uint,
24168    pub op: crate::types::c_uint,
24169    pub offset: __kernel_size_t,
24170    pub length: __kernel_size_t,
24171}
24172#[repr(C)]
24173#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24174pub struct kgsl_perfcounter_get {
24175    pub groupid: crate::types::c_uint,
24176    pub countable: crate::types::c_uint,
24177    pub offset: crate::types::c_uint,
24178    pub offset_hi: crate::types::c_uint,
24179    pub __pad: crate::types::c_uint,
24180}
24181#[repr(C)]
24182#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24183pub struct kgsl_perfcounter_put {
24184    pub groupid: crate::types::c_uint,
24185    pub countable: crate::types::c_uint,
24186    pub __pad: [crate::types::c_uint; 2usize],
24187}
24188#[repr(C)]
24189#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24190pub struct kgsl_perfcounter_query {
24191    pub groupid: crate::types::c_uint,
24192    pub __bindgen_padding_0: [u8; 4usize],
24193    pub countables: uref<crate::types::c_uint>,
24194    pub count: crate::types::c_uint,
24195    pub max_counters: crate::types::c_uint,
24196    pub __pad: [crate::types::c_uint; 2usize],
24197}
24198impl Default for kgsl_perfcounter_query {
24199    fn default() -> Self {
24200        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24201        unsafe {
24202            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24203            s.assume_init()
24204        }
24205    }
24206}
24207#[repr(C)]
24208#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24209pub struct kgsl_perfcounter_read_group {
24210    pub groupid: crate::types::c_uint,
24211    pub countable: crate::types::c_uint,
24212    pub value: crate::types::c_ulonglong,
24213}
24214#[repr(C)]
24215#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24216pub struct kgsl_perfcounter_read {
24217    pub reads: uref<kgsl_perfcounter_read_group>,
24218    pub count: crate::types::c_uint,
24219    pub __pad: [crate::types::c_uint; 2usize],
24220    pub __bindgen_padding_0: [u8; 4usize],
24221}
24222impl Default for kgsl_perfcounter_read {
24223    fn default() -> Self {
24224        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24225        unsafe {
24226            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24227            s.assume_init()
24228        }
24229    }
24230}
24231#[repr(C)]
24232#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24233pub struct kgsl_gpumem_sync_cache_bulk {
24234    pub id_list: uref<crate::types::c_uint>,
24235    pub count: crate::types::c_uint,
24236    pub op: crate::types::c_uint,
24237    pub __pad: [crate::types::c_uint; 2usize],
24238}
24239impl Default for kgsl_gpumem_sync_cache_bulk {
24240    fn default() -> Self {
24241        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24242        unsafe {
24243            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24244            s.assume_init()
24245        }
24246    }
24247}
24248#[repr(C)]
24249#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24250pub struct kgsl_cmd_syncpoint_timestamp {
24251    pub context_id: crate::types::c_uint,
24252    pub timestamp: crate::types::c_uint,
24253}
24254#[repr(C)]
24255#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24256pub struct kgsl_cmd_syncpoint_fence {
24257    pub fd: crate::types::c_int,
24258}
24259#[repr(C)]
24260#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24261pub struct kgsl_cmd_syncpoint_timeline {
24262    pub timelines: __u64,
24263    pub count: __u32,
24264    pub timelines_size: __u32,
24265}
24266#[repr(C)]
24267#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24268pub struct kgsl_cmd_syncpoint {
24269    pub type_: crate::types::c_int,
24270    pub __bindgen_padding_0: [u8; 4usize],
24271    pub priv_: uaddr,
24272    pub size: __kernel_size_t,
24273}
24274impl Default for kgsl_cmd_syncpoint {
24275    fn default() -> Self {
24276        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24277        unsafe {
24278            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24279            s.assume_init()
24280        }
24281    }
24282}
24283#[repr(C)]
24284#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24285pub struct kgsl_submit_commands {
24286    pub context_id: crate::types::c_uint,
24287    pub flags: crate::types::c_uint,
24288    pub cmdlist: uref<kgsl_ibdesc>,
24289    pub numcmds: crate::types::c_uint,
24290    pub __bindgen_padding_0: [u8; 4usize],
24291    pub synclist: uref<kgsl_cmd_syncpoint>,
24292    pub numsyncs: crate::types::c_uint,
24293    pub timestamp: crate::types::c_uint,
24294    pub __pad: [crate::types::c_uint; 4usize],
24295}
24296impl Default for kgsl_submit_commands {
24297    fn default() -> Self {
24298        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24299        unsafe {
24300            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24301            s.assume_init()
24302        }
24303    }
24304}
24305#[repr(C)]
24306#[derive(Debug, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24307pub struct kgsl_device_constraint {
24308    pub type_: crate::types::c_uint,
24309    pub context_id: crate::types::c_uint,
24310    pub data: uaddr,
24311    pub size: __kernel_size_t,
24312}
24313impl Default for kgsl_device_constraint {
24314    fn default() -> Self {
24315        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24316        unsafe {
24317            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24318            s.assume_init()
24319        }
24320    }
24321}
24322#[repr(C)]
24323#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24324pub struct kgsl_device_constraint_pwrlevel {
24325    pub level: crate::types::c_uint,
24326}
24327#[repr(C)]
24328#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24329pub struct kgsl_syncsource_create {
24330    pub id: crate::types::c_uint,
24331    pub __pad: [crate::types::c_uint; 3usize],
24332}
24333#[repr(C)]
24334#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24335pub struct kgsl_syncsource_destroy {
24336    pub id: crate::types::c_uint,
24337    pub __pad: [crate::types::c_uint; 3usize],
24338}
24339#[repr(C)]
24340#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24341pub struct kgsl_syncsource_create_fence {
24342    pub id: crate::types::c_uint,
24343    pub fence_fd: crate::types::c_int,
24344    pub __pad: [crate::types::c_uint; 4usize],
24345}
24346#[repr(C)]
24347#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24348pub struct kgsl_syncsource_signal_fence {
24349    pub id: crate::types::c_uint,
24350    pub fence_fd: crate::types::c_int,
24351    pub __pad: [crate::types::c_uint; 4usize],
24352}
24353#[repr(C)]
24354#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24355pub struct kgsl_cff_sync_gpuobj {
24356    pub offset: __u64,
24357    pub length: __u64,
24358    pub id: crate::types::c_uint,
24359    pub __bindgen_padding_0: [u8; 4usize],
24360}
24361#[repr(C)]
24362#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24363pub struct kgsl_gpuobj_alloc {
24364    pub size: __u64,
24365    pub flags: __u64,
24366    pub va_len: __u64,
24367    pub mmapsize: __u64,
24368    pub id: crate::types::c_uint,
24369    pub metadata_len: crate::types::c_uint,
24370    pub metadata: __u64,
24371}
24372#[repr(C)]
24373#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24374pub struct kgsl_gpuobj_free {
24375    pub flags: __u64,
24376    pub priv_: __u64,
24377    pub id: crate::types::c_uint,
24378    pub type_: crate::types::c_uint,
24379    pub len: crate::types::c_uint,
24380    pub __bindgen_padding_0: [u8; 4usize],
24381}
24382#[repr(C)]
24383#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24384pub struct kgsl_gpu_event_timestamp {
24385    pub context_id: crate::types::c_uint,
24386    pub timestamp: crate::types::c_uint,
24387}
24388#[repr(C)]
24389#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24390pub struct kgsl_gpu_event_fence {
24391    pub fd: crate::types::c_int,
24392}
24393#[repr(C)]
24394#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24395pub struct kgsl_gpuobj_info {
24396    pub gpuaddr: __u64,
24397    pub flags: __u64,
24398    pub size: __u64,
24399    pub va_len: __u64,
24400    pub va_addr: __u64,
24401    pub id: crate::types::c_uint,
24402    pub __bindgen_padding_0: [u8; 4usize],
24403}
24404#[repr(C)]
24405#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24406pub struct kgsl_gpuobj_import {
24407    pub priv_: __u64,
24408    pub priv_len: __u64,
24409    pub flags: __u64,
24410    pub type_: crate::types::c_uint,
24411    pub id: crate::types::c_uint,
24412}
24413#[repr(C)]
24414#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24415pub struct kgsl_gpuobj_import_dma_buf {
24416    pub fd: crate::types::c_int,
24417}
24418#[repr(C)]
24419#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24420pub struct kgsl_gpuobj_import_useraddr {
24421    pub virtaddr: __u64,
24422}
24423#[repr(C)]
24424#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24425pub struct kgsl_gpuobj_sync_obj {
24426    pub offset: __u64,
24427    pub length: __u64,
24428    pub id: crate::types::c_uint,
24429    pub op: crate::types::c_uint,
24430}
24431#[repr(C)]
24432#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24433pub struct kgsl_gpuobj_sync {
24434    pub objs: __u64,
24435    pub obj_len: crate::types::c_uint,
24436    pub count: crate::types::c_uint,
24437}
24438#[repr(C)]
24439#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24440pub struct kgsl_command_object {
24441    pub offset: __u64,
24442    pub gpuaddr: __u64,
24443    pub size: __u64,
24444    pub flags: crate::types::c_uint,
24445    pub id: crate::types::c_uint,
24446}
24447#[repr(C)]
24448#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24449pub struct kgsl_command_syncpoint {
24450    pub priv_: __u64,
24451    pub size: __u64,
24452    pub type_: crate::types::c_uint,
24453    pub __bindgen_padding_0: [u8; 4usize],
24454}
24455#[repr(C)]
24456#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24457pub struct kgsl_gpu_command {
24458    pub flags: __u64,
24459    pub cmdlist: __u64,
24460    pub cmdsize: crate::types::c_uint,
24461    pub numcmds: crate::types::c_uint,
24462    pub objlist: __u64,
24463    pub objsize: crate::types::c_uint,
24464    pub numobjs: crate::types::c_uint,
24465    pub synclist: __u64,
24466    pub syncsize: crate::types::c_uint,
24467    pub numsyncs: crate::types::c_uint,
24468    pub context_id: crate::types::c_uint,
24469    pub timestamp: crate::types::c_uint,
24470}
24471#[repr(C)]
24472#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24473pub struct kgsl_preemption_counters_query {
24474    pub counters: __u64,
24475    pub size_user: crate::types::c_uint,
24476    pub size_priority_level: crate::types::c_uint,
24477    pub max_priority_level: crate::types::c_uint,
24478    pub __bindgen_padding_0: [u8; 4usize],
24479}
24480#[repr(C)]
24481#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24482pub struct kgsl_gpuobj_set_info {
24483    pub flags: __u64,
24484    pub metadata: __u64,
24485    pub id: crate::types::c_uint,
24486    pub metadata_len: crate::types::c_uint,
24487    pub type_: crate::types::c_uint,
24488    pub __bindgen_padding_0: [u8; 4usize],
24489}
24490#[repr(C)]
24491#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24492pub struct kgsl_sparse_phys_alloc {
24493    pub size: __u64,
24494    pub pagesize: __u64,
24495    pub flags: __u64,
24496    pub id: crate::types::c_uint,
24497    pub __bindgen_padding_0: [u8; 4usize],
24498}
24499#[repr(C)]
24500#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24501pub struct kgsl_sparse_phys_free {
24502    pub id: crate::types::c_uint,
24503}
24504#[repr(C)]
24505#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24506pub struct kgsl_sparse_virt_alloc {
24507    pub size: __u64,
24508    pub pagesize: __u64,
24509    pub flags: __u64,
24510    pub gpuaddr: __u64,
24511    pub id: crate::types::c_uint,
24512    pub __bindgen_padding_0: [u8; 4usize],
24513}
24514#[repr(C)]
24515#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24516pub struct kgsl_sparse_virt_free {
24517    pub id: crate::types::c_uint,
24518}
24519#[repr(C)]
24520#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24521pub struct kgsl_sparse_binding_object {
24522    pub virtoffset: __u64,
24523    pub physoffset: __u64,
24524    pub size: __u64,
24525    pub flags: __u64,
24526    pub id: crate::types::c_uint,
24527    pub __bindgen_padding_0: [u8; 4usize],
24528}
24529#[repr(C)]
24530#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24531pub struct kgsl_sparse_bind {
24532    pub list: __u64,
24533    pub id: crate::types::c_uint,
24534    pub size: crate::types::c_uint,
24535    pub count: crate::types::c_uint,
24536    pub __bindgen_padding_0: [u8; 4usize],
24537}
24538#[repr(C)]
24539#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24540pub struct kgsl_gpu_sparse_command {
24541    pub flags: __u64,
24542    pub sparselist: __u64,
24543    pub synclist: __u64,
24544    pub sparsesize: crate::types::c_uint,
24545    pub numsparse: crate::types::c_uint,
24546    pub syncsize: crate::types::c_uint,
24547    pub numsyncs: crate::types::c_uint,
24548    pub context_id: crate::types::c_uint,
24549    pub timestamp: crate::types::c_uint,
24550    pub id: crate::types::c_uint,
24551    pub __bindgen_padding_0: [u8; 4usize],
24552}
24553#[repr(C)]
24554#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24555pub struct kgsl_gpumem_bind_range {
24556    pub child_offset: __u64,
24557    pub target_offset: __u64,
24558    pub length: __u64,
24559    pub child_id: __u32,
24560    pub op: __u32,
24561}
24562#[repr(C)]
24563#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24564pub struct kgsl_gpumem_bind_ranges {
24565    pub ranges: __u64,
24566    pub ranges_nents: __u32,
24567    pub ranges_size: __u32,
24568    pub id: __u32,
24569    pub flags: __u32,
24570    pub fence_id: crate::types::c_int,
24571    pub padding: __u32,
24572}
24573#[repr(C)]
24574#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24575pub struct kgsl_gpu_aux_command_bind {
24576    pub rangeslist: __u64,
24577    pub numranges: __u64,
24578    pub rangesize: __u64,
24579    pub target: __u32,
24580    pub padding: __u32,
24581}
24582#[repr(C)]
24583#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24584pub struct kgsl_gpu_aux_command_generic {
24585    pub priv_: __u64,
24586    pub size: __u64,
24587    pub type_: __u32,
24588    pub padding: __u32,
24589}
24590#[repr(C)]
24591#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24592pub struct kgsl_gpu_aux_command {
24593    pub flags: __u64,
24594    pub cmdlist: __u64,
24595    pub cmdsize: __u32,
24596    pub numcmds: __u32,
24597    pub synclist: __u64,
24598    pub syncsize: __u32,
24599    pub numsyncs: __u32,
24600    pub context_id: __u32,
24601    pub timestamp: __u32,
24602}
24603#[repr(C)]
24604#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24605pub struct kgsl_timeline_create {
24606    pub seqno: __u64,
24607    pub id: __u32,
24608    pub padding: __u32,
24609}
24610#[repr(C)]
24611#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24612pub struct kgsl_timeline_val {
24613    pub seqno: __u64,
24614    pub timeline: __u32,
24615    pub padding: __u32,
24616}
24617#[repr(C)]
24618#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24619pub struct kgsl_timeline_wait {
24620    pub tv_sec: __s64,
24621    pub tv_nsec: __s64,
24622    pub timelines: __u64,
24623    pub count: __u32,
24624    pub timelines_size: __u32,
24625    pub flags: __u32,
24626    pub padding: __u32,
24627}
24628#[repr(C)]
24629#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24630pub struct kgsl_timeline_signal {
24631    pub timelines: __u64,
24632    pub count: __u32,
24633    pub timelines_size: __u32,
24634}
24635#[repr(C)]
24636#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24637pub struct kgsl_timeline_fence_get {
24638    pub seqno: __u64,
24639    pub timeline: __u32,
24640    pub handle: crate::types::c_int,
24641}
24642#[repr(C)]
24643#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24644pub struct kgsl_gpu_aux_command_timeline {
24645    pub timelines: __u64,
24646    pub count: __u32,
24647    pub timelines_size: __u32,
24648}
24649#[repr(C)]
24650#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24651pub struct kgsl_pagefault_report {
24652    pub fault_addr: __u64,
24653    pub reserved: [__u64; 2usize],
24654    pub fault_type: __u32,
24655    pub __pad: __u32,
24656}
24657#[repr(C)]
24658#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24659pub struct kgsl_fault {
24660    pub fault: __u64,
24661    pub type_: __u32,
24662    pub count: __u32,
24663    pub size: __u32,
24664    pub padding: __u32,
24665}
24666#[repr(C)]
24667#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24668pub struct kgsl_fault_report {
24669    pub faultlist: __u64,
24670    pub faultnents: __u32,
24671    pub faultsize: __u32,
24672    pub context_id: __u32,
24673    pub padding: __u32,
24674}
24675#[repr(C)]
24676#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24677pub struct kgsl_recurring_command {
24678    pub flags: __u64,
24679    pub cmdlist: __u64,
24680    pub cmdsize: __u32,
24681    pub numcmds: __u32,
24682    pub objlist: __u64,
24683    pub objsize: __u32,
24684    pub numobjs: __u32,
24685    pub context_id: __u32,
24686    pub padding: __u32,
24687}
24688pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_DEVICE:
24689    kgsl_calibrated_time_domain = 0;
24690pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MONOTONIC:
24691    kgsl_calibrated_time_domain = 1;
24692pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MONOTONIC_RAW:
24693    kgsl_calibrated_time_domain = 2;
24694pub const kgsl_calibrated_time_domain_KGSL_CALIBRATED_TIME_DOMAIN_MAX: kgsl_calibrated_time_domain =
24695    3;
24696pub type kgsl_calibrated_time_domain = crate::types::c_uint;
24697#[repr(C)]
24698#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
24699pub struct kgsl_read_calibrated_timestamps {
24700    pub sources: __u64,
24701    pub ts: __u64,
24702    pub deviation: __u64,
24703    pub count: __u32,
24704    pub padding: __u32,
24705}
24706#[repr(C)]
24707#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24708pub struct remote_buf {
24709    pub pv: uaddr,
24710    pub len: size_t,
24711}
24712impl Default for remote_buf {
24713    fn default() -> Self {
24714        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24715        unsafe {
24716            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24717            s.assume_init()
24718        }
24719    }
24720}
24721#[repr(C)]
24722#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24723pub struct fastrpc_ioctl_invoke {
24724    pub handle: u32,
24725    pub sc: u32,
24726    pub pra: uaddr,
24727}
24728impl Default for fastrpc_ioctl_invoke {
24729    fn default() -> Self {
24730        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24731        unsafe {
24732            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24733            s.assume_init()
24734        }
24735    }
24736}
24737#[repr(C)]
24738#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24739pub struct fastrpc_ioctl_invoke_fd {
24740    pub inv: fastrpc_ioctl_invoke,
24741    pub fds: uref<i32>,
24742}
24743impl Default for fastrpc_ioctl_invoke_fd {
24744    fn default() -> Self {
24745        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24746        unsafe {
24747            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24748            s.assume_init()
24749        }
24750    }
24751}
24752#[repr(C)]
24753#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24754pub struct fastrpc_ioctl_invoke2 {
24755    pub req: u32,
24756    pub __bindgen_padding_0: [u8; 4usize],
24757    pub invparam: uaddr,
24758    pub size: u32,
24759    pub err: i32,
24760}
24761impl Default for fastrpc_ioctl_invoke2 {
24762    fn default() -> Self {
24763        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24764        unsafe {
24765            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24766            s.assume_init()
24767        }
24768    }
24769}
24770#[repr(C)]
24771#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24772pub struct fastrpc_ioctl_init {
24773    pub flags: u32,
24774    pub __bindgen_padding_0: [u8; 4usize],
24775    pub file: uaddr,
24776    pub filelen: u32,
24777    pub filefd: i32,
24778    pub mem: uaddr,
24779    pub memlen: u32,
24780    pub memfd: i32,
24781}
24782impl Default for fastrpc_ioctl_init {
24783    fn default() -> Self {
24784        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24785        unsafe {
24786            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24787            s.assume_init()
24788        }
24789    }
24790}
24791#[repr(C)]
24792#[derive(Clone, Copy, Debug, Default, IntoBytes, FromBytes, KnownLayout, Immutable)]
24793pub struct fastrpc_ioctl_capability {
24794    pub domain: u32,
24795    pub attribute_ID: u32,
24796    pub capability: u32,
24797}
24798pub const SECCOMP_IOCTL_NOTIF_RECV: __u32 = 3226476800;
24799pub const SECCOMP_IOCTL_NOTIF_SEND: __u32 = 3222806785;
24800pub const SECCOMP_IOCTL_NOTIF_ID_VALID: __u32 = 1074274562;
24801pub const SECCOMP_IOCTL_NOTIF_ADDFD: __u32 = 1075323139;
24802pub const TIOCSPTLCK: __u32 = 1074025521;
24803pub const TIOCGPTLCK: __u32 = 2147767353;
24804pub const TIOCGPKT: __u32 = 2147767352;
24805pub const TIOCSIG: __u32 = 1074025526;
24806pub const TIOCGPTN: __u32 = 2147767344;
24807pub const TIOCGPTPEER: __u32 = 21569;
24808pub const BLKFLSBUF: __u32 = 4705;
24809pub const BLKGETSIZE: __u32 = 4704;
24810pub const BLKGETSIZE64: __u32 = 2148012658;
24811pub const BLKRASET: __u32 = 4706;
24812pub const EVIOCGVERSION: __u32 = 2147763457;
24813pub const EVIOCGID: __u32 = 2148025602;
24814pub const EVIOCGRAB: __u32 = 1074021776;
24815pub const RWF_HIPRI: __u32 = 1;
24816pub const RWF_DSYNC: __u32 = 2;
24817pub const RWF_SYNC: __u32 = 4;
24818pub const RWF_NOWAIT: __u32 = 8;
24819pub const RWF_APPEND: __u32 = 16;
24820pub const RWF_SUPPORTED: __u32 = 127;
24821pub const EVIOCGBIT_0: __u32 = 2147763488;
24822pub const EVIOCGBIT_EV_KEY: __u32 = 2153792801;
24823pub const EVIOCGBIT_EV_ABS: __u32 = 2148025635;
24824pub const EVIOCGBIT_EV_REL: __u32 = 2147632418;
24825pub const EVIOCGBIT_EV_SW: __u32 = 2147632421;
24826pub const EVIOCGBIT_EV_LED: __u32 = 2147632433;
24827pub const EVIOCGBIT_EV_FF: __u32 = 2148549941;
24828pub const EVIOCGBIT_EV_MSC: __u32 = 2147566884;
24829pub const EVIOCGBIT_EV_SND: __u32 = 2147566898;
24830pub const EVIOCGPROP: __u32 = 2147763465;
24831pub const EVIOCGABS_X: __u32 = 2149074240;
24832pub const EVIOCGABS_Y: __u32 = 2149074241;
24833pub const EVIOCGABS_MT_SLOT: __u32 = 2149074287;
24834pub const EVIOCGABS_MT_TRACKING_ID: __u32 = 2149074297;
24835pub const EVIOCGABS_MT_POSITION_X: __u32 = 2149074293;
24836pub const EVIOCGABS_MT_POSITION_Y: __u32 = 2149074294;
24837pub const EVIOCGNAME_0: __u32 = 2147501318;
24838pub const EVIOCGPHYS_0: __u32 = 2147501319;
24839pub const EVIOCGUNIQ_0: __u32 = 2147501320;
24840pub const EVIOCGKEY_0: __u32 = 2147501336;
24841pub const EVIOCGLED_0: __u32 = 2147501337;
24842pub const EVIOCGSND_0: __u32 = 2147501338;
24843pub const EVIOCGSW_0: __u32 = 2147501339;
24844#[repr(C)]
24845#[derive(Clone, Copy, Debug, IntoBytes, FromBytes, KnownLayout, Immutable)]
24846pub struct remote_binder_start_command {
24847    pub incoming_service: uref<crate::types::c_char>,
24848}
24849impl Default for remote_binder_start_command {
24850    fn default() -> Self {
24851        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24852        unsafe {
24853            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24854            s.assume_init()
24855        }
24856    }
24857}
24858#[repr(C)]
24859#[derive(Clone, Copy, Debug, Default, IntoBytes, FromBytes, KnownLayout, Immutable)]
24860pub struct remote_binder_wait_command {
24861    pub spawn_thread: crate::types::c_char,
24862}
24863pub const REMOTE_BINDER_START: __u32 = 2148028929;
24864pub const REMOTE_BINDER_WAIT: __u32 = 1073828354;
24865pub const BINDER_CTL_ADD: __u32 = 3238552065;
24866pub const FIBMAP: __u32 = 1;
24867pub const FIGETBSZ: __u32 = 2;
24868pub const FICLONE: __u32 = 1074041865;
24869pub const FICLONERANGE: __u32 = 1075876877;
24870pub const FIDEDUPERANGE: __u32 = 3222836278;
24871pub const FS_IOC_GETVERSION: __u32 = 2148038145;
24872pub const FS_IOC_SETVERSION: __u32 = 1074296322;
24873pub const FS_IOC_FSGETXATTR: __u32 = 2149341215;
24874pub const FS_IOC_FSSETXATTR: __u32 = 1075599392;
24875pub const FS_IOC_GETFLAGS: __u32 = 2148034049;
24876pub const FS_IOC_SETFLAGS: __u32 = 1074292226;
24877pub const FS_IOC_ENABLE_VERITY: __u32 = 1082156677;
24878pub const FS_IOC_MEASURE_VERITY: __u32 = 3221513862;
24879pub const FS_IOC_READ_VERITY_METADATA: __u32 = 3223873159;
24880pub const DM_DEV_STATUS: __u32 = 3241737479;
24881pub const DM_DEV_CREATE: __u32 = 3241737475;
24882pub const DM_DEV_REMOVE: __u32 = 3241737476;
24883pub const DM_DEV_SUSPEND: __u32 = 3241737478;
24884pub const DM_TABLE_LOAD: __u32 = 3241737481;
24885pub const DM_TABLE_STATUS: __u32 = 3241737484;
24886pub const DM_LIST_VERSIONS: __u32 = 3241737485;
24887pub const DM_LIST_DEVICES: __u32 = 3241737474;
24888pub const DM_VERSION: __u32 = 3241737472;
24889pub const DM_REMOVE_ALL: __u32 = 3241737473;
24890pub const DM_DEV_RENAME: __u32 = 3241737477;
24891pub const DM_DEV_WAIT: __u32 = 3241737480;
24892pub const DM_TABLE_CLEAR: __u32 = 3241737482;
24893pub const DM_TABLE_DEPS: __u32 = 3241737483;
24894pub const DM_TARGET_MSG: __u32 = 3241737486;
24895pub const DM_DEV_SET_GEOMETRY: __u32 = 3241737487;
24896pub const DM_DEV_ARM_POLL: __u32 = 3241737488;
24897pub const DM_GET_TARGET_VERSION: __u32 = 3241737489;
24898pub const FS_IOC_ADD_ENCRYPTION_KEY: __u32 = 3226494487;
24899pub const FS_IOC_SET_ENCRYPTION_POLICY: __u32 = 2148296211;
24900pub const FS_IOC_GET_ENCRYPTION_POLICY: __u32 = 1074554389;
24901pub const FS_IOC_GET_ENCRYPTION_POLICY_EX: __u32 = 3221841430;
24902pub const FS_IOC_REMOVE_ENCRYPTION_KEY: __u32 = 3225445912;
24903pub const KGSL_MEMFLAGS_USERMEM_PMEM: __u32 = 32;
24904pub const KGSL_MEMFLAGS_USERMEM_ASHMEM: __u32 = 64;
24905pub const KGSL_MEMFLAGS_USERMEM_ADDR: __u32 = 96;
24906pub const KGSL_MEMFLAGS_USERMEM_ION: __u32 = 128;
24907pub const IOCTL_KGSL_DEVICE_GETPROPERTY: __u32 = 3222800642;
24908pub const IOCTL_KGSL_DEVICE_WAITTIMESTAMP: __u32 = 1074268422;
24909pub const IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID: __u32 = 1074530567;
24910pub const IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS: __u32 = 3223324944;
24911pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD: __u32 = 2148010257;
24912pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP: __u32 = 3221752081;
24913pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP: __u32 = 1074792722;
24914pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_OLD: __u32 = 2148534546;
24915pub const IOCTL_KGSL_DRAWCTXT_CREATE: __u32 = 3221752083;
24916pub const IOCTL_KGSL_DRAWCTXT_DESTROY: __u32 = 1074006292;
24917pub const IOCTL_KGSL_MAP_USER_MEM: __u32 = 3224373525;
24918pub const IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_CTXTID: __u32 = 3222014230;
24919pub const IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID: __u32 = 1075317015;
24920pub const IOCTL_KGSL_SHAREDMEM_FROM_PMEM: __u32 = 3222800672;
24921pub const IOCTL_KGSL_SHAREDMEM_FREE: __u32 = 1074268449;
24922pub const IOCTL_KGSL_CFF_USER_EVENT: __u32 = 1075841329;
24923pub const IOCTL_KGSL_DRAWCTXT_BIND_GMEM_SHADOW: __u32 = 1078462754;
24924pub const IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC: __u32 = 3222276387;
24925pub const IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE: __u32 = 1074268452;
24926pub const IOCTL_KGSL_DRAWCTXT_SET_BIN_BASE_OFFSET: __u32 = 1074268453;
24927pub const IOCTL_KGSL_CMDWINDOW_WRITE: __u32 = 1074530606;
24928pub const IOCTL_KGSL_GPUMEM_ALLOC: __u32 = 3222800687;
24929pub const IOCTL_KGSL_CFF_SYNCMEM: __u32 = 1075317040;
24930pub const IOCTL_KGSL_TIMESTAMP_EVENT_OLD: __u32 = 1075841329;
24931pub const IOCTL_KGSL_SETPROPERTY: __u32 = 1075317042;
24932pub const IOCTL_KGSL_TIMESTAMP_EVENT: __u32 = 3223324979;
24933pub const IOCTL_KGSL_GPUMEM_ALLOC_ID: __u32 = 3224373556;
24934pub const IOCTL_KGSL_GPUMEM_FREE_ID: __u32 = 3221752117;
24935pub const IOCTL_KGSL_GPUMEM_GET_INFO: __u32 = 3225946422;
24936pub const IOCTL_KGSL_GPUMEM_SYNC_CACHE: __u32 = 1075841335;
24937pub const IOCTL_KGSL_PERFCOUNTER_GET: __u32 = 3222538552;
24938pub const IOCTL_KGSL_PERFCOUNTER_PUT: __u32 = 1074792761;
24939pub const IOCTL_KGSL_PERFCOUNTER_QUERY: __u32 = 3223324986;
24940pub const IOCTL_KGSL_PERFCOUNTER_READ: __u32 = 3222800699;
24941pub const IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK: __u32 = 3222800700;
24942pub const IOCTL_KGSL_SUBMIT_COMMANDS: __u32 = 3224897853;
24943pub const IOCTL_KGSL_SYNCSOURCE_CREATE: __u32 = 3222276416;
24944pub const IOCTL_KGSL_SYNCSOURCE_DESTROY: __u32 = 3222276417;
24945pub const IOCTL_KGSL_SYNCSOURCE_CREATE_FENCE: __u32 = 3222800706;
24946pub const IOCTL_KGSL_SYNCSOURCE_SIGNAL_FENCE: __u32 = 3222800707;
24947pub const IOCTL_KGSL_CFF_SYNC_GPUOBJ: __u32 = 1075317060;
24948pub const IOCTL_KGSL_GPUOBJ_ALLOC: __u32 = 3224373573;
24949pub const IOCTL_KGSL_GPUOBJ_FREE: __u32 = 1075841350;
24950pub const IOCTL_KGSL_GPUOBJ_INFO: __u32 = 3224373575;
24951pub const IOCTL_KGSL_GPUOBJ_IMPORT: __u32 = 3223325000;
24952pub const IOCTL_KGSL_GPUOBJ_SYNC: __u32 = 1074792777;
24953pub const IOCTL_KGSL_GPU_COMMAND: __u32 = 3225422154;
24954pub const IOCTL_KGSL_PREEMPTIONCOUNTER_QUERY: __u32 = 3222800715;
24955pub const IOCTL_KGSL_GPUOBJ_SET_INFO: __u32 = 1075841356;
24956pub const IOCTL_KGSL_SPARSE_PHYS_ALLOC: __u32 = 3223325008;
24957pub const IOCTL_KGSL_SPARSE_PHYS_FREE: __u32 = 1074006353;
24958pub const IOCTL_KGSL_SPARSE_VIRT_ALLOC: __u32 = 3223849298;
24959pub const IOCTL_KGSL_SPARSE_VIRT_FREE: __u32 = 1074006355;
24960pub const IOCTL_KGSL_SPARSE_BIND: __u32 = 1075317076;
24961pub const IOCTL_KGSL_GPU_SPARSE_COMMAND: __u32 = 3224897877;
24962pub const IOCTL_KGSL_GPUMEM_BIND_RANGES: __u32 = 3223325014;
24963pub const IOCTL_KGSL_GPU_AUX_COMMAND: __u32 = 3224373591;
24964pub const IOCTL_KGSL_TIMELINE_CREATE: __u32 = 3222276440;
24965pub const IOCTL_KGSL_TIMELINE_WAIT: __u32 = 1076365657;
24966pub const IOCTL_KGSL_TIMELINE_QUERY: __u32 = 3222276442;
24967pub const IOCTL_KGSL_TIMELINE_SIGNAL: __u32 = 1074792795;
24968pub const IOCTL_KGSL_TIMELINE_FENCE_GET: __u32 = 3222276444;
24969pub const IOCTL_KGSL_TIMELINE_DESTROY: __u32 = 1074006365;
24970pub const IOCTL_KGSL_GET_FAULT_REPORT: __u32 = 3222800734;
24971pub const IOCTL_KGSL_RECURRING_COMMAND: __u32 = 3224373599;
24972pub const IOCTL_KGSL_READ_CALIBRATED_TIMESTAMPS: __u32 = 3223325024;
24973pub const TCGETS2: __u32 = 2150388778;
24974pub const TCSETS2: __u32 = 1076646955;
24975pub const TCSETSW2: __u32 = 1076646956;
24976pub const TCSETSF2: __u32 = 1076646957;
24977pub const RTC_SET_TIME: __u32 = 1076129802;
24978pub const UI_DEV_CREATE: __u32 = 21761;
24979pub const UI_DEV_DESTROY: __u32 = 21762;
24980pub const UI_DEV_SETUP: __u32 = 1079792899;
24981pub const UI_ABS_SETUP: __u32 = 1075598596;
24982pub const UI_SET_EVBIT: __u32 = 1074025828;
24983pub const UI_SET_KEYBIT: __u32 = 1074025829;
24984pub const UI_SET_RELBIT: __u32 = 1074025830;
24985pub const UI_SET_ABSBIT: __u32 = 1074025831;
24986pub const UI_SET_MSCBIT: __u32 = 1074025832;
24987pub const UI_SET_LEDBIT: __u32 = 1074025833;
24988pub const UI_SET_SNDBIT: __u32 = 1074025834;
24989pub const UI_SET_FFBIT: __u32 = 1074025835;
24990pub const UI_SET_PHYS: __u32 = 1074287980;
24991pub const UI_SET_SWBIT: __u32 = 1074025837;
24992pub const UI_SET_PROPBIT: __u32 = 1074025838;
24993pub const UI_BEGIN_FF_UPLOAD: __u32 = 3228063176;
24994pub const UI_END_FF_UPLOAD: __u32 = 1080579529;
24995pub const UI_BEGIN_FF_ERASE: __u32 = 3222033866;
24996pub const UI_END_FF_ERASE: __u32 = 1074550219;
24997pub const UI_GET_VERSION: __u32 = 2147767597;
24998pub const ASHMEM_SET_NAME: __u32 = 1090549505;
24999pub const ASHMEM_GET_NAME: __u32 = 2164291330;
25000pub const ASHMEM_SET_SIZE: __u32 = 1074296579;
25001pub const ASHMEM_GET_SIZE: __u32 = 30468;
25002pub const ASHMEM_SET_PROT_MASK: __u32 = 1074296581;
25003pub const ASHMEM_GET_PROT_MASK: __u32 = 30470;
25004pub const ASHMEM_PIN: __u32 = 1074296583;
25005pub const ASHMEM_UNPIN: __u32 = 1074296584;
25006pub const ASHMEM_GET_PIN_STATUS: __u32 = 30473;
25007pub const ASHMEM_PURGE_ALL_CACHES: __u32 = 30474;
25008pub const ASHMEM_GET_FILE_ID: __u32 = 2148038411;
25009pub const RNDGETENTCNT: __u32 = 2147766784;
25010pub const RNDADDTOENTCNT: __u32 = 1074024961;
25011pub const RNDGETPOOL: __u32 = 2148028930;
25012pub const RNDADDENTROPY: __u32 = 1074287107;
25013pub const RNDZAPENTCNT: __u32 = 20996;
25014pub const RNDCLEARPOOL: __u32 = 20998;
25015pub const RNDRESEEDCRNG: __u32 = 20999;
25016pub const UFFDIO_REGISTER: __u32 = 3223366144;
25017pub const UFFDIO_UNREGISTER: __u32 = 2148575745;
25018pub const UFFDIO_WAKE: __u32 = 2148575746;
25019pub const UFFDIO_COPY: __u32 = 3223890435;
25020pub const UFFDIO_ZEROPAGE: __u32 = 3223366148;
25021pub const UFFDIO_WRITEPROTECT: __u32 = 3222841862;
25022pub const UFFDIO_CONTINUE: __u32 = 3223366151;
25023pub const UFFDIO_POISON: __u32 = 3223366152;
25024pub const UFFDIO_MOVE: __u32 = 3223890437;
25025pub const UFFDIO_API: __u32 = 3222841919;
25026pub const UFFDIO_REGISTER_MODE_MISSING: __u32 = 1;
25027pub const UFFDIO_REGISTER_MODE_WP: __u32 = 2;
25028pub const UFFDIO_REGISTER_MODE_MINOR: __u32 = 4;
25029pub const UFFDIO_COPY_MODE_DONTWAKE: __u32 = 1;
25030pub const UFFDIO_COPY_MODE_WP: __u32 = 2;
25031pub const UFFDIO_ZEROPAGE_MODE_DONTWAKE: __u32 = 1;
25032pub const UFFDIO_CONTINUE_MODE_DONTWAKE: __u32 = 1;
25033pub const PERF_EVENT_IOC_ENABLE: __u32 = 9216;
25034pub const PERF_EVENT_IOC_DISABLE: __u32 = 9217;
25035pub const PERF_EVENT_IOC_REFRESH: __u32 = 9218;
25036pub const PERF_EVENT_IOC_RESET: __u32 = 9219;
25037pub const PERF_EVENT_IOC_PERIOD: __u32 = 1074275332;
25038pub const PERF_EVENT_IOC_SET_OUTPUT: __u32 = 9221;
25039pub const PERF_EVENT_IOC_SET_FILTER: __u32 = 1074275334;
25040pub const PERF_EVENT_IOC_ID: __u32 = 2148017159;
25041pub const PERF_EVENT_IOC_SET_BPF: __u32 = 1074013192;
25042pub const PERF_EVENT_IOC_PAUSE_OUTPUT: __u32 = 1074013193;
25043pub const PERF_EVENT_IOC_QUERY_BPF: __u32 = 3221758986;
25044pub const PERF_EVENT_IOC_MODIFY_ATTRIBUTES: __u32 = 1074275339;
25045pub const FASTRPC_IOCTL_INVOKE: __u32 = 3222295041;
25046pub const FASTRPC_IOCTL_INVOKE_FD: __u32 = 3222819332;
25047pub const FASTRPC_IOCTL_GETINFO: __u32 = 3221508616;
25048pub const FASTRPC_IOCTL_GET_DSP_INFO: __u32 = 3222032913;
25049pub const FASTRPC_IOCTL_INVOKE2: __u32 = 3222819346;
25050pub const FASTRPC_IOCTL_INIT: __u32 = 3223867910;
25051pub const DMA_HEAP_IOCTL_ALLOC: __u32 = 3222816768;
25052pub const DMA_BUF_IOCTL_SYNC: __u32 = 1074291200;
25053pub const DMA_BUF_SET_NAME: __u32 = 1074291201;
25054pub const DMA_BUF_SET_NAME_A: __u32 = 1074029057;
25055pub const DMA_BUF_SET_NAME_B: __u32 = 1074291201;
25056pub const DMA_BUF_IOCTL_EXPORT_SYNC_FILE: __u32 = 3221774850;
25057pub const DMA_BUF_IOCTL_IMPORT_SYNC_FILE: __u32 = 1074291203;
25058pub type utsname = new_utsname;
25059pub type gid_t = __kernel_gid_t;
25060pub type ino_t = __kernel_ino_t;
25061pub type mode_t = __kernel_mode_t;
25062pub type off_t = __kernel_off_t;
25063pub const TUNSETIFF: __u32 = 1074025674;
25064#[repr(C)]
25065#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25066pub struct sched_param {
25067    pub sched_priority: crate::types::c_int,
25068}
25069pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V0: __u32 = 1074849025;
25070pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V1: __u32 = 1074849151;
25071pub const FUSE_DEV_IOC_PASSTHROUGH_OPEN_V2: __u32 = 1074062718;
25072#[repr(C)]
25073#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25074pub struct usbdevfs_ctrltransfer32 {
25075    pub bRequestType: __u8,
25076    pub bRequest: __u8,
25077    pub wValue: __u16,
25078    pub wIndex: __u16,
25079    pub wLength: __u16,
25080    pub timeout: __u32,
25081    pub data: __u32,
25082}
25083#[repr(C)]
25084#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25085pub struct usbdevfs_bulktransfer32 {
25086    pub ep: crate::types::c_uint,
25087    pub len: crate::types::c_uint,
25088    pub timeout: crate::types::c_uint,
25089    pub data: __u32,
25090}
25091#[repr(C)]
25092#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25093pub struct usbdevfs_disconnectsignal32 {
25094    pub signr: crate::types::c_uint,
25095    pub context: __u32,
25096}
25097#[repr(C)]
25098pub struct usbdevfs_urb32 {
25099    pub type_: crate::types::c_uchar,
25100    pub endpoint: crate::types::c_uchar,
25101    pub __bindgen_padding_0: [u8; 2usize],
25102    pub status: crate::types::c_int,
25103    pub flags: crate::types::c_uint,
25104    pub buffer: __u32,
25105    pub buffer_length: crate::types::c_int,
25106    pub actual_length: crate::types::c_int,
25107    pub start_frame: crate::types::c_int,
25108    pub __bindgen_anon_1: usbdevfs_urb32__bindgen_ty_1,
25109    pub error_count: crate::types::c_int,
25110    pub signr: crate::types::c_uint,
25111    pub usercontext: __u32,
25112    pub iso_frame_desc: __IncompleteArrayField<usbdevfs_iso_packet_desc>,
25113}
25114#[repr(C)]
25115#[derive(Copy, Clone)]
25116pub union usbdevfs_urb32__bindgen_ty_1 {
25117    pub number_of_packets: crate::types::c_int,
25118    pub stream_id: crate::types::c_uint,
25119}
25120impl Default for usbdevfs_urb32__bindgen_ty_1 {
25121    fn default() -> Self {
25122        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
25123        unsafe {
25124            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
25125            s.assume_init()
25126        }
25127    }
25128}
25129impl Default for usbdevfs_urb32 {
25130    fn default() -> Self {
25131        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
25132        unsafe {
25133            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
25134            s.assume_init()
25135        }
25136    }
25137}
25138#[repr(C)]
25139#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25140pub struct usbdevfs_ioctl32 {
25141    pub ifno: crate::types::c_int,
25142    pub ioctl_code: crate::types::c_int,
25143    pub data: __u32,
25144}
25145pub const USBDEVFS_CONTROL: __u32 = 3222820096;
25146pub const USBDEVFS_CONTROL32: __u32 = 3222295808;
25147pub const USBDEVFS_BULK: __u32 = 3222820098;
25148pub const USBDEVFS_BULK32: __u32 = 3222295810;
25149pub const USBDEVFS_RESETEP: __u32 = 2147767555;
25150pub const USBDEVFS_SETINTERFACE: __u32 = 2148029700;
25151pub const USBDEVFS_SETCONFIGURATION: __u32 = 2147767557;
25152pub const USBDEVFS_GETDRIVER: __u32 = 1090802952;
25153pub const USBDEVFS_SUBMITURB: __u32 = 2151175434;
25154pub const USBDEVFS_SUBMITURB32: __u32 = 2150389002;
25155pub const USBDEVFS_DISCARDURB: __u32 = 21771;
25156pub const USBDEVFS_REAPURB: __u32 = 1074287884;
25157pub const USBDEVFS_REAPURB32: __u32 = 1074025740;
25158pub const USBDEVFS_REAPURBNDELAY: __u32 = 1074287885;
25159pub const USBDEVFS_REAPURBNDELAY32: __u32 = 1074025741;
25160pub const USBDEVFS_DISCSIGNAL: __u32 = 2148553998;
25161pub const USBDEVFS_DISCSIGNAL32: __u32 = 2148029710;
25162pub const USBDEVFS_CLAIMINTERFACE: __u32 = 2147767567;
25163pub const USBDEVFS_RELEASEINTERFACE: __u32 = 2147767568;
25164pub const USBDEVFS_CONNECTINFO: __u32 = 1074287889;
25165pub const USBDEVFS_IOCTL: __u32 = 3222295826;
25166pub const USBDEVFS_IOCTL32: __u32 = 3222033682;
25167pub const USBDEVFS_HUB_PORTINFO: __u32 = 2155894035;
25168pub const USBDEVFS_RESET: __u32 = 21780;
25169pub const USBDEVFS_CLEAR_HALT: __u32 = 2147767573;
25170pub const USBDEVFS_DISCONNECT: __u32 = 21782;
25171pub const USBDEVFS_CONNECT: __u32 = 21783;
25172pub const USBDEVFS_CLAIM_PORT: __u32 = 2147767576;
25173pub const USBDEVFS_RELEASE_PORT: __u32 = 2147767577;
25174pub const USBDEVFS_GET_CAPABILITIES: __u32 = 2147767578;
25175pub const USBDEVFS_DISCONNECT_CLAIM: __u32 = 2164806939;
25176pub const USBDEVFS_ALLOC_STREAMS: __u32 = 2148029724;
25177pub const USBDEVFS_FREE_STREAMS: __u32 = 2148029725;
25178pub const USBDEVFS_DROP_PRIVILEGES: __u32 = 1074025758;
25179pub const USBDEVFS_GET_SPEED: __u32 = 21791;
25180pub const USBDEVFS_FORBID_SUSPEND: __u32 = 21793;
25181pub const USBDEVFS_ALLOW_SUSPEND: __u32 = 21794;
25182pub const USBDEVFS_WAIT_FOR_RESUME: __u32 = 21795;
25183#[repr(C)]
25184#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25185pub struct xt_match {
25186    pub _address: u8,
25187}
25188#[repr(C)]
25189#[derive(Debug, Default, Copy, Clone, IntoBytes, FromBytes, KnownLayout, Immutable)]
25190pub struct xt_target {
25191    pub _address: u8,
25192}
25193
25194// LINT.ThenChange(
25195//    //src/starnix/lib/linux_uapi/stub/drivers/char/adsprpc_shared.h |
25196//    //src/starnix/lib/linux_uapi/stub/kgsl/msm_kgsl.h |
25197//    //src/starnix/lib/linux_uapi/third_party/libfuse/fuse_kernel.h |
25198//    //src/starnix/lib/linux_uapi/stub/bits/epoll_event.h |
25199//    //src/starnix/lib/linux_uapi/stub/bits/flock.h |
25200//    //src/starnix/lib/linux_uapi/stub/bits/flock64.h |
25201//    //src/starnix/lib/linux_uapi/stub/bits/in_addr.h |
25202//    //src/starnix/lib/linux_uapi/stub/bits/ip_mreq_source.h |
25203//    //src/starnix/lib/linux_uapi/stub/bits/ip_msfilter.h |
25204//    //src/starnix/lib/linux_uapi/stub/bits/sockaddr_storage.h |
25205//    //src/starnix/lib/linux_uapi/stub/bits/timespec.h |
25206//    //src/starnix/lib/linux_uapi/stub/fcntl.h |
25207//    //src/starnix/lib/linux_uapi/stub/missing_includes.h |
25208//    //src/starnix/lib/linux_uapi/stub/sys/ioctl.h |
25209//    //src/starnix/lib/linux_uapi/stub/sys/socket.h |
25210//    //src/starnix/lib/linux_uapi/stub/sys/time.h |
25211//    //src/starnix/lib/linux_uapi/stub/sys/types.h |
25212//    //src/starnix/lib/linux_uapi/stub/typedefs.h |
25213//    //src/starnix/lib/linux_uapi/wrapper.h |
25214//    //third_party/android/platform/bionic/libc/kernel/android/uapi/linux/compiler.h |
25215//    //third_party/android/platform/bionic/libc/kernel/android/uapi/linux/compiler_types.h |
25216//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/bitsperlong.h |
25217//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/bpf_perf_event.h |
25218//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/errno-base.h |
25219//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/errno.h |
25220//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/fcntl.h |
25221//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/hugetlb_encode.h |
25222//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/int-ll64.h |
25223//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ioctl.h |
25224//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ioctls.h |
25225//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/mman-common.h |
25226//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/mman.h |
25227//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/poll.h |
25228//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/posix_types.h |
25229//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/resource.h |
25230//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/siginfo.h |
25231//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/signal-defs.h |
25232//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/socket.h |
25233//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/sockios.h |
25234//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/statfs.h |
25235//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termbits-common.h |
25236//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termbits.h |
25237//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/termios.h |
25238//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/types.h |
25239//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-generic/ucontext.h |
25240//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/auxvec.h |
25241//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/bitsperlong.h |
25242//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/bpf_perf_event.h |
25243//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/byteorder.h |
25244//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/errno.h |
25245//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/fcntl.h |
25246//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ioctl.h |
25247//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ioctls.h |
25248//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/mman.h |
25249//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/poll.h |
25250//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/posix_types.h |
25251//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/posix_types_64.h |
25252//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/prctl.h |
25253//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/processor-flags.h |
25254//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ptrace-abi.h |
25255//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ptrace.h |
25256//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/resource.h |
25257//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/sigcontext.h |
25258//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/siginfo.h |
25259//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/signal.h |
25260//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/socket.h |
25261//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/sockios.h |
25262//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/stat.h |
25263//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/statfs.h |
25264//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/swab.h |
25265//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/termbits.h |
25266//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/termios.h |
25267//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/types.h |
25268//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/ucontext.h |
25269//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/unistd.h |
25270//    //third_party/android/platform/bionic/libc/kernel/uapi/asm-x86/asm/unistd_64.h |
25271//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/aio_abi.h |
25272//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/android/binder.h |
25273//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/android/binderfs.h |
25274//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ashmem.h |
25275//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/audit.h |
25276//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/auxvec.h |
25277//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf.h |
25278//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf_common.h |
25279//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/bpf_perf_event.h |
25280//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/byteorder/little_endian.h |
25281//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/capability.h |
25282//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/close_range.h |
25283//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/const.h |
25284//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dm-ioctl.h |
25285//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dma-buf.h |
25286//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/dma-heap.h |
25287//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/elf-em.h |
25288//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/elf.h |
25289//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/errno.h |
25290//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/eventpoll.h |
25291//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fadvise.h |
25292//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/falloc.h |
25293//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fb.h |
25294//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fcntl.h |
25295//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fib_rules.h |
25296//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/filter.h |
25297//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fs.h |
25298//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fscrypt.h |
25299//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/fsverity.h |
25300//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/futex.h |
25301//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/hdlc/ioctl.h |
25302//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/i2c.h |
25303//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if.h |
25304//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_addr.h |
25305//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_arp.h |
25306//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_ether.h |
25307//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_link.h |
25308//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_packet.h |
25309//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/if_tun.h |
25310//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/in.h |
25311//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/in6.h |
25312//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/inotify.h |
25313//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/input-event-codes.h |
25314//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/input.h |
25315//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/io_uring.h |
25316//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ioctl.h |
25317//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ip.h |
25318//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ipv6.h |
25319//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/irqnr.h |
25320//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/kcmp.h |
25321//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/libc-compat.h |
25322//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/limits.h |
25323//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/loop.h |
25324//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/magic.h |
25325//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/membarrier.h |
25326//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/memfd.h |
25327//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mman.h |
25328//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mount.h |
25329//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/mqueue.h |
25330//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/neighbour.h |
25331//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netdevice.h |
25332//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter.h |
25333//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_conntrack_common.h |
25334//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_conntrack_tuple_common.h |
25335//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/nf_nat.h |
25336//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/x_tables.h |
25337//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_TPROXY.h |
25338//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_bpf.h |
25339//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_mark.h |
25340//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter/xt_tcpudp.h |
25341//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4.h |
25342//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h |
25343//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv4/ipt_REJECT.h |
25344//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6.h |
25345//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h |
25346//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netfilter_ipv6/ip6t_REJECT.h |
25347//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/netlink.h |
25348//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/oom.h |
25349//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/openat2.h |
25350//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/perf_event.h |
25351//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/personality.h |
25352//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/pfkeyv2.h |
25353//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/pidfd.h |
25354//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/poll.h |
25355//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/posix_types.h |
25356//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/prctl.h |
25357//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/ptrace.h |
25358//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/random.h |
25359//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/reboot.h |
25360//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/resource.h |
25361//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/rtc.h |
25362//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/rtnetlink.h |
25363//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sched.h |
25364//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sched/types.h |
25365//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/seccomp.h |
25366//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/securebits.h |
25367//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/signal.h |
25368//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/signalfd.h |
25369//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sock_diag.h |
25370//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/socket.h |
25371//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sockios.h |
25372//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/stat.h |
25373//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/stddef.h |
25374//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/swab.h |
25375//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sync_file.h |
25376//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/sysinfo.h |
25377//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/taskstats.h |
25378//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/termios.h |
25379//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/thermal.h |
25380//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/time.h |
25381//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/time_types.h |
25382//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/timerfd.h |
25383//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/times.h |
25384//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/types.h |
25385//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/uinput.h |
25386//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/uio.h |
25387//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/un.h |
25388//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/unistd.h |
25389//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usb/ch9.h |
25390//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usb/functionfs.h |
25391//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/usbdevice_fs.h |
25392//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/userfaultfd.h |
25393//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/utsname.h |
25394//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/vesa.h |
25395//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/vm_sockets.h |
25396//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/wait.h |
25397//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/watch_queue.h |
25398//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/xattr.h |
25399//    //third_party/android/platform/bionic/libc/kernel/uapi/linux/xfrm.h
25400//)