1#!/bin/sh
2# Test --preload argument ld.so.
3# Copyright (C) 2019-2022 Free Software Foundation, Inc.
4# This file is part of the GNU C Library.
5#
6# The GNU C Library is free software; you can redistribute it and/or
7# modify it under the terms of the GNU Lesser General Public
8# License as published by the Free Software Foundation; either
9# version 2.1 of the License, or (at your option) any later version.
10#
11# The GNU C Library is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14# Lesser General Public License for more details.
15#
16# You should have received a copy of the GNU Lesser General Public
17# License along with the GNU C Library; if not, see
18# <https://www.gnu.org/licenses/>.
19
20set -e
21
22rtld=$1
23test_program=$2
24test_wrapper_env=$3
25run_program_env=$4
26library_path=$5
27preload=$6
28
29echo "# [${test_wrapper_env}] [${run_program_env}] [$rtld] [--library-path]" \
30     "[$library_path] [--preload] [$preload] [$test_program]"
31${test_wrapper_env} \
32${run_program_env} \
33$rtld --library-path "$library_path" \
34  --preload "$preload" $test_program 2>&1 && rc=0 || rc=$?
35echo "# exit status $rc"
36
37exit $rc
38