2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-30 05:27:55 +00:00

77 Commits

Author SHA1 Message Date
Marcin Siodelski
e72a0654e7 [5649] Created common header file with control channel timeouts. 2018-06-14 12:04:39 +02:00
Thomas Markwalder
e47da044a9 [5599] Control channel now emits info on any discarded data
doc/guide/ctrl-channel.xml
    Minor update to using socat

src/bin/dhcp4/tests/ctrl_dhcp4_srv_unittest.cc
src/bin/dhcp4/tests/ctrl_dhcp4_srv_unittest.cc
    Updated testing for server response to server
    side control channel timeouts

src/lib/cc/json_feed.h
        JSONFeed::getProcessedText() - new method that
        returns a copy of the current accumulation of
        accepted text

src/lib/config/config_messages.mes
src/lib/config/command_mgr.cc
    Connection::receiveHandler() - added log info about
    discarded data when client closes connection

    Connection::timeoutHandler() - added info about discarded
    data to server's response to client on server side timeout
2018-06-05 11:06:15 -04:00
Marcin Siodelski
6e767f8925 [master] Do not use std::rand in long response unit test.
It gives unpredictable results on OpenBSD. Okayed on jabber.
2018-05-16 18:27:40 +02:00
Marcin Siodelski
5a1f60fc6b [5458] CtrlDhcpv6Srv now passes network_state to dhcp6_srv_configured co. 2018-04-30 17:17:10 +02:00
Marcin Siodelski
fc7e9a669f [5442] Implemented 'dhcp-disable' and 'dhcp-enable' commands for DHCPv6. 2017-12-04 15:04:47 +01:00
Tomek Mrugalski
953ded7679 [5357] Stupid warning removed 2017-09-08 23:44:03 +02:00
Marcin Siodelski
82b0234ac7 [master] Added explicit to IOServiceWork to remove 2 cppcheck regressions.
This is trivial fix which I am committing on my discretion.
2017-07-05 18:23:14 +02:00
Marcin Siodelski
8531a65521 [master] Merge branch 'trac5318' 2017-07-05 16:32:14 +02:00
Francis Dupont
dd19455911 [master] Finishing merge of trac3389a (re-detect interfaces) 2017-07-05 14:52:54 +02:00
Marcin Siodelski
6f075ba71c [5318] Addressed review comments.
Also, when timeout occurs in control channel connection, all async tasks
are cancelled.
2017-07-05 14:18:57 +02:00
Marcin Siodelski
9bab1aae6d [5318] Default control connection timeout is now 10s. 2017-07-04 17:55:20 +02:00
Marcin Siodelski
82a6390bb6 [5318] Added unit tests for long connections in DHCPv6. 2017-07-03 17:47:12 +02:00
Marcin Siodelski
ab11e2394e [5318] PoC for extending maximum request/response over 64k in Ctrl channel. 2017-07-03 12:01:18 +02:00
Marcin Siodelski
c7f86fdad0 [5317] Addressed review comments. 2017-06-30 15:23:04 +02:00
Marcin Siodelski
d913e9a739 [5317] Cleanup of the CommandMgr's code. 2017-06-22 18:35:05 +02:00
Marcin Siodelski
c4fb6001e7 [5317] Only a single control command connection is now allowed. 2017-06-22 13:39:19 +02:00
Marcin Siodelski
2688a2a886 [5317] Use poll() instead of run_one() in Ctrl DHCP server unit tests. 2017-06-22 12:15:40 +02:00
Marcin Siodelski
03d3566dce [5317] Use ASIO unix domain sockets in DHCPv6 server. 2017-06-21 19:16:28 +02:00
Tomek Mrugalski
002e269071 [5187] Kea is less strict with filename argument to config-write 2017-04-18 20:37:11 +02:00
Francis Dupont
79b5468afa [5213] indent and untabily 2017-04-18 09:28:16 +02:00
Tomek Mrugalski
27cf2211cd [5213] config-reload implemented, set-config renamed to config-set 2017-04-14 13:51:51 +02:00
Marcin Siodelski
5f47e18210 [5078] Corrected expected result in two unit tests. 2017-03-29 18:43:15 +02:00
Francis Dupont
5b8d7823cd [5150a] Merged review improvements 2017-03-21 19:50:07 +01:00
Francis Dupont
3ac8487a26 [5150a] Rebased 2017-03-17 06:31:35 +01:00
Francis Dupont
e38e8d974c [102b] rebased 2017-03-17 03:39:22 +01:00
Francis Dupont
d996bf25a1 [3389a] Commit before regen 2017-03-16 23:38:52 +01:00
Francis Dupont
5cf8210811 [5151] Restored previous code in checkConfigWrite (no routine to parse full config) 2017-03-15 20:00:47 +01:00
Francis Dupont
3bd3068be8 [5151] Some small fixes 2017-03-15 18:59:07 +01:00
Tomek Mrugalski
d0dc88fe5e [5151] config-get, config-write implemented for DHCPv6 2017-03-15 17:04:15 +01:00
Tomek Mrugalski
2c9ba565e1 [5076] decommentJSONFile moved to isc::test 2017-02-07 13:29:04 +01:00
Tomek Mrugalski
52158a480c [master] Unit-test fixes after #5122 and #5123 merged. 2017-01-28 12:01:23 +01:00
Tomek Mrugalski
44e812a308 [5122] Duplicate position printed in exceptions fixed 2017-01-27 21:39:45 +01:00
Tomek Mrugalski
523deee862 [5122] Contexts removed from SubnetConfigParser 2017-01-27 15:41:30 +01:00
Thomas Markwalder
4afbdcf89c [master] Implement set-config command in kea-dhcp4/6
Merges in branch 'trac5046'
2017-01-04 15:46:12 -05:00
Thomas Markwalder
ebb863e372 [5046] Addressed review comments
Added memfile without persistence to set_config unit tests. This eliminates
the tests attempting to create the csv file.

Updated copyrights.

Fixed misspelling.
2017-01-03 08:23:44 -05:00
Thomas Markwalder
d4d8665494 [master] kea-dhcp4/6 support libreload command
Merge branch 'trac3238'
2016-12-22 14:35:46 -05:00
Thomas Markwalder
e5a6c2b4f8 [5046] CommandMgr dups the connection socket prior to executing command
src/lib/config/command_mgr.cc
    CommandMgr::commandReader(int sockfd) - duplicates the connection
    socket to use for repsonding in case the command closes the channel.

src/lib/testutils/io_utils.cc
    fileExists() - now uses stat() function so one can use it on any
    type of file, like a unix socket

updated unit tests accordingly
2016-12-22 13:38:00 -05:00
Thomas Markwalder
354e68adec [5046] Move apply logging and config commit from processConfig to set-config handler
src/bin/dhcp4/ctrl_dhcp4_srv.cc
    commandConfigReloadHandler() - use commandSetConfigHandler()
    instead of processConfig() to account for logging config

    commandSetConfigHandler() - apply logging config and commit config here instead of
    in processConfig()

src/bin/dhcp4/tests/dhcp4_test_utils.h
     ~NakedDhcpv4Srv() - removed unecesary initLogger call

src/bin/dhcp4/tests/kea_controller_unittest.cc
     ~JSONFileBackendTest() - removed unecessary call to setDefaultLogging

src/bin/dhcp6/ctrl_dhcp6_srv.cc
    commandConfigReloadHandler() - use commandSetConfigHandler()
    instead of processConfig() to account for logging config

    commandSetConfigHandler() - apply logging config and commit config here instead of
    in processConfig()

src/bin/dhcp6/tests/ctrl_dhcp6_srv_unittest.cc
    createUnixChannelServer() -  added config commit so command channel behavior
    is correct

    TEST_F(CtrlDhcpv6SrvTest, configReload)
        Wrap configuration in Dhcp6 element

    TEST_F(CtrlChannelDhcpv6SrvTest, set_config)
        Turn off timers in config

src/lib/dhcpsrv/srv_config.cc
    SrvConfig::applyLoggingCfg() - remove logic added to not call manager.process
    when there are no specs.
2016-12-15 16:15:26 -05:00
Thomas Markwalder
767bf1503f [5046] Avoid wiping logging when config is empty
src/lib/dhcpsrv/srv_config.cc
    SrvConfig::applyLoggingCfg() - now only calls LoggerManager::process()
    if the logger config isn't empty

src/bin/dhcp6/ctrl_dhcp6_srv.cc
src/bin/dhcp6/tests/dhcp6_test_utils.cc
    Minor clean up and commentary

src/bin/dhcp6/kea_controller.cc
    configure(const std::string& file_name)
    - Removed initial rollback, now done in commandSetConfigHandler()

src/bin/dhcp6/tests/ctrl_dhcp6_srv_unittest.cc
   - Removed unnecessary call to initLogger
2016-12-09 16:06:38 -05:00
Thomas Markwalder
cb8f8ae36e [5046] Fixed logger setup on set-config
src/bin/dhcp6/ctrl_dhcp6_srv.cc
    ControlledDhcpv6Srv::commandSetConfigHandler()
    - Add logger config
    - Use processConfig() directly instead of config-reload command

src/bin/dhcp6/kea_controller.cc
    configure(const std::string& file_name)
      - Remove logger config
      - Use set-config command instead of config-reload

src/bin/dhcp6/tests/ctrl_dhcp6_srv_unittest.cc
    createUnixChannelServer()
    - added call to initLogger() to revert logging to unit test logger

src/bin/dhcp6/tests/dhcp6_test_utils.cc
    BaseServerTest::~BaseServerTest() {
    - added call to initLogger() to revert logging to unit test logger
2016-12-08 14:56:17 -05:00
Thomas Markwalder
a9a3d0d5dd [5046] kea-dhcp6 now implements set-config command
src/bin/dhcp6/ctrl_dhcp6_srv.h
src/bin/dhcp6/ctrl_dhcp6_srv.cc
    ControlledDhcpv6Srv::commandSetConfigHandler() - new method to process
    the set-config command.

    ControlledDhcpv6Srv::processCommand() - call new set-config handler

    ControlledDhcpv6Srv::processConfig() - added logic to apply logging
    and commit configuration after  successful reconfig

    ControlledDhcpv6Srv::ControlledDhcpv6Srv(uint16_t port) - added registration
    of set-config command

    ControlledDhcpv6Srv::~ControlledDhcpv6Srv() - unregisters set-config command

src/bin/dhcp6/json_config_parser.cc
    configureCommandChannel() - extracted logic to reconfigure command channel
    to its own fucntion

src/bin/dhcp6/kea_controller.cc
    configure() - removed logic to apply logging and commit config, now done
    in ControlledDhcpv6Srv::processConfig()

src/bin/dhcp6/tests/ctrl_dhcp6_srv_unittest.cc
    TEST_F(CtrlChannelDhcpv6SrvTest, set_config) - new test to exercise the
    set-config command
2016-12-07 10:32:22 -05:00
Francis Dupont
4204443ad1 [5014_phase2] Use Dhcp6 (vs JSON) parser as much as possible in unit tests 2016-11-29 19:58:37 +01:00
Francis Dupont
55ad23aa80 [5014_phase2] Use parser in place of fromJSON 2016-11-29 19:58:37 +01:00
Thomas Markwalder
2659a1acbe [3238] Enabled libreload command
doc/guide/ctrl-channel.xml
    Added libreload to common command section

src/bin/dhcp4/ctrl_dhcp4_srv.cc
    Registered and deregistered libreload command

src/bin/dhcp4/tests/ctrl_dhcp4_srv_unittest.cc
    TEST_F(CtrlChannelDhcpv4SrvTest, libreload) - modified to
    test using CommandMgr instance

src/bin/dhcp6/ctrl_dhcp6_srv.cc
    Registered and deregistered libreload command

src/bin/dhcp6/tests/ctrl_dhcp6_srv_unittest.cc
    TEST_F(CtrlChannelDhcpv6SrvTest, libreload) - modified to
    test using CommandMgr instance
2016-11-22 14:09:22 -05:00
Tomek Mrugalski
e10309c77e [4297] Unit-tests updated after recent API change. 2016-03-09 18:59:06 +01:00
Marcin Siodelski
3d18318f68 [4236] Updated copyright dates in all files. 2015-12-16 15:28:44 +01:00
Marcin Siodelski
fe9dd86d20 [4236] Replaced license text in all files containing it. 2015-12-16 13:37:29 +01:00
Marcin Siodelski
4373258d9d [4211] Added parameter which enables/disables write of a DUID in file. 2015-11-30 18:07:35 +01:00
Marcin Siodelski
81467147e2 [master] Use LeaseMgrFactory::instance() rather than constructor.
This fixes issues reported by the coverity scans recently.
2015-11-02 12:30:58 +09:00
Francis Dupont
e03cf770b3 [3978] Addressed comments 2015-10-23 04:23:45 +02:00