Commit Graph

78 Commits

Author SHA1 Message Date
jhb
5f12aa248a Add a CHILD_REQUIRE macro similar to ATF_REQUIRE for use in child processes
of the main test process.

Differential Revision:	https://reviews.freebsd.org/D2664
Reviewed by:	ngie (previous version)
2015-06-04 21:07:27 +00:00
jhb
d0beba7962 Consistently only use one end of the pipe in the parent and debugger
processes and do not rely on EOF due to a close() in the debugger.

PR:		200489
Differential Revision:	https://reviews.freebsd.org/D2674
Reviewed by:	kib, ngie, rodrigc
2015-05-31 19:43:35 +00:00
jhb
7fad77ce36 Tweak the description of when waitpid() doesn't return any status for a
non-blocking wait to avoid the word "empty".

Requested by:	ngie
2015-05-28 13:56:19 +00:00
jhb
588ce3236a Do not allow a process to reap an orphan (a child currently being
traced by another process such as a debugger). The parent process does
need to check for matching orphan pids to avoid returning ECHILD if an
orphan has exited, but it should not return the exited status for the
child until after the debugger has detached from the orphan process
either explicitly or implicitly via wait().

Add two tests for for this case: one where the debugger is the direct
child (thus the parent has a non-empty children list) and one where
the debugger is not a direct child (so the only "child" of the parent
is the orphan).

Differential Revision:	https://reviews.freebsd.org/D2644
Reviewed by:	kib
MFC after:	2 weeks
2015-05-26 10:29:37 +00:00
jhb
5ad66fe3b2 Only reparent a traced process to its old parent if the tracing process is
not the old parent. Otherwise, proc_reap() will leave the zombie in place
resulting in the process' status being returned twice to its parent.

Add test cases for PT_TRACE_ME and PT_ATTACH which are fixed by
this change.

Differential Revision:	https://reviews.freebsd.org/D2594
Reviewed by:	kib
MFC after:	2 weeks
2015-05-22 11:04:54 +00:00
ngie
f26a36793e Adjust CFLAGS to find freebsd_test_suite/macros.h
MFC after: 6 days
2015-04-28 10:59:06 +00:00
ngie
7c41d36452 Use PLAIN_REQUIRE_KERNEL_MODULE to require "mqueuefs"
MFC after: 6 days
2015-04-28 10:56:59 +00:00
ngie
934db4e340 - Use ATF_REQUIRE_KERNEL_MDOULE to require aio(4)
- Don't use /tmp as a basis for temporary files as it's outside of the ATF
  sandbox
- Don't override MAX macro in sys/param.h

MFC after: 6 days
2015-04-28 10:53:06 +00:00
ngie
7dc04ed65c Use ATF_REQUIRE_KERNEL_MODULE instead of aio_available function
MFC after: 6 days
2015-04-28 10:51:12 +00:00
ngie
e16b0a44bf Fill in the copyright boilerplate for the test program
MFC after: 6 days
2015-04-28 10:29:42 +00:00
ngie
eed7f1bcd9 Move tests/sys/kern/mmap_test to tests/sys/vm/mmap_test
As jhb noted, the actual mmap(2) implementation is under sys/vm, not
sys/kern/, so the correct logical place is tests/sys/vm/, not
tests/sys/kern/

X-MFC with: r282076
MFC after: 6 days
2015-04-27 17:53:09 +00:00
ngie
ccd7494b55 Integrate tools/regression/mmap into the FreeBSD test suite as
tests/sys/kern/mmap_test

MFC after: 1 week
2015-04-27 09:06:27 +00:00
ngie
89f63ebe20 Integrate tools/regression/aio/aiotest and tools/regression/aio/kqueue into the
FreeBSD test suite as tests/sys/aio

MFC after: 1 week
2015-04-27 08:51:40 +00:00
ngie
d89b0bcd8d Integrate tools/regression/mqueue into the FreeBSD test suite as
tests/sys/mqueue

MFC after: 1 week
2015-04-27 08:31:43 +00:00
ngie
64404803e0 Integrate tools/regression/fifo into the FreeBSD test suite as tests/sys/fifo
and tools/regression/file into the FreeBSD test suite as tests/sys/file

MFC after: 1 week
2015-04-27 08:15:17 +00:00
ngie
ba163e588e Integrate tools/regression/kqueue into the FreeBSD test suite as
tests/sys/kqueue

MFC after: 1 week
2015-04-27 07:37:48 +00:00
ngie
add5897136 Integrate tools/regression/execve into the FreeBSD test suite as
tests/sys/kern/execve

MFC after: 1 week
2015-04-27 07:22:18 +00:00
ngie
98df758776 Integrate tests/sys/aio/kqueue into tests/sys/aio 2015-04-16 08:46:43 +00:00
ngie
4e440231f7 Integrate tools/regression/aio/aiotest into the FreeBSD test suite as tests/sys/aio 2015-04-16 07:49:39 +00:00
ngie
ad9d440819 Update comments
Don't install/test unix_cmsg because it's broken [1]

PR: 199478
2015-04-16 06:06:45 +00:00
ngie
de089aea2a Set WARNS to 6, but turn off -Wcast-align; this is an issue with unix_cmsg and
unix_passfd_test
2015-04-16 05:38:19 +00:00
ngie
010f8b4f07 Fix WARNS=6 issues with gcc 2015-04-16 05:37:19 +00:00
ngie
4f3aa5e79f Don't use /tmp for temporary files; this violates ATF/kyuas sandbox 2015-04-16 00:44:59 +00:00
ngie
6777749baf Rename unix_sendtorace_test to unix_sendto_race_test 2015-04-16 00:39:20 +00:00
ngie
f5c00e0dfa Convert accf_data_attach_test over to ATF and mark all steps after step 8 in
the sourcecode broken (it fails on my system at least; more investigation
needed)
2015-04-16 00:37:11 +00:00
ngie
637cb129fc - Convert zerosend_test to an ATF format testcase
- bind to random ports
- Close the server port so the TCP testcases won't terminate prematurely
  because bind(2) failed
2015-04-15 14:20:03 +00:00
ngie
a98cd7cd0e Convert unix_passfd_test to ATF
Mark test 8 as an expected failure so it no longer counts as an unexpected one
2015-04-15 11:48:41 +00:00
ngie
ea6ad5f1a5 Pick a random port if a specific one isn't provided on the command line 2015-04-14 10:20:02 +00:00
ngie
198792ffb0 Test for EPROTOTYPE, not EPROTONOSUPPORT 2015-04-14 07:08:45 +00:00
ngie
b21c62fc96 Use socket, not sockets/ (XXX: reminder to add a sanity check for this later...) 2015-04-14 02:38:57 +00:00
ngie
aca5423834 Fix WARNS= 6 by removing garbage collecting unused argc/argv 2015-04-13 16:43:06 +00:00
ngie
1008de0400 Add mqueue_test.sh 2015-04-13 09:40:57 +00:00
ngie
f9d25abeaa Install the proper files 2015-04-13 09:40:25 +00:00
ngie
9fbf06ecf3 Add missing Makefiles for fifo and file 2015-04-13 04:48:13 +00:00
ngie
17d96ca20b Add $FreeBSD$ RCS tag 2015-04-12 12:31:19 +00:00
ngie
bf56b02931 Integrate tools/regression/execve into the FreeBSD test suite as tests/sys/kern/execve 2015-04-12 12:29:34 +00:00
ngie
86baa7f8f1 Integrate tools/regression/fifo into the FreeBSD test suite as tests/sys/fifo 2015-04-12 06:18:24 +00:00
ngie
63315aaf06 Integrate tools/regression/mmap into the FreeBSD test suite as tests/sys/mmap 2015-04-12 05:25:11 +00:00
ngie
3bb7bf6d5c Default to WARNS=6 2015-04-12 05:09:05 +00:00
ngie
e2cd8e97c5 Integrate tools/regression/file into the FreeBSD test suite as tests/sys/file 2015-04-11 10:14:59 +00:00
ngie
305b739a89 Add directory iteration piece for tests/sys/mqueue 2015-04-11 09:28:53 +00:00
ngie
2a08aa5c38 Integrate tools/regression/posixshm into the FreeBSD test suite as tests/sys/posixshm 2015-04-11 09:28:11 +00:00
ngie
33c0504f3c Integrate tools/regression/mqueue into the FreeBSD test suite as tests/sys/mqueue 2015-04-11 09:20:20 +00:00
ngie
6fa249869e Integrate tools/regression/kqueue into the FreeBSD test suite as tests/sys/kqueue 2015-04-11 09:15:33 +00:00
ngie
9292308b0f Integration tools/regression/vfs into the FreeBSD test suite 2015-04-11 09:05:42 +00:00
ngie
4716abb1e9 Turn on test building/installation here 2015-04-11 09:05:00 +00:00
ngie
d8e6bca50d Start integrating tools/regression/sockets into tests/sys/sockets 2015-04-11 08:57:31 +00:00
jmg
c3ff54cc39 Add some new modes to OpenCrypto. These modes are AES-ICM (can be used
for counter mode), and AES-GCM.  Both of these modes have been added to
the aesni module.

Included is a set of tests to validate that the software and aesni
module calculate the correct values.  These use the NIST KAT test
vectors.  To run the test, you will need to install a soon to be
committed port, nist-kat that will install the vectors.  Using a port
is necessary as the test vectors are around 25MB.

All the man pages were updated.  I have added a new man page, crypto.7,
which includes a description of how to use each mode.  All the new modes
and some other AES modes are present.  It would be good for someone
else to go through and document the other modes.

A new ioctl was added to support AEAD modes which AES-GCM is one of them.
Without this ioctl, it is not possible to test AEAD modes from userland.

Add a timing safe bcmp for use to compare MACs.  Previously we were using
bcmp which could leak timing info and result in the ability to forge
messages.

Add a minor optimization to the aesni module so that single segment
mbufs don't get copied and instead are updated in place.  The aesni
module needs to be updated to support blocked IO so segmented mbufs
don't have to be copied.

We require that the IV be specified for all calls for both GCM and ICM.
This is to ensure proper use of these functions.

Obtained from:	p4: //depot/projects/opencrypto
Relnotes:	yes
Sponsored by:	FreeBSD Foundation
Sponsored by:	NetGate
2014-12-12 19:56:36 +00:00
ngie
dbab308adc Use PROGS instead of PROG and remove unnecessary SRCS?= assignment
Using PROG instead of PROGS will in cases of high -j with -DNO_ROOT cause
the PROG to show up more than once as it's handling the SCRIPTS install case
in a recursive manner, separate from the non-recursive case

After the recent batch of commits to bsd.progs.mk to fix behavior with how
variables are defaulted to, explicitly setting SRCS for a PROG is no longer
required

MFC after: 1 week
Reviewed by: asomers
Phabric: D1130
Sponsored by: EMC / Isilon Storage Division
2014-11-08 03:20:56 +00:00
ngie
227d86af08 Remove explicit KYUAFILE=yes from tests/sys/Makefile
This causes the directory traversing Kyuafile to be installed, which in turn
causes tests/sys/pjdfstest to always be run from /usr/tests/sys

Let KYUAFILE default to auto, so the file generated by suite.test.mk gets
installed instead

MFC after: 1 week
2014-11-03 09:17:09 +00:00