Anhad Singh
2c307616d8
fix(tests/ptrace.c): persistent logs
...
Even though it might seem like it, it is not necessary that write(2) is
the only system call performed. It could be that the libc has to
allocate memory (via MMAP) or makes use of a futex. To produce
consistant results, only log on SYS_write and when the syscall number
has been patched.
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-12-31 00:54:58 +11:00
Anhad Singh
1ffd7187ef
feat(dlfcn): define RTLD_DEFAULT
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-12-25 19:27:31 +11:00
Anhad Singh
2be4316aec
feat(dlfcn): return DSO as the handle
...
Fine because:
> The value of this handle should not be interpreted in any way by the
> caller.
From: https://pubs.opengroup.org/onlinepubs/009696599/functions/dlopen.html
* Add tests for unload
* Implement NOLOAD so we can test that the loaded object has been
destroyed.
* Minor cleanup.
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-12-25 16:17:51 +11:00
Anhad Singh
1db68ab978
feat(ld.so): scopes
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-12-24 20:51:53 +11:00
Peter Limkilde Svendsen
93b6374d1e
Reimplement memcpy() using slices, fix unaligned read/write, add test
2024-12-23 19:14:44 +00:00
bitstr0m
5d6ae507e1
Implement glob.h
2024-12-12 15:17:16 +00:00
Anhad Singh
a527cc53ea
tests(pthread): status must be 0 if not leader
...
Fix CI break.
man pthread_barrier_wait(3)
> ...the constant PTHREAD_BARRIER_SERIAL_THREAD shall be returned to
> one *unspecified* thread and zero shall be returned to each of the remaining
> threads.
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-12-05 16:24:10 +11:00
Anhad Singh
e8e6b8cbc5
fix(expected): dynamic bins
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-11-26 19:51:06 +11:00
Anhad Singh
cdb4843164
fix(tests): fix UB in mk{fifo,nod,nodat}
...
Memory chunk is allocated with `malloc` and used as the `dest` buffer
for `strncat`. The `dest` argument in `strncat` has to be NUL terminated,
however it was not.
This commit fixes this issue in mk{fifo,nod,noat}.c.
Almost all dynamic tests pass now.
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-11-26 16:56:05 +11:00
Anhad Singh
22bbdb025c
misc(tests): fix compilation of dlfcn.c
...
From man dlopen(3)
> According to the ISO C standard, casting between function
> pointers and 'void *', as done above, produces undefined results.
> POSIX.1-2001 and POSIX.1-2008 accepted this state of affairs and
> proposed the following workaround:
>
> *(void **) (&cosine) = dlsym(handle, "cos");
>
> This (clumsy) cast conforms with the ISO C standard and will
> avoid any compiler warnings.
>
> The 2013 Technical Corrigendum 1 to POSIX.1-2008 improved matters
> by requiring that conforming implementations support casting
> 'void *' to a function pointer. Nevertheless, some compilers
> (e.g., gcc with the '-pedantic' option) may complain about the
> cast used in this program.
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-11-25 18:00:03 +11:00
Anhad Singh
6020c54ce7
chore(test): add expected outputs for dynamic tests
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-11-25 16:16:07 +11:00
Anhad Singh
00746c2566
misc(tests): disable dlfcn test for now
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-11-25 12:31:33 +11:00
Anhad Singh
7aa340570f
chore: enable dynamic tests
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2024-11-25 12:13:03 +11:00
Josh Megnauth
daa77e7149
Temporarily disable noreturn attribute test
2024-11-24 13:55:05 +00:00
Jeremy Soller
2c73cc947c
Merge branch 'memmem' into 'master'
...
Implement memmem()
See merge request redox-os/relibc!560
2024-11-17 16:18:15 +00:00
Peter Limkilde Svendsen
6a765ed88f
Implement memmem()
2024-11-17 16:18:14 +00:00
Jeremy Soller
09bcfd0711
Merge branch 'errno-const-macros' into 'master'
...
Test errno constant macros, make ENOTSUP available in Rust
See merge request redox-os/relibc!556
2024-11-17 16:16:47 +00:00
Peter Limkilde Svendsen
42011f28d8
Test errno constant macros, make ENOTSUP available in Rust
2024-11-17 16:16:47 +00:00
Jeremy Soller
caac784caa
Merge branch 'iso646' into 'master'
...
Add iso646.h and corresponding tests
See merge request redox-os/relibc!555
2024-11-17 16:16:11 +00:00
Josh Megnauth
5348273ccc
Emit C attributes via cbindgen
2024-11-17 16:15:07 +00:00
Peter Limkilde Svendsen
56d05e2cdc
Add iso646.h and corresponding tests
2024-11-10 16:19:15 +01:00
Josh Megnauth
bf1ea4e799
Set h_errno for gethostbyname/addr
2024-11-02 12:21:47 +00:00
Peter Limkilde Svendsen
41264dc8b1
Add NulTerminatedInclusive iterator, rewrite/fix strchr/wcschr
2024-10-22 22:12:24 +00:00
Ron Williams
84399fb83a
fix formatting
2024-10-06 05:43:17 -07:00
Ron Williams
72e5b514f4
Make all tests runnable in the same list
2024-10-06 05:33:56 -07:00
Ron Williams
d2ef712fa7
Improve test running on Redox
2024-10-06 04:26:13 -07:00
Jeremy Soller
d794dc7704
Merge branch 'test' into 'master'
...
Add sigaltstack test
See merge request redox-os/relibc!518
2024-09-28 16:09:48 +00:00
4lDO2
07af4e49f7
Add sigaltstack test.
2024-09-28 16:51:17 +02:00
Raffaele Ragni
1864a97a8e
Impl net/if.h
2024-09-28 12:50:00 +00:00
4lDO2
293b041ea7
Move psignal test to correct (non-expect) category.
2024-09-24 19:34:53 +02:00
4lDO2
af6435e12d
Implement psignal and psiginfo.
2024-09-24 19:34:53 +02:00
4lDO2
2b7a1ea94b
Fix sigsuspend and add it to the sigqueue test.
2024-09-24 19:34:53 +02:00
4lDO2
9701e9c544
Add sigtimedwait to test, and various fixes.
2024-09-24 19:34:53 +02:00
4lDO2
30caf55429
Set siginfo_t.si_{pid,uid} from kill signals too.
2024-09-24 19:34:51 +02:00
4lDO2
f6761407e5
Pass si_pid to all realtime signals.
2024-09-24 19:34:51 +02:00
4lDO2
6fe7c264f6
Pass si_code to siginfo_t struct.
2024-09-24 19:34:51 +02:00
4lDO2
13e7b77643
Implement basic support for (kernel) rt signals.
2024-09-24 19:34:50 +02:00
4lDO2
c0e7af5289
Backwards-compatibly rewrite getdents to use special syscall.
2024-09-11 23:32:19 +02:00
Peter Limkilde Svendsen
bb5adffdff
Test endian.h macros
2024-09-06 22:28:24 +02:00
Peter Limkilde Svendsen
1cbbafd8b1
Fix little-endian-specific endian.h tests
2024-09-06 19:26:33 +02:00
Arnold Loubriat
9e20c351d8
Add endian.h
2024-09-04 00:50:30 +02:00
4lDO2
651445d0c9
Move forkpty test from EXPECT_NAMES to NAMES.
2024-08-10 13:08:11 +02:00
4lDO2
70e31a9454
Dup stdout rather than opening /dev/stdout.
...
The former is more portable, even on Linux if for example sudo/doas is used.
2024-08-10 13:00:13 +02:00
Jeremy Soller
a38638542d
Merge branch 'ctermid' into 'master'
...
Implement ctermid()
See merge request redox-os/relibc!490
2024-08-01 18:42:29 +00:00
Jeremy Soller
dc9a577354
Merge branch 'mktime-timegm-refactor' into 'master'
...
Refactor mktime, timegm and fix wcpncpy test
See merge request redox-os/relibc!487
2024-08-01 18:42:01 +00:00
Peter Limkilde Svendsen
17076f37b9
Refactor mktime, timegm and fix wcpncpy test
2024-08-01 18:42:01 +00:00
Jeremy Soller
455d7323e9
Merge branch 'swscanf_works' into 'master'
...
swscanf and vswscanf implementation proposal
See merge request redox-os/relibc!472
2024-08-01 18:41:14 +00:00
Nicolás Antinori
198c5502b7
swscanf and vswscanf implementation proposal
2024-08-01 18:41:14 +00:00
Jeremy Soller
af4fbf374e
Merge branch 'dprintf' into 'master'
...
Implement dprintf and vdprintf
See merge request redox-os/relibc!489
2024-08-01 18:39:58 +00:00
Agoston Szepessy
cdf5c70d5b
Implement ctermid()
2024-07-25 11:32:26 +02:00