diff options
author | dzwdz | 2021-08-24 19:05:46 +0200 |
---|---|---|
committer | dzwdz | 2021-08-24 19:05:46 +0200 |
commit | b988b821372466ed58eb1d2116bcbb158f70346c (patch) | |
tree | 669bb9331082848277031632e818e8293fb6e44c /src/kernel/main.c | |
parent | 04878a07e587f26fe6d5a1044b69651406e3aa1c (diff) |
switch to using user_ptr for pointers coming from userland
this avoid accidental dereferences, and now it's easy to tell apart
which pointers are safe to directly read and which aren't.
cons:
- const is completely discarded
Diffstat (limited to 'src/kernel/main.c')
-rw-r--r-- | src/kernel/main.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel/main.c b/src/kernel/main.c index 7796c44..cc8e10d 100644 --- a/src/kernel/main.c +++ b/src/kernel/main.c @@ -9,13 +9,13 @@ static void run_init(struct kmain_info *info) { struct process *proc = process_seed(); - void *init_base = (void*) 0x200000; + user_ptr init_base = 0x200000; // map the module as rw for (uintptr_t off = 0; off < info->init.size; off += PAGE_SIZE) pagedir_map(proc->pages, init_base + off, info->init.at + off, true, true); - proc->regs.eip = (int) init_base; + proc->regs.eip = init_base; tty_const("switching..."); process_switch(proc); |