On Sun, Aug 13, 2006 at 09:54:14AM +1000, Paul Mackerras wrote: > To get the full benefit of -msecure-plt, every object file in your > executable has to be compiled with it
Yes. In particular, glibc startup files need to be compiled with -msecure-plt. If ld links any object file that uses the old scheme requiring an executable .got into the executable, then the old layout is forced. >, and I think every shared > library the program uses has to be compiled with it too. No, this isn't necessary. > On a system > where everything has been compiled with -msecure-plt, I believe the > heap and stack will automatically be made non-executable. Exec stack is a separate issue from the plt/got layout. You need a kernel that sets non-exec stack by default and respects PT_GNU_STACK program header. -- Alan Modra IBM OzLabs - Linux Technology Centre -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]