summary refs log tree commit diff
path: root/elf/dl-open.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1996-08-26 10:28:45 +0000
committerUlrich Drepper <drepper@redhat.com>1996-08-26 10:28:45 +0000
commitdcf0671d905200c449f92ead6cf43c184637a0d5 (patch)
tree91dc217311db41e89545d487b991865a6433205e /elf/dl-open.c
parent4884d0f03c5a3b3d2459655e76fa2d0684d389dc (diff)
downloadglibc-dcf0671d905200c449f92ead6cf43c184637a0d5.tar.gz
glibc-dcf0671d905200c449f92ead6cf43c184637a0d5.tar.xz
glibc-dcf0671d905200c449f92ead6cf43c184637a0d5.zip
handle password file locking. cvs/libc-960826
Diffstat (limited to 'elf/dl-open.c')
-rw-r--r--elf/dl-open.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 40b5224725..76f6329762 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -27,6 +27,11 @@ extern void _dl_start (void); weak_extern (_dl_start)
 
 extern int __libc_multiple_libcs;	/* Defined in init-first.c.  */
 
+extern int __libc_argc;
+extern char **__libc_argv;
+extern char **__libc_envp;
+
+
 size_t _dl_global_scope_alloc;
 
 struct link_map *
@@ -136,7 +141,8 @@ _dl_open (const char *file, int mode)
 
   /* Run the initializer functions of new objects.  */
   while (init = _dl_init_next (new))
-    (*(void (*) (void)) init) ();
+    (*(void (*) (int, char **, char **)) init) (__libc_argc, __libc_argv,
+						__libc_envp);
 
   if (dl_start_ptr == NULL)
     /* We must be the static _dl_open in libc.a because ld.so.1 is not