#define __KERNEL__ #include #undef __KERNEL__ #include #include #include #include #include "language.h" #include "lex.h" #include "runtime.h" #include "constable.h" //#include "cmds.h" #include "events.h" int fs_init(void); int proc_init(void); #ifdef CONFIG_MEDUSA_SYSCALL int syscall_init(void); #endif int force_init(void); int modules_preinit(char *config) { if (read_config(config) < 0) return -1; if (fs_init() < 0) return -1; if (proc_init() < 0) return -1; #ifdef CONFIG_MEDUSA_SYSCALL syscall_init(); #endif #ifdef CONFIG_MEDUSA_FORCE force_init(); #endif return 0; } int modules_postinit(void) { struct med_s med; struct medusa_packet msg; memset(&med, 0, sizeof(med)); msg.cmd = MED_GET_PROC; msg.u.r_cmd.proc.pid = getpid(); med_cmd(&msg, NULL); if (msg.answer != MED_YES) { printf("Fatal error: Can't get my security information\n"); exit(1); } med.proc = msg.u.a_cmd.proc; evdo_init(&med); msg.u.r_cmd.proc = med.proc; msg.cmd = MED_SET_PROC; med_cmd(&msg, NULL); return 0; }