GCC 4.4.2 SSP and uClibc

Kevin Day thekevinday at gmail.com
Wed Nov 25 19:45:16 PST 2009


I am trying to figure out where the problem I have is, if it is some
unusual bug as a result of my own deviations, a bug in uClibc and not
glibc, or a bug with GCC.

I am using GCC's libssp for SSP.

There is an old upstream bug report of the same exact problem:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38274

I would get an Illegal Instruction and a core dump with any
appropriate SSP test at:
http://www.linuxfromscratch.org/hlfs/view/unstable/glibc-2.6/chapter06/butterfly-toolchain.html

I ended up identifying that the problem exists somewhere with the exit
process after a stack smash happens and is handled.
I experimentally decided to take the ssp exit code directly from
uClibc-0.9.28.3.

Replacing the exit code and exiting with SIGKILL, the program now
reports the Stack Smashing and exits without crashing and core
dumping.
Interestingly, if I used SIGABRT with the uClibc code, the program
would crash and core dump.

My system for the test case is uClibc-0.9.28.3 based with gcc-4.4.2
and binutils-2.20.

I do not remember seeing this problem way back whenever I was using
the book's GCC and Binutils.
The book specifies gcc-4.1.2 and binutils 2.17, so I assume this
combination properly aborts with crashing?


Has anybody on this list tried gcc-4.4.2 with SSP either under glibc or uClibc?


Does this segfault happen when uClibc's internal ssp is used instead
of the GCC libssp?


-- 
Kevin Day



More information about the hlfs-dev mailing list