Commit Graph

1691 Commits

Author SHA1 Message Date
Florian Weimer
48a71633e6 Auto-sync with upstream branch master
Upstream commit: cdd14619a713ab41e26ba700add4880604324dbb

- libnsl: Turn remaining symbols into compat symbols (swbz#22701)
- be_BY, be_BY@latin, lt_LT, el_CY, el_GR, ru_RU, ru_UA, uk_UA:
  Add alternative month names (swbz#10871)
- x86: Revert Intel CET changes to __jmp_buf_tag (swbz#22743)
- aarch64: Revert the change of the __reserved member of mcontext_t
2018-01-29 18:06:23 +01:00
Igor Gnatenko
1f24fb0da2
Add file triggers to do ldconfig calls automatically
Since time immemorial, Red Hat/Fedora packagers have been required
to add a stanza to spec files for packages containing libraries to
update the ldconfig cache.

```
%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig
```

To say this is annoying is to put it mildly. However, there was no
standard mechanism to make this boilerplate go away. Now with RPM 4.13+,
we should change this to file triggers and make all of that go away.

In the case of the transaction file triggers that run on the regular
link library paths, the performance benefit is minimal, and being greedy
does not hurt in this case. It's still an improvement over running
ldconfig every time anyway.

With the introduction of these triggers, we can start removing the
ldconfig boilerplate from Fedora package specs, and new packages will
not need to add it.

Pirority (-P) is not strictly needed, but we want to run our ldconfig
"first" before rest of scriptlets so it would speed up them (we would
build ldconfig cache beforehand).

References: https://bugzilla.redhat.com/1380878
Originally-proposed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-01-29 17:52:15 +01:00
Florian Weimer
6777c3ed80 Auto-sync with upstream branch master
Upstream commit: 21c0696cdef617517de6e25711958c40455c554f

- locale: Implement alternative month names (swbz#10871)
- locale: Change month names for pl_PL (swbz#10871)
2018-01-22 16:19:24 +01:00
Florian Weimer
a4166cd2cf aarch64 static PIE is still broken, disable again
Also apply minor related changelog fixes.
2018-01-22 16:15:37 +01:00
Florian Weimer
58e6c2560b Fix BuildRequires: binutils 2018-01-22 15:36:05 +01:00
Florian Weimer
92867018b5 Update changelog for glibc-2.26.9000-47.fc28 2018-01-22 15:33:29 +01:00
Florian Weimer
cd5e5a1117 Reenable static PIE on aarch64 after binutils fix (#1247050) 2018-01-22 15:33:29 +01:00
Florian Weimer
6815071d4a Unconditionally build without libcrypt 2018-01-22 15:33:25 +01:00
Florian Weimer
b8b7388beb Fix release number in changelog entry 2018-01-22 11:09:06 +01:00
Florian Weimer
c758358a31 glibc-deprecate_libcrypt.patch: Do not patch NEWS, fix attribution 2018-01-22 11:00:27 +01:00
Björn Esser
2687b3c78b
Remove deprecated libcrypt, gets replaced by libxcrypt
Add applicable Requires on libxcrypt

Back in June, Björn Esser proposed to add OpenBSD-compatible bcrypt
support to our implementation of crypt(3), and Zack Weinberg replied
that it might actually make more sense to _remove_ libcrypt from
glibc, freeing up libcrypt.so.1 and crypt.h to be provided by a
separate project that could move faster.  (For instance, libxcrypt:
https://github.com/besser82/libxcrypt)

This commit is the glibc part of:
https://fedoraproject.org/wiki/Changes/Replace_glibc_libcrypt_with_libxcrypt
2018-01-19 23:49:50 +01:00
Florian Weimer
6a5972a529 Remove the glibc-rpcgen subpackage
An rpcgen subpackage is now built by rpcsvc-proto.
2018-01-19 18:32:12 +01:00
Florian Weimer
36e8658036 Drop static PIE support on aarch64
It leads to crashes at run time.  Probably needs binutils fixes not
yet in rawhide.
2018-01-19 18:04:40 +01:00
Florian Weimer
fac98a7443 Auto-sync with upstream branch master
Upstream commit: 4612268a0ad8e3409d8ce2314dd2dd8ee0af5269

- Correct the list of static PIE architectures
- glibc_post_upgrade: Remove process restart logic
- glibc_post_upgrade: Integrate into the build process
- glibc_post_upgrade: Do not clean up tls subdirectories
- glibc_post_upgrade: Drop ia64 support
- Remove architecture-specific symbolic link for iconvconfig
- powerpc: Fix syscalls during early process initialization (swbz#22685)
2018-01-19 17:02:46 +01:00
Florian Weimer
a071c6801c glibc_post_upgrade: Remove process restart logic
The sshd restart looks potentially useful, but it has not run for a
long time because the file /etc/rc.d/init.d/sshd does not exit
anymore, so it appears unnecessary after all.
2018-01-19 17:02:46 +01:00
Florian Weimer
cc5db6cdfd Correct the list of static PIE architectures
x86_64 was missing before.
2018-01-19 17:02:40 +01:00
Florian Weimer
737f7e8513 glibc_post_upgrade: Integrate into the build process
This gives us access to the relevant definitions and also enables
us to perform a static PIE build without replicate the entire
compiler invocation.

Due to the move into the glibc build process, the program had to
be cleaned up to compile without warnings.
2018-01-19 16:32:18 +01:00
Florian Weimer
34f077631c Move glibc-fedora-nscd.patch comment into file 2018-01-19 16:05:04 +01:00
Florian Weimer
707a1e8f87 Remove architecture-specific symbolic link for iconvconfig
Its purpose is not entirely clear.  glibc_post_upgrade invokes
iconvconfig with explicit paths, so it does not matter for which
multilib variant the binary was built.
2018-01-19 15:30:50 +01:00
Florian Weimer
e33b0e3197 glibc_post_upgrade: Move LD_SO_CONF definition into source file 2018-01-19 15:11:38 +01:00
Florian Weimer
365663e72b glibc_post_upgrade: Do not clean up tls subdirectories
These were removed a long time ago.
2018-01-19 15:07:33 +01:00
Florian Weimer
91ed2dbf62 glibc_post_upgrade: Drop ia64 support 2018-01-19 15:03:57 +01:00
Florian Weimer
0f4d3ed14d Auto-sync with upstream branch master
Upstream commit: 64f63cb4583ecc1ba16c7253aacc192b6d088511

- Enable static PIE support
- Remove add-on support (already gone upstream)
- Rework test suite status reporting
- malloc: Fix integer overflows in memalign and malloc functions (swbz#22343)
- x86-64: Properly align La_x86_64_retval to VEC_SIZE (swbz#22715)
- aarch64: Update bits/hwcap.h for Linux 4.15
- Add NT_ARM_SVE to elf.h
2018-01-19 12:58:39 +01:00
Florian Weimer
5c2fe5cfb3 Rework test suite status reporting
Remove the timeout and the parallel tail call.  Always output to
standard error, for synchronization with the rest of the reporting.
2018-01-19 12:02:32 +01:00
Florian Weimer
5163dbee45 Enable static PIE on aarch64, i686, x86-64 2018-01-19 08:36:02 +01:00
Florian Weimer
dc905411d5 Remove add-on support (already gone upstream) 2018-01-19 08:35:09 +01:00
Florian Weimer
90612b2709 Use libidn2 for IDNA support (#1452750) 2018-01-17 18:42:37 +01:00
Florian Weimer
d7ce5d4634 Auto-sync with upstream branch master
Upstream commit: 860b0240a5645edd6490161de3f8d1d1f2786025

- CVE-2018-1000001: Make getcwd fail if it cannot obtain an absolute path
  (#1533837)
- elf: Synchronize DF_1_* flags with binutils (#1439328)
- aarch64: fix static pie enabled libc when main is in a shared library
- malloc: Ensure that the consolidated fast chunk has a sane size
2018-01-15 18:02:57 +01:00
Florian Weimer
d84b03df97 Auto-sync with upstream branch master
Upstream commit: 9a08a366a7e7ddffe62113a9ffe5e50605ea0924

- libnsl: Do not install libnsl.so, libnsl.a (#1531540)
- Use unversioned Supplements: for langpacks (#1490725)
- hu_HU locale: Avoid double space (swbz#22657)
- math: Make default libc_feholdsetround_noex_ctx use __feholdexcept
  (swbz#22702)
2018-01-12 11:43:05 +01:00
Florian Weimer
684ac6eb78 Use unversioned Supplements: for langpacks (#1490725) 2018-01-12 11:13:18 +01:00
Florian Weimer
538e3ea7c8 Auto-sync with upstream branch master
Upstream commit: 08c6e95234c60a5c2f37532d1111acf084f39345

- nptl: Open libgcc.so with RTLD_NOW during pthread_cancel (#1527887)
- Introduce libnsl subpackage and remove NIS headers (#1531540)
- Use versioned Obsoletes: for libcrypt-nss.
- nptl: Add tst-minstack-cancel, tst-minstack-exit (swbz#22636)
- math: ldbl-128ibm log1pl (-qNaN) spurious "invalid" exception (swbz#22693)
2018-01-11 14:30:08 +01:00
Florian Weimer
b8bc11a834 Put libnsl into a subpackage and do not install NIS headers 2018-01-11 13:21:53 +01:00
Florian Weimer
6e8a4e351b Use versioned Obsoletes: for libcrypt-nss 2018-01-11 11:57:20 +01:00
Carlos O'Donell
8544d3ab89 Update comments on python3 selection. 2018-01-10 11:13:08 -08:00
Florian Weimer
9e28c4292e Auto-sync with upstream branch master
Upstream commit: 09085ede12fb9650f286bdcd805609ae69f80618

- nptl: Fix stack guard size accounting (#1527887)
- Remove invalid Obsoletes: on glibc-header provides
- Require python3 instead of python during builds
- math: ldbl-128ibm lrintl/lroundl missing "invalid" exceptions (swbz#22690)
- x86-64: Add sincosf with vector FMA
2018-01-10 08:59:17 +01:00
Florian Weimer
e15a68193c Use python3 instead of python during builds 2018-01-10 08:09:01 +01:00
Florian Weimer
cad9c65e11 Remove Obsoletes: on capabilities which are not package names 2018-01-09 15:14:20 +01:00
Florian Weimer
a281128660 Add glibc-rpcgen subpackage, until the replacement is packaged (#1531540) 2018-01-08 16:46:16 +01:00
Florian Weimer
1042b5d52a Auto-sync with upstream branch master
Upstream commit: 579396ee082565ab5f42ff166a264891223b7b82

- nptl: Add test for callee-saved register restore in pthread_exit
- getrlimit64: fix for 32-bit configurations with default version >= 2.2
- elf: Add linux-4.15 VDSO hash for RISC-V
- elf: Add RISC-V dynamic relocations to elf.h
- powerpc: Fix error message during relocation overflow
- prlimit: Replace old_rlimit RLIM64_INFINITY with RLIM_INFINITY (swbz#22678)
2018-01-08 15:15:05 +01:00
Florian Weimer
cf072ec21a Auto-sync with upstream branch master
Upstream commit: f1a844ac6389ea4e111afc019323ca982b5b027d

- CVE-2017-16997: elf: Check for empty tokens before DST expansion (#1526866)
- Remove sln (#1531546)
- Remove Sun RPC interfaces (#1531540)
- Rebuild with newer GCC to fix pthread_exit stack unwinding issue (#1529549)
- i386: In makecontext, align the stack before calling exit (swbz#22667)
- x86, armhfp: sync sys/ptrace.h with Linux 4.15 (swbz#22433)
- elf: check for rpath emptiness before making a copy of it
- elf: remove redundant is_path argument
- elf: remove redundant code from is_dst
- elf: remove redundant code from _dl_dst_substitute
- scandir: fix wrong assumption about errno (swbz#17804)
- Deprecate external use of libio.h and _G_config.h
2018-01-05 14:36:28 +01:00
Florian Weimer
bf6952b9c9 Drop glibc-fedora-elf-ORIGIN.patch
Fixed upstream in a different way (our patch was buggy, see CVE-2017-16997).
2018-01-05 14:23:04 +01:00
Florian Weimer
23177e46b4 Remove sln-in-ldconfig patch
Obsoleted by commit d8e1573f9c (Stop
shipping /usr/sbin/sln).
2018-01-05 14:19:56 +01:00
Florian Weimer
d62730de90 Disable Sun RPC interfaces (#1531540) 2018-01-05 14:07:05 +01:00
Florian Weimer
95cc2e8d4c glibc_post_upgrade: Explain why removing platform directories is needed 2018-01-04 10:45:03 +01:00
Colin Walters
d8e1573f9c Stop shipping /usr/sbin/sln
A whole lot has changed since `sln` was introduced into glibc upstream with
this comment:

```
    1998-07-21 07:10  H.J. Lu  <hjl@gnu.org>

            * elf/sln.c: New file.
```
Upstream glibc commit 9d141cae00c957096045d08fe504b4a2be66ab75
```
 Author:     Ulrich Drepper <drepper@redhat.com>
 AuthorDate: Thu Aug 13 19:44:05 1998 +0000
```

Among other things for example, dynamic linking has been in use for the nearly
20 years that have passed and is now quite reliable. Further, many Fedora
systems now use an initramfs (dracut) which is basically a large filesystem of
utilities as a single blob; while it would require rebooting, one can easily
make hardlinks there.

Futher of course there's the increasing use of ostree in Fedora which which
consistently captures *all* of userspace and supports rollback, and additionaly
its presents a "read only" nature to admin tools and other processes that adds
significantly to system resilience.

The failure scenarios that could be recovered via `sln` seem to me to be very
small.

Applying this patch allows dropping a downstream Fedora patch to hardlink `sln` to `ldconfig`,
which was the source of a tricky bug:
https://github.com/projectatomic/rpm-ostree/pull/1173#issuecomment-355014583
that also impacts rpm-ostree.  In practice today SELinux policy is fixed
in updates, but given there's no real reason for this binary to exist
anymore, let's drop it.
2018-01-03 16:30:03 -05:00
Florian Weimer
39b4cfbcf1 Auto-sync with upstream branch master
Upstream commit bad7a0c81f501fbbcc79af9eaa4b8254441c4a1f

- copy_file_range: New function to copy file data
- nptl: Consolidate pthread_{timed,try}join{_np}
- nptl: Implement pthread_self in libc.so (swbz#22635)
- math: Provide a C++ version of iseqsig (swbz#22377)
- elf: remove redundant __libc_enable_secure check from fillin_rpath
- math: Avoid signed shift overflow in pow (swbz#21309)
- x86: Add feature_1 to tcbhead_t (swbz#22563)
- x86: Update cancel_jmp_buf to match __jmp_buf_tag (swbz#22563)
- ld.so: Examine GLRO to detect inactive loader (swbz#20204)
- nscd: Fix nscd readlink argument aliasing (swbz#22446)
- elf: do not substitute dst in $LD_LIBRARY_PATH twice (swbz#22627)
- ldconfig: set LC_COLLATE to C (swbz#22505)
- math: New generic sincosf
- powerpc: st{r,p}cpy optimization for aligned strings
- CVE-2017-1000409: Count in expanded path in _dl_init_path (#1524867)
- CVE-2017-1000408: Compute correct array size in _dl_init_paths (#1524867)
- x86-64: Remove sysdeps/x86_64/fpu/s_cosf.S
- aarch64: Improve strcmp unaligned performance
2017-12-22 16:13:39 +01:00
Florian Weimer
a5a7506242 Remove power6 platform directory (#1522675) 2017-12-13 16:26:51 +01:00
Florian Weimer
08930d16b5 Obsolete the libcrypt-nss subpackage (#1525396) 2017-12-13 12:49:24 +01:00
Florian Weimer
29bd4db4f5 armhfp: Disable -fstack-clash-protection due to GCC bug (#1522678) 2017-12-13 12:03:19 +01:00
Florian Weimer
ac67247def ppc64: Disable power6 multilib due to GCC bug (#1522675) 2017-12-13 12:00:28 +01:00