Bananymous
|
97ee370ffe
|
Kernel: Allow listing files even if one of directories blocks are empty
|
2024-09-17 15:53:14 +03:00 |
Bananymous
|
8956835d95
|
Kernel: Make sys_.*at use VFS relative path finding
|
2024-09-14 21:15:58 +03:00 |
Bananymous
|
ea4ec2eafc
|
Kernel: Make OpenFileDescrptor store VFS::File instead of inode+path
|
2024-09-14 20:10:21 +03:00 |
Bananymous
|
467ac6c365
|
Kernel/LibC: Implement SOCK_CLOEXEC and SOCK_NONBLOCK
This removes the need for fcntl after creating a socket :)
|
2024-09-11 21:59:11 +03:00 |
Bananymous
|
d20752c318
|
Kernel: Make OpenFileDescritorSet::open take rvalue
This gets rid of some implicit allocations from copy constructors
|
2024-08-28 16:36:10 +03:00 |
Bananymous
|
39be57424c
|
Kernel: Fix SYS_SEEK with SEEK_END
I was subtracting the offset from file end when I should have added it.
|
2024-08-12 19:13:27 +03:00 |
Bananymous
|
b6c964c444
|
Kernel: Rewrite pipes
Pipes have now a fixed size buffer and pipe clone and close is working
again.
|
2024-08-09 16:50:19 +03:00 |
Bananymous
|
838d31fa41
|
Kernel: Implement more POSIX compliant open() and openat() syscalls
|
2024-08-01 15:35:02 +03:00 |
Bananymous
|
31568fc5a1
|
Kernel: Rewrite Sockets to not be TmpInodes
TmpInodes just caused issues because TmpFS kept them alive. There was
really no reason for sockets to even be stored inside a TmpFS...
|
2024-06-27 00:35:19 +03:00 |
Bananymous
|
bce16cdd6e
|
Kernel: Fix how socket closing works
Sockets are now closed only when they are not referenced any more. This
allows child process to close socket and still keep it open for the
parent.
|
2024-06-19 10:39:44 +03:00 |
Bananymous
|
318ce5dec8
|
All: Fix a lot of compiler warnings from header files
While reworking build system, header files started to report warnings.
|
2024-06-18 23:02:10 +03:00 |
Bananymous
|
511fc870a1
|
BAN: Mark RefPtr and WeakPtr operator bool() as explicit
|
2024-06-17 20:19:36 +03:00 |
Bananymous
|
18e2559b1e
|
Kernel/LibC: Add SYS_TRUNCATE
|
2024-05-28 01:08:04 +03:00 |
Bananymous
|
83e3409bd8
|
Kernel/LibC: Update SYS_SEEK to return new offset and implement lseek
|
2024-05-23 14:49:23 +03:00 |
Bananymous
|
0af74fccda
|
Kernel/LibC: Rework dirent structure
dirent now contains statically sized d_name. This allows using
sizeof on the name and dirent properly, which some programs seem
to be using.
|
2024-05-22 20:19:59 +03:00 |
Bananymous
|
3fc1edede0
|
Kernel/LibC: Implement super basic select
This does not really even block but it works... :D
|
2024-02-12 17:26:33 +02:00 |
Bananymous
|
e7dd03e551
|
Kernel: Implement basic connection-mode unix domain sockets
|
2024-02-08 02:28:19 +02:00 |
Bananymous
|
5da59c9151
|
Kernel: Make better abstractions for networking
|
2024-02-06 16:45:39 +02:00 |
Bananymous
|
ab150b458a
|
Kernel/LibC: Implement basic socket binding
|
2024-02-02 01:31:58 +02:00 |
Bananymous
|
cf28ecd5a6
|
Kernel/LibC: Add SYS_SOCKET
|
2024-02-01 23:39:09 +02:00 |
Bananymous
|
dfe5a2d665
|
All: Cleanup all files
Add newline to end of files and remove whitespace from end of lines
|
2024-01-24 15:53:38 +02:00 |
Bananymous
|
0833d7b43f
|
Kernel: Allow opening files with O_NONBLOCK
|
2023-12-19 00:20:15 +02:00 |
Bananymous
|
f3d9da9549
|
Kernel: Rewrite all read/write functions to use BAN::ByteSpan
This allows us to not work with raw pointers and use sized containers
for reading and writing.
|
2023-10-24 11:56:00 +03:00 |
Bananymous
|
7b1c573ad0
|
Kernel: Implement MAP_PRIVATE file mappings
mmap() now supports mapping files with MAP_PRIVATE.
|
2023-09-29 17:23:42 +03:00 |
Bananymous
|
8fb5f97a18
|
Kernel: Improve open() POSIX compatability
Also rename Process::sys_creat -> create_file since it is not
actually a syscall and only used by open as a healper.
|
2023-09-10 00:31:42 +03:00 |
Bananymous
|
921d95d18f
|
All: Clear lines with only whitspace in them
|
2023-09-10 00:31:42 +03:00 |
Bananymous
|
dd9af56e21
|
Kernel: Start work on making inodes more thread safe
All inode operations are now locked and thread blocked
|
2023-09-10 00:31:42 +03:00 |
Bananymous
|
39a5c52088
|
Kernel: Fix directory permissions
We did not care about X bit in directories and instead used only the
R bit for search/read.
|
2023-09-08 11:46:53 +03:00 |
Bananymous
|
b2139c0b1e
|
Kernel: Add basic support for O_NONBLOCK (only for tty)
|
2023-09-04 12:57:52 +03:00 |
Bananymous
|
6f002c926a
|
Kernel: add basic fcntl() with couple of commands and no validation
|
2023-09-04 12:57:09 +03:00 |
Bananymous
|
0f6c19a1b7
|
Kernel: Barebones implementation sessions and process groups
|
2023-08-22 11:35:40 +03:00 |
Bananymous
|
79f3aa5419
|
Kernel/LibC: add dup() syscall and function
|
2023-08-17 12:03:29 +03:00 |
Bananymous
|
8480ffe108
|
Kernel: open() now validates file access mode
|
2023-08-11 11:53:38 +03:00 |
Bananymous
|
a2bf474013
|
Kernel: OpenFileDesctiptor can now return inode of fd
|
2023-07-23 18:52:33 +03:00 |
Bananymous
|
5d2bfc858e
|
Kernel: SYS_FORK can now fail instead of panicing on error
|
2023-07-19 17:47:12 +03:00 |
Bananymous
|
d6408bcf17
|
Kernel: add O_TRUNC
this is not supported by anything yet
|
2023-07-10 15:48:18 +03:00 |
Bananymous
|
46e1419e70
|
Kernel: O_APPEND is now supported
|
2023-07-10 15:11:27 +03:00 |
Bananymous
|
5ec2d85081
|
Kernel: Inode rename directory functions
|
2023-07-10 11:48:11 +03:00 |
Bananymous
|
a2f5ad7bed
|
Kernel: Move open file descriptors to their own class
This simplifies code a lot :)
|
2023-07-07 23:11:37 +03:00 |