Commit Graph

3471 Commits

Author SHA1 Message Date
Bryan Drewery
c668010e3f Pass full path to ldd(1) so it works on files in cwd. 2015-04-21 02:02:25 +00:00
Bryan Drewery
9d273a1ffc Support demangling C++ symbols with -D flag.
Sponsored by:	EMC / Isilon Storage Division
2015-04-21 01:37:14 +00:00
Bryan Drewery
3844bbe29e - Speedup significantly by not using subshells for data already fetched.
Ran against /usr/local/sbin/pkg:
   Before:  25.12 real        12.41 user        33.14 sys
   After:   0.53 real         0.49 user         0.13 sys
- Exit with 1 if any missing or unresolved symbol is detected.
- Add option '-U' to skip looking up unresolved symbols.
- Don't consider provided weak objects as unresolved (nm V).

Sponsored by:	EMC / Isilon Storage Division
2015-04-20 20:51:19 +00:00
Bryan Drewery
972b622794 Fix indentation to use tabs 2015-04-20 20:45:10 +00:00
Adrian Chadd
56717743f2 Update pkt-gen to optionally use randomised source/destination
IPv4 addresses/ports.

When doing traffic testing of actual code that /does/ things to the
packet (rather than say, 'bridge.c'), it's typically a good idea to
use a variety of cache-busting and flow-tracking-busting packet
spreads.  The pkt-gen method of testing an IP range was to walk
it linearly - which is fine, but not useful enough.

This can be used to completely randomize the source/destination
addresses (eg to test out flow-tracking-busting) and to keep the
destination fixed whilst randomising the source (eg to test out
what a DDoS may look like.)

Tested:

* Intel ixgbe 10G (82599) netmap

Differential Revision:	https://reviews.freebsd.org/D2309
MFC after:	2 weeks
Sponsored by:	Norse Corp, Inc.
2015-04-19 17:07:51 +00:00
Konstantin Belousov
0538aafc41 The lseek(2), mmap(2), truncate(2), ftruncate(2), pread(2), and
pwrite(2) syscalls are wrapped to provide compatibility with pre-7.x
kernels which required padding before the off_t parameter.  The
fcntl(2) contains compatibility code to handle kernels before the
struct flock was changed during the 8.x CURRENT development.  The
shims were reasonable to allow easier revert to the older kernel at
that time.

Now, two or three major releases later, shims do not serve any
purpose.  Such old kernels cannot handle current libc, so revert the
compatibility code.

Make padded syscalls support conditional under the COMPAT6 config
option.  For COMPAT32, the syscalls were under COMPAT6 already.

Remove WITHOUT_SYSCALL_COMPAT build option, which only purpose was to
(partially) disable the removed shims.

Reviewed by:	jhb, imp (previous versions)
Discussed with:	peter
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2015-04-18 21:50:13 +00:00
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
Bryan Drewery
daa301d1d0 - Fix support with new elftoolchain readelf(1)
- Fix not finding global symbols by checking for D and R.
- Follow symlinks
- Show which matching symbol was used to consider the library needed.

Discussed with:	bapt
2015-04-09 22:16:35 +00:00
Gleb Smirnoff
a9903d5232 Remove debugging code that sneaked in. 2015-04-09 07:52:03 +00:00
Gleb Smirnoff
1ab64a6127 Provide a gdb script, that prints routing tables from a live kernel or a
core file, much like 'netstat -anr' does it for living kernel.

Right now only AF_INET routing table is printed. AF_INET6 needs to
be done. But the most difficult part of the script (recursion!) is
complete.

Sponsored by:	Nginx, Inc.
2015-04-09 07:45:30 +00:00
Gleb Smirnoff
56d5e0967c Stop including if_var.h from userland.
Sponsored by:	Nginx, Inc.
2015-04-06 09:42:23 +00:00
Adrian Chadd
d338532820 Typecast things. 2015-04-06 00:34:59 +00:00
Bryan Drewery
ec251dd4d0 Remove specific reference to g++(1) for WITH_CXX as it may be clang.
MFC after:	1 week
2015-04-03 23:55:04 +00:00
Adrian Chadd
582aab3be4 Don't use a private copy of the ANI definitions - use the HAL definitions.
Whilst I'm at it:

* fix the NI+ to be correct, rather than NI-;
* use the diag api codes, now that the HAL is public.

Tested:

* AR9380, STA mode
2015-04-01 04:57:27 +00:00
Enji Cooper
b41853c8fe - Fix -Wsign issue
- Bump up to WARNS=6
2015-03-31 06:51:13 +00:00
Enji Cooper
b5d45f0794 Minor cleanup before converting to ATF testcases
- Remove blank (tab-only) lines.
- Fix -Wunused warnings.
- Bump up to WARNS= 6
2015-03-31 06:50:28 +00:00
Enji Cooper
76cbe329d6 Cleanup and do minor refactoring before converting testcases to ATF
- Convert errx(-1, ..) to errx(1, ..)
- Move the aio(4) checks to a single function (aio_available); use modfind(2)
  instead of depending on SIGSYS (doesn't work when aio(4) support is missing,
  not documented in the aio syscall manpages).
- Use aio_available liberally in the testcase functions
- Use mkstemp(3) + unlink(2) instead of mktemp(3)
- Fix some -Wunused warnings
- Bump WARNS to 6

MFC after: 1 week
Submitted by: mjohnston [*]
Sponsored by: EMC / Isilon Storage Division
2015-03-31 06:43:55 +00:00
Dmitry Marakasov
1382ef3d6e - Remove more files when MK_ZONEINFO == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:44:46 +00:00
Dmitry Marakasov
587291d90e - Remove more files when MK_TESTS_SUPPORT == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:43:25 +00:00
Dmitry Marakasov
a6d0a667a9 - Remove more files when MK_LEGACY_CONSOLE == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:42:00 +00:00
Dmitry Marakasov
d6c957219b - Remove more files when MK_KERBEROS_SUPPORT == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:39:59 +00:00
Dmitry Marakasov
eb6edb77b0 - Remove more files when MK_KDUMP == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:37:57 +00:00
Dmitry Marakasov
659854cd3f - Remove more files when MK_JAIL == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:36:51 +00:00
Dmitry Marakasov
992cc53e37 - Remove more files when MK_CASPER == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-31 04:31:42 +00:00
Dmitry Marakasov
9c793fa870 - Remove more files when MK_INET6 == no
MFC after:	1 week
Reviewed by:	ngie
Approved by:	ngie
Differential Revision:	D1600
2015-03-30 14:13:01 +00:00