NetBSD/tests
kamil 61aff29627 Introduce new interface in ptrace(2) - PT_GET_SIGMASK and PT_SET_SIGMASK
Add new interface to add ability to get/set signal mask of a tracee.
It has been inspired by Linux PTRACE_GETSIGMASK and PTRACE_SETSIGMASK, but
adapted for NetBSD API.

This interface is used for checkpointing software to set/restore context
of a process including signal mask like criu or just to track this property
in reverse-execution software like Record and Replay Framework (rr).


Add new ATF tests for this interface
====================================
getsigmask1:
    Verify that plain PT_SET_SIGMASK can be called

getsigmask2:
    Verify that PT_SET_SIGMASK reports correct mask from tracee

setsigmask1:
    Verify that plain PT_SET_SIGMASK can be called with empty mask

setsigmask2:
    Verify that sigmask is preserved between PT_GET_SIGMASK and
    PT_SET_SIGMASK

setsigmask3:
    Verify that sigmask is preserved between PT_GET_SIGMASK, process
    resumed and PT_SET_SIGMASK

setsigmask4:
    Verify that new sigmask is visible in tracee


Kernel ABI bump delayed as there are more interfaces to come in ptrace(2).

Sponsored by <The NetBSD Foundation>
2017-02-12 06:09:52 +00:00
..
bin PR bin/4841 was filed regarding the handling of blank lines when cat was invoked 2016-06-26 22:50:46 +00:00
crypto periphereal updates and generated files for the new openssl. 2016-10-14 16:09:43 +00:00
dev Revert to previous. Audio passes the test properly again. 2017-01-27 05:14:54 +00:00
fs PR kern/51762: add a test program 2017-02-02 22:07:05 +00:00
games Do this more cleanly - put the do-we-have-crypto check inside the actual 2016-06-27 05:29:32 +00:00
include Don't play with "../.." in includes for h_macros.h; deal with it centrally. 2017-01-13 21:30:39 +00:00
ipf Remove the "expected failure" from test n12, and change it not to use 2015-12-26 08:01:58 +00:00
kernel Introduce new interface in ptrace(2) - PT_GET_SIGMASK and PT_SET_SIGMASK 2017-02-12 06:09:52 +00:00
lib remove exect, it will not be fixed and it will be removed. 2017-02-09 03:27:07 +00:00
libexec Don't play with "../.." in includes for h_macros.h; deal with it centrally. 2017-01-13 21:30:39 +00:00
modules Don't play with "../.." in includes for h_macros.h; deal with it centrally. 2017-01-13 21:30:39 +00:00
net Add tests for several bpf ioctls 2017-02-09 02:18:13 +00:00
rump Don't play with "../.." in includes for h_macros.h; deal with it centrally. 2017-01-13 21:30:39 +00:00
sbin When deadbeef is treated as a 32-bit signed integer, it actually has a 2016-06-17 03:55:35 +00:00
share When no gcc but clang can be found, fallback to the latter instead of 2016-03-12 08:55:54 +00:00
sys convention about function names for predicate checking: 2016-12-22 08:15:20 +00:00
usr.bin PR/51875: Ngie Cooper: portability fixes 2017-01-14 20:43:52 +00:00
usr.sbin PR/51876: Ngie Cooper: kyua 0.11 $TMPDIR fixes 2017-01-14 20:45:16 +00:00
Makefile Don't build tests that depend on RUMP if BSD_MK_COMPAT_FILE is defined. 2015-06-22 00:05:23 +00:00
Makefile.inc better name 2017-01-14 01:33:32 +00:00
README Clarify this a little. 2012-05-18 15:36:21 +00:00
h_macros.h provide an RL variant that prints an extra argument 2016-08-20 15:49:08 +00:00

README

$NetBSD: README,v 1.4 2012/05/18 15:36:21 jruoho Exp $

When adding new tests, please try to follow the following conventions.

1. For library routines, including system calls, the directory structure of
   the tests should follow the directory structure of the real source tree.
   For instance, interfaces available via the C library should follow:

	src/lib/libc/gen -> src/tests/lib/libc/gen
	src/lib/libc/sys -> src/tests/lib/libc/sys
	...

2. Equivalently, all tests for userland utilities should try to follow their
   location in the source tree. If this can not be satisfied, the tests for
   a utility should be located under the directory to which the utility is
   installed. Thus, a test for env(1) should go to src/tests/usr.bin/env.
   Likewise, a test for tcpdump(8) should be in src/tests/usr.sbin/tcpdump,
   even though the source code for the program is located under src/external.

3. Otherwise use your own discretion.