Commit Graph

2027 Commits

Author SHA1 Message Date
auronandace ccc1d0b6fe remove commented out wait3 and rusage 2025-12-02 19:30:19 +00:00
auronandace 02b302253b only import the needed types in sys_un and sys_uio 2025-12-02 15:41:01 +00:00
Anhad Singh 6bcdac4202 fix(platform/linux): use FCHOWNAT to implement lchown(2)
`LCHOWN` syscall is not available on aarch64.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-12-01 14:46:08 +11:00
Anhad Singh 6d68ca9957 fix(platform/linux): use FACCESSAT to implement access(2)
`ACCESS` syscall is not available on aarch64.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-12-01 14:46:08 +11:00
Anhad Singh 90963fdfb9 feat(platform/linux): stub rlct_clone
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-12-01 14:46:07 +11:00
Anhad Singh 4f1920ab96 feat(ld_so/tcb): implement os_arch_activate for aarch64 linux
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-12-01 14:46:07 +11:00
Anhad Singh 6262c4ae50 fix(ld_so): getting TP on linux
`ARCH_GET_FS` is x86_64 specific. On aarch64 it is not platform
specific and just need to read out the TP from `TPIDR_EL0`

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-12-01 14:46:07 +11:00
auronandace 44cd0971b1 update header spec reference and add spec references to functions 2025-11-29 17:48:56 +00:00
auronandace 329db0dd9c add Dl_info_t alias for Dl_info 2025-11-29 15:33:31 +00:00
auronandace a25cf92162 update header reference and add references to functions 2025-11-29 15:22:39 +00:00
Josh Megnauth 8e5937ca25 Implement posix_fallocate
`posix_fallocate` ensures that a byte range in a file is allocated so
that subsequent writes don't fail. Unlike ftruncate, posix_fallocate
does not shrink files.

The Linux syscall fallocate is similar to posix_fallocate except with
far more control over how byte ranges are allocated (e.g. it supports
file holes and other features). This MR doesn't implement fallocate as
it requires syscall and redoxfs support.

Finally, I changed the flags for flock from usize to c_int. That matches
what we have in libc and also avoids some silly, needless type casting.
2025-11-28 19:49:21 -05:00
Wildan M 8e16c9c80c Fix getsubopt and add test 2025-11-28 06:59:51 -08:00
Wildan M c90bb71deb Fix netstack triggering EOPNOTSUPP 2025-11-23 22:00:26 -08:00
Jeremy Soller 339e97ac65 Fix type of ai_addrlen 2025-11-21 11:37:16 -07:00
Jeremy Soller 01f01d3bd4 Fix for F_DUPFD_CLOEXEC, add TODO for usage in upper table 2025-11-17 17:46:57 -07:00
Jeremy Soller db2600881f Add F_DUPFD_CLOEXEC 2025-11-17 17:44:49 -07:00
Jeremy Soller c6849f21e4 Fix compilation on i586 2025-11-16 08:54:54 -07:00
Jeremy Soller 0844e6fc90 WIP: use upper fd table 2025-11-15 07:55:37 -07:00
Jeremy Soller 74e3ad1c2c Do TLS alignment in reliable way 2025-11-13 12:07:06 -07:00
Jeremy Soller afb8f46020 Implement ppoll 2025-11-13 10:47:29 -07:00
Jeremy Soller aeb243746c Add recv/sendmsg flags to metadata 2025-11-13 10:19:45 -07:00
Jeremy Soller c4050203e8 Revert "Align TLS to 16 bytes again"
This reverts commit 860a8e6e4b.
2025-11-13 08:16:22 -07:00
Ibuki Omatsu e675da5a30 fix: Ignore EOPNOTSUPP error from sys_call in setsockopt. 2025-11-12 06:00:44 -07:00
4lDO2 512c4f0aa8 Clarification of st_mode bits extraction code. 2025-11-12 12:10:11 +01:00
Jeremy Soller 860a8e6e4b Align TLS to 16 bytes again 2025-11-10 17:05:57 -07:00
Jeremy Soller 32b3d2d343 Fix pthread key collision 2025-11-10 15:40:34 -07:00
Ibuki Omatsu 06d5cb0bfd fix: Fix getpeername for unix sockets adding SocketCall::GetPeerName and using SYS_CALL. 2025-11-10 06:20:46 -07:00
Jeremy Soller ed5a2a66ad Merge branch 'master' of https://gitlab.redox-os.org/redox-os/relibc 2025-11-08 20:59:05 -07:00
Jeremy Soller 052f000668 Ensure pipes have O_RDONLY or O_WRONLY set 2025-11-08 20:58:58 -07:00
4lDO2 513514a804 fix typo when libc check feature not enabled 2025-11-08 17:35:51 +01:00
4lDO2 4855cf3875 Fix compilation on Linux. 2025-11-08 17:31:57 +01:00
4lDO2 3ad0420b85 Add derive macro to check types vs libc crate. 2025-11-08 17:30:34 +01:00
Jeremy Soller 9eaa9e82b0 Pass through all SOL_SOCKET options, fix getsockopt option_len handling 2025-11-08 08:00:43 -07:00
Jeremy Soller f7cfacfbc8 Remove leftover dbg 2025-11-07 20:17:16 -07:00
Jeremy Soller 0ee947c389 Fix recvmsg stream being too small by one usize 2025-11-07 20:11:59 -07:00
Jeremy Soller ef5e54547f Close accepted socket on getpeername error 2025-11-07 18:46:54 -07:00
Jeremy Soller 16814d2e32 Fix socklen_t type 2025-11-07 18:10:17 -07:00
Jeremy Soller 443145fdee On Redox, if recvfrom/sendto has flags, use recvmsg/sendmsg 2025-11-07 11:05:04 -07:00
Jeremy Soller cb0acf3e57 Revert "Make sure TLS modules are aligned to 16 bytes for SSE"
This reverts commit d39fe6c9fb.
2025-11-01 10:44:34 -06:00
Jeremy Soller a33bb699e6 Remove weak linkage from getopt functions and globals 2025-10-30 14:39:27 -06:00
Jeremy Soller ab2a948d0b Abort on panic or oom, remove stabilized let_chains feature 2025-10-30 09:33:29 -06:00
Jeremy Soller c2eed49e2d Add NAME_MAX 2025-10-29 12:30:28 -06:00
Jeremy Soller 62513befa6 Merge branch 'shared-dyn-fix' into 'master'
Fix ld_so multiple objects loading the same object

Closes #227

See merge request redox-os/relibc!752
2025-10-29 08:06:07 -06:00
Wildan M abdfd3d0ac Fix ld_so multiple objects loading the same object 2025-10-29 15:46:35 +07:00
Josh Megnauth f5d432644f Implement renameat, renameat2
Like the other "at" functions, renameat renames files with respect with
a directory descriptor. "renameat2" is Linux specific but really nice -
it adds a flag which supports atomically swapping two files or failing
if the target already exists. The latter is easily supported in relibc.
The former requires redoxfs support.

Besides the impl itself, I refactored "cap_path_at" into what it really
is: a mini openat2-like function.
2025-10-21 14:47:39 -04:00
Wildan M c8fce67873 Support SIGEV_SIGNAL and TIMER_ABSTIME 2025-10-16 22:37:24 +07:00
Jeremy Soller 6092acc5bd Merge branch 'timer-fn' into 'master'
Implement POSIX timer functions

See merge request redox-os/relibc!747
2025-10-15 08:10:06 -06:00
Wildan Mubarok 2efcd20fbc Implement POSIX timer functions 2025-10-15 08:10:06 -06:00
Jeremy Soller a8f6205b10 Merge branch 'spec-and-import' into 'master'
update spec links and imports for assert and fcntl headers

See merge request redox-os/relibc!748
2025-10-15 06:35:18 -06:00
Wildan M b102d17ff5 Fix compilation on ARM/RISCV due to c_char being different 2025-10-13 20:57:28 +07:00