summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikeCAT <[email protected]>2015-12-19 22:52:11 +0900
committerFrans Kaashoek <[email protected]>2016-09-26 07:52:17 -0400
commit2a675089b129adf442de575617a7e3db5a42a794 (patch)
treeb6f6b0717aceaf38507aa326d0da63ff8a6896a0
parent0df5f11baef529f32d81bb1b1580264067477a5e (diff)
downloadxv6-labs-2a675089b129adf442de575617a7e3db5a42a794.tar.gz
xv6-labs-2a675089b129adf442de575617a7e3db5a42a794.tar.bz2
xv6-labs-2a675089b129adf442de575617a7e3db5a42a794.zip
fix memory region validation in argptr()
-rw-r--r--syscall.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/syscall.c b/syscall.c
index a84a921..9ae7536 100644
--- a/syscall.c
+++ b/syscall.c
@@ -58,7 +58,7 @@ argptr(int n, char **pp, int size)
if(argint(n, &i) < 0)
return -1;
- if((uint)i >= proc->sz || (uint)i+size > proc->sz)
+ if(size < 0 || (uint)i >= proc->sz || (uint)i+size > proc->sz)
return -1;
*pp = (char*)i;
return 0;