diff options
author | Ulrich Drepper <drepper@redhat.com> | 2002-11-19 19:30:55 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2002-11-19 19:30:55 +0000 |
commit | 3c857306f53bad2003c418ac79303bd65f626424 (patch) | |
tree | 953ad66e3d58df8b37bc837b7beb152b6a6392a7 | |
parent | 00a9b51d9a6838499541334bd269303a3e2c0174 (diff) | |
download | glibc-3c857306f53bad2003c418ac79303bd65f626424.zip glibc-3c857306f53bad2003c418ac79303bd65f626424.tar.gz glibc-3c857306f53bad2003c418ac79303bd65f626424.tar.bz2 |
Update.
2002-11-19 Ulrich Drepper <drepper@redhat.com>
* include/dlfcn.h: __libc_dlopen is now a macro calling
__libc_dlopen_mode with the extra parameter RTLD_LAZY.
(__libc_dlopen_mode): New prototype.
* elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen. Add
new parameter. Store new parameter in mode field of structure passed
to do_dlopen.
(struct do_dlopen_args): Add new field mode.
(do_dlopen): Pass mode from parameter structure to _dl_open.
* sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
Define mcontext_t as a sigcontext.
* manual/crypt.texi (Cryptographic Functions): Mention that
the MD5 one-way algorithm is compatible with BSD's.
-rw-r--r-- | ChangeLog | 19 | ||||
-rw-r--r-- | elf/dl-libc.c | 19 |
2 files changed, 26 insertions, 12 deletions
@@ -1,3 +1,14 @@ +2002-11-19 Ulrich Drepper <drepper@redhat.com> + + * include/dlfcn.h: __libc_dlopen is now a macro calling + __libc_dlopen_mode with the extra parameter RTLD_LAZY. + (__libc_dlopen_mode): New prototype. + * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen. Add + new parameter. Store new parameter in mode field of structure passed + to do_dlopen. + (struct do_dlopen_args): Add new field mode. + (do_dlopen): Pass mode from parameter structure to _dl_open. + 2002-11-11 Randolf Chung <tausq@debian.org> * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64] @@ -16,8 +27,8 @@ from gcc-3.0 era for backwards compatibility. * sysdeps/unix/sysv/linux/configure: Regenerate. - * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h: - Define mcontext_t as a sigcontext. + * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h: + Define mcontext_t as a sigcontext. 2002-11-18 Roland McGrath <roland@redhat.com> @@ -139,8 +150,8 @@ 2002-11-11 Paul Eggert <eggert@twinsun.com> - * manual/crypt.texi (Cryptographic Functions): Mention that - the MD5 one-way algorithm is compatible with BSD's. + * manual/crypt.texi (Cryptographic Functions): Mention that + the MD5 one-way algorithm is compatible with BSD's. 2002-11-11 Isamu Hasegawa <isamu@yamato.ibm.com> diff --git a/elf/dl-libc.c b/elf/dl-libc.c index d69e49f..1810b13 100644 --- a/elf/dl-libc.c +++ b/elf/dl-libc.c @@ -54,6 +54,8 @@ struct do_dlopen_args { /* Argument to do_dlopen. */ const char *name; + /* Opening mode. */ + int mode; /* Return from do_dlopen. */ struct link_map *map; @@ -75,7 +77,7 @@ do_dlopen (void *ptr) { struct do_dlopen_args *args = (struct do_dlopen_args *) ptr; /* Open and relocate the shared object. */ - args->map = _dl_open (args->name, RTLD_LAZY, NULL); + args->map = _dl_open (args->name, args->mode, NULL); } static void @@ -97,29 +99,30 @@ do_dlclose (void *ptr) /* ... and these functions call dlerror_run. */ void * -__libc_dlopen (const char *__name) +__libc_dlopen_mode (const char *name, int mode) { struct do_dlopen_args args; - args.name = __name; + args.name = name; + args.mode = mode; return (dlerror_run (do_dlopen, &args) ? NULL : (void *) args.map); } void * -__libc_dlsym (void *__map, const char *__name) +__libc_dlsym (void *map, const char *name) { struct do_dlsym_args args; - args.map = __map; - args.name = __name; + args.map = map; + args.name = name; return (dlerror_run (do_dlsym, &args) ? NULL : (void *) (DL_SYMBOL_ADDRESS (args.loadbase, args.ref))); } int -__libc_dlclose (void *__map) +__libc_dlclose (void *map) { - return dlerror_run (do_dlclose, __map); + return dlerror_run (do_dlclose, map); } |