Towards user buffer checking

This commit is contained in:
Bahadir Balban
2008-04-22 14:18:12 +01:00
parent 1270cfe3b3
commit 59bdaf22ec
3 changed files with 21 additions and 3 deletions

6
README
View File

@@ -114,9 +114,9 @@ embedded devices. Most of them are proprietary, with their own users. Some of
them are structurally too simplistic, and lack modern features such as paging.
There ones that are well established, but Codezero will contrast them by
providing an alternative that will follow the open source development principles
more closely. Many embedded software projects still use older development
methods and the right open source methodology would prove favorable in the
fast-paced nature of embedded software development.
more closely. Many embedded software projects still use older or closed
development methods and the right open source methodology would prove favorable
in the fast-paced nature of embedded software development.
Finally, POSIX compliance is only a step, or a temporary aim for the Codezero
microkernel. It is not limited to the goal of just complying with POSIX, which

View File

@@ -16,15 +16,28 @@ shmdt
mmap
munmap
read
readdir
write
lseek
open
close
creat
mkdir
mknod
link
unlink
fork
execve
getpid
wait
kill
Others:
pipe
mount
unmount
swapon
New ones will be added as needed.

View File

@@ -412,6 +412,11 @@ int sys_write(l4id_t sender, int fd, void *buf, int count)
BUG_ON(!(t = find_task(sender)));
if ((err = check_access(t, buf, count)) < 0) {
l4_ipc_return(err);
return 0;
}
/* TODO: Check user buffer, count and fd validity */
if (fd < 0 || fd > TASK_FILES_MAX) {
l4_ipc_return(-EBADF);