Commit Graph

730 Commits

Author SHA1 Message Date
8infy 1042c1b1b0 time: introduce a new timespec_ns helper
This just returns the total number of elapsed nanoseconds given a
timespec struct.
2024-09-01 23:12:44 +03:00
8infy f306edb5ec semaphore: introduce a semaphore_reset helper
This simply clears the internal counter of a semaphore.
2024-09-01 23:12:44 +03:00
8infy 7136e96fdb spinlock: introduce helpers that clear & restore interrupts
These are just wrappers around acquire/release that clear and restore
interrupts respectively.
2024-09-01 23:12:44 +03:00
8infy f93470be2a mutex: introduce a MUTEX_ACQUIRE_TIMED helper
This is just based on the previously added semaphore_timedwait.
2024-09-01 19:40:21 +03:00
8infy 7e3922c7ad semaphore: add a new semaphore_timedwait helper
This is the same as semaphore_wait except it allows for the acquire
attempt to time out after a given period of time.
2024-09-01 19:39:25 +03:00
8infy 0854d08020 interrupt: add a new 'priv' field
This field is needed for interrupt handlers that need context in order
to know what to do.
2024-09-01 19:37:22 +03:00
8infy 6154318ab3 kernel: add a helper to retrieve the bsp CPU
This is useful to be able to e.g. set affinity for the BSP CPU.
2024-09-01 19:37:09 +03:00
8infy 0ecbbff4d1 kernel: initialize pci earlier
There's no reason to initialize PCI so late, and this will be needed
by the following commits.
2024-09-01 19:34:21 +03:00
Matheus 4c7d4f084c localsocket: passing of files 2024-09-01 13:34:20 -03:00
Matheus 997fbc4e2e socket: handle control data, change recv and send arguments 2024-09-01 13:20:12 -03:00
Matheus fe1102224e ringbuffer: RINGBUFFER_FREESPACE 2024-09-01 13:13:00 -03:00
Matheus 29d459bdab file: fd_insert 2024-09-01 13:11:27 -03:00
Matheus fe6d72a7c3 sock: copy msgctrl to msg header 2024-08-31 20:30:06 -03:00
Matheus 2f0b43822b syscalls: fix compilation 2024-08-31 20:29:45 -03:00
Matheus 6911bd6da4 net: reserved bind port check 2024-08-30 23:19:26 -03:00
Matheus ca4577284e sockfs: check for configuration 2024-08-30 23:00:28 -03:00
Matheus 3ec2d2f5f1 auth: network 2024-08-30 23:00:11 -03:00
Matheus 5d74bfa5f7 socket: pass cred to bind and setopt 2024-08-30 22:59:57 -03:00
Matheus ca42167fe1 vfs: pass cred to ioctl 2024-08-30 22:53:57 -03:00
Matheus 0f18341674 kernel: vmm_changemmuflags cred check 2024-08-30 21:22:17 -03:00
Matheus 3c8308533a execve: keep ignored signals 2024-08-30 20:29:49 -03:00
Matheus e442a3de8e vmm: redo changemmurange and make it dirty pages when applicable 2024-08-30 20:20:41 -03:00
Matheus bd98478b6c fchownat: remove setuid and setgid bits on a chown 2024-08-30 19:23:53 -03:00
Matheus 394e416d2b signal: change stack alignment 2024-08-29 23:14:40 -03:00
Matheus 5cc76c5e55 cred: fix setres{g,u}id 2024-08-29 22:48:58 -03:00
Matheus 066b89c40a sockets: MSG_WAITALL support 2024-08-29 22:48:35 -03:00
Matheus fc09d39895 jobctl: allow tty stealing 2024-08-28 20:26:43 -03:00
Matheus 62d0cd1706 auth: AUTH_ACTIONS_FILESYSTEM_RENAME 2024-08-27 22:20:22 -03:00
Matheus ba6506b9d7 auth: filesystem unlink action check + add parent vnode to auth_filesystem_check 2024-08-27 21:46:33 -03:00
Matheus 284d91f6e7 hda: add missing header to fix compilation 2024-08-27 21:02:26 -03:00
Matheus f55b51a06d vfs: finish new locking scheme 2024-08-27 21:02:12 -03:00
Matheus 8f6bc6c4c1 vfs: rewrite vfs_link 2024-08-26 23:02:06 -03:00
Matheus 76c74cfca1 vfs: change VOP_UNLINK parameters, more fixes 2024-08-26 22:41:01 -03:00
Matheus 0236ad663f syscalls: fix more deadlocks and issues 2024-08-26 22:40:06 -03:00
Matheus 42bda0bf92 vfs: redo locking 2024-08-26 21:47:23 -03:00
Matheus da150523ba vfs: leave handling of VOP_LOCK and VOP_UNLOCK to each filesystem 2024-08-26 18:45:17 -03:00
Matheus 84c47f07c9 auth: signals 2024-08-26 17:45:05 -03:00
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 58f3129da2 vfs: add VOP_ACCESS check to vfs_create 2024-08-25 12:07:30 -03:00
Matheus d7b33ffe42 devfs: call VOP_CREATE directly instead of using vfs_create 2024-08-25 12:07:09 -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 4d3e2b7494 mouse: change mode to 0666 2024-08-25 11:29:23 -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 193f5b49b9 mount: call into auth 2024-08-24 22:56:22 -03:00
Matheus 2190b331e8 link: call VOP_ACCESS 2024-08-24 22:43:18 -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