summaryrefslogtreecommitdiffstats
path: root/rust/kernel/src/c_types.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rust/kernel/src/c_types.rs')
-rw-r--r--rust/kernel/src/c_types.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/rust/kernel/src/c_types.rs b/rust/kernel/src/c_types.rs
new file mode 100644
index 000000000000..35776920c99d
--- /dev/null
+++ b/rust/kernel/src/c_types.rs
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: GPL-2.0
+
+#![allow(non_camel_case_types)]
+
+#[cfg(target_arch = "x86_64")]
+mod c {
+ use core::ffi;
+
+ pub type c_int = i32;
+ pub type c_char = i8;
+ pub type c_long = i64;
+ pub type c_longlong = i64;
+ pub type c_short = i16;
+ pub type c_uchar = u8;
+ pub type c_uint = u32;
+ pub type c_ulong = u64;
+ pub type c_ulonglong = u64;
+ pub type c_ushort = u16;
+ pub type c_schar = i8;
+ pub type c_size_t = usize;
+ pub type c_ssize_t = isize;
+ pub type c_void = ffi::c_void;
+}
+
+pub use c::*;