1#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
2#![cfg_attr(not(feature = "std"), no_std)]
3
4#[cfg(feature = "std")]
5pub use std::os::raw as ctypes;
6
7#[cfg(all(not(feature = "std"), feature = "no_std"))]
8pub mod ctypes {
9 // The signedness of `char` is platform-specific, and we have to match
10 // what Rust's `CStr` uses.
11 #[cfg(any(
12 target_arch = "aarch64",
13 target_arch = "arm",
14 target_arch = "msp430",
15 target_arch = "powerpc",
16 target_arch = "powerpc64",
17 target_arch = "riscv32",
18 target_arch = "riscv64",
19 target_arch = "s390x",
20 ))]
21 pub type c_char = c_uchar;
22 #[cfg(any(
23 target_arch = "loongarch64",
24 target_arch = "mips",
25 target_arch = "mips64",
26 target_arch = "sparc",
27 target_arch = "sparc64",
28 target_arch = "x86",
29 target_arch = "x86_64",
30 target_arch = "xtensa",
31 ))]
32 pub type c_char = c_schar;
33
34 // The following assumes that Linux is always either ILP32 or LP64,
35 // and char is always 8-bit.
36 //
37 // In theory, `c_long` and `c_ulong` could be `isize` and `usize`
38 // respectively, however in practice Linux doesn't use them in that way
39 // consistently. So stick with the convention followed by `libc` and
40 // others and use the fixed-width types.
41 pub type c_schar = i8;
42 pub type c_uchar = u8;
43 pub type c_short = i16;
44 pub type c_ushort = u16;
45 pub type c_int = i32;
46 pub type c_uint = u32;
47 #[cfg(target_pointer_width = "32")]
48 pub type c_long = i32;
49 #[cfg(target_pointer_width = "32")]
50 pub type c_ulong = u32;
51 #[cfg(target_pointer_width = "64")]
52 pub type c_long = i64;
53 #[cfg(target_pointer_width = "64")]
54 pub type c_ulong = u64;
55 pub type c_longlong = i64;
56 pub type c_ulonglong = u64;
57 pub type c_float = f32;
58 pub type c_double = f64;
59
60 pub use core::ffi::c_void;
61}
62
63// Confirm that our type definitions above match the actual type definitions.
64#[cfg(test)]
65mod assertions {
66 use super::ctypes;
67 static_assertions::assert_eq_size!(ctypes::c_char, libc::c_char);
68 static_assertions::assert_type_eq_all!(ctypes::c_schar, libc::c_schar);
69 static_assertions::assert_type_eq_all!(ctypes::c_uchar, libc::c_uchar);
70 static_assertions::assert_type_eq_all!(ctypes::c_short, libc::c_short);
71 static_assertions::assert_type_eq_all!(ctypes::c_ushort, libc::c_ushort);
72 static_assertions::assert_type_eq_all!(ctypes::c_int, libc::c_int);
73 static_assertions::assert_type_eq_all!(ctypes::c_uint, libc::c_uint);
74 static_assertions::assert_type_eq_all!(ctypes::c_long, libc::c_long);
75 static_assertions::assert_type_eq_all!(ctypes::c_ulong, libc::c_ulong);
76 static_assertions::assert_type_eq_all!(ctypes::c_longlong, libc::c_longlong);
77 static_assertions::assert_type_eq_all!(ctypes::c_ulonglong, libc::c_ulonglong);
78 static_assertions::assert_type_eq_all!(ctypes::c_float, libc::c_float);
79 static_assertions::assert_type_eq_all!(ctypes::c_double, libc::c_double);
80}
81
82// We don't enable `derive_eq` in bindgen because adding `PartialEq`/`Eq` to
83// *all* structs noticeably increases compile times. But we can add a few
84// manual impls where they're especially useful.
85#[cfg(feature = "general")]
86impl PartialEq for general::__kernel_timespec {
87 fn eq(&self, other: &Self) -> bool {
88 ({
89 let Self { tv_sec: &i64, tv_nsec: &i64 } = self;
90 (tv_sec, tv_nsec)
91 }) == ({
92 let Self { tv_sec: &i64, tv_nsec: &i64 } = other;
93 (tv_sec, tv_nsec)
94 })
95 }
96}
97#[cfg(feature = "general")]
98impl Eq for general::__kernel_timespec {}
99
100#[cfg(feature = "net")]
101pub mod cmsg_macros {
102 use crate::ctypes::{c_long, c_uchar, c_uint};
103 use crate::net::{cmsghdr, msghdr};
104 use core::mem::size_of;
105 use core::ptr;
106
107 pub const unsafe fn CMSG_ALIGN(len: c_uint) -> c_uint {
108 let c_long_size = size_of::<c_long>() as c_uint;
109 (len + c_long_size - 1) & !(c_long_size - 1)
110 }
111
112 pub const unsafe fn CMSG_DATA(cmsg: *const cmsghdr) -> *mut c_uchar {
113 (cmsg as *mut c_uchar).add(size_of::<cmsghdr>())
114 }
115
116 pub const unsafe fn CMSG_SPACE(len: c_uint) -> c_uint {
117 size_of::<cmsghdr>() as c_uint + CMSG_ALIGN(len)
118 }
119
120 pub const unsafe fn CMSG_LEN(len: c_uint) -> c_uint {
121 size_of::<cmsghdr>() as c_uint + len
122 }
123
124 pub const unsafe fn CMSG_FIRSTHDR(mhdr: *const msghdr) -> *mut cmsghdr {
125 if (*mhdr).msg_controllen < size_of::<cmsghdr>() as _ {
126 return ptr::null_mut();
127 }
128
129 (*mhdr).msg_control as *mut cmsghdr
130 }
131
132 pub unsafe fn CMSG_NXTHDR(mhdr: *const msghdr, cmsg: *const cmsghdr) -> *mut cmsghdr {
133 // We convert from raw pointers to usize here, which may not be sound in a
134 // future version of Rust. Once the provenance rules are set in stone,
135 // it will be a good idea to give this function a once-over.
136
137 let cmsg_len = (*cmsg).cmsg_len;
138 let next_cmsg = (cmsg as *mut u8).add(CMSG_ALIGN(cmsg_len as _) as usize) as *mut cmsghdr;
139 let max = ((*mhdr).msg_control as usize) + ((*mhdr).msg_controllen as usize);
140
141 if cmsg_len < size_of::<cmsghdr>() as _ {
142 return ptr::null_mut();
143 }
144
145 if next_cmsg.add(1) as usize > max
146 || next_cmsg as usize + CMSG_ALIGN((*next_cmsg).cmsg_len as _) as usize > max
147 {
148 return ptr::null_mut();
149 }
150
151 next_cmsg
152 }
153}
154
155#[cfg(feature = "general")]
156pub mod select_macros {
157 use crate::ctypes::c_int;
158 use crate::general::__kernel_fd_set;
159 use core::mem::size_of;
160
161 pub unsafe fn FD_CLR(fd: c_int, set: *mut __kernel_fd_set) {
162 let bytes = set as *mut u8;
163 if fd >= 0 {
164 *bytes.add((fd / 8) as usize) &= !(1 << (fd % 8));
165 }
166 }
167
168 pub unsafe fn FD_SET(fd: c_int, set: *mut __kernel_fd_set) {
169 let bytes = set as *mut u8;
170 if fd >= 0 {
171 *bytes.add((fd / 8) as usize) |= 1 << (fd % 8);
172 }
173 }
174
175 pub unsafe fn FD_ISSET(fd: c_int, set: *const __kernel_fd_set) -> bool {
176 let bytes = set as *const u8;
177 if fd >= 0 {
178 *bytes.add((fd / 8) as usize) & (1 << (fd % 8)) != 0
179 } else {
180 false
181 }
182 }
183
184 pub unsafe fn FD_ZERO(set: *mut __kernel_fd_set) {
185 let bytes = set as *mut u8;
186 core::ptr::write_bytes(bytes, 0, size_of::<__kernel_fd_set>());
187 }
188}
189
190#[cfg(feature = "general")]
191pub mod signal_macros {
192 pub const SIG_DFL: super::general::__kernel_sighandler_t = None;
193
194 /// Rust doesn't currently permit us to use `transmute` to convert the
195 /// `SIG_IGN` value into a function pointer in a `const` initializer, so
196 /// we make it a function instead.
197 ///
198 #[inline]
199 pub const fn sig_ign() -> super::general::__kernel_sighandler_t {
200 // Safety: This creates an invalid pointer, but the pointer type
201 // includes `unsafe`, which covers the safety of calling it.
202 Some(unsafe {
203 core::mem::transmute::<usize, unsafe extern "C" fn(crate::ctypes::c_int)>(src:1)
204 })
205 }
206}
207
208#[cfg(feature = "elf")]
209pub mod elf;
210
211// The rest of this file is auto-generated!
212#[cfg(feature = "bootparam")]
213#[cfg(target_arch = "arm")]
214#[path = "arm/bootparam.rs"]
215pub mod bootparam;
216#[cfg(feature = "errno")]
217#[cfg(target_arch = "arm")]
218#[path = "arm/errno.rs"]
219pub mod errno;
220#[cfg(feature = "general")]
221#[cfg(target_arch = "arm")]
222#[path = "arm/general.rs"]
223pub mod general;
224#[cfg(feature = "if_arp")]
225#[cfg(target_arch = "arm")]
226#[path = "arm/if_arp.rs"]
227pub mod if_arp;
228#[cfg(feature = "if_ether")]
229#[cfg(target_arch = "arm")]
230#[path = "arm/if_ether.rs"]
231pub mod if_ether;
232#[cfg(feature = "if_packet")]
233#[cfg(target_arch = "arm")]
234#[path = "arm/if_packet.rs"]
235pub mod if_packet;
236#[cfg(feature = "io_uring")]
237#[cfg(target_arch = "arm")]
238#[path = "arm/io_uring.rs"]
239pub mod io_uring;
240#[cfg(feature = "ioctl")]
241#[cfg(target_arch = "arm")]
242#[path = "arm/ioctl.rs"]
243pub mod ioctl;
244#[cfg(feature = "loop_device")]
245#[cfg(target_arch = "arm")]
246#[path = "arm/loop_device.rs"]
247pub mod loop_device;
248#[cfg(feature = "mempolicy")]
249#[cfg(target_arch = "arm")]
250#[path = "arm/mempolicy.rs"]
251pub mod mempolicy;
252#[cfg(feature = "net")]
253#[cfg(target_arch = "arm")]
254#[path = "arm/net.rs"]
255pub mod net;
256#[cfg(feature = "netlink")]
257#[cfg(target_arch = "arm")]
258#[path = "arm/netlink.rs"]
259pub mod netlink;
260#[cfg(feature = "prctl")]
261#[cfg(target_arch = "arm")]
262#[path = "arm/prctl.rs"]
263pub mod prctl;
264#[cfg(feature = "system")]
265#[cfg(target_arch = "arm")]
266#[path = "arm/system.rs"]
267pub mod system;
268#[cfg(feature = "xdp")]
269#[cfg(target_arch = "arm")]
270#[path = "arm/xdp.rs"]
271pub mod xdp;
272#[cfg(feature = "bootparam")]
273#[cfg(target_arch = "aarch64")]
274#[path = "aarch64/bootparam.rs"]
275pub mod bootparam;
276#[cfg(feature = "errno")]
277#[cfg(target_arch = "aarch64")]
278#[path = "aarch64/errno.rs"]
279pub mod errno;
280#[cfg(feature = "general")]
281#[cfg(target_arch = "aarch64")]
282#[path = "aarch64/general.rs"]
283pub mod general;
284#[cfg(feature = "if_arp")]
285#[cfg(target_arch = "aarch64")]
286#[path = "aarch64/if_arp.rs"]
287pub mod if_arp;
288#[cfg(feature = "if_ether")]
289#[cfg(target_arch = "aarch64")]
290#[path = "aarch64/if_ether.rs"]
291pub mod if_ether;
292#[cfg(feature = "if_packet")]
293#[cfg(target_arch = "aarch64")]
294#[path = "aarch64/if_packet.rs"]
295pub mod if_packet;
296#[cfg(feature = "io_uring")]
297#[cfg(target_arch = "aarch64")]
298#[path = "aarch64/io_uring.rs"]
299pub mod io_uring;
300#[cfg(feature = "ioctl")]
301#[cfg(target_arch = "aarch64")]
302#[path = "aarch64/ioctl.rs"]
303pub mod ioctl;
304#[cfg(feature = "loop_device")]
305#[cfg(target_arch = "aarch64")]
306#[path = "aarch64/loop_device.rs"]
307pub mod loop_device;
308#[cfg(feature = "mempolicy")]
309#[cfg(target_arch = "aarch64")]
310#[path = "aarch64/mempolicy.rs"]
311pub mod mempolicy;
312#[cfg(feature = "net")]
313#[cfg(target_arch = "aarch64")]
314#[path = "aarch64/net.rs"]
315pub mod net;
316#[cfg(feature = "netlink")]
317#[cfg(target_arch = "aarch64")]
318#[path = "aarch64/netlink.rs"]
319pub mod netlink;
320#[cfg(feature = "prctl")]
321#[cfg(target_arch = "aarch64")]
322#[path = "aarch64/prctl.rs"]
323pub mod prctl;
324#[cfg(feature = "system")]
325#[cfg(target_arch = "aarch64")]
326#[path = "aarch64/system.rs"]
327pub mod system;
328#[cfg(feature = "xdp")]
329#[cfg(target_arch = "aarch64")]
330#[path = "aarch64/xdp.rs"]
331pub mod xdp;
332#[cfg(feature = "bootparam")]
333#[cfg(target_arch = "csky")]
334#[path = "csky/bootparam.rs"]
335pub mod bootparam;
336#[cfg(feature = "errno")]
337#[cfg(target_arch = "csky")]
338#[path = "csky/errno.rs"]
339pub mod errno;
340#[cfg(feature = "general")]
341#[cfg(target_arch = "csky")]
342#[path = "csky/general.rs"]
343pub mod general;
344#[cfg(feature = "if_arp")]
345#[cfg(target_arch = "csky")]
346#[path = "csky/if_arp.rs"]
347pub mod if_arp;
348#[cfg(feature = "if_ether")]
349#[cfg(target_arch = "csky")]
350#[path = "csky/if_ether.rs"]
351pub mod if_ether;
352#[cfg(feature = "if_packet")]
353#[cfg(target_arch = "csky")]
354#[path = "csky/if_packet.rs"]
355pub mod if_packet;
356#[cfg(feature = "io_uring")]
357#[cfg(target_arch = "csky")]
358#[path = "csky/io_uring.rs"]
359pub mod io_uring;
360#[cfg(feature = "ioctl")]
361#[cfg(target_arch = "csky")]
362#[path = "csky/ioctl.rs"]
363pub mod ioctl;
364#[cfg(feature = "loop_device")]
365#[cfg(target_arch = "csky")]
366#[path = "csky/loop_device.rs"]
367pub mod loop_device;
368#[cfg(feature = "mempolicy")]
369#[cfg(target_arch = "csky")]
370#[path = "csky/mempolicy.rs"]
371pub mod mempolicy;
372#[cfg(feature = "net")]
373#[cfg(target_arch = "csky")]
374#[path = "csky/net.rs"]
375pub mod net;
376#[cfg(feature = "netlink")]
377#[cfg(target_arch = "csky")]
378#[path = "csky/netlink.rs"]
379pub mod netlink;
380#[cfg(feature = "prctl")]
381#[cfg(target_arch = "csky")]
382#[path = "csky/prctl.rs"]
383pub mod prctl;
384#[cfg(feature = "system")]
385#[cfg(target_arch = "csky")]
386#[path = "csky/system.rs"]
387pub mod system;
388#[cfg(feature = "xdp")]
389#[cfg(target_arch = "csky")]
390#[path = "csky/xdp.rs"]
391pub mod xdp;
392#[cfg(feature = "bootparam")]
393#[cfg(target_arch = "loongarch64")]
394#[path = "loongarch64/bootparam.rs"]
395pub mod bootparam;
396#[cfg(feature = "errno")]
397#[cfg(target_arch = "loongarch64")]
398#[path = "loongarch64/errno.rs"]
399pub mod errno;
400#[cfg(feature = "general")]
401#[cfg(target_arch = "loongarch64")]
402#[path = "loongarch64/general.rs"]
403pub mod general;
404#[cfg(feature = "if_arp")]
405#[cfg(target_arch = "loongarch64")]
406#[path = "loongarch64/if_arp.rs"]
407pub mod if_arp;
408#[cfg(feature = "if_ether")]
409#[cfg(target_arch = "loongarch64")]
410#[path = "loongarch64/if_ether.rs"]
411pub mod if_ether;
412#[cfg(feature = "if_packet")]
413#[cfg(target_arch = "loongarch64")]
414#[path = "loongarch64/if_packet.rs"]
415pub mod if_packet;
416#[cfg(feature = "io_uring")]
417#[cfg(target_arch = "loongarch64")]
418#[path = "loongarch64/io_uring.rs"]
419pub mod io_uring;
420#[cfg(feature = "ioctl")]
421#[cfg(target_arch = "loongarch64")]
422#[path = "loongarch64/ioctl.rs"]
423pub mod ioctl;
424#[cfg(feature = "loop_device")]
425#[cfg(target_arch = "loongarch64")]
426#[path = "loongarch64/loop_device.rs"]
427pub mod loop_device;
428#[cfg(feature = "mempolicy")]
429#[cfg(target_arch = "loongarch64")]
430#[path = "loongarch64/mempolicy.rs"]
431pub mod mempolicy;
432#[cfg(feature = "net")]
433#[cfg(target_arch = "loongarch64")]
434#[path = "loongarch64/net.rs"]
435pub mod net;
436#[cfg(feature = "netlink")]
437#[cfg(target_arch = "loongarch64")]
438#[path = "loongarch64/netlink.rs"]
439pub mod netlink;
440#[cfg(feature = "prctl")]
441#[cfg(target_arch = "loongarch64")]
442#[path = "loongarch64/prctl.rs"]
443pub mod prctl;
444#[cfg(feature = "system")]
445#[cfg(target_arch = "loongarch64")]
446#[path = "loongarch64/system.rs"]
447pub mod system;
448#[cfg(feature = "xdp")]
449#[cfg(target_arch = "loongarch64")]
450#[path = "loongarch64/xdp.rs"]
451pub mod xdp;
452#[cfg(feature = "bootparam")]
453#[cfg(target_arch = "mips")]
454#[path = "mips/bootparam.rs"]
455pub mod bootparam;
456#[cfg(feature = "errno")]
457#[cfg(target_arch = "mips")]
458#[path = "mips/errno.rs"]
459pub mod errno;
460#[cfg(feature = "general")]
461#[cfg(target_arch = "mips")]
462#[path = "mips/general.rs"]
463pub mod general;
464#[cfg(feature = "if_arp")]
465#[cfg(target_arch = "mips")]
466#[path = "mips/if_arp.rs"]
467pub mod if_arp;
468#[cfg(feature = "if_ether")]
469#[cfg(target_arch = "mips")]
470#[path = "mips/if_ether.rs"]
471pub mod if_ether;
472#[cfg(feature = "if_packet")]
473#[cfg(target_arch = "mips")]
474#[path = "mips/if_packet.rs"]
475pub mod if_packet;
476#[cfg(feature = "io_uring")]
477#[cfg(target_arch = "mips")]
478#[path = "mips/io_uring.rs"]
479pub mod io_uring;
480#[cfg(feature = "ioctl")]
481#[cfg(target_arch = "mips")]
482#[path = "mips/ioctl.rs"]
483pub mod ioctl;
484#[cfg(feature = "loop_device")]
485#[cfg(target_arch = "mips")]
486#[path = "mips/loop_device.rs"]
487pub mod loop_device;
488#[cfg(feature = "mempolicy")]
489#[cfg(target_arch = "mips")]
490#[path = "mips/mempolicy.rs"]
491pub mod mempolicy;
492#[cfg(feature = "net")]
493#[cfg(target_arch = "mips")]
494#[path = "mips/net.rs"]
495pub mod net;
496#[cfg(feature = "netlink")]
497#[cfg(target_arch = "mips")]
498#[path = "mips/netlink.rs"]
499pub mod netlink;
500#[cfg(feature = "prctl")]
501#[cfg(target_arch = "mips")]
502#[path = "mips/prctl.rs"]
503pub mod prctl;
504#[cfg(feature = "system")]
505#[cfg(target_arch = "mips")]
506#[path = "mips/system.rs"]
507pub mod system;
508#[cfg(feature = "xdp")]
509#[cfg(target_arch = "mips")]
510#[path = "mips/xdp.rs"]
511pub mod xdp;
512#[cfg(feature = "bootparam")]
513#[cfg(target_arch = "mips64")]
514#[path = "mips64/bootparam.rs"]
515pub mod bootparam;
516#[cfg(feature = "errno")]
517#[cfg(target_arch = "mips64")]
518#[path = "mips64/errno.rs"]
519pub mod errno;
520#[cfg(feature = "general")]
521#[cfg(target_arch = "mips64")]
522#[path = "mips64/general.rs"]
523pub mod general;
524#[cfg(feature = "if_arp")]
525#[cfg(target_arch = "mips64")]
526#[path = "mips64/if_arp.rs"]
527pub mod if_arp;
528#[cfg(feature = "if_ether")]
529#[cfg(target_arch = "mips64")]
530#[path = "mips64/if_ether.rs"]
531pub mod if_ether;
532#[cfg(feature = "if_packet")]
533#[cfg(target_arch = "mips64")]
534#[path = "mips64/if_packet.rs"]
535pub mod if_packet;
536#[cfg(feature = "io_uring")]
537#[cfg(target_arch = "mips64")]
538#[path = "mips64/io_uring.rs"]
539pub mod io_uring;
540#[cfg(feature = "ioctl")]
541#[cfg(target_arch = "mips64")]
542#[path = "mips64/ioctl.rs"]
543pub mod ioctl;
544#[cfg(feature = "loop_device")]
545#[cfg(target_arch = "mips64")]
546#[path = "mips64/loop_device.rs"]
547pub mod loop_device;
548#[cfg(feature = "mempolicy")]
549#[cfg(target_arch = "mips64")]
550#[path = "mips64/mempolicy.rs"]
551pub mod mempolicy;
552#[cfg(feature = "net")]
553#[cfg(target_arch = "mips64")]
554#[path = "mips64/net.rs"]
555pub mod net;
556#[cfg(feature = "netlink")]
557#[cfg(target_arch = "mips64")]
558#[path = "mips64/netlink.rs"]
559pub mod netlink;
560#[cfg(feature = "prctl")]
561#[cfg(target_arch = "mips64")]
562#[path = "mips64/prctl.rs"]
563pub mod prctl;
564#[cfg(feature = "system")]
565#[cfg(target_arch = "mips64")]
566#[path = "mips64/system.rs"]
567pub mod system;
568#[cfg(feature = "xdp")]
569#[cfg(target_arch = "mips64")]
570#[path = "mips64/xdp.rs"]
571pub mod xdp;
572#[cfg(feature = "bootparam")]
573#[cfg(target_arch = "mips32r6")]
574#[path = "mips32r6/bootparam.rs"]
575pub mod bootparam;
576#[cfg(feature = "errno")]
577#[cfg(target_arch = "mips32r6")]
578#[path = "mips32r6/errno.rs"]
579pub mod errno;
580#[cfg(feature = "general")]
581#[cfg(target_arch = "mips32r6")]
582#[path = "mips32r6/general.rs"]
583pub mod general;
584#[cfg(feature = "if_arp")]
585#[cfg(target_arch = "mips32r6")]
586#[path = "mips32r6/if_arp.rs"]
587pub mod if_arp;
588#[cfg(feature = "if_ether")]
589#[cfg(target_arch = "mips32r6")]
590#[path = "mips32r6/if_ether.rs"]
591pub mod if_ether;
592#[cfg(feature = "if_packet")]
593#[cfg(target_arch = "mips32r6")]
594#[path = "mips32r6/if_packet.rs"]
595pub mod if_packet;
596#[cfg(feature = "io_uring")]
597#[cfg(target_arch = "mips32r6")]
598#[path = "mips32r6/io_uring.rs"]
599pub mod io_uring;
600#[cfg(feature = "ioctl")]
601#[cfg(target_arch = "mips32r6")]
602#[path = "mips32r6/ioctl.rs"]
603pub mod ioctl;
604#[cfg(feature = "loop_device")]
605#[cfg(target_arch = "mips32r6")]
606#[path = "mips32r6/loop_device.rs"]
607pub mod loop_device;
608#[cfg(feature = "mempolicy")]
609#[cfg(target_arch = "mips32r6")]
610#[path = "mips32r6/mempolicy.rs"]
611pub mod mempolicy;
612#[cfg(feature = "net")]
613#[cfg(target_arch = "mips32r6")]
614#[path = "mips32r6/net.rs"]
615pub mod net;
616#[cfg(feature = "netlink")]
617#[cfg(target_arch = "mips32r6")]
618#[path = "mips32r6/netlink.rs"]
619pub mod netlink;
620#[cfg(feature = "prctl")]
621#[cfg(target_arch = "mips32r6")]
622#[path = "mips32r6/prctl.rs"]
623pub mod prctl;
624#[cfg(feature = "system")]
625#[cfg(target_arch = "mips32r6")]
626#[path = "mips32r6/system.rs"]
627pub mod system;
628#[cfg(feature = "xdp")]
629#[cfg(target_arch = "mips32r6")]
630#[path = "mips32r6/xdp.rs"]
631pub mod xdp;
632#[cfg(feature = "bootparam")]
633#[cfg(target_arch = "mips64r6")]
634#[path = "mips64r6/bootparam.rs"]
635pub mod bootparam;
636#[cfg(feature = "errno")]
637#[cfg(target_arch = "mips64r6")]
638#[path = "mips64r6/errno.rs"]
639pub mod errno;
640#[cfg(feature = "general")]
641#[cfg(target_arch = "mips64r6")]
642#[path = "mips64r6/general.rs"]
643pub mod general;
644#[cfg(feature = "if_arp")]
645#[cfg(target_arch = "mips64r6")]
646#[path = "mips64r6/if_arp.rs"]
647pub mod if_arp;
648#[cfg(feature = "if_ether")]
649#[cfg(target_arch = "mips64r6")]
650#[path = "mips64r6/if_ether.rs"]
651pub mod if_ether;
652#[cfg(feature = "if_packet")]
653#[cfg(target_arch = "mips64r6")]
654#[path = "mips64r6/if_packet.rs"]
655pub mod if_packet;
656#[cfg(feature = "io_uring")]
657#[cfg(target_arch = "mips64r6")]
658#[path = "mips64r6/io_uring.rs"]
659pub mod io_uring;
660#[cfg(feature = "ioctl")]
661#[cfg(target_arch = "mips64r6")]
662#[path = "mips64r6/ioctl.rs"]
663pub mod ioctl;
664#[cfg(feature = "loop_device")]
665#[cfg(target_arch = "mips64r6")]
666#[path = "mips64r6/loop_device.rs"]
667pub mod loop_device;
668#[cfg(feature = "mempolicy")]
669#[cfg(target_arch = "mips64r6")]
670#[path = "mips64r6/mempolicy.rs"]
671pub mod mempolicy;
672#[cfg(feature = "net")]
673#[cfg(target_arch = "mips64r6")]
674#[path = "mips64r6/net.rs"]
675pub mod net;
676#[cfg(feature = "netlink")]
677#[cfg(target_arch = "mips64r6")]
678#[path = "mips64r6/netlink.rs"]
679pub mod netlink;
680#[cfg(feature = "prctl")]
681#[cfg(target_arch = "mips64r6")]
682#[path = "mips64r6/prctl.rs"]
683pub mod prctl;
684#[cfg(feature = "system")]
685#[cfg(target_arch = "mips64r6")]
686#[path = "mips64r6/system.rs"]
687pub mod system;
688#[cfg(feature = "xdp")]
689#[cfg(target_arch = "mips64r6")]
690#[path = "mips64r6/xdp.rs"]
691pub mod xdp;
692#[cfg(feature = "bootparam")]
693#[cfg(target_arch = "powerpc")]
694#[path = "powerpc/bootparam.rs"]
695pub mod bootparam;
696#[cfg(feature = "errno")]
697#[cfg(target_arch = "powerpc")]
698#[path = "powerpc/errno.rs"]
699pub mod errno;
700#[cfg(feature = "general")]
701#[cfg(target_arch = "powerpc")]
702#[path = "powerpc/general.rs"]
703pub mod general;
704#[cfg(feature = "if_arp")]
705#[cfg(target_arch = "powerpc")]
706#[path = "powerpc/if_arp.rs"]
707pub mod if_arp;
708#[cfg(feature = "if_ether")]
709#[cfg(target_arch = "powerpc")]
710#[path = "powerpc/if_ether.rs"]
711pub mod if_ether;
712#[cfg(feature = "if_packet")]
713#[cfg(target_arch = "powerpc")]
714#[path = "powerpc/if_packet.rs"]
715pub mod if_packet;
716#[cfg(feature = "io_uring")]
717#[cfg(target_arch = "powerpc")]
718#[path = "powerpc/io_uring.rs"]
719pub mod io_uring;
720#[cfg(feature = "ioctl")]
721#[cfg(target_arch = "powerpc")]
722#[path = "powerpc/ioctl.rs"]
723pub mod ioctl;
724#[cfg(feature = "loop_device")]
725#[cfg(target_arch = "powerpc")]
726#[path = "powerpc/loop_device.rs"]
727pub mod loop_device;
728#[cfg(feature = "mempolicy")]
729#[cfg(target_arch = "powerpc")]
730#[path = "powerpc/mempolicy.rs"]
731pub mod mempolicy;
732#[cfg(feature = "net")]
733#[cfg(target_arch = "powerpc")]
734#[path = "powerpc/net.rs"]
735pub mod net;
736#[cfg(feature = "netlink")]
737#[cfg(target_arch = "powerpc")]
738#[path = "powerpc/netlink.rs"]
739pub mod netlink;
740#[cfg(feature = "prctl")]
741#[cfg(target_arch = "powerpc")]
742#[path = "powerpc/prctl.rs"]
743pub mod prctl;
744#[cfg(feature = "system")]
745#[cfg(target_arch = "powerpc")]
746#[path = "powerpc/system.rs"]
747pub mod system;
748#[cfg(feature = "xdp")]
749#[cfg(target_arch = "powerpc")]
750#[path = "powerpc/xdp.rs"]
751pub mod xdp;
752#[cfg(feature = "bootparam")]
753#[cfg(target_arch = "powerpc64")]
754#[path = "powerpc64/bootparam.rs"]
755pub mod bootparam;
756#[cfg(feature = "errno")]
757#[cfg(target_arch = "powerpc64")]
758#[path = "powerpc64/errno.rs"]
759pub mod errno;
760#[cfg(feature = "general")]
761#[cfg(target_arch = "powerpc64")]
762#[path = "powerpc64/general.rs"]
763pub mod general;
764#[cfg(feature = "if_arp")]
765#[cfg(target_arch = "powerpc64")]
766#[path = "powerpc64/if_arp.rs"]
767pub mod if_arp;
768#[cfg(feature = "if_ether")]
769#[cfg(target_arch = "powerpc64")]
770#[path = "powerpc64/if_ether.rs"]
771pub mod if_ether;
772#[cfg(feature = "if_packet")]
773#[cfg(target_arch = "powerpc64")]
774#[path = "powerpc64/if_packet.rs"]
775pub mod if_packet;
776#[cfg(feature = "io_uring")]
777#[cfg(target_arch = "powerpc64")]
778#[path = "powerpc64/io_uring.rs"]
779pub mod io_uring;
780#[cfg(feature = "ioctl")]
781#[cfg(target_arch = "powerpc64")]
782#[path = "powerpc64/ioctl.rs"]
783pub mod ioctl;
784#[cfg(feature = "loop_device")]
785#[cfg(target_arch = "powerpc64")]
786#[path = "powerpc64/loop_device.rs"]
787pub mod loop_device;
788#[cfg(feature = "mempolicy")]
789#[cfg(target_arch = "powerpc64")]
790#[path = "powerpc64/mempolicy.rs"]
791pub mod mempolicy;
792#[cfg(feature = "net")]
793#[cfg(target_arch = "powerpc64")]
794#[path = "powerpc64/net.rs"]
795pub mod net;
796#[cfg(feature = "netlink")]
797#[cfg(target_arch = "powerpc64")]
798#[path = "powerpc64/netlink.rs"]
799pub mod netlink;
800#[cfg(feature = "prctl")]
801#[cfg(target_arch = "powerpc64")]
802#[path = "powerpc64/prctl.rs"]
803pub mod prctl;
804#[cfg(feature = "system")]
805#[cfg(target_arch = "powerpc64")]
806#[path = "powerpc64/system.rs"]
807pub mod system;
808#[cfg(feature = "xdp")]
809#[cfg(target_arch = "powerpc64")]
810#[path = "powerpc64/xdp.rs"]
811pub mod xdp;
812#[cfg(feature = "bootparam")]
813#[cfg(target_arch = "riscv32")]
814#[path = "riscv32/bootparam.rs"]
815pub mod bootparam;
816#[cfg(feature = "errno")]
817#[cfg(target_arch = "riscv32")]
818#[path = "riscv32/errno.rs"]
819pub mod errno;
820#[cfg(feature = "general")]
821#[cfg(target_arch = "riscv32")]
822#[path = "riscv32/general.rs"]
823pub mod general;
824#[cfg(feature = "if_arp")]
825#[cfg(target_arch = "riscv32")]
826#[path = "riscv32/if_arp.rs"]
827pub mod if_arp;
828#[cfg(feature = "if_ether")]
829#[cfg(target_arch = "riscv32")]
830#[path = "riscv32/if_ether.rs"]
831pub mod if_ether;
832#[cfg(feature = "if_packet")]
833#[cfg(target_arch = "riscv32")]
834#[path = "riscv32/if_packet.rs"]
835pub mod if_packet;
836#[cfg(feature = "io_uring")]
837#[cfg(target_arch = "riscv32")]
838#[path = "riscv32/io_uring.rs"]
839pub mod io_uring;
840#[cfg(feature = "ioctl")]
841#[cfg(target_arch = "riscv32")]
842#[path = "riscv32/ioctl.rs"]
843pub mod ioctl;
844#[cfg(feature = "loop_device")]
845#[cfg(target_arch = "riscv32")]
846#[path = "riscv32/loop_device.rs"]
847pub mod loop_device;
848#[cfg(feature = "mempolicy")]
849#[cfg(target_arch = "riscv32")]
850#[path = "riscv32/mempolicy.rs"]
851pub mod mempolicy;
852#[cfg(feature = "net")]
853#[cfg(target_arch = "riscv32")]
854#[path = "riscv32/net.rs"]
855pub mod net;
856#[cfg(feature = "netlink")]
857#[cfg(target_arch = "riscv32")]
858#[path = "riscv32/netlink.rs"]
859pub mod netlink;
860#[cfg(feature = "prctl")]
861#[cfg(target_arch = "riscv32")]
862#[path = "riscv32/prctl.rs"]
863pub mod prctl;
864#[cfg(feature = "system")]
865#[cfg(target_arch = "riscv32")]
866#[path = "riscv32/system.rs"]
867pub mod system;
868#[cfg(feature = "xdp")]
869#[cfg(target_arch = "riscv32")]
870#[path = "riscv32/xdp.rs"]
871pub mod xdp;
872#[cfg(feature = "bootparam")]
873#[cfg(target_arch = "riscv64")]
874#[path = "riscv64/bootparam.rs"]
875pub mod bootparam;
876#[cfg(feature = "errno")]
877#[cfg(target_arch = "riscv64")]
878#[path = "riscv64/errno.rs"]
879pub mod errno;
880#[cfg(feature = "general")]
881#[cfg(target_arch = "riscv64")]
882#[path = "riscv64/general.rs"]
883pub mod general;
884#[cfg(feature = "if_arp")]
885#[cfg(target_arch = "riscv64")]
886#[path = "riscv64/if_arp.rs"]
887pub mod if_arp;
888#[cfg(feature = "if_ether")]
889#[cfg(target_arch = "riscv64")]
890#[path = "riscv64/if_ether.rs"]
891pub mod if_ether;
892#[cfg(feature = "if_packet")]
893#[cfg(target_arch = "riscv64")]
894#[path = "riscv64/if_packet.rs"]
895pub mod if_packet;
896#[cfg(feature = "io_uring")]
897#[cfg(target_arch = "riscv64")]
898#[path = "riscv64/io_uring.rs"]
899pub mod io_uring;
900#[cfg(feature = "ioctl")]
901#[cfg(target_arch = "riscv64")]
902#[path = "riscv64/ioctl.rs"]
903pub mod ioctl;
904#[cfg(feature = "loop_device")]
905#[cfg(target_arch = "riscv64")]
906#[path = "riscv64/loop_device.rs"]
907pub mod loop_device;
908#[cfg(feature = "mempolicy")]
909#[cfg(target_arch = "riscv64")]
910#[path = "riscv64/mempolicy.rs"]
911pub mod mempolicy;
912#[cfg(feature = "net")]
913#[cfg(target_arch = "riscv64")]
914#[path = "riscv64/net.rs"]
915pub mod net;
916#[cfg(feature = "netlink")]
917#[cfg(target_arch = "riscv64")]
918#[path = "riscv64/netlink.rs"]
919pub mod netlink;
920#[cfg(feature = "prctl")]
921#[cfg(target_arch = "riscv64")]
922#[path = "riscv64/prctl.rs"]
923pub mod prctl;
924#[cfg(feature = "system")]
925#[cfg(target_arch = "riscv64")]
926#[path = "riscv64/system.rs"]
927pub mod system;
928#[cfg(feature = "xdp")]
929#[cfg(target_arch = "riscv64")]
930#[path = "riscv64/xdp.rs"]
931pub mod xdp;
932#[cfg(feature = "bootparam")]
933#[cfg(target_arch = "s390x")]
934#[path = "s390x/bootparam.rs"]
935pub mod bootparam;
936#[cfg(feature = "errno")]
937#[cfg(target_arch = "s390x")]
938#[path = "s390x/errno.rs"]
939pub mod errno;
940#[cfg(feature = "general")]
941#[cfg(target_arch = "s390x")]
942#[path = "s390x/general.rs"]
943pub mod general;
944#[cfg(feature = "if_arp")]
945#[cfg(target_arch = "s390x")]
946#[path = "s390x/if_arp.rs"]
947pub mod if_arp;
948#[cfg(feature = "if_ether")]
949#[cfg(target_arch = "s390x")]
950#[path = "s390x/if_ether.rs"]
951pub mod if_ether;
952#[cfg(feature = "if_packet")]
953#[cfg(target_arch = "s390x")]
954#[path = "s390x/if_packet.rs"]
955pub mod if_packet;
956#[cfg(feature = "io_uring")]
957#[cfg(target_arch = "s390x")]
958#[path = "s390x/io_uring.rs"]
959pub mod io_uring;
960#[cfg(feature = "ioctl")]
961#[cfg(target_arch = "s390x")]
962#[path = "s390x/ioctl.rs"]
963pub mod ioctl;
964#[cfg(feature = "loop_device")]
965#[cfg(target_arch = "s390x")]
966#[path = "s390x/loop_device.rs"]
967pub mod loop_device;
968#[cfg(feature = "mempolicy")]
969#[cfg(target_arch = "s390x")]
970#[path = "s390x/mempolicy.rs"]
971pub mod mempolicy;
972#[cfg(feature = "net")]
973#[cfg(target_arch = "s390x")]
974#[path = "s390x/net.rs"]
975pub mod net;
976#[cfg(feature = "netlink")]
977#[cfg(target_arch = "s390x")]
978#[path = "s390x/netlink.rs"]
979pub mod netlink;
980#[cfg(feature = "prctl")]
981#[cfg(target_arch = "s390x")]
982#[path = "s390x/prctl.rs"]
983pub mod prctl;
984#[cfg(feature = "system")]
985#[cfg(target_arch = "s390x")]
986#[path = "s390x/system.rs"]
987pub mod system;
988#[cfg(feature = "xdp")]
989#[cfg(target_arch = "s390x")]
990#[path = "s390x/xdp.rs"]
991pub mod xdp;
992#[cfg(feature = "bootparam")]
993#[cfg(target_arch = "sparc")]
994#[path = "sparc/bootparam.rs"]
995pub mod bootparam;
996#[cfg(feature = "errno")]
997#[cfg(target_arch = "sparc")]
998#[path = "sparc/errno.rs"]
999pub mod errno;
1000#[cfg(feature = "general")]
1001#[cfg(target_arch = "sparc")]
1002#[path = "sparc/general.rs"]
1003pub mod general;
1004#[cfg(feature = "if_arp")]
1005#[cfg(target_arch = "sparc")]
1006#[path = "sparc/if_arp.rs"]
1007pub mod if_arp;
1008#[cfg(feature = "if_ether")]
1009#[cfg(target_arch = "sparc")]
1010#[path = "sparc/if_ether.rs"]
1011pub mod if_ether;
1012#[cfg(feature = "if_packet")]
1013#[cfg(target_arch = "sparc")]
1014#[path = "sparc/if_packet.rs"]
1015pub mod if_packet;
1016#[cfg(feature = "io_uring")]
1017#[cfg(target_arch = "sparc")]
1018#[path = "sparc/io_uring.rs"]
1019pub mod io_uring;
1020#[cfg(feature = "ioctl")]
1021#[cfg(target_arch = "sparc")]
1022#[path = "sparc/ioctl.rs"]
1023pub mod ioctl;
1024#[cfg(feature = "loop_device")]
1025#[cfg(target_arch = "sparc")]
1026#[path = "sparc/loop_device.rs"]
1027pub mod loop_device;
1028#[cfg(feature = "mempolicy")]
1029#[cfg(target_arch = "sparc")]
1030#[path = "sparc/mempolicy.rs"]
1031pub mod mempolicy;
1032#[cfg(feature = "net")]
1033#[cfg(target_arch = "sparc")]
1034#[path = "sparc/net.rs"]
1035pub mod net;
1036#[cfg(feature = "netlink")]
1037#[cfg(target_arch = "sparc")]
1038#[path = "sparc/netlink.rs"]
1039pub mod netlink;
1040#[cfg(feature = "prctl")]
1041#[cfg(target_arch = "sparc")]
1042#[path = "sparc/prctl.rs"]
1043pub mod prctl;
1044#[cfg(feature = "system")]
1045#[cfg(target_arch = "sparc")]
1046#[path = "sparc/system.rs"]
1047pub mod system;
1048#[cfg(feature = "xdp")]
1049#[cfg(target_arch = "sparc")]
1050#[path = "sparc/xdp.rs"]
1051pub mod xdp;
1052#[cfg(feature = "bootparam")]
1053#[cfg(target_arch = "sparc64")]
1054#[path = "sparc64/bootparam.rs"]
1055pub mod bootparam;
1056#[cfg(feature = "errno")]
1057#[cfg(target_arch = "sparc64")]
1058#[path = "sparc64/errno.rs"]
1059pub mod errno;
1060#[cfg(feature = "general")]
1061#[cfg(target_arch = "sparc64")]
1062#[path = "sparc64/general.rs"]
1063pub mod general;
1064#[cfg(feature = "if_arp")]
1065#[cfg(target_arch = "sparc64")]
1066#[path = "sparc64/if_arp.rs"]
1067pub mod if_arp;
1068#[cfg(feature = "if_ether")]
1069#[cfg(target_arch = "sparc64")]
1070#[path = "sparc64/if_ether.rs"]
1071pub mod if_ether;
1072#[cfg(feature = "if_packet")]
1073#[cfg(target_arch = "sparc64")]
1074#[path = "sparc64/if_packet.rs"]
1075pub mod if_packet;
1076#[cfg(feature = "io_uring")]
1077#[cfg(target_arch = "sparc64")]
1078#[path = "sparc64/io_uring.rs"]
1079pub mod io_uring;
1080#[cfg(feature = "ioctl")]
1081#[cfg(target_arch = "sparc64")]
1082#[path = "sparc64/ioctl.rs"]
1083pub mod ioctl;
1084#[cfg(feature = "loop_device")]
1085#[cfg(target_arch = "sparc64")]
1086#[path = "sparc64/loop_device.rs"]
1087pub mod loop_device;
1088#[cfg(feature = "mempolicy")]
1089#[cfg(target_arch = "sparc64")]
1090#[path = "sparc64/mempolicy.rs"]
1091pub mod mempolicy;
1092#[cfg(feature = "net")]
1093#[cfg(target_arch = "sparc64")]
1094#[path = "sparc64/net.rs"]
1095pub mod net;
1096#[cfg(feature = "netlink")]
1097#[cfg(target_arch = "sparc64")]
1098#[path = "sparc64/netlink.rs"]
1099pub mod netlink;
1100#[cfg(feature = "prctl")]
1101#[cfg(target_arch = "sparc64")]
1102#[path = "sparc64/prctl.rs"]
1103pub mod prctl;
1104#[cfg(feature = "system")]
1105#[cfg(target_arch = "sparc64")]
1106#[path = "sparc64/system.rs"]
1107pub mod system;
1108#[cfg(feature = "xdp")]
1109#[cfg(target_arch = "sparc64")]
1110#[path = "sparc64/xdp.rs"]
1111pub mod xdp;
1112#[cfg(feature = "bootparam")]
1113#[cfg(target_arch = "x86")]
1114#[path = "x86/bootparam.rs"]
1115pub mod bootparam;
1116#[cfg(feature = "errno")]
1117#[cfg(target_arch = "x86")]
1118#[path = "x86/errno.rs"]
1119pub mod errno;
1120#[cfg(feature = "general")]
1121#[cfg(target_arch = "x86")]
1122#[path = "x86/general.rs"]
1123pub mod general;
1124#[cfg(feature = "if_arp")]
1125#[cfg(target_arch = "x86")]
1126#[path = "x86/if_arp.rs"]
1127pub mod if_arp;
1128#[cfg(feature = "if_ether")]
1129#[cfg(target_arch = "x86")]
1130#[path = "x86/if_ether.rs"]
1131pub mod if_ether;
1132#[cfg(feature = "if_packet")]
1133#[cfg(target_arch = "x86")]
1134#[path = "x86/if_packet.rs"]
1135pub mod if_packet;
1136#[cfg(feature = "io_uring")]
1137#[cfg(target_arch = "x86")]
1138#[path = "x86/io_uring.rs"]
1139pub mod io_uring;
1140#[cfg(feature = "ioctl")]
1141#[cfg(target_arch = "x86")]
1142#[path = "x86/ioctl.rs"]
1143pub mod ioctl;
1144#[cfg(feature = "loop_device")]
1145#[cfg(target_arch = "x86")]
1146#[path = "x86/loop_device.rs"]
1147pub mod loop_device;
1148#[cfg(feature = "mempolicy")]
1149#[cfg(target_arch = "x86")]
1150#[path = "x86/mempolicy.rs"]
1151pub mod mempolicy;
1152#[cfg(feature = "net")]
1153#[cfg(target_arch = "x86")]
1154#[path = "x86/net.rs"]
1155pub mod net;
1156#[cfg(feature = "netlink")]
1157#[cfg(target_arch = "x86")]
1158#[path = "x86/netlink.rs"]
1159pub mod netlink;
1160#[cfg(feature = "prctl")]
1161#[cfg(target_arch = "x86")]
1162#[path = "x86/prctl.rs"]
1163pub mod prctl;
1164#[cfg(feature = "system")]
1165#[cfg(target_arch = "x86")]
1166#[path = "x86/system.rs"]
1167pub mod system;
1168#[cfg(feature = "xdp")]
1169#[cfg(target_arch = "x86")]
1170#[path = "x86/xdp.rs"]
1171pub mod xdp;
1172#[cfg(feature = "bootparam")]
1173#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1174#[path = "x86_64/bootparam.rs"]
1175pub mod bootparam;
1176#[cfg(feature = "errno")]
1177#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1178#[path = "x86_64/errno.rs"]
1179pub mod errno;
1180#[cfg(feature = "general")]
1181#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1182#[path = "x86_64/general.rs"]
1183pub mod general;
1184#[cfg(feature = "if_arp")]
1185#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1186#[path = "x86_64/if_arp.rs"]
1187pub mod if_arp;
1188#[cfg(feature = "if_ether")]
1189#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1190#[path = "x86_64/if_ether.rs"]
1191pub mod if_ether;
1192#[cfg(feature = "if_packet")]
1193#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1194#[path = "x86_64/if_packet.rs"]
1195pub mod if_packet;
1196#[cfg(feature = "io_uring")]
1197#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1198#[path = "x86_64/io_uring.rs"]
1199pub mod io_uring;
1200#[cfg(feature = "ioctl")]
1201#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1202#[path = "x86_64/ioctl.rs"]
1203pub mod ioctl;
1204#[cfg(feature = "loop_device")]
1205#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1206#[path = "x86_64/loop_device.rs"]
1207pub mod loop_device;
1208#[cfg(feature = "mempolicy")]
1209#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1210#[path = "x86_64/mempolicy.rs"]
1211pub mod mempolicy;
1212#[cfg(feature = "net")]
1213#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1214#[path = "x86_64/net.rs"]
1215pub mod net;
1216#[cfg(feature = "netlink")]
1217#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1218#[path = "x86_64/netlink.rs"]
1219pub mod netlink;
1220#[cfg(feature = "prctl")]
1221#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1222#[path = "x86_64/prctl.rs"]
1223pub mod prctl;
1224#[cfg(feature = "system")]
1225#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1226#[path = "x86_64/system.rs"]
1227pub mod system;
1228#[cfg(feature = "xdp")]
1229#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1230#[path = "x86_64/xdp.rs"]
1231pub mod xdp;
1232#[cfg(feature = "bootparam")]
1233#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1234#[path = "x32/bootparam.rs"]
1235pub mod bootparam;
1236#[cfg(feature = "errno")]
1237#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1238#[path = "x32/errno.rs"]
1239pub mod errno;
1240#[cfg(feature = "general")]
1241#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1242#[path = "x32/general.rs"]
1243pub mod general;
1244#[cfg(feature = "if_arp")]
1245#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1246#[path = "x32/if_arp.rs"]
1247pub mod if_arp;
1248#[cfg(feature = "if_ether")]
1249#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1250#[path = "x32/if_ether.rs"]
1251pub mod if_ether;
1252#[cfg(feature = "if_packet")]
1253#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1254#[path = "x32/if_packet.rs"]
1255pub mod if_packet;
1256#[cfg(feature = "io_uring")]
1257#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1258#[path = "x32/io_uring.rs"]
1259pub mod io_uring;
1260#[cfg(feature = "ioctl")]
1261#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1262#[path = "x32/ioctl.rs"]
1263pub mod ioctl;
1264#[cfg(feature = "loop_device")]
1265#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1266#[path = "x32/loop_device.rs"]
1267pub mod loop_device;
1268#[cfg(feature = "mempolicy")]
1269#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1270#[path = "x32/mempolicy.rs"]
1271pub mod mempolicy;
1272#[cfg(feature = "net")]
1273#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1274#[path = "x32/net.rs"]
1275pub mod net;
1276#[cfg(feature = "netlink")]
1277#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1278#[path = "x32/netlink.rs"]
1279pub mod netlink;
1280#[cfg(feature = "prctl")]
1281#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1282#[path = "x32/prctl.rs"]
1283pub mod prctl;
1284#[cfg(feature = "system")]
1285#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1286#[path = "x32/system.rs"]
1287pub mod system;
1288#[cfg(feature = "xdp")]
1289#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1290#[path = "x32/xdp.rs"]
1291pub mod xdp;
1292