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
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
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
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
cc04bd0f06
LibC/Kernel: Implement ttyname_r
2025-07-31 22:47:40 +03:00
e72e1e4e43
LibC: Add _SC_NPROCESSORS_{CONF,ONLN)
2025-07-31 22:47:40 +03:00
e2eb555ca0
LibC: Add dummy libintl support
...
This doesn't really do anything but allows some ports to use it :D
2025-07-22 13:26:53 +03:00
8a663cb94f
Kernel: Implement basic AC97 driver
2025-07-15 14:17:49 +03:00
163fdcd582
LibC: Fix exec family function path resolution
2025-07-15 14:17:49 +03:00
8aff315c7b
LibC: fflush file in setvbuf before updating the buffer
2025-07-02 01:54:03 +03:00
3e6a4f2b16
LibC: Add getgroups stub
2025-06-28 20:25:35 +03:00
e4f025edd6
LibC: Implement deprecated bcmp, bcopy, bzero
2025-06-28 20:25:35 +03:00
96f3efbf86
LibC: Fix enviroment variable allocation
2025-06-28 20:25:35 +03:00
e8491b34b8
Kernel/LibC: Rework TIOC{G,S}WINSZ more linux like
...
Userspace can freely set terminal size, kernel just updates it when for
example new font is loaded. Also SIGWINCH is now sent by kernel instead
of userspace.
2025-06-28 19:40:54 +03:00
f26a445ce6
LibC: Make malloc actually allign to s_malloc_default_align boundary
2025-06-28 16:55:13 +03:00
d68c88c3f9
LibC: Implement rewinddir
2025-06-28 16:55:13 +03:00
397219c22e
LibC: Implement very hacky dlopen/dlsym/dclose
...
If ELF loading fails, this will just crash the program :D
And there is no support for RTLD_LOCAL
2025-06-28 16:55:13 +03:00
bc06926702
LibC: Implement gethostbyaddr
2025-06-28 16:55:13 +03:00
9de27110e2
LibC: Add alloca.h
2025-06-28 16:55:13 +03:00
93e5d09a63
Kernel/LibC: Implement flock
2025-06-28 16:55:13 +03:00
85f200bd86
LibC: Add sched_get_priority_{min,max}
...
I don't support priority scheduling so these are just no-ops
2025-06-28 16:55:13 +03:00
0f2c02fb04
LibC: Add stubs for pthread_{get,set}schedparam
2025-06-28 16:55:13 +03:00
4677d7a1c6
LibC: Update RAND_MAX INT32_MAX -> INT_MAX
2025-06-19 19:06:24 +03:00
15e84f28ed
LibC: Include strings.h in string.h
2025-06-19 19:01:45 +03:00
87f348b48e
LibC: Fix my ugly and hacked posix_memalign
2025-06-18 14:17:17 +03:00
ff289b25b6
LibC: Implement {,v}asprintf
...
These were added in POSIX issue 8
2025-06-17 13:56:30 +03:00