main loop
This commit is contained in:
29
main.c
Normal file
29
main.c
Normal file
@ -0,0 +1,29 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/ptrace.h>
|
||||
|
||||
#include "debugger.h"
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
if (argc < 2) {
|
||||
printf("Usage: %s <filename>\n", argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
char * prog = argv[1];
|
||||
|
||||
int pid = fork();
|
||||
if (pid == 0) {
|
||||
// child
|
||||
ptrace(PT_TRACE_ME, 0, NULL, 0);
|
||||
execl(prog, prog, NULL);
|
||||
} else {
|
||||
// parent
|
||||
printf("Started debugging %s with pid %d\n", prog, pid);
|
||||
debugger_t *dbg = debugger_create(prog, pid);
|
||||
debugger_run(dbg);
|
||||
}
|
||||
|
||||
exit(0);
|
||||
}
|
||||
Reference in New Issue
Block a user