diff options
author | Renato Botelho <renato@netgate.com> | 2017-02-23 06:28:41 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2017-02-23 06:28:41 -0300 |
commit | 82ceeb2ea625cd9bff60f2863b9a0830f55b7905 (patch) | |
tree | 263ca9347bf664a4489743f9302e699ce14de1df /contrib/netbsd-tests/usr.bin/gdb/t_regress.sh | |
parent | 4a05f5440acda223e6a0ec5157bc32ecc0f09ff9 (diff) | |
parent | d20dd8b36e7a565be7bfbb22aade51c8ffd753e9 (diff) | |
download | FreeBSD-src-devel.zip FreeBSD-src-devel.tar.gz |
Merge remote-tracking branch 'origin/stable/10' into develdevel
Diffstat (limited to 'contrib/netbsd-tests/usr.bin/gdb/t_regress.sh')
-rwxr-xr-x | contrib/netbsd-tests/usr.bin/gdb/t_regress.sh | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/contrib/netbsd-tests/usr.bin/gdb/t_regress.sh b/contrib/netbsd-tests/usr.bin/gdb/t_regress.sh new file mode 100755 index 0000000..5ea8713 --- /dev/null +++ b/contrib/netbsd-tests/usr.bin/gdb/t_regress.sh @@ -0,0 +1,77 @@ +# $NetBSD: t_regress.sh,v 1.1 2016/04/08 10:09:16 gson Exp $ +# +# Copyright (c) 2016 The NetBSD Foundation, Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# + +# Regression tests for some GDB PRs + +# PR 47430 + +atf_test_case threads +threads_head() { + atf_set "descr" "Test that gdb works with threaded programs" + atf_set "require.progs" "gdb" +} +threads_body() { + # Dig at an unused IP address so that dig fails the + # same way on machines with Internet connectivity + # as on those without. + cat <<EOF >test.gdb +run +time=1 +tries=1 @127.0.0.177 +cont +cont +cont +cont +cont +EOF + gdb --batch -x test.gdb dig >gdb.out + atf_check -s exit:1 -o ignore -e ignore grep "Program received signal SIGTRAP" gdb.out +} + +# PR 48250 + +atf_test_case pie +pie_head() { + atf_set "descr" "Test that gdb works with PIE executables" + atf_set "require.progs" "cc gdb" +} +pie_body() { + cat <<\EOF >test.c +#include <stdio.h> +int main(int argc, char **argv) { printf ("hello\n"); return 0; } +EOF + cc -fpie -pie -g test.c -o test + cat <<EOF >test.gdb +break main +run +EOF + gdb --batch -x test.gdb ./test >gdb.out 2>&1 + atf_check -s exit:1 -o ignore -e ignore grep "annot access memory" gdb.out +} + +atf_init_test_cases() { + atf_add_test_case threads + atf_add_test_case pie +} |