Commit Graph

851 Commits

Author SHA1 Message Date
aa0de2b00e LibC: Fix stack_t::ss_sp type from void** -> void* 2025-10-30 15:43:25 +02:00
37aef630d2 BAN: Fix Array and Vector span constness 2025-10-28 05:50:19 +02:00
d93fcff5db userspace: Add LibQR
This library can be used to generate QR codes
2025-10-28 05:50:19 +02:00
4952a82af5 LibImage: Use LibDEFLATE instead of builtin DEFLATE decompressor 2025-10-28 05:50:19 +02:00
fecda6a034 userspace: Add LibDEFLATE
This can be used to compress and decompress DEFLATE data either in raw
or zlib format
2025-10-28 05:50:19 +02:00
73fb085a41 LibC: Add inet_pton for IPv4 addresses 2025-10-02 16:19:49 +03:00
c89780178f LibC: Add sys/polls.h as wrapper for poll.h
some ports require this
2025-10-02 16:02:07 +03:00
791a541381 Kernel: Implement process stopping and continuing 2025-08-31 00:34:52 +03:00
f15f88ebd6 TaskBar: Don't leak fds when reading battery info 2025-08-28 15:57:10 +03:00
f994210927 LibC: Fix sigsetjmp (again)
I was using a wrong register for signal mask storage...
2025-08-28 15:55:40 +03:00
9854691265 LibC: Don't leak fds on rename 2025-08-28 15:55:40 +03:00
32afa33a06 LibC: Make sure FILE's buffer does not get overflown 2025-08-28 15:55:40 +03:00
c6946d0145 LibC: Use pthread_mutex on FILE instead of atomics 2025-08-28 15:55:40 +03:00
f11bb082e4 WindowServer/LibGUI: Add window focus events 2025-08-21 03:11:16 +03:00
fb61cab70d LibC: Rewrite pthread_mutex using a futex 2025-08-21 02:52:49 +03:00
1d6c08478d LibC: Fix sigsetjmp
the call from C sigsetjmp messed up rbp, now sigsetjmp is also written
in assembly.

I did not test the 32 bit code, just ported the tested 64 bit version
over :D
2025-08-21 02:52:49 +03:00
0dfe0b7023 Kernel/LibC: Implement sigaltstack 2025-08-21 02:52:49 +03:00
def236b7cd Kernel/LibC: Implement sigwait 2025-08-20 20:16:19 +03:00
247743ef9c Kernel/LibC: Implement sigsuspend 2025-08-20 20:14:54 +03:00
3d5f23a1b2 LibC: Implement wctomb 2025-08-19 16:44:18 +03:00
8b26b6604d LibC: Make mbstate_t into int
This is not used, but makes more sense than an empty struct
2025-08-19 16:29:46 +03:00
34bdcb12e5 Kernel: Fix termios and enter key handling
Enter key now produces expected \r which gets converted to \n by default
by the ICRNL input flag.

Also input flags are now handled always, not just when ICANON is set.
I don't know why I though ICANON should disable input handling
2025-08-19 16:23:30 +03:00
95b353dae5 LibInput: Fix numpad keycode generation
I had made this function with broken PS/2 scancode set 3, so it seemed
like it worked
2025-08-19 16:23:30 +03:00
8c9ab2d68c WindowServer: Fix crash when window closes while being "button window" 2025-08-19 16:23:30 +03:00
8496726ab1 Terminal: Ignore some control characters 2025-08-19 16:23:30 +03:00
0f52f49188 Terminal: Remove unused code 2025-08-19 16:23:30 +03:00
b334259a07 AudioServer: Don't allow client to fully halt audio 2025-08-19 16:23:30 +03:00
9d6656451a LibC: Make time_t signed integer
Some port like python3 assumes this is the case
2025-08-19 16:23:30 +03:00
ca9361abc1 DynamicLoader: Add support for dladdr 2025-08-19 16:23:30 +03:00
36cb3d56fe LibC: Define Dl_info_t and add stub for dladdr 2025-08-19 16:23:30 +03:00
70bbdbd8f5 LibC: Cleanup syslog output
add ": " after the identification and formatted output. syslog does not
require trailing newline so add it in case it is missing.
2025-08-16 22:56:03 +03:00
ceca93c8b1 LibC: Cleanup memmove and memcpy for x86_64 2025-08-16 14:05:21 +03:00
6ed0e84421 LibC: Fix mktime argument updating 2025-08-11 19:00:23 +03:00
9b09d2b47a LibC: Update struct tm to be POSIX issue 8 compliant 2025-08-11 18:59:20 +03:00
1a6c5deb4b LibC: Add {AF,PF}_LOCAL as aliases to {AF,PF}_UNIX 2025-08-11 18:48:24 +03:00
45a73b00de LibC: Make glob_t a typedef 2025-08-11 18:47:55 +03:00
59fff26a5f LibC: Remove our iconv.h header and add libiconv port
If I ever end up writing my own iconv, i will drop the port :D
2025-08-11 18:46:15 +03:00
fde4d4662e LibC: Implement getopt_long{,_only}
Few ports attempt to use this so lets add them :D
2025-08-11 18:36:46 +03:00
e5786fe435 init: Start AudioServer on boot 2025-08-11 14:07:37 +03:00
ef6ee78fd1 Kernel/LibC: Implement chroot 2025-08-11 14:07:37 +03:00
c96c264801 LibC: Implement fnmatch 2025-08-10 19:57:31 +03:00
af0bca74e4 Kernel/LibC: Implement {get,set,init}groups
This allows dropping /etc/group parsing from the kernel :D
2025-08-10 19:57:31 +03:00
5b587d199e Kernel/LibC: Implement FIONREAD for tcp and udp sockets 2025-08-10 19:57:31 +03:00
009b073892 LibC: Add IN6_IS_ADDR_* and IN_MULTICAST macros
These are assumed to exist by some ports
2025-08-10 19:57:31 +03:00
92e962430b LibC: Make sockaddr and sockaddr_in compatible with other systems
sockaddr:
make sa_data is 14 bytes on all systems

sockaddr_in:
add sin_zero
2025-08-10 19:57:31 +03:00
7a5cfe1728 LibAudio/AudioServer: Add support for playing real time audio 2025-08-07 16:43:05 +03:00
a84c348045 LibC: Add shm_{open,unlink} stubs
These are needed for our llvm port
2025-08-07 16:28:09 +03:00
d845ecc811 LibC: Add wcstok, wcstol and swprintf stubs
These are needed for our python3 port
2025-08-07 16:28:09 +03:00
064d9009a2 LibC: Add clock_getres stub
This is needed for our python3 port
2025-08-07 02:50:24 +03:00
b6aa5bdfab LibC: Implement if_indextoname and if_nametoindex
These are needed for our cmake port
2025-08-07 02:50:24 +03:00