| xf.li | bdd93d5 | 2023-05-12 07:10:14 -0700 | [diff] [blame] | 1 | #!/bin/sh | 
|  | 2 | # Bug 18125: Test the exit functionality of setcontext(). | 
|  | 3 | # Copyright (C) 2015-2016 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 | # <http://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 "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 |