mirror of
https://github.com/drasko/codezero.git
synced 2026-01-12 02:43:15 +01:00
Towards user buffer checking
This commit is contained in:
6
README
6
README
@@ -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
|
||||
|
||||
@@ -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.
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user