summaryrefslogtreecommitdiff
path: root/rust/uapi/lib.rs
blob: 797ead5b5626ce5e6a4ab47aa396cdfd91df83ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// SPDX-License-Identifier: GPL-2.0

//! UAPI Bindings.
//!
//! Contains the bindings generated by `bindgen` for UAPI interfaces.
//!
//! This crate may be used directly by drivers that need to interact with
//! userspace APIs.

#![no_std]
#![allow(
    clippy::all,
    clippy::cast_lossless,
    clippy::ptr_as_ptr,
    clippy::ref_as_ptr,
    clippy::undocumented_unsafe_blocks,
    dead_code,
    missing_docs,
    non_camel_case_types,
    non_upper_case_globals,
    non_snake_case,
    improper_ctypes,
    unreachable_pub,
    unsafe_op_in_unsafe_fn
)]
#![cfg_attr(CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES, allow(unnecessary_transmutes))]
#![cfg_attr(
    CONFIG_RUSTC_HAS_SUSPICIOUS_RUNTIME_SYMBOL_DEFINITIONS,
    allow(suspicious_runtime_symbol_definitions)
)]
#![feature(cfi_encoding)]

// Manual definition of blocklisted types.
type __kernel_size_t = usize;
type __kernel_ssize_t = isize;
type __kernel_ptrdiff_t = isize;

use pin_init::MaybeZeroable;

include!(concat!(env!("OBJTREE"), "/rust/uapi/uapi_generated.rs"));