Bananymous
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
Bananymous
4fa40de557
WindowServer: Fix crash when moving mouse out of bounds
2025-06-28 16:55:13 +03:00
Bananymous
bc06926702
LibC: Implement gethostbyaddr
2025-06-28 16:55:13 +03:00
Bananymous
9de27110e2
LibC: Add alloca.h
2025-06-28 16:55:13 +03:00
Bananymous
93e5d09a63
Kernel/LibC: Implement flock
2025-06-28 16:55:13 +03:00
Bananymous
0cbc39698c
WindowServer: Ignore SIGPIPE so we don't crash unexpectedly
2025-06-28 16:55:13 +03:00
Bananymous
83069e433f
LibGUI/WindowServer: Implement window showing/hiding
2025-06-28 16:55:13 +03:00
Bananymous
bbb490b24f
LibGUI: Implement set_max_size
...
I already support set_min_size so why not this :)
2025-06-28 16:55:13 +03:00
Bananymous
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
Bananymous
0f2c02fb04
LibC: Add stubs for pthread_{get,set}schedparam
2025-06-28 16:55:13 +03:00
Bananymous
4677d7a1c6
LibC: Update RAND_MAX INT32_MAX -> INT_MAX
2025-06-19 19:06:24 +03:00
Bananymous
15e84f28ed
LibC: Include strings.h in string.h
2025-06-19 19:01:45 +03:00
Bananymous
87f348b48e
LibC: Fix my ugly and hacked posix_memalign
2025-06-18 14:17:17 +03:00
Bananymous
ff289b25b6
LibC: Implement {,v}asprintf
...
These were added in POSIX issue 8
2025-06-17 13:56:30 +03:00
Bananymous
a9f58e96d2
LibC: Add endian.h
...
This is part of POSIX issue 2024 and some software depends on it
2025-06-17 13:15:42 +03:00
Bananymous
7651ca747d
LibC: Allow searching null char with wcschr
2025-06-16 15:09:55 +03:00
Bananymous
7ff7a4aa87
LibC: Fix locale handling in wcrtomb and mbrtowc
2025-06-16 15:09:39 +03:00
Bananymous
cdcd226b1a
LibC: Fix mbstowcs and add wcstombs
2025-06-16 15:08:49 +03:00
Bananymous
f9451915b9
LibC: Use `pause` in pthread spinlock locking
2025-06-16 15:07:58 +03:00
Bananymous
5e4e174d61
tests: Add tls test
2025-06-16 15:07:26 +03:00
Bananymous
4a00cb7d55
DynamicLoader: Add few more TLS relocations
2025-06-16 15:06:48 +03:00
Bananymous
c97b60e7e5
LibGUI: Remove parameters I had forgot in function declarations
2025-06-11 01:53:31 +03:00
Bananymous
8a73414e3e
LibGUI: Add support for clip area to texture
2025-06-11 01:53:31 +03:00
Bananymous
ac22e006a4
Shell: Don't get stuck on broken state when failing to build command
2025-06-10 11:03:02 +03:00
Bananymous
30d5d85d1d
userspace: Add `test` utility
2025-06-08 23:56:39 +03:00
Bananymous
8ea0a67280
Terminal: Add support for tabs
2025-06-06 16:41:06 +03:00
Bananymous
5ad7d7edb1
DynamicLoader: Fix TLS on 32 bit platform
...
There were two problems with my previous implementation
- TLS was not allocated if nothing used it. There is a fallback
initialization in _init_libc, but this was not enough if one of the
init functions tried to access errno.
- __tls_get_addr was not resolved. If __tls_get_addr was called through
a plt entry, everything would just break :(
2025-06-06 16:27:07 +03:00
Bananymous
00c6820825
LibC: Make {open,sys,close}log use their own FILE instead of stddbg
2025-06-06 11:59:15 +03:00
Bananymous
6beaafcf11
LibC: Define std{in,out,err,dbg} with their actual names
2025-06-06 11:56:39 +03:00
Bananymous
a7e20d6e85
LibC: Fix getnameinfo port endianness
2025-06-06 06:52:56 +03:00
Bananymous
cfeabc4580
Kernel/Terminal: Fix ANSI SGR 8 bit color parsing
2025-06-05 20:43:57 +03:00
Bananymous
49f203d61d
Terminal: Add ANSI CSI P and ANSI SGR 22
2025-06-05 02:41:48 +03:00
Bananymous
a912a4dc67
LibGUI: Remove fill_color from texture copy API
...
Nothing was using this and it just overcomplicated everything
2025-06-05 02:40:51 +03:00
Bananymous
8de19aff3c
Kernel/Terminal: Fix 24 bit ANSI SGR color parsing
2025-06-05 02:38:07 +03:00
Bananymous
84b1f3990c
LibC: Fix getnameinfo
...
How was i doing everything so wrong :D
2025-06-03 16:36:39 +03:00
Bananymous
775c77c0fa
Shell: Get default backspace key from c_cc[VERASE]
2025-06-02 15:55:20 +03:00
Bananymous
e473118ec8
userspace: Add nologin "shell"
2025-06-02 12:26:16 +03:00
Bananymous
755d41ca4e
LibC: Add pw_passwd and pw_gecos to passwd structure
...
This information is available in /etc/passwd either way so why not
expose it to the user. Practically all UNIX-likes have these either way
2025-06-02 12:23:06 +03:00
Bananymous
fdcb38ac1f
Shell: Accept '\r' as enter
...
This happens with some terminals and i don't want to bother with fixing
my termios :D
2025-06-02 11:42:06 +03:00
Bananymous
fac742c038
test-sort: Add qsort test
2025-06-02 11:41:34 +03:00
Bananymous
5a6b43fc90
LibC: Remove debug printing from getnameinfo
2025-06-02 11:39:18 +03:00
Bananymous
317f413746
LibC: Implement very hacky posix_memalign
...
I did not even test this and i know the code is super hacky. I could not
bother with writing proper code for this xD
2025-06-02 11:39:18 +03:00
Bananymous
895909b7fa
LibC: Add CMSG_* definitions to sys/socket.h
2025-06-02 11:39:18 +03:00
Bananymous
2ee8b6c8b4
LibC: Add more definitions to netinet/in.h
...
These are non-standard but a lot of UNIX-likes have them networking
software attempts to use them
2025-06-02 11:39:18 +03:00
Bananymous
022bb69782
LibC: Implement inet_aton
...
This is not POSIX but IMO it makes sense to have the counter part to
inet_ntoa
2025-06-02 11:39:18 +03:00
Bananymous
b7948551ff
userspace: Add empty libm and libpthread
...
These making porting stuff easier. I could not find a way to tell CMake
that the system does not have threads library
2025-06-02 11:39:18 +03:00
Bananymous
e9f8471a28
BAN: Return UTF::invalid from byte_length instead of 0
2025-06-02 11:39:18 +03:00
Bananymous
4656b11256
LibC: actually use ATEXIT_MAX for atexit limit
2025-06-02 10:43:49 +03:00
Bananymous
2b48933f29
LibC: Implement all functions from complex.h
2025-06-01 13:48:03 +03:00
Bananymous
4ac6cbe70e
LibC: Add some missing wchar.h functions
...
isw* functions are just wrappers to is*
tow* functions are just wrappers to to*
2025-06-01 13:48:03 +03:00