[opensuse-packaging] Need help with rpmlint error
Hi, I've come across an rpmlint error which I don't understand :- snd.x86_64: W: executable-stack /usr/bin/snd The binary declares the stack as executable. Executable stack is usually an error as it is only needed if the code contains GCC trampolines or similar constructs which uses code on the stack. One common source for needlessly executable stack cases are object files built from assembler files which don't define a proper .note.GNU-stack section. This is from multimedia:apps snd, I've just updated to the latest version, the old one was failing in factory build. Thanks for any help Dave P -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
At Mon, 05 Apr 2010 10:41:15 +0200, Dave Plater wrote:
Hi, I've come across an rpmlint error which I don't understand :- snd.x86_64: W: executable-stack /usr/bin/snd The binary declares the stack as executable. Executable stack is usually an error as it is only needed if the code contains GCC trampolines or similar constructs which uses code on the stack. One common source for needlessly executable stack cases are object files built from assembler files which don't define a proper .note.GNU-stack section.
This is from multimedia:apps snd, I've just updated to the latest version, the old one was failing in factory build.
Usually this is a coding problem. This is seen when the program uses an exec code on the stack, such as function-in-function. And, indeed, such a program won't run properly on systems with exec-stack disabling, likely abort with SIGBUS or such. The only proper way is to fix the code. Takashi -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Tue, Apr 06, 2010 at 08:27:44AM +0200, Takashi Iwai wrote:
At Mon, 05 Apr 2010 10:41:15 +0200, Dave Plater wrote:
Hi, I've come across an rpmlint error which I don't understand :- snd.x86_64: W: executable-stack /usr/bin/snd The binary declares the stack as executable. Executable stack is usually an error as it is only needed if the code contains GCC trampolines or similar constructs which uses code on the stack. One common source for needlessly executable stack cases are object files built from assembler files which don't define a proper .note.GNU-stack section.
This is from multimedia:apps snd, I've just updated to the latest version, the old one was failing in factory build.
Usually this is a coding problem. This is seen when the program uses an exec code on the stack, such as function-in-function. And, indeed, such a program won't run properly on systems with exec-stack disabling, likely abort with SIGBUS or such. The only proper way is to fix the code.
I think this executable stack warning might come from -lgsl (so from package "gsl"), which also has no executable stack. At least all .o files have a .note.GNU-stack as required. Ciao, Marcus -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On 04/06/2010 04:15 PM, Marcus Meissner wrote:
On Tue, Apr 06, 2010 at 08:27:44AM +0200, Takashi Iwai wrote:
At Mon, 05 Apr 2010 10:41:15 +0200, Dave Plater wrote:
Hi, I've come across an rpmlint error which I don't understand :- snd.x86_64: W: executable-stack /usr/bin/snd The binary declares the stack as executable. Executable stack is usually an error as it is only needed if the code contains GCC trampolines or similar constructs which uses code on the stack. One common source for needlessly executable stack cases are object files built from assembler files which don't define a proper .note.GNU-stack section.
This is from multimedia:apps snd, I've just updated to the latest version, the old one was failing in factory build.
Usually this is a coding problem. This is seen when the program uses an exec code on the stack, such as function-in-function. And, indeed, such a program won't run properly on systems with exec-stack disabling, likely abort with SIGBUS or such. The only proper way is to fix the code.
I think this executable stack warning might come from -lgsl (so from package "gsl"), which also has no executable stack. At least all .o files have a .note.GNU-stack as required.
Ciao, Marcus
After googling executable stack, I understand it as a security risk and I've found a possible fix :- LDFLAGS="$LDFLAGS -Wl,-z -Wl,noexecstack" which I'm trying out. What are the possible negative results from using this or could it expose the actual coding error, if there is one? Thanks Dave P -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
participants (4)
-
Dave Plater
-
Dave Plater
-
Marcus Meissner
-
Takashi Iwai