diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | sysdeps/hurd/include/hurd/signal.h | 9 | ||||
-rw-r--r-- | sysdeps/mach/hurd/i386/____longjmp_chk.S | 2 |
3 files changed, 14 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 363ae5bd77..9dd87eebb8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -26,6 +26,10 @@ __swtch_pri, __thread_switch, __evc_wait): Add hidden prototypes. * sysdeps/mach/hurd/localplt.data (siglongjmp, longjmp, __libc_lseek64, _IO_funlockfile): Whitelist PLT references. + * sysdeps/hurd/include/hurd/signal.h (_hurd_self_sigstate): Add hidden + prototype and definition. + * sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk): Use + hidden target for _hurd_self_sigstate. 2018-06-15 Joseph Myers <joseph@codesourcery.com> diff --git a/sysdeps/hurd/include/hurd/signal.h b/sysdeps/hurd/include/hurd/signal.h index 1cb0adaa55..8ceab328c5 100644 --- a/sysdeps/hurd/include/hurd/signal.h +++ b/sysdeps/hurd/include/hurd/signal.h @@ -1,9 +1,18 @@ #ifndef _HURD_SIGNAL_H +extern struct hurd_sigstate *_hurd_self_sigstate (void) __attribute__ ((__const__)); +#ifndef _ISOMAC +libc_hidden_proto (_hurd_self_sigstate) +#endif + #include_next <hurd/signal.h> + #ifndef _ISOMAC libc_hidden_proto (_hurd_exception2signal) libc_hidden_proto (_hurd_intr_rpc_mach_msg) libc_hidden_proto (_hurd_thread_sigstate) libc_hidden_proto (_hurd_raise_signal) #endif +#ifdef _HURD_SIGNAL_H_HIDDEN_DEF +libc_hidden_def (_hurd_self_sigstate) +#endif #endif diff --git a/sysdeps/mach/hurd/i386/____longjmp_chk.S b/sysdeps/mach/hurd/i386/____longjmp_chk.S index 1bde0efc3d..7c3a73adba 100644 --- a/sysdeps/mach/hurd/i386/____longjmp_chk.S +++ b/sysdeps/mach/hurd/i386/____longjmp_chk.S @@ -68,7 +68,7 @@ ENTRY (____longjmp_chk) /* TODO: need locking? */ /* struct hurd_sigstate * _hurd_self_sigstate (void) */ - call _hurd_self_sigstate + call HIDDEN_JUMPTARGET(_hurd_self_sigstate) /* TODO: %eax and %eax->sigaltstack are always valid? */ testl $SS_ONSTACK, (HURD_SIGSTATE__SIGALTSTACK__OFFSET + SIGALTSTACK__SS_FLAGS__OFFSET)(%eax) |