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
a3bdf0456e
LibC: Add getpriority stub
...
This is needed for our cmake port
2025-08-07 02:50:24 +03:00
e3ecf05866
LibC: Add stubs for {get,free}ifaddrs
...
These are needed for our libuv port
2025-08-07 02:50:24 +03:00
6240374dd1
LibC: Add semaphore stubs
...
These are needed for our bochs port
2025-08-07 02:50:24 +03:00
e17ee831a7
LibC: Add times stub
...
This is needed for our openssl port
2025-08-07 02:50:24 +03:00
aef9bd6357
LibC: Add mk{nod,fifo}{,at} stubs
...
These are needed for our tcl port
2025-08-07 02:50:24 +03:00
8857227a35
LibC: Add getservbyname stub
...
This is needed by our tcl port
2025-08-07 02:50:24 +03:00
937250c681
userspace: Add dummy libdl
...
This allows ports to link against without needing to patch it out
2025-08-07 02:50:24 +03:00
66d3a1d025
ls: Output in columns
2025-08-07 02:50:24 +03:00
c593d3ed75
LibC: Add missing libintl.h
2025-08-05 17:10:43 +03:00
46dd411273
LibC: fflush stdout when reading from stdin
...
This is the *intended behaviour* per ISO C specification
2025-08-05 03:32:59 +03:00
2e2ee11452
LibC: Add more reasonable values to stack size constants
2025-08-05 03:32:59 +03:00
ce0df333b3
LibC: Make sa_data in sock_addr zero sized
2025-08-05 03:32:59 +03:00
45ad6082bc
DynamicLoader: Support dlopen(NULL, ...)
2025-08-05 03:09:24 +03:00
f1369c8fd6
Kernel/LibC: Implement mprotect
...
There may be some race conditions with this but i think this is good
enough to start with
2025-08-05 03:09:24 +03:00
eb7922ab88
LibC: Implement pthread_cond_* using a futex
2025-08-05 03:09:24 +03:00
5940e912b3
Kernel/LibC: Implement simple futex
2025-08-05 03:09:24 +03:00
658a001d91
LibC: Make pthread_barrier safe
...
It used to deadlock and it was not safe if more threads than the target
were attempting to wait on it.
2025-08-05 03:09:24 +03:00
57c9f5a8a8
LibC: lock mutex when pthread_cond_timedwait times out
2025-08-05 03:09:24 +03:00
fa7b58057c
LibC: Add MAP_ANON as synonym for MAP_ANONYMOUS
...
This is part of POSIX issue 8 and some things only check MAP_ANON
2025-08-05 03:09:24 +03:00
0e0f5295cf
LibC: Make {,__cxa_}atexit thread safe
2025-08-05 03:09:24 +03:00
d25a5034db
LibC: Update thread id on fork
2025-08-05 03:09:24 +03:00
f197d39aaf
LibC: Don't allow pthread_join to return EINTR
2025-08-05 03:09:24 +03:00
4a95343936
LibC: Make _get_uthread a macro
...
This allows nice inlining :)
2025-08-05 03:09:24 +03:00
4e705a91af
LibC: Fix pthread keys
...
I had misunderstood how these are supposed to work :D
2025-08-05 03:09:24 +03:00
82b351469b
DynamicLoader: Setup thread id when initializing TLS
...
This allows pre-libc code use pthread functions
(__cxa_guard_release calls pthread_cond_broadcast)
2025-08-05 03:09:24 +03:00
ea91bdcce7
WindowServer: Make relative mouse no-op with absolute mouse
2025-08-05 03:09:24 +03:00
af0a46e79c
LibGUI/WindowServer: Rename mouse capture -> mouse relative
...
My terminology was incorrect and this is more correct
2025-08-05 03:09:24 +03:00
4519c48284
WindowServer: Fix custom cursors
...
Custom cursor is now only set if the cursor is in the client area
instead of anyehere in the window. This makes hidden cursor visible
when it is on top of the title bar!
2025-08-05 03:09:24 +03:00
8ea32c7650
WindowServer: Fix relative mouse vertical flip
2025-08-05 03:09:24 +03:00
8c598a6902
LibC: Include stdint.h instead of inttypes.h in network headers
2025-08-05 03:09:24 +03:00
8e9c40caa4
LibC: Pump OPEN_MAX to 128
...
cmake seems to use around 70 when checking compiler. That seems quite a
lot but could be "normal"
2025-07-31 22:47:40 +03:00
07e4e764a0
LibC: Implement mbtowc
2025-07-31 22:47:40 +03:00
66fe2f2e50
LibC: Fix readv and writev
2025-07-31 22:47:40 +03:00
fda0ced72e
LibC: Implement getpw{nam,uid}_r
2025-07-31 22:47:40 +03:00
654e8bb7f6
LibC: Implement getgr{gid,nam}_r
2025-07-31 22:47:40 +03:00
80ffde5e1e
LibC: Implement aligned_malloc
...
This is part of POSIX issue 8
2025-07-31 22:47:40 +03:00
52309e0754
LibC: Add in6addr_{any,loopback} definitions
2025-07-31 22:47:40 +03:00
31e411f8f1
LibC: Implement recvmsg and sendmsg
...
These just wrap recvfrom and sendto so ancillary data is not supported
2025-07-31 22:47:40 +03:00
de45b760b5
LibC: Implement alphasort and scandir
2025-07-31 22:47:40 +03:00
ff29e9c4d6
LibC: Implement {,f}pathconf
...
This just return minimum values specified by posix
2025-07-31 22:47:40 +03:00