Commit Graph

52 Commits

Author SHA1 Message Date
Peter Müller e14a82a1c7 Get rid of HTTP URLs as best as possible, take one
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2023-09-16 13:47:41 +02:00
Michael Tremer 28b594d2be glibc: Update to 2.38
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-09-09 16:33:38 +00:00
Michael Tremer c2ee3456c5 glibc: Fix runtime linker path chaos
Some architectures have a specific path for their runtime linker
hardcoded and in order to avoid installing them into /lib or /lib64
instead of /usr/lib or /usr/lib64, we are adding artificial provides.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-03-24 17:15:02 +00:00
Stefan Schantl 7ed3355c04 glibc: Fix RUNPATH in gconv libraries
Those libraries uses a special RUNPATH called $ORIGIN which we
do not support in IPFire. So changing this to the directory where
the are installed.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-03-22 10:07:42 +00:00
Michael Tremer bf86a0e10d glibc: Make this package confirm to FHS/Hardening
This patch changes many things about glibc in one go. Sorry.

We move glibc out of /lib so that we no longer install any files where
they should not be according to our FHS.

We also enable SSP-all and ensure that everything is properly hardened.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-03-21 18:16:11 +00:00
Michael Tremer 2784768aec glibc: Disable building NSCD
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-03-21 18:16:11 +00:00
Michael Tremer 0d7e30eedf glibc: Optimise for kernel >= 5.10
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-03-07 16:28:45 +00:00
Michael Tremer 21c695c7d7 glibc: Update to 2.37
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-03-07 11:28:07 +00:00
Michael Tremer 8feada5bbf glibc: Package libxcrypt and compat-libxcrypt
libcrypt in glibc is deprecated and has been replaced by libxcrypt which
offers a new ABI. The new ABI is package in libxcrypt and the old one in
compat-libxcrypt which should be dropped soon.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2022-12-19 15:44:40 +00:00
Michael Tremer 6cb5e9ba11 glibc: Update to 2.36
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2022-11-27 12:21:14 +00:00
Michael Tremer 8c00dee0fc glibc: Update to 2.29
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-02-14 20:08:21 +00:00
Michael Tremer 0c55b410c6 glibc: Compile with -O2
Instead of compiling with -O3, we now compile this with -O2
which is the default for the whole system. It looks like binaries
launch and perform a little bit slower than on some other
distributions, but there is no explanation to it.

This change will reduce the size of the libc and sibling libraries
which will hopefully allow to load them faster. Code might potentially
execute slower on some machines, but this impact might be less than
the startup time of the binaries.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-12-18 22:35:30 +00:00
Michael Tremer 72f604e827 glibc: Update to 2.28
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-09-16 20:36:08 +01:00
Michael Tremer 24e9b8ad8d glibc: Update to 2.27
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-06-28 12:52:51 +01:00
Michael Tremer 6f6c9c65b3 glibc: Drop some patches
glibc has been a bit unstable and we are going to drop
patches that we don't essentially need in the hope to
mitigate any random segfaults.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-01-25 20:40:08 +00:00
Stefan Schantl a4f7c909d1 glibc: Remove audit support
* Drop support for the audit subsystem.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-08-15 12:42:02 +01:00
Michael Tremer 80b7ed539c glibc: Update to version 2.26
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-08-10 22:50:54 +01:00
Michael Tremer d7d685fc2e glibc: Update to 2.25
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-02-16 11:38:44 +00:00
Michael Tremer 963c362fb5 glibc: Remove support for selinux
Fixes #11209

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-10-21 14:03:37 +01:00
Michael Tremer 9ec0217536 glibc: Remove -command and -headers package
These packages are a bit redundant and got now
merged into the main package and the -devel package.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-10-03 12:07:44 +01:00
Michael Tremer 4eec3d94d9 glibc: Update to 2.24
Requires a patch to build on x86_64:
  https://sourceware.org/bugzilla/show_bug.cgi?id=20621

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-09-23 21:15:34 +01:00
Michael Tremer 301beda7fb glibc: Ship libmvec_nonshared.a in glibc-devel
This library is required to link against libm.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-03-31 22:03:47 +01:00
Michael Tremer ee62c3f9f4 glibc: Update to version 2.23
Requires Linux kernel 3.2 now.

Security related changes:

* An out-of-bounds value in a broken-out struct tm argument to strftime no
  longer causes a crash.  Reported by Adam Nielsen.  (CVE-2015-8776)

* The LD_POINTER_GUARD environment variable can no longer be used to disable
  the pointer guard feature.  It is always enabled.  Previously,
  LD_POINTER_GUARD could be used to disable security hardening in binaries
  running in privileged AT_SECURE mode.  Reported by Hector Marco-Gisbert.
  (CVE-2015-8777)

* An integer overflow in hcreate and hcreate_r could lead to an
  out-of-bounds memory access.  Reported by Szabolcs Nagy.  (CVE-2015-8778)

* The catopen function no longer has unbounded stack usage.  Reported by
  Max.  (CVE-2015-8779)

* The nan, nanf and nanl functions no longer have unbounded stack usage
  depending on the length of the string passed as an argument to the
  functions.  Reported by Joseph Myers.  (CVE-2014-9761)

* A stack-based buffer overflow was found in libresolv when invoked from
  libnss_dns, allowing specially crafted DNS responses to seize control
  of execution flow in the DNS client.  The buffer overflow occurs in
  the functions send_dg (send datagram) and send_vc (send TCP) for the
  NSS module libnss_dns.so.2 when calling getaddrinfo with AF_UNSPEC
  family.  The use of AF_UNSPEC triggers the low-level resolver code to
  send out two parallel queries for A and AAAA.  A mismanagement of the
  buffers used for those queries could result in the response of a query
  writing beyond the alloca allocated buffer created by
  _nss_dns_gethostbyname4_r.  Buffer management is simplified to remove
  the overflow.  Thanks to the Google Security Team and Red Hat for
  reporting the security impact of this issue, and Robert Holiday of
  Ciena for reporting the related bug 18665. (CVE-2015-7547)

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-03-31 13:59:10 +01:00
Michael Tremer 2576d87312 glibc: Update to version 2.22
Security fix:
  A buffer overflow in gethostbyname_r and related functions performing DNS
  requests has been fixed.  If the NSS functions were called with a
  misaligned buffer, the buffer length change due to pointer alignment was
  not taken into account.  This could result in application crashes or,
  potentially arbitrary code execution, using crafted, but syntactically
  valid DNS responses.  (CVE-2015-1781)

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-03-29 17:02:43 +01:00
Michael Tremer c8f56dccfc glibc: Update to 2.21 2015-02-26 12:53:39 +01:00
Michael Tremer 389ab7f841 glibc: Update to 2.20
* The following bugs are resolved with this release:

  6804, 9894, 12994, 13347, 13651, 14308, 14770, 15119, 15132, 15347, 15514,
  15698, 15804, 15894, 15946, 16002, 16064, 16095, 16194, 16198, 16275,
  16284, 16287, 16315, 16348, 16349, 16354, 16357, 16362, 16447, 16516,
  16532, 16539, 16545, 16561, 16562, 16564, 16574, 16599, 16600, 16609,
  16610, 16611, 16613, 16619, 16623, 16629, 16632, 16634, 16639, 16642,
  16648, 16649, 16670, 16674, 16677, 16680, 16681, 16683, 16689, 16695,
  16701, 16706, 16707, 16712, 16713, 16714, 16724, 16731, 16739, 16740,
  16743, 16754, 16758, 16759, 16760, 16770, 16786, 16789, 16791, 16796,
  16799, 16800, 16815, 16823, 16824, 16831, 16838, 16839, 16849, 16854,
  16876, 16877, 16878, 16882, 16885, 16888, 16890, 16892, 16912, 16915,
  16916, 16917, 16918, 16922, 16927, 16928, 16932, 16943, 16958, 16965,
  16966, 16967, 16977, 16978, 16984, 16990, 16996, 17009, 17022, 17031,
  17042, 17048, 17050, 17058, 17061, 17062, 17069, 17075, 17078, 17079,
  17084, 17086, 17088, 17092, 17097, 17125, 17135, 17137, 17150, 17153,
  17187, 17213, 17259, 17261, 17262, 17263, 17319, 17325, 17354.

* Reverted change of ABI data structures for s390 and s390x:
  On s390 and s390x the size of struct ucontext and jmp_buf was increased in
  2.19. This change is reverted in 2.20. The introduced 2.19 symbol versions
  of getcontext, setjmp, _setjmp, __sigsetjmp, longjmp, _longjmp, siglongjmp
  are preserved pointing straight to the same implementation as the old ones.
  Given that, new callers will simply provide a too-big buffer to these
  functions. Any applications/libraries out there that embed jmp_buf or
  ucontext_t in an ABI-relevant data structure that have already been rebuilt
  against 2.19 headers will have to rebuilt again. This is necessary in any
  case to revert the breakage in their ABI caused by the glibc change.

* Support for file description locks is added to systems running the
  Linux kernel. The standard file locking interfaces are extended to
  operate on file descriptions, not file descriptors, via the use of
  F_OFD_GETLK, F_OFD_SETLK, and F_OFD_SETLKW. File description locks
  are associated with an open file instead of a process.

* Optimized strchr implementation for AArch64.  Contributed by ARM Ltd.

* The minimum Linux kernel version that this version of the GNU C Library
  can be used with is 2.6.32.

* Running the testsuite no longer terminates as soon as a test fails.
  Instead, a file tests.sum (xtests.sum from "make xcheck") is generated,
  with PASS or FAIL lines for individual tests.  A summary of the results is
  printed, including a list of failing lists, and "make check" exits with
  error status if there were any unexpected failures.  "make check
  stop-on-test-failure=y" may be used to keep the old behavior.

* The am33 port, which had not worked for several years, has been removed
  from ports.

* The _BSD_SOURCE and _SVID_SOURCE feature test macros are no longer
  supported; they now act the same as _DEFAULT_SOURCE (but generate a
  warning).  Except for cases where _BSD_SOURCE enabled BSD interfaces that
  conflicted with POSIX (support for which was removed in 2.19), the
  interfaces those macros enabled remain available when compiling with
  _GNU_SOURCE defined, with _DEFAULT_SOURCE defined, or without any feature
  test macros defined.

* Optimized strcmp implementation for ARMv7.  Contributed by ARM Ltd.

* Added support for TX lock elision of pthread mutexes on s390 and s390x.
  This may improve lock scaling of existing programs on TX capable systems.
  The lock elision code is only built with --enable-lock-elision=yes and
  then requires a GCC version supporting the TX builtins.  With lock elision
  default mutexes are elided via __builtin_tbegin, if the cpu supports
  transactions. By default lock elision is not enabled and the elision code
  is not built.

* CVE-2014-4043 The posix_spawn_file_actions_addopen implementation did not
  copy the path argument.  This allowed programs to cause posix_spawn to
  deference a dangling pointer, or use an unexpected pathname argument if
  the string was modified after the posix_spawn_file_actions_addopen
  invocation.

* All supported architectures now use the main glibc sysdeps directory
  instead of some being in a separate "ports" directory (which was
  distributed separately before glibc 2.17).

* The NPTL implementation of POSIX pthreads is no longer an "add-on".
  On configurations that support it (all Linux configurations), it's now
  used regardless of the --enable-add-ons switch to configure.  It is no
  longer possible to build such configurations without pthreads support.

* Locale names, including those obtained from environment variables (LANG
  and the LC_* variables), are more tightly checked for proper syntax.
  setlocale will now fail (with EINVAL) for locale names that are overly
  long, contain slashes without starting with a slash, or contain ".." path
  components. (CVE-2014-0475)  Previously, some valid locale names were
  silently replaced with the "C" locale when running in AT_SECURE mode
  (e.g., in a SUID program).  This is no longer necessary because of the
  additional checks.

* On x86-64, the dynamic linker's lazy-binding support is now compatible
  with application code using Intel MPX instructions.  (With all previous
  versions, the MPX register state could be clobbered when making calls
  into or out of a shared library.)  Note that while the new dynamic
  linker is compatible with all known x86 hardware whether or not it
  supports Intel MPX, some x86 instruction-set emulators might fail to
  handle the new instruction encodings.  This is known to affect Valgrind
  versions up through 3.9 (but will be fixed in the forthcoming 3.10
  release), and might affect other tools that do instruction emulation.

* Support for loadable gconv transliteration modules has been removed.
  The support for transliteration modules has been non-functional for
  over a decade, and the removal is prompted by security defects.  The
  normal gconv conversion modules are still supported.  Transliteration
  with //TRANSLIT is still possible, and the //IGNORE specifier
  continues to be  supported. (CVE-2014-5119)

* Decoding a crafted input sequence in the character sets IBM933, IBM935,
  IBM937, IBM939, IBM1364 could result in an out-of-bounds array read,
  resulting a denial-of-service security vulnerability in applications which
  use functions related to iconv. (CVE-2014-6040)
2014-09-14 22:11:46 +02:00
Michael Tremer b8e1d26567 glibc: Update to 2.19. 2014-02-16 12:22:31 +01:00
Michael Tremer da27534708 glibc: Fix endless loop when compiling glibc. 2013-07-20 21:38:31 +02:00
Michael Tremer 09c1d1a921 glibc: Don't link against nss.
nss is removed from the distribution.
2013-02-10 23:08:15 +01:00
Michael Tremer e448e01465 glibc: Don't ship quota headers.
These header files will be shipped by the quota package.
2013-01-26 19:31:43 +00:00
Michael Tremer 3994dee190 glibc: Update to 2.17. 2013-01-07 22:04:26 +01:00
Michael Tremer 4834f4e8c4 glibc: Enable obsolete RPC implementation.
RPC has been removed from glibc in 2.16.
However some packages like python still need it.
2012-10-27 11:48:31 +02:00
Michael Tremer 3bece62064 glibc: Provide ld-linux.so.3(GLIBC_PRIVATE) on armv7hl.
This is needed because of the transition to the new runtime
linker name.
2012-07-17 11:31:31 +02:00
Michael Tremer 1262a29126 glibc: Make sure that all subpackages are the same version.
It has been possible to install a newer version of
glibc-devel and glibc-headers than the actual library.
This resulted in various linking problems.
2012-07-11 09:59:16 +02:00
Michael Tremer 08884d73cd glibc: Update to 2.16.0.
On armv7hl the runtime linker is replaced by /lib/ld-linux-armhf.so.3
so that hardware and software floating point libraries may co-exist.

Fixes #10178.
2012-07-03 17:45:23 +02:00
Michael Tremer 4b31eaddad glibc: Fix library permissions. 2012-06-24 14:14:33 +02:00
Michael Tremer 205808000a glibc: Package glibc locale in glibc-common package. 2012-02-25 20:37:04 +01:00
Michael Tremer eec2ad4cd6 glibc: Re-enable some dependencies.
However these were commented out for bootstrapping glibc.
2012-02-17 21:10:34 +01:00
Michael Tremer 7f98fc96d9 glibc: Update to 2.15.
Required to fix the ARM bootstrap.
2012-01-29 23:50:53 +01:00
Michael Tremer 70963a517c glibc: Update to 2.14.90 (development version). 2012-01-05 00:57:02 +01:00
Michael Tremer 706fb4da88 glibc: Make package work on x86_64. 2011-12-23 14:46:39 +01:00
Michael Tremer 4fb1176128 glibc: Update to 2.14.1.
Enable linking to nss.
2011-12-17 14:12:35 +01:00
Michael Tremer 1f9bc2f0e4 Add a -debuginfo for every package that is not noarch.
And fix some whitespace errors as well.
2011-12-11 11:12:58 +01:00
Michael Tremer e11b29589a Merge branch 'master' of ssh://git.ipfire.org/pub/git/ipfire-3.x into arm-port
Conflicts:
	glibc/glibc.nm
	gmp/gmp.nm
2011-12-04 19:28:37 +01:00
Michael Tremer b0f38bbb44 glibc: Drop timezone data and use tzdata package instead. 2011-12-04 01:53:36 +01:00
Michael Tremer 0771353a94 glibc: Remove obsolete patch. 2011-12-04 01:53:19 +01:00
Michael Tremer a778217fc2 glibc: Fix patching the ports addon. 2011-12-01 12:02:53 +01:00
Michael Tremer 8827f595ce glibc: Enable build for armv5tel. 2011-11-29 00:02:08 +01:00
Michael Tremer e4c5e5307a glibc: Add ports addon and configure options for armv5tel. 2011-11-20 23:36:29 +01:00
Michael Tremer 8a3a777fab glibc: Package lib{c,pthread}_nonshared.a. 2011-11-02 16:25:00 +01:00