[3427] Changes after review:
- Kea ARM updated
- shell tests for Kea4,Kea6 and D2 are now passing
- kea.conf updated with logging info
- Various improvements in Daemon and LogConfigParser
- DEFAULT_SYSLOG_NAME removed
- Copyright years fixed
- Couple additional tests written
[3436] Added check to verify error messages contain position info
Modifiedl D2CfgMgr.configPermutations test to verify that
parsing error messages contain position information.
Fixed format of one error message in D2CfgMgr that didn't
match. Hopefully, Marcin is happy now.
[master] Fixed failing unit tests for d2::IOSignal
D2 unit test IOSignalTest::hammer was scaled back to accomodate
sluggish VMs. IOSignaTest::mixedSignals was failing intermittently on
NetBSD VM and was rewritten to test the quantity of signals received
rather than the order.
[master] Fixed unit tests for asiolink::IntervalTimer
The unittests IntervalTimerTest.intervalModeTest and
IntervalTimerTest.timerReuseTest were failing under NetBSD VM.
They have been restructured to be less susceptible to timing.
Marcin Siodelski [Fri, 27 Jun 2014 09:20:02 +0000 (11:20 +0200)]
[3465] Avoid race conditions when checking if server is down.
There is a new function used in keactrl tests which waits for the server
to shutdown, rather than check if it is down already. This is to avoid
race condition when the process may not completely terminate when we
check that it is.
[3436] Added configuration permutations test from file to D2
Added the unit test D2CfgMgrTest.configPermutations to
d2_cfg_mgr_unittests.cc. This test iterates through the
list of test configurations defined in a specialzed JSON
data file. It provides a relatively painless way to test
a large number configurations without hard-coding them.
Added the test data file:
It currently contains over sixty tests. The vast majority
of these tests are invalid content tests.
D2CfgMgr::buildParams now validates all of the
top level params prior to calling the D2Params
constructor. This allows element position info
to be included in error logging.
[3436] Added position info to top level parser creation in D2
Added element position argument to DCfgMgrBase::createConfigParser(),
so derivations have access to print position info unsupported top level
element errors.
Removed two log messages DCT_ORDER_ERROR and DCT_ORDER_NO_ELEMENT. These
conditions are well explained in exceptions thrown and these logs just
cluttered the log output.
Removed extra text from DCTL_CONFIG_LOAD_FAIL and DCTL_PARSER_FAIL log
messages. The log ID is self-explanatory and the underlying exceptions
provide ample explanation of the error. Makes the log output much easier
to understand.
Revised items-not-in-parse-order detection in DCfgMgrBase::parseConfig().
Rather than complicated counting logic, objects are removed from the list
as they are parsed. Any left over were not in the parsing-order.
Removed try-catch-throw from DCfgMgrBase::buildAndCommit. This method
already throws its own exception. Catching, logging, and re-throwing
exceptions from underneath it really just server to clutter the log.
distcheck was failing to tests/dhcp(4/6)_process_tests.sh.
Since these files are now constructed from a .in file,
they must be pathed in abs_builddir.
dhcp(4/6)/tests/Makefile.am updated.
Tomek Mrugalski [Wed, 25 Jun 2014 12:15:49 +0000 (14:15 +0200)]
[3413] Changes after review:
- dhcp6_test.py removed
- src/lib/testuitls/testdata/*.wire files are now in repo,
no longer need python3 script to generate
- src/lib/cc/proto_defs.h added to repo, no longer autogenerated
- Added comment to get-rdatacode.py
- removed LIBRARY_PATH_PLACEHOLDER hacks from several Makefiles.
- ChangeLog entry added.
Marcin Siodelski [Wed, 25 Jun 2014 08:25:46 +0000 (10:25 +0200)]
[3422] Address review comments.
- Renamed kea4 and kea6 parameters to dhcp4 and dhcp6
- Location of the kea binaries is specified in the keactrl.conf
- Swap pools and subnets in kea.conf.
- Renamed keactrl commit command to reload
- Added -s and -c command line options.
Marcin Siodelski [Mon, 23 Jun 2014 17:02:46 +0000 (19:02 +0200)]
[3437] Filter out packets sent to global unicast address.
On BSD the multicast packets are received on the socket bound to any
address. So, the packets sent to global unicast address must be filtered
out by the DHCP server.
[3407] Added more thorough work around for #3470 issue
Move signal hanlding initialization til after the
initial configuration but before calling runProcess().
Added additional call to clear the SignalSet inside
catch() block for runProcess.