Commit Graph

840 Commits

Author SHA1 Message Date
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 d3f3ccbb11 distro-files: small rework
add files to /etc/skel and /home/astral, move DOOM1.WAD and id1 to /usr/share/games folders and create symlinks to them in the recipe
2024-08-28 22:14:52 -03:00
Matheus b4bc78fbb4 startwm: switch to log to /tmp/ 2024-08-28 21:04:23 -03:00
Matheus cf3a035df0 init: rework, add login prompt option 2024-08-28 21:03:47 -03:00
Matheus fc09d39895 jobctl: allow tty stealing 2024-08-28 20:26:43 -03:00
Matheus bff9974801 distrofiles: add astral user, astral group and unknown group 2024-08-28 18:55:28 -03:00
Matheus 91f0179d64 ace-of-penguins: fix build 2024-08-28 10:01:52 -03:00
Matheus 45e3cd618d mlibc: bump commit 2024-08-27 22:50:25 -03:00
Matheus f88bc282fa distro-files: add /etc/shells 2024-08-27 22:47:29 -03:00
Matheus c4cdafc02f distro-files: /etc/group: add root 2024-08-27 22:44:43 -03:00
Matheus 62d0cd1706 auth: AUTH_ACTIONS_FILESYSTEM_RENAME 2024-08-27 22:20:22 -03:00
Matheus 1536def1b8 libevent: dont test epoll 2024-08-27 21:47:52 -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 6066dc86ab xscreensaver: compile with glx 2024-08-26 17:45:42 -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 02f5c15e35 /etc/rc: chmod pts too 2024-08-25 11:30:22 -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 b1a2b89e78 distro-files: change the modes of /tmp and /dev/shm to 1777 and of /dev to 0755 2024-08-25 11:16:40 -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
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 806fa3a333 devfs: take cred struct in devfs_register 2024-08-24 21:51:55 -03:00
Matheus 357f5c65cf vfs: access check on vfs_lookup 2024-08-24 20:21:42 -03:00