The release/2.29/master branch has been updated by DJ Delorie <email address hidden>:
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5e1548a6d9c5c544f13cb71f4462b3f38e87a3c6
commit 5e1548a6d9c5c544f13cb71f4462b3f38e87a3c6 Author: H.J. Lu <email address hidden> Date: Mon Jul 1 12:23:10 2019 -0700
Call _dl_open_check after relocation [BZ #24259]
This is a workaround for [BZ #20839] which doesn't remove the NODELETE object when _dl_open_check throws an exception. Move it after relocation in dl_open_worker to avoid leaving the NODELETE object mapped without relocation.
[BZ #24259] * elf/dl-open.c (dl_open_worker): Call _dl_open_check after relocation. * sysdeps/x86/Makefile (tests): Add tst-cet-legacy-5a, tst-cet-legacy-5b, tst-cet-legacy-6a and tst-cet-legacy-6b. (modules-names): Add tst-cet-legacy-mod-5a, tst-cet-legacy-mod-5b, tst-cet-legacy-mod-5c, tst-cet-legacy-mod-6a, tst-cet-legacy-mod-6b and tst-cet-legacy-mod-6c. (CFLAGS-tst-cet-legacy-5a.c): New. (CFLAGS-tst-cet-legacy-5b.c): Likewise. (CFLAGS-tst-cet-legacy-mod-5a.c): Likewise. (CFLAGS-tst-cet-legacy-mod-5b.c): Likewise. (CFLAGS-tst-cet-legacy-mod-5c.c): Likewise. (CFLAGS-tst-cet-legacy-6a.c): Likewise. (CFLAGS-tst-cet-legacy-6b.c): Likewise. (CFLAGS-tst-cet-legacy-mod-6a.c): Likewise. (CFLAGS-tst-cet-legacy-mod-6b.c): Likewise. (CFLAGS-tst-cet-legacy-mod-6c.c): Likewise. ($(objpfx)tst-cet-legacy-5a): Likewise. ($(objpfx)tst-cet-legacy-5a.out): Likewise. ($(objpfx)tst-cet-legacy-mod-5a.so): Likewise. ($(objpfx)tst-cet-legacy-mod-5b.so): Likewise. ($(objpfx)tst-cet-legacy-5b): Likewise. ($(objpfx)tst-cet-legacy-5b.out): Likewise. (tst-cet-legacy-5b-ENV): Likewise. ($(objpfx)tst-cet-legacy-6a): Likewise. ($(objpfx)tst-cet-legacy-6a.out): Likewise. ($(objpfx)tst-cet-legacy-mod-6a.so): Likewise. ($(objpfx)tst-cet-legacy-mod-6b.so): Likewise. ($(objpfx)tst-cet-legacy-6b): Likewise. ($(objpfx)tst-cet-legacy-6b.out): Likewise. (tst-cet-legacy-6b-ENV): Likewise. * sysdeps/x86/tst-cet-legacy-5.c: New file. * sysdeps/x86/tst-cet-legacy-5a.c: Likewise. * sysdeps/x86/tst-cet-legacy-5b.c: Likewise. * sysdeps/x86/tst-cet-legacy-6.c: Likewise. * sysdeps/x86/tst-cet-legacy-6a.c: Likewise. * sysdeps/x86/tst-cet-legacy-6b.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-5.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-5a.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-5b.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-5c.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-6.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-6a.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-6b.c: Likewise. * sysdeps/x86/tst-cet-legacy-mod-6c.c: Likewise.
(cherry picked from commit d0093c5cefb7f7a4143f3bb03743633823229cc6)
The release/2.29/master branch has been updated by DJ Delorie <email address hidden>:
https:/ /sourceware. org/git/ gitweb. cgi?p=glibc. git;h=5e1548a6d 9c5c544f13cb71f 4462b3f38e87a3c 6
commit 5e1548a6d9c5c54 4f13cb71f4462b3 f38e87a3c6
Author: H.J. Lu <email address hidden>
Date: Mon Jul 1 12:23:10 2019 -0700
Call _dl_open_check after relocation [BZ #24259]
This is a workaround for [BZ #20839] which doesn't remove the NODELETE
object when _dl_open_check throws an exception. Move it after relocation
in dl_open_worker to avoid leaving the NODELETE object mapped without
relocation.
[BZ #24259] x86/Makefile (tests): Add tst-cet-legacy-5a, cet-legacy- 5b, tst-cet-legacy-6a and tst-cet-legacy-6b. names): Add tst-cet- legacy- mod-5a, tst-cet- legacy- mod-5b, cet-legacy- mod-5c, tst-cet- legacy- mod-6a, tst-cet- legacy- mod-6b legacy- mod-6c. tst-cet- legacy- 5a.c): New. tst-cet- legacy- 5b.c): Likewise. tst-cet- legacy- mod-5a. c): Likewise. tst-cet- legacy- mod-5b. c): Likewise. tst-cet- legacy- mod-5c. c): Likewise. tst-cet- legacy- 6a.c): Likewise. tst-cet- legacy- 6b.c): Likewise. tst-cet- legacy- mod-6a. c): Likewise. tst-cet- legacy- mod-6b. c): Likewise. tst-cet- legacy- mod-6c. c): Likewise. (objpfx) tst-cet- legacy- 5a): Likewise. (objpfx) tst-cet- legacy- 5a.out) : Likewise. (objpfx) tst-cet- legacy- mod-5a. so): Likewise. (objpfx) tst-cet- legacy- mod-5b. so): Likewise. (objpfx) tst-cet- legacy- 5b): Likewise. (objpfx) tst-cet- legacy- 5b.out) : Likewise. cet-legacy- 5b-ENV) : Likewise. (objpfx) tst-cet- legacy- 6a): Likewise. (objpfx) tst-cet- legacy- 6a.out) : Likewise. (objpfx) tst-cet- legacy- mod-6a. so): Likewise. (objpfx) tst-cet- legacy- mod-6b. so): Likewise. (objpfx) tst-cet- legacy- 6b): Likewise. (objpfx) tst-cet- legacy- 6b.out) : Likewise. cet-legacy- 6b-ENV) : Likewise. x86/tst- cet-legacy- 5.c: New file. x86/tst- cet-legacy- 5a.c: Likewise. x86/tst- cet-legacy- 5b.c: Likewise. x86/tst- cet-legacy- 6.c: Likewise. x86/tst- cet-legacy- 6a.c: Likewise. x86/tst- cet-legacy- 6b.c: Likewise. x86/tst- cet-legacy- mod-5.c: Likewise. x86/tst- cet-legacy- mod-5a. c: Likewise. x86/tst- cet-legacy- mod-5b. c: Likewise. x86/tst- cet-legacy- mod-5c. c: Likewise. x86/tst- cet-legacy- mod-6.c: Likewise. x86/tst- cet-legacy- mod-6a. c: Likewise. x86/tst- cet-legacy- mod-6b. c: Likewise. x86/tst- cet-legacy- mod-6c. c: Likewise.
* elf/dl-open.c (dl_open_worker): Call _dl_open_check after
relocation.
* sysdeps/
tst-
(modules-
tst-
and tst-cet-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
(CFLAGS-
($
($
($
($
($
($
(tst-
($
($
($
($
($
($
(tst-
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
* sysdeps/
(cherry picked from commit d0093c5cefb7f7a 4143f3bb0374363 3823229cc6)