Commit Graph

148 Commits

Author SHA1 Message Date
Matheus fdcda428f9 cred: setuid, setgid, seteuid, setegid and auth check 2024-08-25 16:08:06 -03:00
Matheus 87adc4d10a setpgid: check if pid is the current proc or a child 2024-08-25 12:51:10 -03:00
Matheus 12dd3dc089 mmap: check file permissions before allowing it to be mapped 2024-08-25 11:58:09 -03:00
Matheus 914e075397 localsock: check for file permissions 2024-08-25 11:29:55 -03:00
Matheus cb1cf8a31f utime: proper auth checks 2024-08-24 23:16:55 -03:00
Matheus 0e0471f8ee open: make file truncation require FILE_WRITE 2024-08-24 23:16:30 -03:00
Matheus 7afed7daee sethostname: do auth check 2024-08-24 22:34:26 -03:00
Matheus 807c27e7f5 getdent: make sure fd is readable 2024-08-24 22:33:58 -03:00
Matheus 4308317ea5 execve: SUID and SGID 2024-08-24 21:53:05 -03:00
Matheus cd51d4eaf0 auth: chroot 2024-08-24 21:52:44 -03:00
Matheus 4d51507953 auth: initial implementation + some filesystem checks 2024-08-24 20:01:01 -03:00
Matheus ad6fb43623 syscalls: mprotect 2024-08-21 21:34:26 -03:00
Matheus da9c40b054 cred: setting and getting ids 2024-08-16 20:02:12 -03:00
Matheus b6ed9c1bac syscalls: mknodat 2024-08-11 14:45:10 -03:00
Matheus f02a63473f pipefs: prepare pipefs_open for named pipe support 2024-08-11 12:25:17 -03:00
Matheus d310764085 vmm: VMM_FLAGS_REPLACE 2024-08-10 22:41:29 -03:00
Matheus 4a7ccc208c read/write syscalls: properly handle nbytes = 0 2024-07-30 20:30:55 -03:00
Matheus ed46c95d59 waitpid: remove unescessary lock 2024-07-30 20:30:35 -03:00
Matheus c3ab666f8d fchmod: fix missing fd_release 2024-07-11 00:07:24 -03:00
Matheus d8d39a288a syscalls: fix unsafe userspace dereference in getpeername 2024-06-27 22:44:45 -03:00
Matheus 7feed00dc7 waitpid: fix pid > 0 2024-06-26 21:08:38 -03:00
Matheus 9f48a87ae8 syscalls: pread and pwrite 2024-06-23 20:21:29 -03:00
Matheus 8bda483d64 fcntl: fix F_SETFD and F_GETFD 2024-06-22 19:28:43 -03:00
Matheus f82b07328a syscalls: ppoll 2024-06-19 21:56:26 -03:00
Matheus 9eba220859 getsockname: fix unsafe pointer dereference 2024-06-17 20:30:43 -03:00
Matheus f05eb36cfd kernel: remove already done TODOs 2024-06-16 12:48:16 -03:00
Matheus 5b6d15a06c fs: return device filesystem is mounted on 2024-06-16 12:32:32 -03:00
Matheus e4ec9311e2 syscalls: pause 2024-06-14 17:05:31 -03:00
Matheus 98c5963893 accept: return address 2024-06-12 19:09:03 -03:00
Matheus d461ad1a0b file: fd_(set/get)flags() 2024-06-12 18:54:55 -03:00
Matheus 34596bb5e9 sock: fix abisockaddr type not being returned 2024-06-10 23:01:19 -03:00
Matheus c21227c42b poll: fix not returning EINTR on signal 2024-06-10 17:50:56 -03:00
Matheus f7b761e883 net: SOCKET_SEND_FLAGS_NOSIGNAL 2024-06-10 17:32:41 -03:00
Matheus 50b4b45d00 kernel: usercopy functions 2024-06-09 19:31:26 -03:00
Matheus b607ca7f4b syscalls: chroot getpeername getsockname socketpair 2024-06-04 22:45:04 -03:00
Matheus b230d58a3f socket: getname, getpeername, setopt 2024-06-04 22:44:37 -03:00
Matheus 40d8a05062 sock: MSG_PEEK and other fixes 2024-06-03 21:53:46 -03:00
Matheus 9260c8cb96 scheduler: use a linked list for threads in a process instead of a table 2024-05-29 12:55:10 -03:00
Matheus 5f7791cd08 syscalls: fchdir, setitimer, getitimer 2024-05-29 11:14:07 -03:00
Matheus 0030a0b21b vfs: make setattr take in which attributes to change 2024-05-27 23:05:57 -03:00
Matheus 24e8f648bb open syscall: O_EXCL support 2024-05-27 21:55:04 -03:00
Matheus b9071fe59e syscalls: fsync 2024-05-25 12:04:29 -03:00
Matheus 642e245522 syscalls: sync 2024-05-24 22:01:11 -03:00
Matheus 48b7fb4324 vmmcache: initial implementation 2024-05-24 18:03:24 -03:00
Matheus 78492d4b56 handle /etc/hostname, sethostname(2), gethostname(2) and uname(2) 2024-05-22 21:09:17 -03:00
Matheus 6bc3747856 scheduler: sched_terminateprogram() 2024-05-22 17:10:33 -03:00
Matheus 8e1033f170 waitpid: implement WSTOPPED and WCONTINUED 2024-05-22 13:48:21 -03:00
Matheus ff13369073 setpgid: support changing between process groups and doing it for other processes 2024-05-22 09:46:31 -03:00
Matheus 13e7a6c1cc waitpid: add WSTOPPED and WCONTINUED to KNOWN_FLAGS 2024-05-22 09:45:42 -03:00
Matheus b61d391778 scheduler: hold reference on sched_getprocfrompid 2024-05-22 09:44:11 -03:00