diff options
author | David Newall <glibc@davidnewall.com> | 2019-02-04 13:35:11 +0100 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2019-02-04 13:35:12 +0100 |
commit | 8692ebdb1259be60c545fa509d4852b26703777e (patch) | |
tree | 02739e9bf9f8e7a888294d18c532e0b19b880126 /elf/tst-rtld-preload.sh | |
parent | 5e10136b3ce5226bb6d55f5f14f74e65218750be (diff) | |
download | glibc-8692ebdb1259be60c545fa509d4852b26703777e.tar.gz glibc-8692ebdb1259be60c545fa509d4852b26703777e.tar.xz glibc-8692ebdb1259be60c545fa509d4852b26703777e.zip |
elf: Implement --preload option for the dynamic linker
Diffstat (limited to 'elf/tst-rtld-preload.sh')
-rwxr-xr-x | elf/tst-rtld-preload.sh | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/elf/tst-rtld-preload.sh b/elf/tst-rtld-preload.sh new file mode 100755 index 0000000000..f0c0ca11ba --- /dev/null +++ b/elf/tst-rtld-preload.sh @@ -0,0 +1,38 @@ +#!/bin/sh +# Test --preload argument ld.so. +# Copyright (C) 2019 Free Software Foundation, Inc. +# This file is part of the GNU C Library. +# +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <http://www.gnu.org/licenses/>. + +set -e + +rtld=$1 +test_program=$2 +test_wrapper=$3 +test_wrapper_env=$4 +run_program_env=$5 +library_path=$6 +preload=$7 + +echo "# [${test_wrapper}] [$rtld] [--library-path] [$library_path]" \ + "[--preload] [$preload] [$test_program]" +${test_wrapper_env} \ +${run_program_env} \ +${test_wrapper} $rtld --library-path "$library_path" \ + --preload "$preload" $test_program 2>&1 && rc=0 || rc=$? +echo "# exit status $rc" + +exit $rc |