projects/linux·blob v7.2 · refs

40 lines · 1.0 KiB

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#![allow(
12 clippy::all,
13 clippy::cast_lossless,
14 clippy::ptr_as_ptr,
15 clippy::ref_as_ptr,
16 clippy::undocumented_unsafe_blocks,
17 dead_code,
18 missing_docs,
19 non_camel_case_types,
20 non_upper_case_globals,
21 non_snake_case,
22 improper_ctypes,
23 unreachable_pub,
24 unsafe_op_in_unsafe_fn
25)]
26#![cfg_attr(CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES, allow(unnecessary_transmutes))]
27#![cfg_attr(
28 CONFIG_RUSTC_HAS_SUSPICIOUS_RUNTIME_SYMBOL_DEFINITIONS,
29 allow(suspicious_runtime_symbol_definitions)
30)]
31#![feature(cfi_encoding)]
32
33// Manual definition of blocklisted types.
34type __kernel_size_t = usize;
35type __kernel_ssize_t = isize;
36type __kernel_ptrdiff_t = isize;
37
38use pin_init::MaybeZeroable;
39
40include!(concat!(env!("OBJTREE"), "/rust/uapi/uapi_generated.rs"));