unistd: Improve fortify with clang
[glibc.git] / sysdeps / x86_64 / tst-shstk-legacy-1e.sh
blob3dec5623e41dc3c82b0bb649a00c9cfce6ab0984
1 #!/bin/sh
2 # Check that legacy shadow stack code in init_array will trigger
3 # segfault.
4 # Copyright (C) 2023-2024 Free Software Foundation, Inc.
5 # This file is part of the GNU C Library.
7 # The GNU C Library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License, or (at your option) any later version.
12 # The GNU C Library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # Lesser General Public License for more details.
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with the GNU C Library; if not, see
19 # <https://www.gnu.org/licenses/>.
21 common_objpfx=$1; shift
22 test_program_prefix=$1; shift
24 GLIBC_TUNABLES=glibc.cpu.hwcaps=SHSTK \
25 ${test_program_prefix} \
26 ${common_objpfx}elf/tst-shstk-legacy-1e
27 # The exit status should only be unsupported (77) or segfault (139).
28 status=$?
29 if test $status -eq 77; then
30 exit 77
31 elif test $status -eq 139; then
32 exit 0
33 else
34 exit 1