qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Enforce stack protector usage
@ 2014-07-02  8:05 mrezanin
  2014-07-02  9:30 ` Markus Armbruster
  2014-07-02  9:35 ` Paolo Bonzini
  0 siblings, 2 replies; 3+ messages in thread
From: mrezanin @ 2014-07-02  8:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: Miroslav Rezanina

From: Miroslav Rezanina <mrezanin@redhat.com>

If --enable-stack-protector is used is used, configure script try to use
--fstack-protector-strong. In case it's not supported, --fstack-protector-all
is enabled. If both protectors are not supported, configure does not use
any protector at all without any notification.

This patch reports error when user requests stack protector to be used and
both protector modes are not supported. Behavior is not changed in case
user do not use any of --enable-stack-protector/--disable-stack-protector.

Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
---
 configure | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/configure b/configure
index 7dd43fd..b880954 100755
--- a/configure
+++ b/configure
@@ -1491,6 +1491,7 @@ done
 
 if test "$stack_protector" != "no" ; then
   gcc_flags="-fstack-protector-strong -fstack-protector-all"
+  sp_on=0
   for flag in $gcc_flags; do
     # We need to check both a compile and a link, since some compiler
     # setups fail only on a .c->.o compile and some only at link time
@@ -1498,9 +1499,15 @@ if test "$stack_protector" != "no" ; then
        compile_prog "-Werror $flag" ""; then
       QEMU_CFLAGS="$QEMU_CFLAGS $flag"
       LIBTOOLFLAGS="$LIBTOOLFLAGS -Wc,$flag"
+      sp_on=1
       break
     fi
   done
+  if test "$stack_protector" == "yes" ; then
+    if test "$sp_on" == "0" ; then
+      error_exit "Stack protector not supported"
+    fi
+  fi
 fi
 
 # Workaround for http://gcc.gnu.org/PR55489.  Happens with -fPIE/-fPIC and
-- 
1.9.3

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] Enforce stack protector usage
  2014-07-02  8:05 [Qemu-devel] [PATCH] Enforce stack protector usage mrezanin
@ 2014-07-02  9:30 ` Markus Armbruster
  2014-07-02  9:35 ` Paolo Bonzini
  1 sibling, 0 replies; 3+ messages in thread
From: Markus Armbruster @ 2014-07-02  9:30 UTC (permalink / raw)
  To: mrezanin; +Cc: qemu-devel

mrezanin@redhat.com writes:

> From: Miroslav Rezanina <mrezanin@redhat.com>
>
> If --enable-stack-protector is used is used, configure script try to use
> --fstack-protector-strong. In case it's not supported, --fstack-protector-all
> is enabled. If both protectors are not supported, configure does not use
> any protector at all without any notification.
>
> This patch reports error when user requests stack protector to be used and
> both protector modes are not supported. Behavior is not changed in case
> user do not use any of --enable-stack-protector/--disable-stack-protector.
>
> Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>

Reviewed-by: Markus Armbruster <armbru@redhat.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] Enforce stack protector usage
  2014-07-02  8:05 [Qemu-devel] [PATCH] Enforce stack protector usage mrezanin
  2014-07-02  9:30 ` Markus Armbruster
@ 2014-07-02  9:35 ` Paolo Bonzini
  1 sibling, 0 replies; 3+ messages in thread
From: Paolo Bonzini @ 2014-07-02  9:35 UTC (permalink / raw)
  To: mrezanin, qemu-devel

Il 02/07/2014 10:05, mrezanin@redhat.com ha scritto:
> From: Miroslav Rezanina <mrezanin@redhat.com>
>
> If --enable-stack-protector is used is used, configure script try to use
> --fstack-protector-strong. In case it's not supported, --fstack-protector-all
> is enabled. If both protectors are not supported, configure does not use
> any protector at all without any notification.
>
> This patch reports error when user requests stack protector to be used and
> both protector modes are not supported. Behavior is not changed in case
> user do not use any of --enable-stack-protector/--disable-stack-protector.
>
> Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
> ---
>  configure | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/configure b/configure
> index 7dd43fd..b880954 100755
> --- a/configure
> +++ b/configure
> @@ -1491,6 +1491,7 @@ done
>
>  if test "$stack_protector" != "no" ; then
>    gcc_flags="-fstack-protector-strong -fstack-protector-all"
> +  sp_on=0
>    for flag in $gcc_flags; do
>      # We need to check both a compile and a link, since some compiler
>      # setups fail only on a .c->.o compile and some only at link time
> @@ -1498,9 +1499,15 @@ if test "$stack_protector" != "no" ; then
>         compile_prog "-Werror $flag" ""; then
>        QEMU_CFLAGS="$QEMU_CFLAGS $flag"
>        LIBTOOLFLAGS="$LIBTOOLFLAGS -Wc,$flag"
> +      sp_on=1
>        break
>      fi
>    done
> +  if test "$stack_protector" == "yes" ; then
> +    if test "$sp_on" == "0" ; then
> +      error_exit "Stack protector not supported"
> +    fi
> +  fi
>  fi
>
>  # Workaround for http://gcc.gnu.org/PR55489.  Happens with -fPIE/-fPIC and
>

Thanks, queued for -rc1.

Paolo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-07-02  9:35 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-02  8:05 [Qemu-devel] [PATCH] Enforce stack protector usage mrezanin
2014-07-02  9:30 ` Markus Armbruster
2014-07-02  9:35 ` Paolo Bonzini

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 NNTP newsgroup(s).