aboutsummaryrefslogtreecommitdiff
path: root/examples/01.minimal/driver.rs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/01.minimal/driver.rs')
-rw-r--r--examples/01.minimal/driver.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/examples/01.minimal/driver.rs b/examples/01.minimal/driver.rs
new file mode 100644
index 0000000..d446ff0
--- /dev/null
+++ b/examples/01.minimal/driver.rs
@@ -0,0 +1,16 @@
+#![crate_type = "dylib"]
+#![no_std]
+#![allow(bad_style)]
+
+#[macro_use] extern crate km;
+
+use core::mem;
+use km::*;
+
+#[no_mangle]
+pub extern "system" fn DriverEntry(_obj: *mut km::DRIVER_OBJECT, _path: *const km::string::UnicodeString) -> Status
+{
+ KdPrint!("[rs] hello, rust!\n");
+ KdPrint!("[rs] we are DriverObject at 0x%p, sizeof %d\n", _obj, mem::size_of::<km::DRIVER_OBJECT>());
+ return Status::unsuccessful; // return error to unload driver now
+}