blob: f452ca80fd9039a19040ca0d4aaec6d6eed0f35d (
plain) (
blame)
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
|
## Compatibility
All examples tested against Windows XP SP3, Windows XP x64 SP2, Windows 7 x64 SP2, Windows 10 x64 and ReactOS 0.4.0.
## 01.minimal
Minimal Windows kernel driver written in Rust. [DriverEntry](https://msdn.microsoft.com/en-us/library/windows/hardware/ff544113%28v=vs.85%29.aspx) just prints `hello` and quits immediately.
## 02.unload
Simple kernel driver which supports [unloading](https://msdn.microsoft.com/en-us/library/windows/hardware/ff564886%28v=vs.85%29.aspx).
## 03.urandom
[devrandom](https://github.com/pravic/ontl/tree/master/samples/devrandom) driver sample which has been ported to Rust.
It creates `\\.\urandom` device, which can produce random data like `/dev/urandom`, but insecure.
This sample shows how to create a [Device Object](https://msdn.microsoft.com/en-us/library/windows/hardware/ff548014%28v=vs.85%29.aspx), assotiate it with user-mode visible [name](https://msdn.microsoft.com/en-us/library/windows/hardware/ff556420%28v=vs.85%29.aspx) and process [I/O requests](https://msdn.microsoft.com/en-us/library/windows/hardware/ff544248%28v=vs.85%29.aspx) from user-mode applications.
### Screenshots
[](http://savepic.su/7182468.png)
[](http://savepic.su/7183492.png)
|