Matheus
9be6ff345c
pseudodevices: handle seek
2024-09-01 19:05:15 -03:00
8infy
db55f99e23
Integrate uACPI & remove own ACPI parsing code
...
This commit adds uACPI as a submodule and removes all handwritten table
parsing code as well as struct definitions, since they now work via
uACPI. There's also now an ability to shut down by using the power
button.
2024-09-01 23:12:44 +03:00
8infy
476d4bad74
io: add outw & inw helpers
2024-09-01 23:12:44 +03:00
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