1 // SPDX-License-Identifier: GPL-2.0 2 3 //! UAPI Bindings. 4 //! 5 //! Contains the bindings generated by `bindgen` for UAPI interfaces. 6 //! 7 //! This crate may be used directly by drivers that need to interact with 8 //! userspace APIs. 9 10 #![no_std] 11 // See <https://github.com/rust-lang/rust-bindgen/issues/1651>. 12 #![cfg_attr(test, allow(deref_nullptr))] 13 #![cfg_attr(test, allow(unaligned_references))] 14 #![cfg_attr(test, allow(unsafe_op_in_unsafe_fn))] 15 #![allow( 16 clippy::all, 17 clippy::cast_lossless, 18 clippy::ptr_as_ptr, 19 clippy::undocumented_unsafe_blocks, 20 dead_code, 21 missing_docs, 22 non_camel_case_types, 23 non_upper_case_globals, 24 non_snake_case, 25 improper_ctypes, 26 unreachable_pub, 27 unsafe_op_in_unsafe_fn 28 )] 29 #![cfg_attr(CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES, allow(unnecessary_transmutes))] 30 31 // Manual definition of blocklisted types. 32 type __kernel_size_t = usize; 33 type __kernel_ssize_t = isize; 34 type __kernel_ptrdiff_t = isize; 35 36 include!(concat!(env!("OBJTREE"), "/rust/uapi/uapi_generated.rs")); 37