Commit Graph

135 Commits

Author SHA1 Message Date
707f64acb5
kernel: Add an Ext2 filesystem skeleton 2023-06-25 20:35:35 +02:00
3b6f5b28fc
kernel: Make the configurable filename restrictions actually compile
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-22 20:24:33 +02:00
fdf2bb2501
kernel: Make the filename restrictions configurable
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-22 20:22:43 +02:00
b4a6e4d56d
libluna/PathParser: Make dirname() and basename() static functions
All checks were successful
continuous-integration/drone/push Build is passing
This avoids creating a PathParser to use them, which allocates memory that won't be used.
2023-06-19 11:21:58 +02:00
b7bdec9ece
kernel: Add a bunch more config definitions and hide debug messages behind them 2023-06-18 20:18:00 +02:00
27d9cd0e87
kernel: Move TmpFS::*Inode into a separate file
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-18 11:33:40 +02:00
266fa4a0d4
kernel: Start counting partition numbers at 1
All checks were successful
continuous-integration/drone/push Build is passing
This makes more sense for the end user.
2023-06-17 19:50:58 +02:00
7cace9a0d7
kernel: Provide more meaningful panic messages for critical failures 2023-06-17 19:43:25 +02:00
e79d4297ea
kernel: Make the root inode be a mountpoint as well + add pivot_root()
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-17 17:27:22 +02:00
592558d7ad
kernel: Add GUID partition table support 2023-06-17 12:03:37 +02:00
32d2e0e6b7
kernel: Remove register_special_device()'s name parameter
All checks were successful
continuous-integration/drone/push Build is passing
This is now duplicate information that can be queried using device->device_path().
2023-06-16 21:46:51 +02:00
738b218a49
kernel/ATA+MBR: Dynamically generate device names + create devices for MBR partitions
All checks were successful
continuous-integration/drone/pr Build is passing
2023-06-16 21:30:50 +02:00
72b8ebe02c
kernel: Make the MBR code read from a device instead of an inode
Some checks failed
continuous-integration/drone/pr Build is failing
2023-06-16 21:10:33 +02:00
93922932fa
kernel: Start reading the MBR partition table from the ATAPI drive 2023-06-16 21:10:33 +02:00
a0fa1f2cfd
kernel+init: Create a device node in /dev to access the CDROM from userspace!
Still using PIO, though.
2023-06-16 21:10:33 +02:00
1090815c8d
kernel: Honor the sticky bit 2023-06-03 11:55:10 +02:00
ff952cfe16
kernel+init: Let userspace control devfs mountpoints
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-02 21:45:31 +02:00
bd8aaa917f
kernel+libc+ln: Add support for userspace hard link creation
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-27 11:32:40 +02:00
a98e9e8009
kernel: Add /dev/full
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-27 10:42:45 +02:00
cba0a23db9
kernel: Make the framebuffer a block device
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-26 20:36:35 +02:00
7cdb967730
kernel: compilation fix
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-26 20:30:39 +02:00
62e14e7580
kernel+libos+apps: Support block devices and disallow seeking character devices or pipes
Some checks failed
continuous-integration/drone/push Build is failing
2023-05-26 20:27:47 +02:00
3a51807fa6
kernel+stat: Handle pipes correctly in stat()
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-23 20:54:25 +02:00
1094042a7d
kernel: Implement st_dev and st_rdev
Some checks failed
continuous-integration/drone/push Build is failing
2023-05-23 20:45:24 +02:00
67a9d130e2
kernel: Add initial support for symbolic links :D 2023-05-20 21:49:24 +02:00
d7c563aebd
kernel: Add reference counting for mounts
All checks were successful
continuous-integration/drone/push Build is passing
This will make sure we cannot unmount a file system while there is another one mounted inside it.
2023-05-18 16:22:31 +02:00
3a73d49aa1
kernel: Remove a mount from the mountpoint list after unmounting it 2023-05-18 16:18:09 +02:00
8f6bd29da3
kernel: Make file system reference counting work for current directories
All checks were successful
continuous-integration/drone/push Build is passing
Also, make pipes usable again.
2023-05-17 20:37:01 +02:00
29174ca228
kernel/VFS: Add a way to unmount file systems 2023-05-17 19:52:26 +02:00
e7d482e78a
kernel+init: Add a VFS mount system and auto-populate the devfs 2023-05-17 19:40:37 +02:00
efc6d03f23
kernel+libc: Add support for unnamed pipes
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-10 22:48:31 +02:00
4753e80583
kernel: Make DeviceRegistry store the created devices instead of creating them when requested
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-09 18:31:27 +02:00
77560bbc3e
kernel+tools: Allow loading files with different owners + add a more dynamic install script
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 12:11:35 +02:00
3a1c22bb93
kernel: Add keyboard combinations for debug information dumps
Ctrl+Alt+E: Dump threads
Ctrl+Alt+M: Dump memory usage
Ctrl+Alt+H: Dump heap state
2023-05-04 23:32:48 +02:00
7058ec945a
libluna: Use a String for name and handle prefix correctly in TarStream 2023-05-02 10:51:53 +02:00
0c1d33f2ec
kernel: Move some files into subdirectories
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-28 15:55:06 +02:00
24f4ce9669
kernel: Only allow Ctrl+D on an empty line 2023-04-26 20:42:26 +02:00
4f6e020196
kernel+libc: Add framebuffer ioctls
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-21 18:25:53 +02:00
841fc25137
kernel+init: Add a framebuffer special device file
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-21 18:18:15 +02:00
949321932f
kernel: Do not forbid filenames starting with a hyphen
All checks were successful
continuous-integration/drone/push Build is passing
Some programs on Linux seem to use those, better be careful.
2023-04-16 11:33:35 +02:00
e6954d2e49
kernel: Disallow problematic characters, control characters and invalid UTF-8 in filenames 2023-04-16 11:25:32 +02:00
82e7b0e860
kernel: Introduce *at() syscall framework, add openat() and fstatat()
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-15 20:26:15 +02:00
df95126ccd
kernel: Remove unneeded debug logs & random cleanups
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-14 21:10:38 +02:00
417e505750
kernel+libc: Add unlink(), rmdir(), remove() 2023-04-12 18:11:36 +02:00
2d30935fdb
kernel: Give each thread a working directory 2023-04-11 22:14:57 +02:00
fee33e7a14
kernel: Add ioctls() for termios stuff to ConsoleDevice
Only handles echoing for now.
2023-04-09 11:23:57 +02:00
76eb8cd129
kernel: Add an ioctl() system call 2023-04-09 11:22:57 +02:00
3887b98a7d
kernel: Support setuid binaries
All checks were successful
continuous-integration/drone/push Build is passing
You still have to run "chmod 4755 /bin/su" as root inside Luna for now, as this is not done by the install scripts.
2023-04-08 16:32:56 +02:00
f6f9254eb4
kernel: Add process and filesystem UIDs and GIDs 2023-04-08 13:12:49 +02:00
64bca780a7
kernel: Add /dev/zero
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-30 21:19:16 +02:00