diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2014-11-23 20:50:24 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2014-11-23 20:50:24 +0100 |
commit | e0cfa51064489fdff85953bad1e0f3c42e093662 (patch) | |
tree | 37adab9a8b8a92bb2287fae7993e729587ca0584 | |
parent | 34d97d87bb1c08e34d08a9d4be24a3b1d53a4ddb (diff) | |
download | glibc-e0cfa51064489fdff85953bad1e0f3c42e093662.tar.gz glibc-e0cfa51064489fdff85953bad1e0f3c42e093662.tar.xz glibc-e0cfa51064489fdff85953bad1e0f3c42e093662.zip |
hurd: Fix dlopening libraries from static programs
dlopening libraries from a static program would dlopen libc.so, which thus needs its own initialization, done in posixland_init, which was missing initializing RPCs so far. ChangeLog: 2014-11-23 Samuel Thibault <samuel.thibault@ens-lyon.org> * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Call __mach_init in dlopened libc.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/mach/hurd/i386/init-first.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 0279091b49..0bde88ca37 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2014-11-23 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Call + __mach_init in dlopened libc. + 2014-11-22 Mike Frysinger <vapier@gentoo.org> * sysdeps/arm/preconfigure.ac: Delete EABI check. diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c index fc355ed6c3..3bcffd985f 100644 --- a/sysdeps/mach/hurd/i386/init-first.c +++ b/sysdeps/mach/hurd/i386/init-first.c @@ -72,6 +72,11 @@ posixland_init (int argc, char **argv, char **envp) /* Set the FPU control word to the proper default value. */ __setfpucw (__fpu_control); } + else + { + /* Initialize data structures so the additional libc can do RPCs. */ + __mach_init (); + } /* Save the command-line arguments. */ __libc_argc = argc; |