From 30950a5fd2346c43ba4fc59c16f122cfb59f9629 Mon Sep 17 00:00:00 2001 From: "Ryan S. Arnold" Date: Sun, 19 Dec 2010 22:49:01 -0500 Subject: Make PowerPC64 default to nonexecutable stack --- sysdeps/powerpc/stackinfo.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'sysdeps/powerpc/stackinfo.h') diff --git a/sysdeps/powerpc/stackinfo.h b/sysdeps/powerpc/stackinfo.h index 839758a4e3..aac86a48a2 100644 --- a/sysdeps/powerpc/stackinfo.h +++ b/sysdeps/powerpc/stackinfo.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2010 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -22,7 +22,18 @@ #ifndef _STACKINFO_H #define _STACKINFO_H 1 +#include + /* On PPC the stack grows down. */ #define _STACK_GROWS_DOWN 1 +#if __WORDSIZE == 64 +/* PPC64 doesn't need an executable stack and doesn't need PT_GNU_STACK + * to make the stack nonexecutable. */ +# define DEFAULT_STACK_PERMS (PF_R|PF_W) +#else +/* PF_X can be overridden if PT_GNU_STACK is present but is presumed absent. */ +# define DEFAULT_STACK_PERMS (PF_R|PF_W|PF_X) +#endif + #endif /* stackinfo.h */ -- cgit 1.4.1