summaryrefslogtreecommitdiff
path: root/gnu/lib/libssp
Commit message (Collapse)AuthorAgeFilesLines
* Second attempt at eliminating .text relocations in shared librariesAlexander Kabaev2009-07-141-1/+1
| | | | | | | | | | | | | | | | | compiled with stack protector. Use libssp_nonshared library to pull __stack_chk_fail_local symbol into each library that needs it instead of pulling it from libc. GCC generates local calls to this function which result in absolute relocations put into position-independent code segment, making dynamic loader do extra work every time given shared library is being relocated and making affected text pages non-shareable. Reviewed by: kib Approved by: re (kib) Notes: svn path=/head/; revision=195697
* Back out previous revision until better tested fix is ready.Alexander Kabaev2009-06-291-1/+1
| | | | | | | Approved by: re (impliciti, by approving previos check-in) Notes: svn path=/head/; revision=195152
* Eliminate .text relocations in shared libraries compiled with stack protector.Alexander Kabaev2009-06-281-1/+1
| | | | | | | | | | | | | | | Use libssp_nonshared library to pull __stack_chk_fail_local symbol into each library that needs it instead of pulling it from libc. GCC generates local calls to this function which result in absolute relocations put into position-independent code segment, making dynamic loader do extra work everys time given shared library is being relocated and making affected text pages non-shareable. Reviewed by: kib Approved by: re (kensmith) Notes: svn path=/head/; revision=195151
* Restore the install location of libssp.so.0.Ruslan Ermilov2009-02-241-1/+2
| | | | | | | Noticed by: tegge Notes: svn path=/head/; revision=188995
* Fix build when WITH_SSP is set explicitly.Ruslan Ermilov2009-02-211-1/+3
| | | | | | | Submitted by: Jeremie Le Hen Notes: svn path=/head/; revision=188895
* Enable GCC stack protection (aka Propolice) for userland:Ruslan Ermilov2008-06-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | - It is opt-out for now so as to give it maximum testing, but it may be turned opt-in for stable branches depending on the consensus. You can turn it off with WITHOUT_SSP. - WITHOUT_SSP was previously used to disable the build of GNU libssp. It is harmless to steal the knob as SSP symbols have been provided by libc for a long time, GNU libssp should not have been much used. - SSP is disabled in a few corners such as system bootstrap programs (sys/boot), process bootstrap code (rtld, csu) and SSP symbols themselves. - It should be safe to use -fstack-protector-all to build world, however libc will be automatically downgraded to -fstack-protector because it breaks rtld otherwise. - This option is unavailable on ia64. Enable GCC stack protection (aka Propolice) for kernel: - It is opt-out for now so as to give it maximum testing. - Do not compile your kernel with -fstack-protector-all, it won't work. Submitted by: Jeremie Le Hen <jeremie@le-hen.org> Notes: svn path=/head/; revision=180012
* Don't forget to clean generated ssp.h.Ruslan Ermilov2007-05-221-0/+1
| | | | Notes: svn path=/head/; revision=169862
* Update bmake glue to build GCC 4.2.Alexander Kabaev2007-05-193-0/+138
Also: Switch FreeBSD to use libgcc_s.so.1. Use dl_iterate_phdr to locate shared objects' exception frame info instead of depending on older register_frame_info machinery. This allows us to avoid depending on libgcc_s.so.1 in binaries that do not use exception handling directly. As an additional benefit it breaks circular libc <=> libgcc_s.so.1 dependency too. Build newly added libgomp.so.1 library, the runtime support bits for OpenMP. Build LGPLed libssp library. Our libc provides our own BSD-licensed SSP callbacks implementation, so this library is only built to benefit applications that have hadcoded knowledge of libssp.so and libssp_nonshared.a. When linked in from command line, these libraries override libc implementation. Notes: svn path=/head/; revision=169718