aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcjdelisle <calebdelisle@lavabit.com>2011-10-16 20:38:23 -0400
committercjdelisle <calebdelisle@lavabit.com>2011-10-16 20:38:23 -0400
commit1e5f9393818cdc2264e7e44ed17291366da3dcb9 (patch)
tree51faa4419408c2fc863e36e4d1656cc8895bc293
parentb68a8a6b34c22f08478c042352209db0ff7fac60 (diff)
Added a workaround for an Ubuntu bug which causes -fstack-protector-all to be disregarded.
-rw-r--r--src/makefile.unix7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/makefile.unix b/src/makefile.unix
index 871aedd1ad..5f841ea0fe 100644
--- a/src/makefile.unix
+++ b/src/makefile.unix
@@ -51,12 +51,17 @@ LIBS+= \
# Hardening
# Make some classes of vulnerabilities unexploitable in case one is discovered.
#
+ # This is a workaround for Ubuntu bug #691722, the default -fstack-protector causes
+ # -fstack-protector-all to be ignored unless -fno-stack-protector is used first.
+ # see: https://bugs.launchpad.net/ubuntu/+source/gcc-4.5/+bug/691722
+ HARDENING=-fno-stack-protector
+
# Stack Canaries
# Put numbers at the beginning of each stack frame and check that they are the same.
# If a stack buffer if overflowed, it writes over the canary number and then on return
# when that number is checked, it won't be the same and the program will exit with
# a "Stack smashing detected" error instead of being exploited.
- HARDENING=-fstack-protector-all -Wstack-protector
+ HARDENING+=-fstack-protector-all -Wstack-protector
# Make some important things such as the global offset table read only as soon as
# the dynamic linker is finished building it. This will prevent overwriting of addresses