Re: Bug: linking shared libraries on Cygwin results in undefined references to __stack_chck_guard for code compiled with -fstack-protector

Richard PALO <[email protected]>
Newsgroups gmane.comp.gnu.libtool.patches,gmane.comp.gnu.libtool.bugs
Message-ID <[email protected]>
Le 02/06/10 05:24, Yaakov (Cygwin/X) a écrit :
> On Sat, 15 May 2010 09:07:49 +0200
> Bart Van Assche <[email protected]> wrote:
>> This behavior has been observed with libtool version 2.2.6.
>
> Bug confirmed.  When code is compiled with -fstack-protector{,-all},
> GCC "emits extra code to check for buffer overflows, such as stack
> smashing attacks".  This extra code uses symbols from libssp, and
> therefore (at least) Cygwin's GCC specs contain:
>
> *link_ssp:
> %{fstack-protector|fstack-protector-all:-lssp_nonshared -lssp}
>
> Therefore, when libtool fails to pass -fstack-protector{,-all} at link
> stage, the link fails.
>
> Patch attached.  (Yes, I have a copyright assignment on file.)
>
>
> Yaakov
> Cygwin/X
>

I've done some limited testing of this patch on a SunOS distro with 
pkgsrc, and it certainly helps a number of cases since it is gcc that 
generates the necessary '-lssp_nonshared -lssp' libs for linking (at 
least in absence of '-nostdlib').

Please include in the upcoming version.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.