aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorNick Alcock <nick.alcock@oracle.com>2016-12-26 10:08:45 +0100
committerFlorian Weimer <fweimer@redhat.com>2016-12-26 10:08:45 +0100
commit10c85e76c09716e744b4a41006718400b1eb2e84 (patch)
treedb306524b5147cd0ec6a67dd95aeb079d99112cc /ChangeLog
parentde6591238b478bc86b8cf5af01a484114e399213 (diff)
downloadglibc-10c85e76c09716e744b4a41006718400b1eb2e84.tar
glibc-10c85e76c09716e744b4a41006718400b1eb2e84.tar.gz
glibc-10c85e76c09716e744b4a41006718400b1eb2e84.tar.bz2
glibc-10c85e76c09716e744b4a41006718400b1eb2e84.zip
Disable stack protector in early static initialization [BZ #7065]
The startup code in csu/, and the brk and sbrk functions are needed very early in initialization of a statically-linked program, before the stack guard is initialized; TLS initialization also uses memcpy, which cannot overrun its own stack. Mark all of these as -fno-stack-protector. We also finally introduce @libc_cv_ssp@ and @no_stack_protector@, both substituted by the configury changes made earlier, to detect the case when -fno-stack-protector is supported by the compiler, and unconditionally pass it in when this is the case, whether or not --enable-stack-protector is passed to configure. (This means that it'll even work when the compiler's been hacked to pass -fstack-protector by default, unless the hackage is so broken that it does so in a way that is impossible to override.)
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog12
1 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 395a14ba4d..64ccdf7ca0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,18 @@
2016-12-26 Nick Alcock <nick.alcock@oracle.com>
[BZ #7065]
+ * config.make.in (have-ssp, no-stack-protector): New.
+ * csu/Makefile (CFLAGS-.o, CFLAGS-.op, CFLAGS-.os): Use it.
+ * misc/Makefile (CFLAGS-sbrk.o): Likewise.
+ (CFLAGS-sbrk.op): Likewise.
+ (CFLAGS-brk.o): Likewise.
+ (CFLAGS-brk.op): Likewise.
+ * string/Makefile (CFLAGS-memcpy.c): Likewise.
+ (CFLAGS-wordcopy.c): Likewise.
+
+2016-12-26 Nick Alcock <nick.alcock@oracle.com>
+
+ [BZ #7065]
* configure.ac (HAVE_CC_NO_STACK_PROTECTOR): Define.
* config.h.in (HAVE_CC_NO_STACK_PROTECTOR): New macro.
* include/libc-symbols.h (inhibit_stack_protector): New macro.