CVSROOT:        /cvs
Module name:    src
Changes by:     guent...@cvs.openbsd.org        2014/11/03 10:50:56

Modified files:
        libexec/ld.so  : loader.c 
        libexec/ld.so/alpha: archdep.h 
        libexec/ld.so/powerpc: archdep.h 
        libexec/ld.so/sparc: archdep.h 
        libexec/ld.so/sparc64: archdep.h 

Log message:
Eliminate RTLD_PROTECT_PLT: ld.so is built with -Bsymbolic so the
PLT is empty/unused.  On at least macppc and sparc64, ld.so's attempt
to mprotect its PLT could instead hit its own allocated data and
cause a segfault shortly there after.

While here, take a shot at preventing the same issue with the GOT
by checking for __got_start != __got_end.

reproduction *with ktracing* by afresh1@ provided the key data
ok miod@ deraadt@

Reply via email to