Commit Graph

253 Commits

Author SHA1 Message Date
Robert Watson
9d62322505 Add a simple regression test for stream UNIX domain sockets and the
bind()/connect() system calls, which is intended to confirm that the
right successes and errors occur when rendezvousing via the file system
name space.
2005-02-20 22:21:53 +00:00
Ruslan Ermilov
1042be684d Add to CFLAGS. 2005-02-12 18:09:20 +00:00
Nik Clayton
8948ad6b58 Add to CFLAGS, rather than overriding it. Use LDFLAGS for the -L option,
and LDLIBS to specify -ltap.

Submitted by:	ru
2005-02-01 09:26:34 +00:00
Nik Clayton
818287703d Link against libtap (ports/devel/libtap). Replace the calls to assert()
with calls to libtap::ok1(), and make sure the correct number of tests is
planned for, and that the exit code is correct.
2005-02-01 01:53:35 +00:00
Marcel Moolenaar
ad284e38a3 Wrap calls to memcpy(3) in a function called block_copy(). This way,
and as long as we're not compiling with IPA, gcc(1) won't optimize
the call away. The whole purpose of using memcpy(3) is to avoid
misaligned loads and stores when we need to read or write the value
in the unaligned memory location. But if gcc(1) optimizes the call
to memcpy(3) away, it will typically introduce misaligned loads and
stores. In this context that's not a good idea.
2005-01-28 02:58:32 +00:00
Marcel Moolenaar
c0604e27a8 Skip the register based postinc stores here and don't count them
in the number of tests. This way we avoid skipped tests for non-
existent memory access combinations. The number of tests dropped
from 60 to 48.
2005-01-27 23:15:58 +00:00
Marcel Moolenaar
ced1bf58df Make the local variables global so that the compiler cannot assume
too much about them. This prevents certain peephole optimizations
at -O that invalidate the tests.
2005-01-27 23:11:55 +00:00
Marcel Moolenaar
0335d35b09 Fix the unaligned store with post increment test: The misaligned pointer
stopped pointing to the value the moment we wrote it due to the post
increment. So, grab the value for comparison out of the data structure
directly.
2005-01-27 22:46:15 +00:00
Marcel Moolenaar
b3efc9018f The unit test for unaligned loads/stores can be found under ../ia64. 2005-01-27 06:51:45 +00:00
Marcel Moolenaar
baacc4acdf Add tests for post increment. This bumps the number of tests up to
60. The postinc store tests currently fail (value mismatch). Hence
the score as of this commit is 48 out of 60. Either the kernel or
the tests need to be fixed.
2005-01-27 06:50:05 +00:00
Robert Watson
20ef44d423 Use WARNS?= instead of WARNS= in Makefiles so that global warning
settings can override local ones.

Pointed out by:	ru
2005-01-22 22:42:39 +00:00
Mike Silbersack
cc73784391 Add two more pipe regression tests. Not yet hooked into the test framework. 2005-01-21 06:46:18 +00:00
Robert Watson
2d7142bf0d In refactoring the test before committing, a pointer was passed instead
of a structure for the sockaddr_in.  Pass the pointer to connect()
instead of the pointer to the pointer.

Specify a port number to connect to.
2005-01-16 15:01:28 +00:00
Robert Watson
81cfeee7bf Add udpconnectjail, a simple regression test to exercise an (as yet)
unfixed bug in the jail() implementation relating to using the connect()
system call on UDP sockets.

PR:	26506
2005-01-16 13:05:32 +00:00
Maxim Sobolev
c520d61bc3 Add test which excersises problem with unability to change association of
already associated datagram unix domain socket by issuing connect() system
call.
2005-01-12 09:57:18 +00:00
David Schultz
b33f870fba Regression tests for [l]lrint[f]() and [l]lround[f](). 2005-01-11 23:13:36 +00:00
Pawel Jakub Dawidek
080361d6b8 Introduce a new GEOM class - SHSEC. It provides sharing secret between
the given providers. Without even one of the configured components there
should be no way to get the secret.

Supported by:	WHEEL Sp. z o.o.
		http://www.wheel.pl
2005-01-11 18:06:44 +00:00
Pawel Jakub Dawidek
79f717591c Fix incorrect comment.
MFC after:	3 days
2005-01-11 14:11:14 +00:00
Robert Watson
b2345210d0 Add a simple regression test for mlock()/munlock() to make sure they
work on a single page as root, and fails on a single page as nobody.
Intended to help diagnose reports regarding insecure memory use with
gnupg.
2005-01-03 19:56:20 +00:00
Marcel Moolenaar
938e27a7e5 Replace a mention of the ia64_unaligned directory with one of the
ia64 subdirectory. All ia64 specific regression tests live under
the ia64 directory.
2005-01-02 21:40:36 +00:00
Marcel Moolenaar
c5b5bf81c9 Regression test for unaligned loads and stores for short, int, long,
float, double and long double types. No post-increment tests yet.
All tests are skipped if the debug.unaligned_test sysctl variable
cannot be set to 1.
2005-01-02 21:33:40 +00:00
Pawel Jakub Dawidek
ad51776c88 Wait a bit after creating device. 2004-12-21 19:03:10 +00:00
Pawel Jakub Dawidek
ee7051f9f7 When RAID3 device is configured in "verify" mode, synchronization of the
parity component is now force on creation.
Change regression test which check "verify" mode to work properly after
this change.
2004-12-21 18:48:59 +00:00
Ruslan Ermilov
e653b48c80 Start the dreaded NOFOO -> NO_FOO conversion.
OK'ed by:	core
2004-12-21 08:47:35 +00:00
Sam Leffler
2efe996b98 Loadable modules that run test vectors for net80211 crypto plugins. 2004-12-08 17:45:53 +00:00
Hartmut Brandt
89f087e8dd Fix builds with a read-only directory and a make upgrade. This is done
by forcing the creation of an object directory for the make regression
tests. Let make handle the tracking of the dependency and installation
of test_shell script.

Submitted by:	ru
2004-12-07 14:41:16 +00:00
Robert Watson
b1954f17a8 Print a warning if running as !root for aio_md_test rather than failing
the test.  Privilege is required in order to allocate an md device.
2004-12-06 13:15:23 +00:00
Robert Watson
5cb0b08e40 Add a basic aio functionality regression test, which simply writes and
then reads from a fairly broad range of object types: regular file,
fifo, UNIX socketpair, pty, UNIX pipe, and an md device.  Not a deep
test of functionality, just a basic test that aio_write followed by
aio_read returns the correct data in a relatively timely manner.

Requested by:	phk
2004-12-06 12:56:38 +00:00
Ruslan Ermilov
d29cf9e2f3 Make this work under debugging, e.g., "make -dl". 2004-12-06 08:51:30 +00:00
Hartmut Brandt
9c1f3ca3cf Make the tests runnable on a read-only src. To do this you must make sure
that you create one of the object directories make knows (see make(1)).
This uses the -C flag, so add a test that checks that make actually accepts
-C. Also fix the test that selects csh via the .SHELL target to work for
tcsh users too.

This commit renames shell_test to shell_test.sh. There is no history
to preserve so go without a repo-copy.

Reviewed by:	ru
2004-12-02 17:00:58 +00:00
Nik Clayton
2ba5c2107e The following code sets up two connected TCP sockets that send data to each
other until the window is closed. Then one of the sockets is closed, which
will generate a RST once the TCP at the other socket does a window probe.

All versions of FreeBSD prior to 11/26/2004 will ignore this RST into a 0
window, causing the connection (and application) to hang indefinitely.
On patched versions of FreeBSD (and other operating systems), the RST
will be accepted and the program will exit in a few seconds.

Submitted by:	Michiel Boland
Reviewed by:	silby
2004-12-01 12:12:12 +00:00
Hartmut Brandt
60f801ee87 Chmod the shell testscript to be executable if it isn't already. According
to the CVS-Meisters x-mode just happens to work, but is not guaranteed to
do so. Try to be on the safe side.
2004-11-30 15:33:18 +00:00
Hartmut Brandt
7b54cdda4e Add some regression tests for the .SHELL target. I'm not sure that the
output of shell_2j is actually correct - it just tests what make currently
does. Make should switch on echoing for the second line, shouldn't it?
2004-11-25 10:03:29 +00:00
Tim J. Robbins
c2089f05ef Remove regression tests for the obsolete rune interface. 2004-11-21 03:21:22 +00:00
Nik Clayton
00e13b1d67 Switch over to a different, more flexible test output protocol that's
understood by Perl's Test::Harness module and prove(1) commands.

Update README to describe the new protocol.  The work's broken down into
two main sets of changes.

First, update the existing test programs (shell scripts and C programs)
to produce output in the ok/not ok format, and to, where possible, also
produce a header describing the number of tests that are expected to be
run.

Second, provide the .t files that actually run the tests.  In some cases
these are copies of, or very similar too, scripts that already existed.
I've kept the old scripts around so that it's possible to verify that
behaviour under this new system (in terms of whether or not a test fails)
is identical to the behaviour under the old system.

Add a TODO file.
2004-11-11 19:47:55 +00:00
Robert Watson
c6eea89879 Add a small regression test that opens a TCP socket, listens on it,
performs a non-blocking connect from another socket, and then closes
the listen socket rather than accepting.  This is intended to
exercise the close path in which connections are aborted due to a
close on the listen socket while the connection is in the listen
queue.
2004-11-02 17:59:12 +00:00
Ruslan Ermilov
a35d88931c For variables that are only checked with defined(), don't provide
any fake value.
2004-10-24 15:33:08 +00:00
Robert Watson
09745181fd Use errx() instead of fprintf()/exit() for conciseness.
Suggested by:	ru (some time ago)
2004-10-23 22:18:37 +00:00
Robert Watson
a09c60ffeb Use errx() instead of perror()/exit() for conciseness.
Suggested by:	ru (some time ago)
2004-10-23 22:11:35 +00:00
Ruslan Ermilov
9a5cf32635 Add a regression test for the alternate shell specification. 2004-10-23 21:38:58 +00:00
Ruslan Ermilov
30f4920b76 Fixed a typo.
Submitted by:	Pawel Worach
2004-10-17 11:07:03 +00:00
Giorgos Keramidas
5b9c5efc57 Add a regression test for floating-point output in the Greek locale.
See revision 1.3 of src/share/numericdef/el_GR.ISO8859-7.src

Reviewed by:	das (a while ago)
2004-10-13 22:32:12 +00:00
Robert Watson
a1626faabe Resort unprivileged uid with privileged socket after unprivileged uid
with privileged socket in test runs.

If running unprivileged and instructed to use unprivileged sockets,
don't try and use raw sockets.
2004-10-11 19:12:40 +00:00
Robert Watson
cdeeed7a38 A number of improvements to the IP socket option API regression test:
- Consistently use err/errx/warnx throughout, rather than using perror()
  and exit().

- Teach the tests how to better manage (and therefore test) privilege:
  in particular, how to create sockes with root credentials but exercise
  the privileges with non-root credentials, etc.

- Teach the test suite to apply each of the non-IP_HDRINCL options across
  each of SOCK_DGRAM, SOCK_STREAM, and SOCK_RAW.
2004-10-11 19:03:53 +00:00
Stefan Farfeleder
c904266eac Add regression tests for ilogb{,f,l}(). 2004-10-11 18:40:45 +00:00
Robert Watson
f1f6501da8 Add a simple exercise suite for IP-level socket options. The suite
atempts to read and write various IP-level socket options as root and
nobody, making sure the initial values are as expected, that they can
be changed to valid values and take effect, etc.  No attempt is made
to check for the correct implementation of side effects (such as
changes in packet headers) as yet.

The IP options section is currently broken but will be fixed shortly.

Not all multicast options are currently tested.
2004-10-11 16:09:45 +00:00
Robert Watson
6a671583a4 Add a simple C-based TCP connection generator, which generates and
closes the specified number of TCP connections sequentially and
synchronously.  Useful for trying to trigger races in the accept
code.
2004-10-09 20:58:28 +00:00
Robert Watson
54516c29e8 Modify accept_fd_leak regression test to generate "PASS" output, not
just "FAIL" output, in order to make it consistent with other tests in
the regression test tree.
2004-09-18 13:06:00 +00:00
Robert Watson
e8929330e7 Add a very basic README for tcpstream. 2004-09-13 16:53:40 +00:00
Robert Watson
cb5e18f34e Add tcpstream, a simple TCP stream generator that uses a pseudo-random
sequence to detect data corruption visible to an application.
2004-09-13 03:17:22 +00:00