summaryrefslogtreecommitdiff
path: root/Kernel/VirtualFileSystem.h
AgeCommit message (Collapse)Author
2019-02-16Kernel: Add Device base class for CharacterDevice.Andreas Kling
..to prepare for adding a BlockDevice class.
2019-02-15Use modern C++ attributes instead of __attribute__ voodoo.Andreas Kling
This is quite nice, although I wish [[gnu::always_inline]] implied inline. Also "gnu::" is kind of a wart, but whatcha gonna do.
2019-02-06Bootloader: Locate the kernel's data segment and clear it.Andreas Kling
This was a constant source of stupid bugs and I kept postponing it because I wasn't in the mood to write assembly code. Until now! :^)
2019-02-01Kernel: VFS::open/create should take base Inode& instead of InodeIdentifier.Andreas Kling
2019-02-01Kernel: mkdir() should use the containing directory's FS for inode creation.Andreas Kling
2019-01-31Big, possibly complete sweep of naming changes.Andreas Kling
2019-01-31Kernel: Include absolute paths of mount points in /proc/mountsAndreas Kling
2019-01-31Add uid and gid to CharacterDevices.Andreas Kling
The vast majority of them will be owned by 0:0 (the default.) However, PTY pairs will now be owned by the uid:gid of the opening process.
2019-01-31Make stat() work on device files again.Andreas Kling
FileDescriptor will now keep a pointer to the original inode even after opening it resolves to a character device. Fixed up /bin/ls to display major and minor device numbers instead of size for device files.
2019-01-30Deallocate PTY's when they close.Andreas Kling
This required a fair bit of plumbing. The CharacterDevice::close() virtual will now be closed by ~FileDescriptor(), allowing device implementations to do custom cleanup at that point. One big problem remains: if the master PTY is closed before the slave PTY, we go into crashy land.
2019-01-29Implement basic chmod() syscall and /bin/chmod helper.Andreas Kling
Only raw octal modes are supported right now. This patch also changes mode_t from 32-bit to 16-bit to match the on-disk type used by Ext2FS. I also ran into EPERM being errno=0 which was confusing, so I inserted an ESUCCESS in its place.
2019-01-28Add support for removing directories.Andreas Kling
It's really only supported in Ext2FS since SynthFS doesn't really want you mucking around with its files. This is pretty neat though :^) I ran into some trouble with HashMap while working on this but opted to work around it and leave that for a separate investigation.
2019-01-23Move VFS sources into Kernel/.Andreas Kling