]>
Commit | Line | Data |
---|---|---|
48d0341c | 1 | #!/bin/sh |
c92d40c0 | 2 | # Bug 18125: Test the exit functionality of setcontext(). |
581c785b | 3 | # Copyright (C) 2015-2022 Free Software Foundation, Inc. |
c92d40c0 CD |
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 | |
5a82c748 | 18 | # <https://www.gnu.org/licenses/>. |
c92d40c0 CD |
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 | ||
c92d40c0 | 32 | cleanup() { |
b40a4e1a | 33 | rm -f $tempfile |
c92d40c0 CD |
34 | } |
35 | trap cleanup 0 | |
36 | ||
95511aab | 37 | tempfile=$(mktemp "${objpfx}tst-setcontext3.XXXXXXXXXX") |
c92d40c0 CD |
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 |