commit ff0100bdb53f6a7e72c3f1bfc9dbaab03087f7b1
parent bdac7f874dd8890c65839c4eb71411303ccfd2e7
Author: MTRNord <mtrnord1@gmail.com>
Date: Mon, 28 Jun 2021 12:00:23 +0200
Add get_room fuzz target
Diffstat:
14 files changed, 36 insertions(+), 4 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -1,3 +1,3 @@
/target
-/out
+/out*
cpu_scaling
\ No newline at end of file
diff --git a/Cargo.toml b/Cargo.toml
@@ -11,4 +11,8 @@ matrix-sdk = "0.3.0"
url = "2.2.2"
[patch.crates-io]
-lazy_static = { git = "https://github.com/rust-fuzz/resettable-lazy-static.rs" }
-\ No newline at end of file
+lazy_static = { git = "https://github.com/rust-fuzz/resettable-lazy-static.rs" }
+
+[[bin]]
+name = "fuzz_get_room"
+path = "src/get_room.rs"
+\ No newline at end of file
diff --git a/README.md b/README.md
@@ -17,7 +17,7 @@ cargo afl build
After that you can start fuzzing by doing:
```
-cargo afl fuzz -i in -o out target/debug/matrix-rust-sdk-fuzz-target
+cargo afl fuzz -i in/main -o out target/debug/matrix-rust-sdk-fuzz-target
```
## Learn more
diff --git a/in/get_room/1 b/in/get_room/1
@@ -0,0 +1 @@
+!iMZEhwCvbfeAYUxAjZ:t2l.io
+\ No newline at end of file
diff --git a/in/get_room/2 b/in/get_room/2
@@ -0,0 +1 @@
+!MKvhXlSTLGJUXpYuWF:nixos.org
+\ No newline at end of file
diff --git a/in/get_room/3 b/in/get_room/3
@@ -0,0 +1 @@
+!glXkiqByrYALtrIJWV:kde.org
+\ No newline at end of file
diff --git a/in/get_room/4 b/in/get_room/4
@@ -0,0 +1 @@
+!lAoVmVifHHtoeOAmHO:grapheneos.org
+\ No newline at end of file
diff --git a/in/get_room/5 b/in/get_room/5
@@ -0,0 +1 @@
+!FbdUhpqRpOpzkFKXef:t2l.io
+\ No newline at end of file
diff --git a/in/get_room/6 b/in/get_room/6
@@ -0,0 +1 @@
+!xlxIfxYQgiYUNcMwrq:thomcat.rocks
+\ No newline at end of file
diff --git a/in/url b/in/main/url
diff --git a/in/url2 b/in/main/url2
diff --git a/in/url3 b/in/main/url3
diff --git a/in/url4 b/in/main/url4
diff --git a/src/get_room.rs b/src/get_room.rs
@@ -0,0 +1,16 @@
+use std::convert::TryFrom;
+
+use matrix_sdk::{identifiers::RoomId, Client};
+use url::Url;
+
+fn main() {
+ afl::fuzz!(|data: &[u8]| {
+ if let Ok(url) = Url::parse("http://127.0.0.1") {
+ if let Ok(client) = Client::new(url) {
+ if let Ok(room_id) = RoomId::try_from(data) {
+ let _ = client.get_room(&room_id);
+ }
+ }
+ }
+ });
+}