Skip to content

Commit 492c267

Browse files
committed
update README.md to make it more funny
1 parent 21e6c25 commit 492c267

File tree

1 file changed

+31
-13
lines changed

1 file changed

+31
-13
lines changed

README.md

Lines changed: 31 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,30 @@
1515

1616
**cve-rs** allows you to introduce common memory vulnerabilities (such as buffer overflows and segfaults) into your Rust program in a memory safe manner.
1717

18-
Rust is an amazing language. You can program a lot of useful things while ensuring that your program will stay safe. Unfortunately, safe Rust is quite limiting. For example, you cannot introduce code that could corrupt the program's memory. Now, with **cve-rs**, you can corrupt your program's memory without corrupting your program's memory.
18+
## Why choose **cve-rs**?
19+
- 🩸 Bleeding edge technology
20+
- 🕹️ Paradigm-changing (no more unsafe code!)
21+
- 🔥 Blazingly fast
22+
- 💡 Easy to use
23+
- Featuring way 👋 too 2️⃣ many 🤯 emojis in the 📖 readme 🔥 🦀 💨
24+
- **🦀 Built in 100% memory-safe Rust!**
25+
26+
## Example
27+
```rs
28+
// With cve-rs, you can crash prod in a 🔥 blazingly fast manner!
29+
pub fn segfault() {
30+
let null: &mut u8 = cve_rs::null_mut::<u8>();
31+
*null = 42;
32+
}
33+
```
34+
35+
![Segfault demo](/assets/segfault-demo.png)
1936

20-
We are very committed to making sure **cve-rs** is memory-safe. We know that unsafe code can have unintended consequences, such as memory unsafety that causes programs to be insecure or unstable.
37+
Rust is an amazing language! You can program a lot of useful things while ensuring that your program will stay safe. Unfortunately, safe Rust is quite limiting. For example, you cannot introduce code that could corrupt the program's memory. Now, with **cve-rs**, **you can corrupt your program's memory without corrupting your program's memory!**
2138

22-
That is why **cve-rs** uses `#![deny(unsafe_code)]` in the entire codebase. There is not a single block of `unsafe` code* in this project.
39+
We are very committed to making sure **cve-rs** is memory-safe. We know that unsafe code can have unintended consequences, such as memory unsafety that causes bugs like segmentation faults, use-after-frees, and buffer overflows!
2340

24-
> *\* There is, unfortunately, one exception: In our tests, we compare the results of our safe `transmute` function against the regular `std::mem::transmute` function. Perhaps somewhat shortsightedly, the standard library implementation is unsafe. Regardless, this is only in our tests - the core library has no unsafe code.*
41+
That is why **cve-rs** uses `#![deny(unsafe_code)]` in the entire codebase. There is not a single block of `unsafe` code (except for some [tests](./src/transmute.rs#L56)) in this project.
2542

2643
**cve-rs** implements the following bugs in safe Rust:
2744

@@ -34,29 +51,26 @@ That is why **cve-rs** uses `#![deny(unsafe_code)]` in the entire codebase. Ther
3451
- `std::mem::transmute`
3552
- `std::ptr::null()`/`null_mut()` but for references
3653

37-
Here is an example of usage with the `segfault` subcommand:
38-
39-
![segfault demo](/assets/segfault-demo.png)
40-
41-
## Install
54+
## Installation
4255

4356
**cve-rs** can be used directly with Cargo.
4457

4558
To use it as a library:
4659

4760
```sh
48-
cargo add cve-rs
61+
$ cargo add cve-rs
4962
```
5063

5164
Or to run our example binary:
5265

5366
```sh
54-
cargo install cve-rs
67+
$ cargo install cve-rs
68+
$ cve-rs
5569
```
5670

5771
## WASM support
5872

59-
**cve-rs** supports WASM through the WASI API.
73+
**cve-rs** supports WASM through the WASI API, and also to Webassembly that you can run in a browser!
6074

6175
You can compile it and run it using [Wasmer](https://wasmer.io/) with the following commands:
6276

@@ -65,9 +79,13 @@ cargo build --target wasm32-wasi
6579
wasmer run target/wasm32-wasi/debug/cve-rs.wasm
6680
```
6781

82+
## Wait, how safe is cve-rs?!?
83+
84+
lmao
85+
6886
## Contributors
6987

70-
Special thanks to [@Bright-Shard](https://github.com/Bright-Shard) and [@Creative0708](https://github.com/Creative0708)!
88+
Special thanks to [@Bright-Shard](https://github.com/Bright-Shard) and [@Creative0708](https://github.com/Creative0708), and everyone else that contributed to **cve-rs**!
7189

7290
## Can I use cve-rs in production?
7391

0 commit comments

Comments
 (0)