aboutsummaryrefslogtreecommitdiff
path: root/elf/ldd.sh.in
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-07-27 07:29:13 +0000
committerRoland McGrath <roland@gnu.org>1996-07-27 07:29:13 +0000
commit61965e9b1769700f8f5c32b2e4e20085e76deb09 (patch)
tree8b2ff2150f4d4f8516b9fb8c6d6618235ef0317e /elf/ldd.sh.in
parentfc933e284e5559f4630cabaa5deb28709b761359 (diff)
downloadglibc-61965e9b1769700f8f5c32b2e4e20085e76deb09.tar
glibc-61965e9b1769700f8f5c32b2e4e20085e76deb09.tar.gz
glibc-61965e9b1769700f8f5c32b2e4e20085e76deb09.tar.bz2
glibc-61965e9b1769700f8f5c32b2e4e20085e76deb09.zip
Sat Jul 27 02:58:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>cvs/libc-960727
* elf/rtld.c (dl_main): Take new option --verify when run directly. In verify mode, exit with status zero iff the argument object's PT_INTERP matches argv[0]. * elf/ldd.sh.in: Use ${RTLD} --verify and only run the program if it exits with zero status. This makes `ldd' secure again. Fri Jul 26 22:49:58 1996 Ulrich Drepper <drepper@cygnus.com> * elf/rtld.c (dl_main): Implement LD_TRACE_LOADED_OBJECTS environment variable handling. This makes the dynamic linker only print loaded libraries and quit. * elf/ldd.sh.in: Don't use `rtld --list' but instead LD_TRACE_LOADED_OBJECTS environment variable to print needed objects. Sat Jul 27 02:03:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * db/makedb.c (main): Print version on stdout, not stderr. Don't exit after printing version until after doing usage for --help. (long_options, main, usage): Rename -l/--lowercase option to -f/--fold-case (-f matches sort). Sat Jul 27 04:32:31 1996 Ulrich Drepper <drepper@cygnus.com> * db/makedb.c: New file. Implement program to create simple <db.h> database from textual input. This will be used for nss_db. Sat Jul 27 01:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * sunrpc/rpc/auth_unix.h: Fix misapplied patches in last changes. * sunrpc/rpc/pmap_clnt.h: Likewise. * sunrpc/rpc/auth.h: Likewise. * sunrpc/rpc/pmap_rmt.h: Likewise. * sunrpc/rpc/rpc_msg.h: Likewise. Sat Jul 27 04:37:34 1996 Ulrich Drepper <drepper@cygnus.com> * string/string.h (strndupa): Change to use return value of `memcpy' for more performance. * string/strndup.c: Likewise. * string/string.h (strdupa): Don't call __builtin_alloca in argument. This might lead to problems. (strndupa): Likewise.
Diffstat (limited to 'elf/ldd.sh.in')
-rw-r--r--elf/ldd.sh.in12
1 files changed, 10 insertions, 2 deletions
diff --git a/elf/ldd.sh.in b/elf/ldd.sh.in
index ed43789cfa..82946fd535 100644
--- a/elf/ldd.sh.in
+++ b/elf/ldd.sh.in
@@ -17,7 +17,11 @@ case $# in
/*) file="$1" ;;
*) file="./$1" ;;
esac
- exec ${RTLD} --list "$file" && exit 1
+ if ${RTLD} --verify "$file"; then
+ LD_TRACE_LOADED_OBJECTS=1 exec "$file" && exit 1
+ else
+ echo ' not a dynamic executable'
+ fi
exit ;;
*)
set -e # Bail out immediately if ${RTLD} loses on any argument.
@@ -27,7 +31,11 @@ case $# in
/*) file="$file" ;;
*) file="./$file" ;;
esac
- ${RTLD} --list "$file"
+ if ${RTLD} --verify "$file"; then
+ LD_TRACE_LOADED_OBJECTS=1 "$file"
+ else
+ echo ' not a dynamic executable'
+ fi
done
esac