From cbfbf96497fbd4fd704be33416b6dfaf47fd7633 Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Mon, 24 Feb 2020 11:39:21 -0800 Subject: [PATCH] fixup! [LibOS] return error on munmap()/mprotect() for outside of user address --- LibOS/shim/src/sys/shim_mmap.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/LibOS/shim/src/sys/shim_mmap.c b/LibOS/shim/src/sys/shim_mmap.c index 5c095886..fd0a1c09 100644 --- a/LibOS/shim/src/sys/shim_mmap.c +++ b/LibOS/shim/src/sys/shim_mmap.c @@ -35,9 +35,8 @@ DEFINE_PROFILE_OCCURENCE(mmap, memory); static bool completely_within_user_address(void* addr, size_t length) { - /* the caller already tested access_ok() */ - return /* access_ok(addr, length) && */ - PAL_CB(user_address.start) <= addr && addr + length <= PAL_CB(user_address.end); + /* the caller already tested access_ok(), so we can safely perform addr + length */ + return PAL_CB(user_address.start) <= addr && addr + length <= PAL_CB(user_address.end); } void* shim_do_mmap(void* addr, size_t length, int prot, int flags, int fd, off_t offset) {