* [PATCH] New configure option to default enable Smart Stack Protection
@ 2015-07-02 23:02 Magnus Granberg
2015-07-05 22:22 ` Magnus Granberg
0 siblings, 1 reply; 6+ messages in thread
From: Magnus Granberg @ 2015-07-02 23:02 UTC (permalink / raw)
To: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 158 bytes --]
Hi
Working on a patch that enable Smart Stack Protection as default.
I still miss docs and testcase for the patch. I need you ides and help.
/Magnus G.
---
[-- Attachment #2: default-ssp.patch --]
[-- Type: text/x-patch, Size: 3279 bytes --]
--- a/gcc/configure.ac 2014-12-05 00:53:24.000000000 +0100
+++ b/gcc/configure.ac 2015-06-08 23:27:11.744348211 +0200
@@ -5221,6 +5119,25 @@ if test x$gcc_cv_libc_provides_ssp = xye
[Define if your target C library provides stack protector support])
fi
+# Check whether --enable-default-ssp was given.
+AC_ARG_ENABLE(default-ssp,
+[AS_HELP_STRING([--enable-default-ssp],
+ [enable Smart Stack Protection as default])],
+if test x$gcc_cv_libc_provides_ssp = xyes; then
+ case "$target" in
+ ia64*-*-*) enable_default_ssp=no ;;
+ *) enable_default_ssp=$enableval ;;
+ esac
+else
+ enable_default_ssp=no
+fi,
+enable_default_ssp=no)
+if test x$enable_default_ssp == xyes ; then
+ AC_DEFINE(ENABLE_DEFAULT_SSP, 1,
+ [Define if your target supports default STACK-PROTECTOR and it is enabled.])
+fi
+AC_SUBST([enable_default_ssp])
+
# Test for <sys/sdt.h> on the target.
GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
AC_MSG_CHECKING(sys/sdt.h in the target C library)
--- a/gcc/defaults.h 2014-11-01 09:13:09.000000000 +0100
+++ b/gcc/defaults.h 2015-06-08 22:43:18.764269749 +0200
@@ -1263,6 +1263,18 @@ see the files COPYING3 and COPYING.RUNTI
#define STACK_SIZE_MODE word_mode
#endif
+/* Default value for flag_stack_protect when flag_stack_protect is initialized to -1:
+ --enable-default-ssp: Default flag_stack_protect to -fstack-protector-strong.
+ --disable-default-ssp: Default flag_stack_protect to 0.
+ */
+#ifdef ENABLE_DEFAULT_SSP
+# ifndef DEFAULT_FLAG_SSP
+# define DEFAULT_FLAG_SSP 3
+# endif
+#else
+# define DEFAULT_FLAG_SSP 0
+#endif
+
/* Provide default values for the macros controlling stack checking. */
/* The default is neither full builtin stack checking... */
--- a/gcc/common.opt 2014-10-28 11:33:04.000000000 +0100
+++ b/gcc/common.opt 2015-06-08 22:41:30.114266512 +0200
@@ -2054,15 +2054,15 @@ Common RejectNegative Joined Var(common_
-fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>
fstack-protector
-Common Report Var(flag_stack_protect, 1)
+Common Report Var(flag_stack_protect, 1) Init(-1)
Use propolice as a stack protection method
fstack-protector-all
-Common Report RejectNegative Var(flag_stack_protect, 2)
+Common Report RejectNegative Var(flag_stack_protect, 2) Init(-1)
Use a stack protection method for every function
fstack-protector-strong
-Common Report RejectNegative Var(flag_stack_protect, 3)
+Common Report RejectNegative Var(flag_stack_protect, 3) Init(-1)
Use a smart stack protection method for certain functions
fstack-protector-explicit
-Common Report RejectNegative Var(flag_stack_protect, 4)
+Common Report RejectNegative Var(flag_stack_protect, 4) Init(-1)
Use stack protection method only for functions with the stack_protect attribute
fstack-usage
--- a/gcc/opts.c 2014-10-28 11:33:04.000000000 +0100
+++ b/gcc/opts.c 2015-06-27 01:06:48.670870534 +0200
@@ -739,6 +740,1 @@ finish_options (struct gcc_options *opts
opts->x_flag_opts_finished = true;
}
+ /* We initialize opts->x_flag_stack_protect to -1 so that targets
+ can set a default value. */
+ if (opts->x_flag_stack_protect == -1)
+ opts->x_flag_stack_protect = DEFAULT_FLAG_SSP;
+
if (opts->x_optimize == 0)
{
/* Inlining does not work if not optimizing,
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] New configure option to default enable Smart Stack Protection
2015-07-02 23:02 [PATCH] New configure option to default enable Smart Stack Protection Magnus Granberg
@ 2015-07-05 22:22 ` Magnus Granberg
2015-07-13 13:21 ` [PING] " Magnus Granberg
0 siblings, 1 reply; 6+ messages in thread
From: Magnus Granberg @ 2015-07-05 22:22 UTC (permalink / raw)
To: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 985 bytes --]
fredag 03 juli 2015 01.01.51 skrev Magnus Granberg:
> Hi
> Working on a patch that enable Smart Stack Protection as default.
> I still miss docs and testcase for the patch. I need you ides and help.
>
> /Magnus G.
> ---
New patch with doc and testcase added.
/Magnus G.
Changlogs
/gcc
2015-07-05 Magnus Granberg <zorry@gentoo.org>
* common.opt (fstack-protector): Initialize to -1.
(fstack-protector-all): Likewise.
(fstack-protector-strong): Likewise.
(fstack-protector-explicit): Likewise.
* configure.ac: Add --enable-default-ssp.
* defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
* opts.c (finish_options): Update opts->x_flag_stack_protect if it is -1.
* doc/install.texi: Document --enable-default-ssp.
* config.in: Regenerated.
* configure: Likewise.
/testsuite
2015-07-05 Magnus Granberg <zorry@gentoo.org>
* lib/target-supports.exp
(check_effective_target_fstack_protector_enabled): New test.
* gcc.target/i386/ssp-default.c: New test.
----
[-- Attachment #2: default-ssp_upstream.patch --]
[-- Type: text/x-patch, Size: 4964 bytes --]
--- a/gcc/configure.ac 2014-12-05 00:53:24.000000000 +0100
+++ b/gcc/configure.ac 2015-06-08 23:27:11.744348211 +0200
@@ -5221,6 +5119,25 @@ if test x$gcc_cv_libc_provides_ssp = xye
[Define if your target C library provides stack protector support])
fi
+# Check whether --enable-default-ssp was given.
+AC_ARG_ENABLE(default-ssp,
+[AS_HELP_STRING([--enable-default-ssp],
+ [enable Smart Stack Protection as default])],[
+if test x$gcc_cv_libc_provides_ssp = xyes; then
+ case "$target" in
+ ia64*-*-*) enable_default_ssp=no ;;
+ *) enable_default_ssp=$enableval ;;
+ esac
+else
+ enable_default_ssp=no
+fi],
+enable_default_ssp=no)
+if test x$enable_default_ssp == xyes ; then
+ AC_DEFINE(ENABLE_DEFAULT_SSP, 1,
+ [Define if your target supports default stack protector and it is enabled.])
+fi
+AC_SUBST([enable_default_ssp])
+
# Test for <sys/sdt.h> on the target.
GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
AC_MSG_CHECKING(sys/sdt.h in the target C library)
--- a/gcc/defaults.h 2014-11-01 09:13:09.000000000 +0100
+++ b/gcc/defaults.h 2015-06-08 22:43:18.764269749 +0200
@@ -1263,6 +1263,18 @@ see the files COPYING3 and COPYING.RUNTI
#define STACK_SIZE_MODE word_mode
#endif
+/* Default value for flag_stack_protect when flag_stack_protect is initialized to -1:
+ --enable-default-ssp: Default flag_stack_protect to -fstack-protector-strong.
+ --disable-default-ssp: Default flag_stack_protect to 0.
+ */
+#ifdef ENABLE_DEFAULT_SSP
+# ifndef DEFAULT_FLAG_SSP
+# define DEFAULT_FLAG_SSP 3
+# endif
+#else
+# define DEFAULT_FLAG_SSP 0
+#endif
+
/* Provide default values for the macros controlling stack checking. */
/* The default is neither full builtin stack checking... */
--- a/gcc/common.opt 2014-10-28 11:33:04.000000000 +0100
+++ b/gcc/common.opt 2015-06-08 22:41:30.114266512 +0200
@@ -2054,15 +2054,15 @@ Common RejectNegative Joined Var(common_
-fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>
fstack-protector
-Common Report Var(flag_stack_protect, 1)
+Common Report Var(flag_stack_protect, 1) Init(-1)
Use propolice as a stack protection method
fstack-protector-all
-Common Report RejectNegative Var(flag_stack_protect, 2)
+Common Report RejectNegative Var(flag_stack_protect, 2) Init(-1)
Use a stack protection method for every function
fstack-protector-strong
-Common Report RejectNegative Var(flag_stack_protect, 3)
+Common Report RejectNegative Var(flag_stack_protect, 3) Init(-1)
Use a smart stack protection method for certain functions
fstack-protector-explicit
-Common Report RejectNegative Var(flag_stack_protect, 4)
+Common Report RejectNegative Var(flag_stack_protect, 4) Init(-1)
Use stack protection method only for functions with the stack_protect attribute
fstack-usage
--- a/gcc/opts.c 2015-06-10 02:37:39.000000000 +0200
+++ b/gcc/opts.c 2015-07-03 23:47:50.868752099 +0200
@@ -757,6 +757,11 @@ finish_options (struct gcc_options *opts
opts->x_flag_opts_finished = true;
}
+ /* We initialize opts->x_flag_stack_protect to -1 so that targets
+ can set a default value. */
+ if (opts->x_flag_stack_protect == -1)
+ opts->x_flag_stack_protect = DEFAULT_FLAG_SSP;
+
if (opts->x_optimize == 0)
{
/* Inlining does not work if not optimizing,
--- a/gcc/doc/install.texi 2015-06-03 18:38:10.000000000 +0200
+++ bgcc/doc/install.texi 2015-07-03 22:18:41.498592691 +0200
@@ -1642,6 +1642,9 @@ Using the GNU Compiler Collection (GCC)}
See ``RS/6000 and PowerPC Options'' in the main manual
@end ifhtml
+@item --enable-default-ssp
+Turn on @option{-fstack-protector-strong} by default.
+
@item --enable-cld
This option enables @option{-mcld} by default for 32-bit x86 targets.
@ifnothtml
--- a/gcc/testsuite/lib/target-supports.exp 2015-05-21 15:30:24.000000000 +0200
+++ b/gcc/testsuite/lib/target-supports.exp 2015-07-03 21:55:53.748551933 +0200
@@ -1124,6 +1124,16 @@ proc check_effective_target_pie_enabled
}]
}
+# Return 1 if the target generates -fstack-protector by default.
+
+proc check_effective_target_fstack_protector_enabled {} {
+ return [ check_no_compiler_messages fstack_protector_enabled assembly {
+ #if !defined (__SSP__) || !defined (__SSP_ALL__) || !defined (__SSP_STRONG__) || !defined (__SSP_EXPICIT__)
+ #error unsupported
+ #endif
+ }]
+}
+
# Return 1 if the target does not use a status wrapper.
proc check_effective_target_unwrapped { } {
--- a/gcc/testsuite/gcc.target/i386/ssp-default.c 2015-02-24 22:14:09.930176831 +0100
+++ b/gcc/testsuite/gcc.target/i386/ssp-default.c 2015-07-04 13:45:43.930250213 +0200
@@ -0,0 +1,22 @@
+/* { dg-do run { target native } } */
+/* { dg-require-effective-target fstack_protector_enabled } */
+
+#include <stdlib.h>
+
+void
+__stack_chk_fail (void)
+{
+ exit (0); /* pass */
+}
+
+int main ()
+{
+ int i;
+ char foo[255];
+
+ /* smash stack */
+ for (i = 0; i <= 400; i++)
+ foo[i] = 42;
+
+ return 1; /* fail */
+}
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PING] Re: [PATCH] New configure option to default enable Smart Stack Protection
2015-07-05 22:22 ` Magnus Granberg
@ 2015-07-13 13:21 ` Magnus Granberg
2015-07-20 14:47 ` Magnus Granberg
2015-08-19 22:11 ` Jeff Law
0 siblings, 2 replies; 6+ messages in thread
From: Magnus Granberg @ 2015-07-13 13:21 UTC (permalink / raw)
To: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 1794 bytes --]
söndag 05 juli 2015 23.59.32 skrev Magnus Granberg:
> Changlogs
> /gcc
> 2015-07-05 Magnus Granberg <zorry@gentoo.org>
>
> * common.opt (fstack-protector): Initialize to -1.
> (fstack-protector-all): Likewise.
> (fstack-protector-strong): Likewise.
> (fstack-protector-explicit): Likewise.
> * configure.ac: Add --enable-default-ssp.
> * defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
> * opts.c (finish_options): Update opts->x_flag_stack_protect if it
> is -1. * doc/install.texi: Document --enable-default-ssp.
> * config.in: Regenerated.
> * configure: Likewise.
>
> /testsuite
> 2015-07-05 Magnus Granberg <zorry@gentoo.org>
>
> * lib/target-supports.exp
> (check_effective_target_fstack_protector_enabled): New test.
> * gcc.target/i386/ssp-default.c: New test.
Patch updated and tested on x86_64-unknown-linux-gnu (Gentoo)
Changlogs
/gcc
2015-07-05 Magnus Granberg <zorry@gentoo.org>
* common.opt (fstack-protector): Initialize to -1.
(fstack-protector-all): Likewise.
(fstack-protector-strong): Likewise.
(fstack-protector-explicit): Likewise.
* configure.ac: Add --enable-default-ssp.
* defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
* opts.c (finish_options): Update opts->x_flag_stack_protect if it is -1.
* doc/install.texi: Document --enable-default-ssp.
* config.in: Regenerated.
* configure: Likewise.
/testsuite
2015-07-13 Magnus Granberg <zorry@gentoo.org>
* lib/target-supports.exp
(check_effective_target_fstack_protector_enabled): New test.
* gcc.target/i386/ssp-default.c: New test.
---
[-- Attachment #2: default-ssp_upstream.patch --]
[-- Type: text/x-patch, Size: 4969 bytes --]
--- a/gcc/configure.ac 2014-12-05 00:53:24.000000000 +0100
+++ b/gcc/configure.ac 2015-06-08 23:27:11.744348211 +0200
@@ -5221,6 +5119,25 @@ if test x$gcc_cv_libc_provides_ssp = xye
[Define if your target C library provides stack protector support])
fi
+# Check whether --enable-default-ssp was given.
+AC_ARG_ENABLE(default-ssp,
+[AS_HELP_STRING([--enable-default-ssp],
+ [enable Smart Stack Protection as default])],[
+if test x$gcc_cv_libc_provides_ssp = xyes; then
+ case "$target" in
+ ia64*-*-*) enable_default_ssp=no ;;
+ *) enable_default_ssp=$enableval ;;
+ esac
+else
+ enable_default_ssp=no
+fi],
+enable_default_ssp=no)
+if test x$enable_default_ssp == xyes ; then
+ AC_DEFINE(ENABLE_DEFAULT_SSP, 1,
+ [Define if your target supports default stack protector and it is enabled.])
+fi
+AC_SUBST([enable_default_ssp])
+
# Test for <sys/sdt.h> on the target.
GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
AC_MSG_CHECKING(sys/sdt.h in the target C library)
--- a/gcc/defaults.h 2014-11-01 09:13:09.000000000 +0100
+++ b/gcc/defaults.h 2015-06-08 22:43:18.764269749 +0200
@@ -1263,6 +1263,18 @@ see the files COPYING3 and COPYING.RUNTI
#define STACK_SIZE_MODE word_mode
#endif
+/* Default value for flag_stack_protect when flag_stack_protect is initialized to -1:
+ --enable-default-ssp: Default flag_stack_protect to -fstack-protector-strong.
+ --disable-default-ssp: Default flag_stack_protect to 0.
+ */
+#ifdef ENABLE_DEFAULT_SSP
+# ifndef DEFAULT_FLAG_SSP
+# define DEFAULT_FLAG_SSP 3
+# endif
+#else
+# define DEFAULT_FLAG_SSP 0
+#endif
+
/* Provide default values for the macros controlling stack checking. */
/* The default is neither full builtin stack checking... */
--- a/gcc/common.opt 2014-10-28 11:33:04.000000000 +0100
+++ b/gcc/common.opt 2015-06-08 22:41:30.114266512 +0200
@@ -2054,15 +2054,15 @@ Common RejectNegative Joined Var(common_
-fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>
fstack-protector
-Common Report Var(flag_stack_protect, 1)
+Common Report Var(flag_stack_protect, 1) Init(-1)
Use propolice as a stack protection method
fstack-protector-all
-Common Report RejectNegative Var(flag_stack_protect, 2)
+Common Report RejectNegative Var(flag_stack_protect, 2) Init(-1)
Use a stack protection method for every function
fstack-protector-strong
-Common Report RejectNegative Var(flag_stack_protect, 3)
+Common Report RejectNegative Var(flag_stack_protect, 3) Init(-1)
Use a smart stack protection method for certain functions
fstack-protector-explicit
-Common Report RejectNegative Var(flag_stack_protect, 4)
+Common Report RejectNegative Var(flag_stack_protect, 4) Init(-1)
Use stack protection method only for functions with the stack_protect attribute
fstack-usage
--- a/gcc/opts.c 2015-06-10 02:37:39.000000000 +0200
+++ b/gcc/opts.c 2015-07-03 23:47:50.868752099 +0200
@@ -757,6 +757,11 @@ finish_options (struct gcc_options *opts
opts->x_flag_opts_finished = true;
}
+ /* We initialize opts->x_flag_stack_protect to -1 so that targets
+ can set a default value. */
+ if (opts->x_flag_stack_protect == -1)
+ opts->x_flag_stack_protect = DEFAULT_FLAG_SSP;
+
if (opts->x_optimize == 0)
{
/* Inlining does not work if not optimizing,
--- a/gcc/doc/install.texi 2015-06-03 18:38:10.000000000 +0200
+++ bgcc/doc/install.texi 2015-07-03 22:18:41.498592691 +0200
@@ -1642,6 +1642,9 @@ Using the GNU Compiler Collection (GCC)}
See ``RS/6000 and PowerPC Options'' in the main manual
@end ifhtml
+@item --enable-default-ssp
+Turn on @option{-fstack-protector-strong} by default.
+
@item --enable-cld
This option enables @option{-mcld} by default for 32-bit x86 targets.
@ifnothtml
--- a/gcc/testsuite/lib/target-supports.exp 2015-05-21 15:30:24.000000000 +0200
+++ b/gcc/testsuite/lib/target-supports.exp 2015-07-03 21:55:53.748551933 +0200
@@ -1124,6 +1124,17 @@ proc check_effective_target_pie_enabled
}]
}
+# Return 1 if the target generates -fstack-protector by default.
+
+proc check_effective_target_fstack_protector_enabled {} {
+ return [ check_no_compiler_messages fstack_protector_enabled assembly {
+ #if !defined(__SSP__) && !defined(__SSP_ALL__) && \
+ !defined(__SSP_STRONG__) && !defined(__SSP_EXPICIT__)
+ #error unsupported
+ #endif
+ }]
+}
+
# Return 1 if the target does not use a status wrapper.
proc check_effective_target_unwrapped { } {
--- a/gcc/testsuite/gcc.target/i386/ssp-default.c 2015-02-24 22:14:09.930176831 +0100
+++ b/gcc/testsuite/gcc.target/i386/ssp-default.c 2015-07-04 13:45:43.930250213 +0200
@@ -0,0 +1,22 @@
+/* { dg-do run { target native } } */
+/* { dg-require-effective-target fstack_protector_enabled } */
+
+#include <stdlib.h>
+
+void
+__stack_chk_fail (void)
+{
+ exit (0); /* pass */
+}
+
+int main ()
+{
+ int i;
+ char foo[255];
+
+ /* smash stack */
+ for (i = 0; i <= 400; i++)
+ foo[i] = 42;
+
+ return 1; /* fail */
+}
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PING] Re: [PATCH] New configure option to default enable Smart Stack Protection
2015-07-13 13:21 ` [PING] " Magnus Granberg
@ 2015-07-20 14:47 ` Magnus Granberg
2015-07-28 19:00 ` Magnus Granberg
2015-08-19 22:11 ` Jeff Law
1 sibling, 1 reply; 6+ messages in thread
From: Magnus Granberg @ 2015-07-20 14:47 UTC (permalink / raw)
To: gcc-patches
måndag 13 juli 2015 15.20.40 skrev Magnus Granberg:
> söndag 05 juli 2015 23.59.32 skrev Magnus Granberg:
> > Changlogs
> > /gcc
> > 2015-07-05 Magnus Granberg <zorry@gentoo.org>
> >
> > * common.opt (fstack-protector): Initialize to -1.
> > (fstack-protector-all): Likewise.
> > (fstack-protector-strong): Likewise.
> > (fstack-protector-explicit): Likewise.
> > * configure.ac: Add --enable-default-ssp.
> > * defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
> > * opts.c (finish_options): Update opts->x_flag_stack_protect if it
> >
> > is -1. * doc/install.texi: Document --enable-default-ssp.
> >
> > * config.in: Regenerated.
> > * configure: Likewise.
> >
> > /testsuite
> > 2015-07-05 Magnus Granberg <zorry@gentoo.org>
> >
> > * lib/target-supports.exp
> > (check_effective_target_fstack_protector_enabled): New test.
> > * gcc.target/i386/ssp-default.c: New test.
>
> Patch updated and tested on x86_64-unknown-linux-gnu (Gentoo)
>
> Changlogs
> /gcc
> 2015-07-05 Magnus Granberg <zorry@gentoo.org>
>
> * common.opt (fstack-protector): Initialize to -1.
> (fstack-protector-all): Likewise.
> (fstack-protector-strong): Likewise.
> (fstack-protector-explicit): Likewise.
> * configure.ac: Add --enable-default-ssp.
> * defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
> * opts.c (finish_options): Update opts->x_flag_stack_protect if it
> is -1. * doc/install.texi: Document --enable-default-ssp.
> * config.in: Regenerated.
> * configure: Likewise.
>
> /testsuite
> 2015-07-13 Magnus Granberg <zorry@gentoo.org>
>
> * lib/target-supports.exp
> (check_effective_target_fstack_protector_enabled): New test.
> * gcc.target/i386/ssp-default.c: New test.
> ---
Ping
Can this be commited to trunk?
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PING] Re: [PATCH] New configure option to default enable Smart Stack Protection
2015-07-20 14:47 ` Magnus Granberg
@ 2015-07-28 19:00 ` Magnus Granberg
0 siblings, 0 replies; 6+ messages in thread
From: Magnus Granberg @ 2015-07-28 19:00 UTC (permalink / raw)
To: gcc-patches
måndag 20 juli 2015 16.32.01 skrev Magnus Granberg:
> > Patch updated and tested on x86_64-unknown-linux-gnu (Gentoo)
> >
> > Changlogs
> > /gcc
> > 2015-07-05 Magnus Granberg <zorry@gentoo.org>
> >
> > * common.opt (fstack-protector): Initialize to -1.
> > (fstack-protector-all): Likewise.
> > (fstack-protector-strong): Likewise.
> > (fstack-protector-explicit): Likewise.
> > * configure.ac: Add --enable-default-ssp.
> > * defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
> > * opts.c (finish_options): Update opts->x_flag_stack_protect if it
> >
> > is -1. * doc/install.texi: Document --enable-default-ssp.
> >
> > * config.in: Regenerated.
> > * configure: Likewise.
> >
> > /testsuite
> > 2015-07-13 Magnus Granberg <zorry@gentoo.org>
> >
> > * lib/target-supports.exp
> > (check_effective_target_fstack_protector_enabled): New test.
> > * gcc.target/i386/ssp-default.c: New test.
> >
> > ---
>
> Ping
> Can this be commited to trunk?
Pinging ones more time on this patch.
/Magnus G.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PING] Re: [PATCH] New configure option to default enable Smart Stack Protection
2015-07-13 13:21 ` [PING] " Magnus Granberg
2015-07-20 14:47 ` Magnus Granberg
@ 2015-08-19 22:11 ` Jeff Law
1 sibling, 0 replies; 6+ messages in thread
From: Jeff Law @ 2015-08-19 22:11 UTC (permalink / raw)
To: Magnus Granberg, gcc-patches
On 07/13/2015 07:20 AM, Magnus Granberg wrote:
> Patch updated and tested on x86_64-unknown-linux-gnu (Gentoo)
>
> Changlogs
> /gcc
> 2015-07-05 Magnus Granberg<zorry@gentoo.org>
>
> * common.opt (fstack-protector): Initialize to -1.
> (fstack-protector-all): Likewise.
> (fstack-protector-strong): Likewise.
> (fstack-protector-explicit): Likewise.
> * configure.ac: Add --enable-default-ssp.
> * defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
> * opts.c (finish_options): Update opts->x_flag_stack_protect if it is -1.
> * doc/install.texi: Document --enable-default-ssp.
> * config.in: Regenerated.
> * configure: Likewise.
>
> /testsuite
> 2015-07-13 Magnus Granberg<zorry@gentoo.org>
>
> * lib/target-supports.exp
> (check_effective_target_fstack_protector_enabled): New test.
> * gcc.target/i386/ssp-default.c: New test.
Sorry for the delay, it seems nobody picked this up.
It's a nit, but the feature is "Stack Smashing Protection", not "Smart
Stack Protection". I'll fix that nit and install your change.
Thanks!
Jeff
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-08-19 22:07 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-02 23:02 [PATCH] New configure option to default enable Smart Stack Protection Magnus Granberg
2015-07-05 22:22 ` Magnus Granberg
2015-07-13 13:21 ` [PING] " Magnus Granberg
2015-07-20 14:47 ` Magnus Granberg
2015-07-28 19:00 ` Magnus Granberg
2015-08-19 22:11 ` Jeff Law
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).