This is the mail archive of the
mailing list for the glibc project.
Re: RFC: Shadow Stack support in glibc
On Fri, Jun 9, 2017 at 4:21 AM, Szabolcs Nagy <email@example.com> wrote:
> On 09/06/17 12:15, Szabolcs Nagy wrote:
>> On 09/06/17 12:13, H.J. Lu wrote:
>>> On Fri, Jun 9, 2017 at 2:05 AM, Szabolcs Nagy <firstname.lastname@example.org> wrote:
>>>> fixing setjmp/longjmp is non-trivial since jmpbuf size is abi,
>>>> it may be possible to do without saving ssp into jmpbuf though.
>>> Shadow stack is enabled at run-time only if all sources are compiled
>>> with shadow stack enabled compiler against shadow stack enabled
>>> glibc. setjmp/longjmp are implemented with IFUNC, which uses
>>> the old setjmp/longjmp if shadow stack is off and uses the new
>>> setjmp/longjmp if shadow stack is on.
>> that is not enough.
>> jmpbuf may be used in user code independently of setjmp/longjmp.
> oh wait, are you saying shadow stack is a new abi
> and all libraries on the system need to be compiled
> for that abi?
Yes, 99% of codes just need to recompile. If context functions
are used or jmpbuf is used independently of setjmp/longjmp,
enabling is needed.