feat: added reaper and suicide support
This commit is contained in:
@@ -23,6 +23,7 @@
|
||||
|
||||
#include <myke/debug/debug.h>
|
||||
#include <myke/util/slingurl.h>
|
||||
#include <myke/libk/syscall.h>
|
||||
|
||||
#endif
|
||||
|
||||
@@ -53,6 +54,8 @@ void shutdown(const char *args);
|
||||
|
||||
void explode(const char *args);
|
||||
|
||||
void kill_self(const char* args);
|
||||
|
||||
void exec_self_test(const char *args);
|
||||
|
||||
void smash(const char *args);
|
||||
@@ -67,8 +70,9 @@ cmd_handler cmd_handlers[] = {
|
||||
{"print", print},
|
||||
{"ide", ide},
|
||||
{"shutdown", shutdown},
|
||||
{"slingurl", slingurl},
|
||||
#ifdef ENABLE_SELF_TEST
|
||||
{"slingurl", slingurl},
|
||||
{"kill-self", kill_self},
|
||||
{"self-test", exec_self_test},
|
||||
{"smash", smash},
|
||||
{"explode", explode},
|
||||
@@ -76,24 +80,27 @@ cmd_handler cmd_handlers[] = {
|
||||
{NULL, NULL},
|
||||
};
|
||||
|
||||
#ifdef ENABLE_SELF_TEST
|
||||
|
||||
void slingurl(const char *args) {
|
||||
slingurl_decompose(args);
|
||||
}
|
||||
|
||||
#ifdef ENABLE_SELF_TEST
|
||||
|
||||
void smash(const char *args) {
|
||||
// smash the stack, should trigger the stack protector
|
||||
char data[16];
|
||||
memset(data, 'A', 32);
|
||||
}
|
||||
|
||||
void kill_self(const char* args) {
|
||||
syscall_kill_self();
|
||||
}
|
||||
|
||||
void exec_self_test(const char *args) {
|
||||
// unit tests
|
||||
self_test();
|
||||
}
|
||||
|
||||
|
||||
void explode(const char *args) {
|
||||
// trigger a divide by zero exception
|
||||
uint32_t x = 0;
|
||||
|
||||
Reference in New Issue
Block a user