On 1/29/19 11:53 AM, Philippe Mathieu-Daudé wrote:
> Since OpenBSD 6.0 [1], W^X is enforced by default [2].
> TCG requires WX access. Disable W^X if it is available.
> This fixes:
> 

>  configure | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/configure b/configure
> index b18281c61f..799ec2013b 100755
> --- a/configure
> +++ b/configure
> @@ -5795,6 +5795,17 @@ if test "$mingw32" = "yes" ; then
>      done
>  fi
>  
> +# Disable OpenBSD W^X if available
> +if test "$tcg" = "yes" -a "$targetos" = "OpenBSD"; then

test ... -a ...

is not portable (POSIX permits non-XSI systems to omit support for these
operators, but even where they are supported, there are some inherently
ambiguous inputs where you CANNOT predict whether the shell will parse
-a as a binary operator or as an argument to some other operator).
Instead, you should ALWAYS break dual tests into:

test ... && test ...

instead.  (Same for '-o' vs '|| test')

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to