diff --git a/glibc-RHEL-46738-5.patch b/glibc-RHEL-46738-5.patch new file mode 100644 index 0000000..9eb8107 --- /dev/null +++ b/glibc-RHEL-46738-5.patch @@ -0,0 +1,26 @@ +Downstream-only patch to restore the extern ABI for functions +like fprintf that use the FILE * type. Rebuilds of applications +receive ABI change reports because of this installed header change +(indirect subtype change in libabigail terms), and given that +this part of struct _IO_FILE is strictly internal, there is no +need to expose this change to installed headers. + +diff --git a/libio/bits/types/struct_FILE.h b/libio/bits/types/struct_FILE.h +index 0e73f89f813ef3b8..f7f756a701ce0e93 100644 +--- a/libio/bits/types/struct_FILE.h ++++ b/libio/bits/types/struct_FILE.h +@@ -71,9 +71,14 @@ struct _IO_FILE + struct _IO_FILE *_chain; + + int _fileno; ++#ifdef _LIBC + int _flags2:24; + /* Fallback buffer to use when malloc fails to allocate one. */ + char _short_backupbuf[1]; ++#else ++ /* Legacy ABI for ABI checking outside of glibc. */ ++ int _flags2; ++#endif + __off_t _old_offset; /* This used to be _offset but it's too small. */ + + /* 1+column number of pbase(); 0 is unknown. */ diff --git a/glibc.spec b/glibc.spec index 4f988bc..440fcb8 100644 --- a/glibc.spec +++ b/glibc.spec @@ -157,7 +157,7 @@ end \ Summary: The GNU libc libraries Name: glibc Version: %{glibcversion} -Release: 164%{?dist} +Release: 165%{?dist} # In general, GPLv2+ is used by programs, LGPLv2+ is used for # libraries. @@ -1108,6 +1108,7 @@ Patch800: glibc-RHEL-2419-7.patch Patch801: glibc-RHEL-2419-8.patch Patch802: glibc-RHEL-2419-9.patch Patch803: glibc-RHEL-2419-10.patch +Patch804: glibc-RHEL-46738-5.patch ############################################################################## # Continued list of core "glibc" package information: @@ -3101,6 +3102,9 @@ update_gconv_modules_cache () %endif %changelog +* Mon Feb 10 2025 Florian Weimer - 2.34-165 +- Hide internal struct _IO_FILE ABI change in installed header (RHEL-46738) + * Fri Feb 7 2025 Carlos O'Donell - 2.34-164 - Fix missed wakeup in POSIX thread condition variables (RHEL-2419)