Commit Graph

139 Commits

Author SHA1 Message Date
4f86cd9f08
libluna: Add a so very basic HashMap
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-17 00:07:43 +02:00
6307b01689
kernel/ATA: Read ATA strings properly instead of backwards
Now we can see the model string. What does it say...

"QEMU DVD-ROM". Let's go!
2023-06-16 21:10:31 +02:00
e118c9ea0d
kernel/ATA: Implement enough to send an IDENTIFY command and read the model number :) 2023-06-16 21:10:31 +02:00
d589834eb7
libluna: Add HashTable
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-15 15:50:04 +02:00
a1bf4dafbe
libluna: Remove implicit vector copying and add an explicit way to do it
All checks were successful
continuous-integration/drone/push Build is passing
Closes #28.
2023-06-09 22:54:22 +02:00
d2334a67dd
apps: Add mktemp
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-03 12:15:57 +02:00
fd62de6474
libluna: Do not sort empty arrays; avoids a segfault
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-03 11:55:46 +02:00
cc72a1655d
libc+libluna: Move libluna hooks out of libc and into a central place in libluna
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-03 11:18:52 +02:00
51a5727c8d
libluna: Fix a crash in quicksort
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-28 21:51:50 +02:00
88d1da59e8
kernel+libc: Add access()
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-27 12:04:27 +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
b0506bf88f
kernel: Add umask
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-26 22:27:49 +02:00
1a6ad11462
kernel+libc+libos+ls: Add readlink()
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-23 15:42:38 +02:00
67a9d130e2
kernel: Add initial support for symbolic links :D 2023-05-20 21:49:24 +02:00
b75bd4cd14
libluna: Add PathParser::has_next() 2023-05-20 16:39:18 +02:00
9bb5371e8c
libluna+libc: Add strtok_r() 2023-05-20 16:37:07 +02:00
01111442d3
kernel: Add the getrusage() system call 2023-05-20 12:48:07 +02:00
30d1dad149
libluna: Let String::join take a vector of StringViews instead of Strings 2023-05-20 12:46:33 +02:00
1506331872
kernel+libc: Add the pstat() system call
Luna-specific, but I like it.
2023-05-18 21:48:47 +02:00
84bed3ceb3
kernel+libc: Remove mknod()
All checks were successful
continuous-integration/drone/push Build is passing
Now that we automatically create files in /dev, mknod() is not needed anymore.
2023-05-18 19:42:14 +02:00
1f4c4928cc
kernel+libc+apps: Add mount and umount syscalls, libc wrappers, and utilities
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 20:30:15 +02:00
e098a3269a
libluna: Treat a negative precision as if precision was omitted 2023-05-13 12:40:03 +02:00
38541e22e9
libluna: Fix flag shenanigans in cstyle_format
Finally, zero-pad and left-align work properly!
2023-05-13 12:39:31 +02:00
5911b052dc
libluna: Add more options to to_dynamic_unit()
All checks were successful
continuous-integration/drone/push Build is passing
Also, make the output look more like how it is on linux.
2023-05-13 12:01:09 +02:00
411c6c40cd
kernel: Add the fchmodat() and fchownat() system calls
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 19:49:03 +02:00
4a764bc315
tests+libluna: Start testing Format.cpp
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 16:56:28 +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
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
58eb2d7703
libc: Print failed assertions to stderr instead of stdout
All checks were successful
continuous-integration/drone/push Build is passing
This removes two FIXMEs from the time there was no stderr.
2023-05-04 16:37:13 +02:00
d9b7e8edc0
init: Read and launch service files in order using sort()
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-02 20:56:28 +02:00
dcd93cce3a
libluna: Add a sort() function 2023-05-02 20:56:27 +02:00
052ae4902e
libluna: Remove EFIXME and make others declare error_string() and error_name()
Closes #26.
2023-05-02 10:51:53 +02:00
7058ec945a
libluna: Use a String for name and handle prefix correctly in TarStream 2023-05-02 10:51:53 +02:00
6982a8c07e
libluna: Make String::from_string_view handle non-null-terminated strings properly 2023-05-02 10:51:52 +02:00
1444cbb3df
libluna: Allow constructing a StringView from a string that might not be null-terminated 2023-05-02 10:51:52 +02:00
1d6a39c924
libluna: Make String::split() inline
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-01 20:05:10 +02:00
376247ba8a
libluna: Add String::from_string_view()
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-01 20:03:16 +02:00
a2303665fc
libos: Add os:: print(), println(), eprint(), and eprintln() 2023-05-01 19:31:15 +02:00
df590f4e26
libluna: Add String::join() 2023-05-01 19:29:17 +02:00
8adfb6fdb9
libluna: Leave String in a valid state when moved 2023-04-28 21:16:43 +02:00
c5a867d81c
libluna: Add wcscmp 2023-04-28 20:00:26 +02:00
15dcd6ad15
libluna: Check the whole string in Utf8StringDecoder::code_points() 2023-04-28 20:00:14 +02:00
b4a5aff071
libluna: Fix UTF-8 encoding 2023-04-28 19:59:40 +02:00
f3ffdd32d4
libluna: Add support for range-based iteration to LinkedList 2023-04-28 15:12:21 +02:00
b1e400d795
libluna: Allow callers to optimize heap allocations by telling us they won't resize the returned memory
All checks were successful
continuous-integration/drone/push Build is passing
strdup() now does this. If someone resizes strdup()-ed memory, nothing bad will happen, they will just take a small performance hit the first time.

But I think realloc-ing strdup()-ed memory is rare, that's why I did this.
2023-04-27 17:36:25 +02:00
e1ac9473a2
libluna: If allowing garbage chars while decoding Base64, skip them after the padding instead of erroring out 2023-04-26 22:32:24 +02:00
b48d1024a8
libluna: Add Base64 encoding and decoding code 2023-04-26 20:57:48 +02:00
36bc217056
libluna: Allow constructing a Slice from another one with a different pointer type 2023-04-26 20:41:24 +02:00
97e9fceaa4
kernel+libc: Add dup2()
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-25 20:37:30 +02:00
403b0f6b94
kernel+libc+init: Add a way to modify the system hostname
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-24 21:20:44 +02:00