96 Commits

Author SHA1 Message Date
Enji Cooper
a954133569 Fix even more warnings..
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 07:37:21 +00:00
Enji Cooper
13517893dd Fix more warnings I didn't catch in the first go-around
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 07:35:30 +00:00
Enji Cooper
75171ec59a Fix warnings, bump WARNS to 6, and use a temporary socket instead of one in /tmp
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 07:33:04 +00:00
Enji Cooper
f7f1145f94 - Remove the .t wrapper and put the "magic" of determining the number of
testcases into the .c file
- Require root for now because it fails with SOCK_RAW without root privileges
- Increment the test count properly on socket create failure

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 06:40:38 +00:00
Enji Cooper
ddecfa0403 Fix the knob twiddling to work properly per src.opts.mk
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 06:38:50 +00:00
Enji Cooper
93b278f08d Generate temporary files with mkstemp instead of mktemp
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 05:20:01 +00:00
Enji Cooper
1103e0c1bc Garbage collect argc/argv and bump WARNS to 6
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:57:35 +00:00
Enji Cooper
f305e6eaf8 Garbage collect argc/argv and bump WARNS to 6
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:56:23 +00:00
Enji Cooper
5a3935b6d6 - Garbage collect argc/argv
- Use random paths instead of one in /tmp

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:54:43 +00:00
Enji Cooper
1e0d206337 - Garbage collect argc/argv; bump WARNS to 6
- Make the socket path random and move it out of /tmp as that's outside ATF's
  prescribed path

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:43:43 +00:00
Enji Cooper
38a7f1e446 Fix warnings and bump WARNS to 6
- Staticize variables as needed
- Garbage collect argc/argv
- Fix -Wsign-compare warnings by casting small sizeof to (int)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:38:49 +00:00
Enji Cooper
d09e3a296c Garbage collect argc/argv and bump WARNS to 6
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:35:33 +00:00
Enji Cooper
abbb25c74d Mark signum unused in signal_handler; bump WARNS to 6
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:24:49 +00:00
Enji Cooper
bcd1483d9d Fix a -Wuninitialized warning by setting the socket to -1 and bump WARNS to 6
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:19:48 +00:00
Enji Cooper
b74bcac4bd - Don't use /tmp because it's outside ATF's prescribed sandbox
- Replace a hardcoded PATH_MAX value with sizeof(path)
- Use path like an array, not a pointer, and always try to unlink it in cleanup

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:18:14 +00:00
Enji Cooper
c7ded8ba9e Fix warnings and bump WARNS to 6
- Garbage collect argc/argv (-Wunused)
- sleep(3) will always return an unsigned int; don't check for return codes <0
  (-Wsign-compare)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 03:13:09 +00:00
Enji Cooper
572e1f51aa - Garbage collect argc/argv (-Wunused)
- Bump WARNS to 6

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 02:59:45 +00:00
Enji Cooper
f6b2ef31db - Use static buffers for temporary file paths instead of strdup of constant strings
- Don't use /tmp because it's outside ATF's prescribed sandbox
- Use mkstemp instead of mktemp to eliminate warning

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-11 02:50:44 +00:00
Enji Cooper
e04e98929f Use _exit, not exit in forked process
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 09:37:53 +00:00
Enji Cooper
62b65008d0 Remove argc/argv (-Wunused)
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 09:27:23 +00:00
Enji Cooper
7d075cff6e Fix warnings
- Remove argc/argv (-Wunused)
- Mark some parameters to socket_listen_update __unused (-Wunused)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 09:26:21 +00:00
Enji Cooper
cc469a3b3a Remove argc/argv (-Wunused)
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 09:23:00 +00:00
Enji Cooper
41119c8725 - Parameterize out the number of accept/connect attempts
- Randomize the bind port to allow 2+ consecutive calls in < 10 minutes, and
  to also not fail if (for instance) there's a server already listening on port
  8080
- Don't leak the listening socket / fds into the child process
- Fix warnings:
-- Remove argc/argv (-Wunused)
-- Mark sig __unused (-Wunused)
-- Mark quit static (-Wmissing-variable-declarations)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 09:21:07 +00:00
Enji Cooper
957885bf58 Fix -Wunused warnings, bump WARNS to 6
The output is still broken if prove -rv is run and the testcase aborts
prematurely with fail_assertion (the testcase doesn't really conform to TAP
protocol properly, except when it completes fully)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 08:01:49 +00:00
Enji Cooper
1aa40dada2 Fix -Wunused warnings, bump WARNS to 6
The testcase fails today on subtest # 9

The output is still broken if prove -rv is run and the testcase aborts
prematurely (the testcase doesn't really conform to TAP protocol properly,
except when it completes fully)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 07:59:46 +00:00
Enji Cooper
2084db1777 Fix warnings, fix a typo in a testcase description, bump WARNS to 3
- Remove argc/argv (-Wunused)
- Cast len in comparison to size_t (-Wsign-compare)

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-04-10 07:35:53 +00:00
Warner Losh
3bdf775801 NO_MAN= has been deprecated in favor of MAN= for some time, go ahead
and finish the job. ncurses is now the only Makefile in the tree that
uses it since it wasn't a simple mechanical change, and will be
addressed in a future commit.
2014-04-13 05:21:56 +00:00
Gleb Smirnoff
76c1988620 Add test case for kern/181741. Right now test fails.
PR:		181741
Sponsored by:	Nginx, Inc.
2014-02-06 13:18:10 +00:00
Alan Somers
a8eb96d593 Replace the old unix_seqpacket and unix_seqpacket_exercise tests, which
were a little broken and not automatable, with unix_seqpacket_test.
It's coverage is a superset of the old tests and it uses ATF.  It
includes test cases for bugs kern/185813 and kern/185812.

PR:		kern/185812
PR:		kern/185813
Sponsored by:	Spectra Logic
MFC after:	2 weeks
2014-01-23 17:26:28 +00:00
Ed Maste
50185946a4 Add a sendfile regression test for transmit length > file size.
This test identified the issue fixed in FreeBSD-SA-13:11.sendfile.

Sponsored by:	The FreeBSD Foundation
Approved by:	re (glebius)
2013-09-10 13:51:19 +00:00
Sergey Kandaurov
b57181586c Major update for unix_cmsg from Andrey Simonenko.
Quoting the submitter:
- Added tests for SCM_BINTIME, LOCAL_PEERCRED, cmsghdr.cmsg_len
- Code that checks correctness of groups was corrected (getgroups(2) change)
- unix_cmsg.c was completely redesigned and simplified
- Use less timeout value in unix_cmsg.c for faster work
- Added support for not sending data in a message, not sending data and
  data array associated with a cmsghdr structure in a message
- Existent tests were improved
- unix_cmsg.t was redesigned and simplified

Correctness of unix_cmsg verified on 7.1-STABLE, 9.1-STABLE and 10-CURRENT.

PR:		bin/131567
Submitted by:	Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua>
MFC after:	2 weeks
2013-02-11 12:56:23 +00:00
Ed Maste
8f37d24bed Zero the whole struct not just the size of a pointer.
Found by: clang
2012-11-19 22:56:51 +00:00
Ed Maste
d701ebcb13 Use '%zd' format specifier for ssize_t
Found by: clang
2012-11-19 22:53:57 +00:00
Ed Maste
03aac27561 Use '%zd' printf format for ssize_t. 2012-11-19 22:46:17 +00:00
Eitan Adler
db702c59cf remove duplicate semicolons where possible.
Approved by:	cperciva
MFC after:	1 week
2012-10-22 03:00:37 +00:00
Bjoern A. Zeeb
e6f0fd5898 Add regression tests for the setsockopt(2) SO_SETFIB socket option.
Check that the expected domain(9) families all handle the socket option
correctly and do proper bounds checks.  This would catch bugs as fixed
in (r230938,)r230981.

Sponsored by:	Cisco Systems, Inc.
2012-02-17 03:25:26 +00:00
John Baldwin
f627c55e7e - Add a test for PR 151758.
- While here, make this compile and work on non-i386:
  - Use CMSG_SPACE(), CMSG_LEN(), and CMSG_FIRSTHDR() instead of ignoring
    padding between 'struct cmsghdr' and control message payloads.
  - Don't initialize the control message before calling recvmsg().
    Instead, check that we get a valid control message on return from
    recvmsg().
- Use errx() instead of err() for some errors that don't report failures
  that set errno.

Requested by:	kib (1)
2011-12-09 19:24:17 +00:00
Pawel Jakub Dawidek
76423e6e3c Allow to specify path to a file we want to test with sendfile(2).
This allows to specify selected file system and not only /tmp/.
2010-12-11 16:06:52 +00:00
Konstantin Belousov
b010326013 Extend the unix gc regression test to cover the case of r216150.
Requested and reviewed by:	rwatson
MFC after:	1 week
2010-12-03 16:17:53 +00:00
Robert Watson
1e4bf1e35f Correct several nits/problems in the unix_close_race regression test.
Submitted by:	Mikolaj Golub <to.my.trociny at gmail.com>
MFC after:	3 days
2010-05-27 15:28:55 +00:00
Robert Watson
07c2a9537e Add unix_close_race, a regresion test to catch ENOTCONN being returned
improperly from one of two instances of close(2) being called
simultaneously on both ends of a connected UNIX domain socket.  The test
tool is slightly tweaked to improve failure modes, and while often does
trigger the problem, doesn't do so consistently due to the nature of the
race.

PR:		kern/144061
Submitted by:	Mikolaj Golub <to.my.trociny@gmail.com>
MFC after:	3 days
2010-05-26 10:46:03 +00:00
Ulrich Spörlein
47e1a877c5 Always assign WARNS using ?=
- fix some nearby style bugs
- include Makefile.inc where it makes sense and reduces duplication

Approved by:	ed (co-mentor)
2010-03-02 16:58:04 +00:00
Ruslan Ermilov
9fd69f37d2 Fixed missing or broken library dependencies. 2010-02-25 14:42:26 +00:00
Rebecca Cran
8dd83f1e16 Update the sendfile regression test so that it outputs results in the
TAP format.
Add a checksum to verify that the data hasn't been corrupted between
being read from disk and being received.

Approved by:	rrs (mentor)
2010-02-24 23:00:16 +00:00
Robert Watson
9cad1429d6 A few regression tests for SOCK_SEQPACKET UNIX domain sockets.
Sponsored by:	Google
2009-10-05 15:27:01 +00:00
John Baldwin
0cab1e9602 - Remove a bogus test: setsockopt() doesn't return a length, getsockopt()
does.
- Use %z to printf a size_t to fix compile on 64-bit platforms.
2009-09-23 14:23:09 +00:00
Robert Watson
0ca4746bcb In UNIX domain socket GC regression test, after setting a socket
non-blocking, EINPROGRESS is an acceptable result from connect().
2009-03-08 21:06:02 +00:00
Robert Watson
cb824561e6 Add very simple regression test for fstat(2) on sockets: make sure it
returns success for various socket types.  It's easy to imagine this
being enhanced to validate the returned data, but...
2008-10-06 19:42:03 +00:00
Maxim Konovalov
4225b7d6fa o Correct a comment: a test file size is a four pages not three. 2008-09-10 09:32:25 +00:00
Robert Watson
9cf15e9671 Add unix_sorflush, a regression test for the following scenario:
- Process (a) is blocked in read on a socket waiting on data.
 - Process (b) is blocked in shutdown() on a socket waiting on (a).
 - Process (c) delivers a signal to (b) interrupting its wait.

When the signal is delivered, the kernel panics as sblock() fails in
sorflush().  Even if it didn't panic, shutdown() would block potentially
indefinitely waiting for recv() to succeeded.  Fixes to follow.

Reported by:	Jos Backus <jos at catnook dot com>
2008-01-30 13:23:34 +00:00