]> git.ipfire.org Git - thirdparty/glibc.git/blob - stdlib/tst-setcontext3.sh
Prefer https to http for gnu.org and fsf.org URLs
[thirdparty/glibc.git] / stdlib / tst-setcontext3.sh
1 #!/bin/sh
2 # Bug 18125: Test the exit functionality of setcontext().
3 # Copyright (C) 2015-2019 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
20 set -e
21
22 common_objpfx=$1
23 test_program_prefix_before_env=$2
24 run_program_env=$3
25 test_program_prefix_after_env=$4
26 objpfx=$5
27
28 test_pre="${test_program_prefix_before_env} ${run_program_env}"
29 test="${test_program_prefix_after_env} ${objpfx}tst-setcontext3"
30 out=${objpfx}tst-setcontext3.out
31
32 cleanup() {
33 rm -f $tempfile
34 }
35 trap cleanup 0
36
37 tempfile=$(mktemp "${objpfx}tst-setcontext3.XXXXXXXXXX")
38
39 # We want to run the test program and see if secontext called
40 # exit() and wrote out the test file we specified. If the
41 # test exits with a non-zero status this will fail because we
42 # are using `set -e`.
43 $test_pre $test "$tempfile"
44
45 # Look for resulting file.
46 if [ -e "$tempfile" ]; then
47 echo "PASS: tst-setcontext3 an exit() and created $tempfile"
48 exit 0
49 else
50 echo "FAIL: tst-setcontext3 did not create $tempfile"
51 exit 1
52 fi