diff options
Diffstat (limited to 'kernel/sysfile.c')
-rw-r--r-- | kernel/sysfile.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/kernel/sysfile.c b/kernel/sysfile.c index 2c787ec..292fa27 100644 --- a/kernel/sysfile.c +++ b/kernel/sysfile.c @@ -73,7 +73,7 @@ sys_read(void) int n; uint64 p; - if(argfd(0, 0, &f) < 0 || argint(2, &n) < 0 || argptr(1, &p, n) < 0) + if(argfd(0, 0, &f) < 0 || argint(2, &n) < 0 || argaddr(1, &p) < 0) return -1; return fileread(f, p, n); } @@ -85,7 +85,7 @@ sys_write(void) int n; uint64 p; - if(argfd(0, 0, &f) < 0 || argint(2, &n) < 0 || argptr(1, &p, n) < 0) + if(argfd(0, 0, &f) < 0 || argint(2, &n) < 0 || argaddr(1, &p) < 0) return -1; return filewrite(f, p, n); @@ -110,7 +110,7 @@ sys_fstat(void) struct file *f; uint64 st; // user pointer to struct stat - if(argfd(0, 0, &f) < 0 || argptr(1, &st, sizeof(struct stat)) < 0) + if(argfd(0, 0, &f) < 0 || argaddr(1, &st) < 0) return -1; return filestat(f, st); } @@ -453,7 +453,7 @@ sys_pipe(void) int fd0, fd1; struct proc *p = myproc(); - if(argptr(0, &fdarray, 2*sizeof(int)) < 0) + if(argaddr(0, &fdarray) < 0) return -1; if(pipealloc(&rf, &wf) < 0) return -1; |