Commit Graph

295 Commits

Author SHA1 Message Date
Frédéric Bérat
85eb6772ad test: Add ld.so ABI layout verification
Introduce `verify-ldso-abi.sh` script and architecture-specific baseline
files to the build.

This new verification step is integrated into the `%check` phase of the
glibc build process. It uses `gdb` to dump the internal ABI layout of
critical dynamic linker data structures (`_rtld_global_ro`,
`_rtld_global`, `struct link_map`, `struct pthread`) and compares them
against a predefined baseline.

This ensures that unintentional ABI breaks in `ld.so` are detected
early, maintaining stability for internal glibc components. The script
also supports generating new baselines when changes are intentional.

Resolves: RHEL-50086
2025-07-31 16:28:34 +02:00
Florian Weimer
6b217b8105 Build glibc32 from the main glibc package (RHEL-106470)
Resolves: RHEL-106470
2025-07-30 08:44:41 +02:00
Florian Weimer
c429981bd5 Add missing word to %changelog entry
Related: RHEL-106166
2025-07-29 22:35:14 +02:00
Florian Weimer
fa3ab05721 Use Requires(pre): libgcc%{_isa} to libgcc cycle (RHEL-106166)
Resolves: RHEL-106166
2025-07-29 16:22:15 +02:00
Frédéric Bérat
f9e37fbb1e Adapt RHEL-80538 fix to _dl_find_object backport
Resolves: RHEL-105957
2025-07-28 17:25:07 +02:00
Frédéric Bérat
fd535a578c The dynamic linker no longer crashed when processing specific symbol versions.
- Backport: elf: Fix handling of symbol versions which hash to zero
  (bug 29190)

Resolves: RHEL-74251
2025-07-25 16:49:09 +02:00
Frédéric Bérat
78fabd3cab CVE-2025-8058: Double free in regcomp
- Backport: posix: Fix double-free after allocation failure in regcomp
  (bug 33185)

Resolves: RHEL-105327
2025-07-25 12:38:00 +02:00
Florian Weimer
3ac034a90b iconv: Do not create executable output files (RHEL-103952) 2025-07-23 09:09:13 +02:00
Benjamin Herrenschmidt
bec6dd40c6 Backport GLIBC_2.35 libc symbols incl. _dl_find_object (RHEL-93320)
Resolves: RHEL-93320
2025-07-21 21:33:09 +10:00
Arjun Shankar
60b7e5744e Extend struct r_debug to support multiple namespaces (RHEL-101986)
Several patches related to this fix were applied in:
72524e00c3
"Prevented `ld.so` from asserting and crashing during audited library loads."

The remaining are applied in this commit.

Resolves: RHEL-101986
2025-07-10 18:00:46 +02:00
Arjun Shankar
97ea51322d Signal la_objopen for ld.so with dlmopen (RHEL-49549)
Resolves: RHEL-49549
2025-07-09 22:50:50 +02:00
Arjun Shankar
7c82c40390 Reduce spurious rebuilds while running tests (RHEL-95247)
Resolves: RHEL-95247
2025-07-09 09:58:56 +02:00
Frédéric Bérat
72524e00c3 Prevented ld.so from asserting and crashing during audited library loads.
- Backport: Extend struct r_debug to support multiple namespaces [BZ
  #15971]
- Backport: elf: Include <sysdep.h> in elf/dl-debug-symbols.S
- Backport: Minor: don't call _dl_debug_update (which can have side
  effects) inside assert
- Backport: elf: Run constructors on cyclic recursive dlopen (bug
  31986)
- Backport: elf: Signal LA_ACT_CONSISTENT to auditors after
  RT_CONSISTENT switch
- Backport: elf: Signal RT_CONSISTENT after relocation processing in
  dlopen (bug 31986)
- Backport: Revert "elf: Run constructors on cyclic recursive dlopen
  (bug 31986)"
- Backport: elf: Test dlopen (NULL, RTLD_LAZY) from an ELF constructor
- Backport: elf: Fix map_complete Systemtap probe in dl_open_worker
- Backport: elf: Introduce separate _r_debug_array variable
- Add downstream patch to keep the ABI stable

Resolves: RHEL-47403
2025-07-08 17:06:56 +02:00
Rachel Sibley
b8e117b06d Remove shim and libndp from revdep.yaml 2025-07-08 12:12:45 +00:00
Arjun Shankar
4b07ecdf12 Rebase qsort implementation from 2.39 upstream (RHEL-24168)
Resolves: RHEL-24168
2025-07-08 09:37:40 +00:00
Florian Weimer
0e04d2e772 Add rpminspect.yaml with expected failures (RHEL-86591)
Co-Authored-By: Dodji Seketeli <dodji@redhat.com>
Resolves: RHEL-86591
2025-07-07 12:07:48 +02:00
Arjun Shankar
fe7fa81da1 Add new tests for clock_nanosleep (RHEL-62188)
Resolves: RHEL-62188
2025-07-01 18:36:01 +02:00
Arjun Shankar
dbdfa82884 Add new test for if_nameindex and if_indextoname (RHEL-53909)
Resolves: RHEL-53909
2025-07-01 18:33:19 +02:00
Florian Weimer
c00c38ca9c Fix typo in revdep.yaml (RHEL-96772)
Related: RHEL-96772
2025-06-28 11:27:37 +02:00
Florian Weimer
c3b6dd165b Update reverse dependency testing config (RHEL-96772)
Resolves: RHEL-96772
2025-06-27 08:43:28 +02:00
Frédéric Bérat
7a4b319108 Switch to main malloc after final ld.so self-relocation
- Backport: elf: rtld_multiple_ref is always true
- Backport: elf: Do not define consider_profiling, consider_symbind as
  macros
- Backport: elf: Introduce _dl_relocate_object_no_relro
- Backport: elf: Switch to main malloc after final ld.so
  self-relocation
- Backport: elf: Second ld.so relocation only if libc.so has been
  loaded
- Backport: elf: Minimize library dependencies of tst-nolink-libc.c
- Backport: elf: Add missing DSO dependencies for
  tst-rtld-no-malloc-{audit,preload}

Resolves: RHEL-48820
2025-06-26 17:05:57 +02:00
Frédéric Bérat
9d355805b4 CVE-2025-5702 glibc: Vector register overwrite bug in glibc
Revert glibc-RHEL-24740-3.patch, glibc-RHEL-24740-2.patch,
glibc-RHEL-24740-1.patch in that order.

Resolves: RHEL-95546
2025-06-25 10:55:55 +02:00
Florian Weimer
dda5cdbb01 langpacks: Use symlinks for LC_NAME, LC_NUMERIC files if possible (RHEL-97434)
Resolves: RHEL-97434
2025-06-18 10:14:10 +02:00
Frédéric Bérat
f52eb641bd - Add testcases for abs(), labs(), and llabs() functions.
- Backport: stdlib: Add testcases for abs(). (BZ #30263)
- Backport: stdlib: Add testcases for labs(). (BZ #30263)
- Backport: stdlib: Add testcases for llabs(). (BZ #30263)
- Backport: stdlib: Use long long int in stdlib/tst-llabs
- Backport: stdlib: Avoid undefined behavior in stdlib/tst-labs

Resolves: RHEL-77082
2025-06-11 14:33:55 +02:00
Arjun Shankar
8656f60248 manual: Document error codes of several socket functions (RHEL-57110)
Resolves: RHEL-57110
2025-06-11 11:42:31 +02:00
Arjun Shankar
c6e49bb8c7 manual: Document several *at file system interface functions (RHEL-50546)
Resolves: RHEL-50546
2025-06-05 19:14:47 +02:00
Frédéric Bérat
89ce8a7589 x86: Avoid integer truncation with large cache sizes
- Backport: x86: Avoid integer truncation with large cache sizes (bug
  32470)

Resolves: RHEL-71584
2025-06-04 16:33:35 +02:00
Frédéric Bérat
56deeec877 Report error if setaffinity wrapper fails
- Backport: Report error if setaffinity wrapper fails (Bug 32040)

Resolves: RHEL-94634
2025-06-04 16:20:32 +02:00
Florian Weimer
24908a1e2c manual: Document the clock_nanosleep function (RHEL-57671)
Resolves: RHEL-57671
2025-06-03 11:59:56 +02:00
Frédéric Bérat
458ff98d2a Ensure fallback initialization of ctype TLS data pointers to fix segfaults in programs using dlmopen or auditors
- Backport: ctype: Reformat Makefile.
- Backport: Remove <libc-tsd.h>
- Backport: Optimize __libc_tsd_* thread variable access
- Backport: Use proper extern declaration for
  _nl_C_LC_CTYPE_{class,toupper,tolower}
- Backport: ctype: Fallback initialization of TLS using relocations
  (bug 19341, bug 32483)

Resolves: RHEL-72017
2025-05-27 14:15:24 +02:00
Frédéric Bérat
0ee649ca74 Document additional CLOCK_* values in glibc manual
- Backport: Document all CLOCK_* values

Resolves: RHEL-57587
2025-05-26 10:31:44 +02:00
Florian Weimer
77127fa642 Note that glibc-RHEL-92697-7.patch was skipped by accident
Related: RHEL-92697
2025-05-26 09:56:55 +02:00
Frédéric Bérat
e38cafa2c9 Prevent ,ccs= from being treated as individual mode flags in fopen calls
- Backport: fileops: Don't process ,ccs= as individual mode flags
  (BZ#18906)

Resolves: RHEL-92095
2025-05-22 18:57:09 +02:00
Florian Weimer
940aa56a78 SGID test enhancements (RHEL-92697)
Resolves: RHEL-92697
2025-05-22 14:58:58 +02:00
Florian Weimer
3720984950 CVE-2025-4802: static setuid dlopen may search LD_LIBRARY_PATH (RHEL-92697)
Resolves: RHEL-92697
2025-05-21 16:57:12 +02:00
Florian Weimer
794fb55afd revdep.yaml updates (RHEL-92760)
Add bootc, libtool.  Remove redhat-release.  Sort conmon into the
right place.

Resolves: RHEL-92760
2025-05-20 21:42:35 +02:00
DJ Delorie
836900cbb9 manual: Improve the documentation of the Thread APIs (RHEL-61558)
Resolves: RHEL-61558
2025-05-19 17:42:42 -04:00
Florian Weimer
f20e6ce47a manual: Clarifications for listing directories (RHEL-56546)
Resolves: RHEL-56546
2025-05-16 17:05:52 +02:00
Patsy Griffin
aa9ad34e57 elf: Keep using minimal malloc after early DTV resize (RHEL-71922)
Resolves: RHEL-71922
2025-05-15 14:16:12 -04:00
Frédéric Bérat
81278fcf43 Improve POSIX semaphore documentation
- Backport: manual: Consolidate POSIX Semaphores docs in Threads
  chapter
- Backport: manual: Add links to POSIX Semaphores man-pages
  documentation

Resolves: RHEL-65355
2025-05-14 11:16:55 +02:00
Frédéric Bérat
785fddefef Add test case for fflush
- Backport: libio: Add test case for fflush

Resolves: RHEL-63210
2025-05-14 11:08:10 +02:00
Frédéric Bérat
523afc95f6 Resolve stdio flushing issues
Backports:
- tests: replace fread by xfread
- Fix fflush after ungetc on input file (bug 5994)
- Make fclose seek input file to right offset (bug 12724)
- Make fflush (NULL) flush input files (bug 32369)
- Fix fseek handling for mmap files after ungetc or fflush (bug 32529)
- Fix fflush handling for mmap files after ungetc (bug 32535)
- Add test of input file flushing / offset issues
- libio: Synthesize ESPIPE error if lseek returns 0 after reading bytes

Resolves: RHEL-68805
2025-05-05 09:20:53 +02:00
Patsy Griffin
eca1501ad0 libio: Fix a deadlock after fork in popen
libio: Correctly link tst-popen-fork against libpthread (RHEL-59712)

Resolves: RHEL-59712
2025-04-22 13:12:35 -04:00
Qin Yuan
7577396f04 Add binutils to revdep.yaml (RHEL-86554)
Resolves: RHEL-86554
2025-04-09 15:18:13 +00:00
Florian Weimer
d1d18e7a67 Document behavior of sched_yield with SCHED_RR and SCHED_OTHER (RHEL-61560)
Resolves: RHEL-61560
2025-04-08 16:06:26 +02:00
Florian Weimer
49831cd191 Increase reliability of stdio-common/tst-setvbuf2 (RHEL-46737)
Related: RHEL-46737
2025-04-08 10:42:17 +02:00
DJ Delorie
60a89dc791 Extend setvbuf testing (RHEL-46737)
Resolves: RHEL-46737
2025-04-02 17:07:31 -04:00
Florian Weimer
462dd9fada Extend scanf testing (RHEL-46726)
Resolves: RHEL-46726
2025-04-02 15:31:08 +02:00
Frédéric Bérat
44f7d061cb Backport: Add _FORTIFY_SOURCE support for inet_pton
- Backport: debug: Re-flow and sort routines variable in Makefile
  (RHEL-44920)
- Backport: inet: Rearrange and sort Makefile variables (RHEL-44920)
- Backport: Prepare inet_ntop to be fortified (RHEL-44920)
- Backport: Add missing guards in include/arpa/inet.h (RHEL-44920)
- Backport: Add _FORTIFY_SOURCE support for inet_ntop (RHEL-44920)
- Backport: Prepare inet_pton to be fortified (RHEL-44920)
- Backport: Add _FORTIFY_SOURCE support for inet_pton (RHEL-44920)

Resolves: RHEL-44920
2025-04-01 09:19:15 +02:00
Arjun Shankar
6cf5f3f769 Improve printf fortification against %n in writeable memory (RHEL-80538)
Resolves: RHEL-80538
2025-03-27 23:29:01 +01:00