Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src Attach t_exect to ATF tests and distribution
details: https://anonhg.NetBSD.org/src/rev/fe1e5df14738
branches: trunk
changeset: 349383:fe1e5df14738
user: kamil <kamil%NetBSD.org@localhost>
date: Fri Dec 09 06:12:02 2016 +0000
description:
Attach t_exect to ATF tests and distribution
Add missing SIGTRAP handler. Assert there that the signal is SIGTRAP as
expected and si_code TRAP_TRACE.
This test will break on some ports that have dummy or incomplete
implementation of exect(2).
This test works on amd64 correctly.
Sponsored by <The NetBSD Foundation>
diffstat:
distrib/sets/lists/debug/mi | 3 ++-
distrib/sets/lists/tests/mi | 7 ++++++-
etc/mtree/NetBSD.dist.tests | 4 +++-
tests/lib/libc/gen/Makefile | 5 +++--
tests/lib/libc/gen/exect/t_exect.c | 23 +++++++++++++++++------
5 files changed, 31 insertions(+), 11 deletions(-)
diffs (134 lines):
diff -r 5f195563e5db -r fe1e5df14738 distrib/sets/lists/debug/mi
--- a/distrib/sets/lists/debug/mi Fri Dec 09 06:05:25 2016 +0000
+++ b/distrib/sets/lists/debug/mi Fri Dec 09 06:12:02 2016 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.183 2016/12/02 05:54:14 kamil Exp $
+# $NetBSD: mi,v 1.184 2016/12/09 06:12:02 kamil Exp $
./etc/mtree/set.debug comp-sys-root
./usr/lib comp-sys-usr compatdir
./usr/lib/i18n/libBIG5_g.a comp-c-debuglib debuglib,compatfile
@@ -1863,6 +1863,7 @@
./usr/libdata/debug/usr/tests/lib/libc/db/h_db.debug tests-lib-debug debug,atf,compattestfile
./usr/libdata/debug/usr/tests/lib/libc/db/h_lfsr.debug tests-lib-debug debug,atf,compattestfile
./usr/libdata/debug/usr/tests/lib/libc/db/t_db_hash_seq.debug tests-lib-debug debug,atf,compattestfile
+./usr/libdata/debug/usr/tests/lib/libc/gen/exect/t_exect.debug tests-kernel-tests debug,atf,compattestfile
./usr/libdata/debug/usr/tests/lib/libc/gen/execve/t_execve.debug tests-kernel-tests debug,atf,compattestfile
./usr/libdata/debug/usr/tests/lib/libc/gen/posix_spawn/h_fileactions.debug tests-kernel-tests debug,atf,compattestfile
./usr/libdata/debug/usr/tests/lib/libc/gen/posix_spawn/h_spawn.debug tests-kernel-tests debug,atf,compattestfile
diff -r 5f195563e5db -r fe1e5df14738 distrib/sets/lists/tests/mi
--- a/distrib/sets/lists/tests/mi Fri Dec 09 06:05:25 2016 +0000
+++ b/distrib/sets/lists/tests/mi Fri Dec 09 06:12:02 2016 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.706 2016/12/02 05:54:14 kamil Exp $
+# $NetBSD: mi,v 1.707 2016/12/09 06:12:02 kamil Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -90,6 +90,7 @@
./usr/libdata/debug/usr/tests/lib/libc/c063 tests-lib-debug compattestfile,atf
./usr/libdata/debug/usr/tests/lib/libc/db tests-lib-debug compattestfile,atf
./usr/libdata/debug/usr/tests/lib/libc/gen tests-lib-debug compattestfile,atf
+./usr/libdata/debug/usr/tests/lib/libc/gen/exect tests-kernel-tests compattestfile,atf
./usr/libdata/debug/usr/tests/lib/libc/gen/execve tests-kernel-tests compattestfile,atf
./usr/libdata/debug/usr/tests/lib/libc/gen/posix_spawn tests-kernel-tests compattestfile,atf
./usr/libdata/debug/usr/tests/lib/libc/getaddrinfo tests-obsolete obsolete
@@ -2417,6 +2418,10 @@
./usr/tests/lib/libc/gen tests-lib-tests compattestfile,atf
./usr/tests/lib/libc/gen/Atffile tests-lib-tests compattestfile,atf
./usr/tests/lib/libc/gen/Kyuafile tests-lib-tests compattestfile,atf,kyua
+./usr/tests/lib/libc/gen/exect tests-kernel-tests compattestfile,atf
+./usr/tests/lib/libc/gen/exect/Atffile tests-kernel-tests compattestfile,atf
+./usr/tests/lib/libc/gen/exect/Kyuafile tests-kernel-tests compattestfile,atf,kyua
+./usr/tests/lib/libc/gen/exect/t_exect tests-kernel-tests compattestfile,atf
./usr/tests/lib/libc/gen/execve tests-kernel-tests compattestfile,atf
./usr/tests/lib/libc/gen/execve/Atffile tests-kernel-tests compattestfile,atf
./usr/tests/lib/libc/gen/execve/Kyuafile tests-kernel-tests compattestfile,atf,kyua
diff -r 5f195563e5db -r fe1e5df14738 etc/mtree/NetBSD.dist.tests
--- a/etc/mtree/NetBSD.dist.tests Fri Dec 09 06:05:25 2016 +0000
+++ b/etc/mtree/NetBSD.dist.tests Fri Dec 09 06:12:02 2016 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: NetBSD.dist.tests,v 1.136 2016/12/02 05:54:14 kamil Exp $
+# $NetBSD: NetBSD.dist.tests,v 1.137 2016/12/09 06:12:02 kamil Exp $
./usr/libdata/debug/usr/tests
./usr/libdata/debug/usr/tests/atf
@@ -80,6 +80,7 @@
./usr/libdata/debug/usr/tests/lib/libc/c063
./usr/libdata/debug/usr/tests/lib/libc/db
./usr/libdata/debug/usr/tests/lib/libc/gen
+./usr/libdata/debug/usr/tests/lib/libc/gen/exect
./usr/libdata/debug/usr/tests/lib/libc/gen/execve
./usr/libdata/debug/usr/tests/lib/libc/gen/posix_spawn
./usr/libdata/debug/usr/tests/lib/libc/hash
@@ -262,6 +263,7 @@
./usr/tests/lib/libc/c063
./usr/tests/lib/libc/db
./usr/tests/lib/libc/gen
+./usr/tests/lib/libc/gen/exect
./usr/tests/lib/libc/gen/execve
./usr/tests/lib/libc/gen/posix_spawn
./usr/tests/lib/libc/hash
diff -r 5f195563e5db -r fe1e5df14738 tests/lib/libc/gen/Makefile
--- a/tests/lib/libc/gen/Makefile Fri Dec 09 06:05:25 2016 +0000
+++ b/tests/lib/libc/gen/Makefile Fri Dec 09 06:12:02 2016 +0000
@@ -1,10 +1,11 @@
-# $NetBSD: Makefile,v 1.49 2015/12/22 14:25:58 christos Exp $
+# $NetBSD: Makefile,v 1.50 2016/12/09 06:12:02 kamil Exp $
.include <bsd.own.mk>
TESTSDIR= ${TESTSBASE}/lib/libc/gen
-TESTS_SUBDIRS= execve
+TESTS_SUBDIRS= exect
+TESTS_SUBDIRS+= execve
TESTS_SUBDIRS+= posix_spawn
TESTS_C+= t_alarm
diff -r 5f195563e5db -r fe1e5df14738 tests/lib/libc/gen/exect/t_exect.c
--- a/tests/lib/libc/gen/exect/t_exect.c Fri Dec 09 06:05:25 2016 +0000
+++ b/tests/lib/libc/gen/exect/t_exect.c Fri Dec 09 06:12:02 2016 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: t_exect.c,v 1.1 2016/12/09 04:00:36 kamil Exp $ */
+/* $NetBSD: t_exect.c,v 1.2 2016/12/09 06:12:02 kamil Exp $ */
/*-
* Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -29,6 +29,7 @@
#include <atf-c.h>
#include <errno.h>
+#include <signal.h>
#include <stddef.h>
#include <stdio.h>
#include <unistd.h>
@@ -41,14 +42,24 @@
"Tests an empty exect(2) executing");
}
+static void
+sigtrap_handler(int sig, siginfo_t *info, void *ctx)
+{
+ ATF_REQUIRE_EQ(sig, SIGTRAP);
+ ATF_REQUIRE_EQ(info->si_code, TRAP_TRACE);
+}
+
ATF_TC_BODY(t_exect_null, tc)
{
- int err;
+ struct sigaction act;
- err = exect(NULL, NULL, NULL);
- ATF_REQUIRE(err == -1);
- ATF_REQUIRE_MSG(errno == EFAULT,
- "wrong error returned %d instead of %d", errno, EFAULT);
+ ATF_REQUIRE(sigemptyset(&act.sa_mask) == 0);
+ act.sa_sigaction = sigtrap_handler;
+ act.sa_flags = SA_SIGINFO;
+
+ ATF_REQUIRE(sigaction(SIGTRAP, &act, 0) == 0);
+
+ ATF_REQUIRE_ERRNO(EFAULT, exect(NULL, NULL, NULL) == -1);
}
ATF_TP_ADD_TCS(tp)
Home |
Main Index |
Thread Index |
Old Index