Commit Graph

3332 Commits

Author SHA1 Message Date
Red Bear OS e47a604197 rb: add cbindgen config for sys_timerfd
sys_timerfd was fully implemented in Rust (timerfd_create,
timerfd_settime, timerfd_gettime, itimerspec support) but lacked
the cbindgen.toml needed to generate the <sys/timerfd.h> C header.
Qt6's QSocketNotifier and many other C programs depend on this header.
Without it, cbindgen skips the directory entirely.

This adds the cbindgen config + trailer with all function prototypes,
matching the pattern used by sys_signalfd.
2026-07-12 19:19:35 +03:00
vasilito d8ced461fa Add __fseterr and __freadahead to stdio ext (P3-stdio-fseterr patch) 2026-07-12 16:05:57 +03:00
Red Bear OS 5049c25a79 diag: print ns_fd in pipe2 on failure 2026-07-12 12:15:24 +03:00
Red Bear OS 0ce58a8c0d fix: add stdint.h to signal.h sys_includes
Generated signal.h uses uint32_t, int32_t, uint64_t, uintptr_t etc.
without including stdint.h, causing compilation failures in C packages
that include signal.h (diffutils, etc).
2026-07-12 03:19:44 +03:00
Red Bear OS f222c3464b fix: resolve 6 compilation errors from patch absorption
- fcntl/mod.rs: Remove misplaced F_DUPFD_CLOEXEC fallback code from
  inside the flock struct definition (bad patch merge artifact)
- fcntl/mod.rs: Remove unused 'close' import
- signal/mod.rs: Remove duplicate 'mod signalfd' declaration
- pthread/mod.rs: Add Pal+Sys imports for sched_yield() in pthread_yield
- time/mod.rs: Remove duplicate From<&TimeSpec> impl (already in
  bits_timespec/mod.rs)
- pthread/mod.rs: Add FINISHED flag to PthreadFlags and set it on
  thread exit (referenced by pthread_kill in signal/mod.rs)
2026-07-12 02:12:54 +03:00
Red Bear OS fa54b985ff absorb: 27 orphaned relibc patches re-applied (Phase 1.0A)
Per local/docs/PATCH-PRESERVATION-AUDIT-2026-07-12.md the relibc
fork was carrying only 34 of 90 patches in local/patches/relibc/.
The other 56 patches' content was silently missing from the fork.

This commit re-applies 27 patches that genuinely still apply
cleanly. Recovery covers:

- eventfd implementation (sys/eventfd.h + eventfd.rs)
- signalfd implementation (sys/signalfd.h + signalfd.rs)
- timerfd implementation (sys/timerfd.h + timerfd.rs)
- bits/eventfd.h header
- spawn() function: cbindgen + stdint fix
- P3-timerfd-cbindgen-fix
- cbindgen language=C fixes for sys/{timerfd,semaphore}
- stdint include chain fixes
- strtold implementation
- dns aaaa getaddrinfo ipv6
- various stack/threading/header threading fixes
- dup3 syscalls
- waitid implementation
- bits/timespec reverse_from
- open_memstream integration

24 files changed.
2026-07-12 01:29:50 +03:00
Red Bear OS 11195dac6d relibc: fix unsafe block for from_bytes_with_nul_unchecked in eventfd 2026-07-11 18:46:16 +03:00
Red Bear OS 4b9f90c2b9 relibc: fix eventfd EventFlags constants (EVENT_READ/WRITE not FLAG_) 2026-07-11 18:43:54 +03:00
Red Bear OS 1a121303a3 relibc: implement eventfd() using event scheme
Creates sys_eventfd header module providing eventfd(), eventfd_read(),
and eventfd_write(). Uses the kernel event scheme (/scheme/event) on
Redox, returning ENOSYS on Linux. Required for packages like Python
that link against eventfd.
2026-07-11 18:35:03 +03:00
Red Bear OS 353c43ce13 relibc: add missing IPV6_{RECVPKTINFO,PKTINFO,RECVTCLASS,TCLASS} socket option constants 2026-07-11 18:02:43 +03:00
Red Bear OS af769016b4 relibc: add LDBL_DIG, DECIMAL_DIG, LDBL_MIN/MAX_10_EXP to float.h cbindgen
C11 <float.h> requires these macros. Without them, gnulib-based
packages (diffutils, coreutils, etc.) fail with 'LDBL_DIG undeclared'.
2026-07-11 13:57:03 +03:00
Red Bear OS 48b3490ad6 relibc: fix unsafe block for mutable static access (Rust 2024) 2026-07-11 13:48:02 +03:00
Red Bear OS 03e71cd749 relibc: implement getprogname() in stdlib
BSD extension used by diffutils, coreutils, and other GNU software.
Returns the basename of program_invocation_name.
2026-07-11 13:42:06 +03:00
auronandace d5afd3fe81 add documentation for functions relating to controlling terminal 2026-07-09 13:23:16 +01:00
auronandace 60d98aebf2 correct definition for PTHREAD_NULL 2026-07-08 14:38:51 +01:00
Jeremy Soller e16f2a4e0d Merge branch 'manual-let-else' into 'master'
apply manual_let_else clippy lint

See merge request redox-os/relibc!1536
2026-07-08 06:01:40 -06:00
auronandace 3af54162cf add description to pthread_once function 2026-07-08 12:17:09 +01:00
auronandace 7840bfcdd1 apply manual_let_else clippy lint 2026-07-08 10:07:15 +01:00
Connor-GH d465f3d34d sys_ioctl: add Redox implementations for tcdrain, tcflow, and tcsendbreak
Strangely enough, the `dup_write` was already done for `tcflush`, but wasn't implemented in ptyd.
2026-07-07 16:51:18 -05:00
Jeremy Soller 3a44b63a9a Merge branch 'termios-oflag-doc' into 'master'
share some more termios constants

See merge request redox-os/relibc!1534
2026-07-07 06:47:11 -06:00
Jeremy Soller 939180a769 Merge branch 'log-ldso' into 'master'
Enable logging for ld_so

See merge request redox-os/relibc!1533
2026-07-07 06:46:04 -06:00
Jeremy Soller ba0ac174df Merge branch 'no-tcb' into 'master'
Handle panic without TCB

See merge request redox-os/relibc!1530
2026-07-07 06:45:42 -06:00
auronandace bcbd9bb69c share some more termios constants 2026-07-07 08:57:07 +01:00
Jeremy Soller 82d444324e Explicitly include features.h in sys/types.h 2026-07-06 17:37:20 -06:00
Jeremy Soller 77f87530c1 Merge branch 'threads-bits' into 'master'
split out pthread types for threads header

See merge request redox-os/relibc!1532
2026-07-06 12:19:20 -06:00
Jeremy Soller 0948df3432 Merge branch 'race-tcb' into 'master'
Fix exit_current_thread racing with pthread_join

See merge request redox-os/relibc!1531
2026-07-06 12:18:58 -06:00
Jeremy Soller c699b37cc0 Merge branch 'ftok-doc' into 'master'
add descriptions to the ftok function and ipc_perm struct members

See merge request redox-os/relibc!1529
2026-07-06 12:18:34 -06:00
auronandace d7859174b7 split out pthread types for threads header 2026-07-06 16:41:09 +01:00
Wildan M 30f50abbfa Enable logging for ld_so 2026-07-06 22:00:53 +07:00
auronandace 5acc81cc97 add descriptions to the ftok function and ipc_perm struct members 2026-07-06 14:46:07 +01:00
auronandace ff37890ea2 add descriptions to termios iflags 2026-07-06 14:06:53 +01:00
Jeremy Soller 52bb3bbfe3 Merge branch 'ptr-offset-by-literal-lint' into 'master'
add ptr_offset_by_literal clippy lint and set to deny

See merge request redox-os/relibc!1527
2026-07-06 06:04:43 -06:00
Jeremy Soller c8d99d6481 Merge branch 'termios-func-doc' into 'master'
document termios functions

See merge request redox-os/relibc!1526
2026-07-06 05:45:24 -06:00
Jeremy Soller 103b040f86 Merge branch 'rename-def-source' into 'master'
Add _GNU_SOURCE to get bits/uio.h

See merge request redox-os/relibc!1524
2026-07-06 05:44:33 -06:00
Jeremy Soller 66dcae87bf Merge branch 'open-log' into 'master'
Parse flags when logging openat

See merge request redox-os/relibc!1523
2026-07-06 05:44:05 -06:00
auronandace bf6dc24407 add ptr_offset_by_literal clippy lint and set to deny 2026-07-06 12:40:43 +01:00
auronandace 3683a14ab4 document termios functions 2026-07-06 11:26:04 +01:00
Wildan M 9a03f5f9c4 Remove ExpectTlsFree 2026-07-06 16:31:47 +07:00
Wildan M fbb56200ab Handle panic without TCB 2026-07-06 16:08:59 +07:00
Wildan M be3e38ed65 Fix exit_current_thread racing with pthread_join 2026-07-06 11:01:41 +07:00
Wildan M 4a327141d5 Add _GNU_SOURCE to get bits/uio.h 2026-07-06 07:13:43 +07:00
Wildan M 812982556a Parse flags when logging openat 2026-07-06 05:35:13 +07:00
Wildan M 7b9768ae23 Set ByteLiteral::cast_cchar as const fn 2026-07-06 00:17:55 +07:00
Jeremy Soller 9930a90de0 Merge branch 'all-path' into 'master'
Adapt with new redox-path

See merge request redox-os/relibc!1504
2026-07-05 10:53:21 -06:00
Wildan M 2e8ee25139 Add open trace logging 2026-07-05 19:28:23 +07:00
Wildan M c0cdc017d3 Adapt with new redox-path 2026-07-05 19:27:57 +07:00
Jeremy Soller 97e59311db Merge branch 'unistd-sleep' into 'master'
add descriptions to sleep and nanosleep

See merge request redox-os/relibc!1521
2026-07-05 05:46:50 -06:00
auronandace fe1c4e0135 add descriptions to sleep and nanosleep 2026-07-05 10:50:57 +01:00
Wildan M 7f4c3803bc Fix curl EOPNOSUPP due to MSG_NOSIGNAL 2026-07-05 15:33:40 +07:00
Wildan M 1c194990f8 Fix crash when exiting from detached thread 2026-07-05 04:05:30 +07:00