summary refs log tree commit diff
path: root/sysdeps/mach/hurd/dl-sysdep.c
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2019-12-01 14:58:25 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2019-12-01 16:17:22 +0000
commitd5ed9ba29a3c818b3433a1784862494968abda45 (patch)
treed7c497139f26956759e93df6bbd6a25601b8c347 /sysdeps/mach/hurd/dl-sysdep.c
parent26e14efdb88e512b36fe4a8310dc95da521477e3 (diff)
downloadglibc-d5ed9ba29a3c818b3433a1784862494968abda45.tar.gz
glibc-d5ed9ba29a3c818b3433a1784862494968abda45.tar.xz
glibc-d5ed9ba29a3c818b3433a1784862494968abda45.zip
hurd: Fix ld.so link
Since a2e8aa0d9ea6 ("Block signals during the initial part of dlopen") dl_open
uses sigprocmask, so we need a stub implementation.
Diffstat (limited to 'sysdeps/mach/hurd/dl-sysdep.c')
-rw-r--r--sysdeps/mach/hurd/dl-sysdep.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c
index 719d603f44..fcbbe6a43a 100644
--- a/sysdeps/mach/hurd/dl-sysdep.c
+++ b/sysdeps/mach/hurd/dl-sysdep.c
@@ -264,13 +264,14 @@ _dl_sysdep_start_cleanup (void)
   __mach_port_deallocate (__mach_task_self (), __mach_task_self_);
 }
 
-/* Minimal open/close/mmap implementation sufficient for initial loading of
+/* Minimal open/close/mmap/etc. implementation sufficient for initial loading of
    shared libraries.  These are weak definitions so that when the
    dynamic linker re-relocates itself to be user-visible (for -ldl),
    it will get the user's definition (i.e. usually libc's).
 
-   They also need to be set in the ld section of sysdeps/mach/hurd/Versions, to
-   be overridable, and in libc.abilist and ld.abilist to be checked. */
+   They also need to be set in the libc and ld section of
+   sysdeps/mach/hurd/Versions, to be overridable, and in libc.abilist and
+   ld.abilist to be checked. */
 
 /* This macro checks that the function does not get renamed to be hidden: we do
    need these to be overridable by libc's.  */
@@ -674,6 +675,14 @@ strong_alias (abort, __GI___chk_fail)
 strong_alias (abort, __GI___fortify_fail)
 strong_alias (abort, __GI___assert_fail)
 strong_alias (abort, __GI___assert_perror_fail)
+
+check_no_hidden(__sigprocmask);
+int weak_function
+__sigprocmask (int how, const sigset_t *set, sigset_t *oset)
+{
+  /* We do not have signals yet at this stage.  */
+  return 0;
+}
 
 /* This function is called by interruptible RPC stubs.  For initial
    dynamic linking, just use the normal mach_msg.  Since this defn is