1. 28 Oct, 2019 1 commit
  2. 10 Oct, 2019 1 commit
    • Thomas Markwalder's avatar
      [#35,!517] Rework kea-dhcp6 parsing and server · ce14110b
      Thomas Markwalder authored
      src/bin/dhcp6/ctrl_dhcp6_srv.cc
          Removed setting D2ClientCfg fetch function
      
      src/bin/dhcp6/dhcp6_lexer.ll
      src/bin/dhcp6/dhcp6_parser.yy
          ddns-send-updates
          ddns-override-no-update
          ddns-override-client-update
          ddns-replace-client-name
          ddns-generated-prefix
          ddns-qualifying-suffix
          - added to DHCP4,SHARED_NETWORK,SUBNET4
      
          hostname-char-set
          hostname-char-replacement
          - added to SHARED_NETWORK,SUBNET4
      
      src/bin/dhcp6/dhcp6_srv.cc
          Dhcpv6Srv::processClientFqdn()
          Dhcpv6Srv::createNameChangeRequests()
          Dhcpv6Srv::updateReservedFqdn()
          - use cxt.getDdnsParams()
      
      src/bin/dhcp6/json_config_parser.cc
          configureDhcp6Server()
          - use SrvConfig::moveDdnsParams() to move dhcp-ddns parameters
          - handle new "ddns-" globals
      
      src/bin/dhcp6/tests/config_parser_unittest.cc
      src/bin/dhcp6/tests/fqdn_unittest.cc
      src/bin/dhcp6/tests/get_config_unittest.cc
          Updated tests
      ce14110b
  3. 06 Sep, 2019 1 commit
  4. 05 Aug, 2019 3 commits
  5. 25 Jul, 2019 2 commits
  6. 27 Jun, 2019 1 commit
  7. 13 Jun, 2019 1 commit
  8. 22 May, 2019 4 commits
  9. 27 Mar, 2019 1 commit
  10. 26 Mar, 2019 1 commit
    • Thomas Markwalder's avatar
      [#104,!290] kea-dhcpv6 now supports fetching config from backends · f5fe96c6
      Thomas Markwalder authored
          Infrastructure has been added to kea-dhcp6 such that it can
          now be configured to fetch full and then periodic updates
          from config backends.
      
          Merging the actual fetched content will be done under subsequent
          issues.
      
      src/bin/dhcp6
          ctrl_dhcp6_srv.*
              - ControlledDhcpv6Srv::processConfig() - added logic to schedule CB update timer
              - ControlledDhcpv6Srv::cbFetchUpdates() - new callback function for CB updates
      
          dhcp6_lexer.ll
          dhcp6_parser.yy
              -  Added config-fetch-wait-time
      
          dhcp6_messages.mes
              -  New log messages
      
          dhcp6_srv.*
              - Dhcpv6Srv::cb_control_  - new member for config backend access
              - Dhcpv6Srv::inTestMode() - new function to test for unit test mode
      
          json_config_parser.cc
              - configureDhcp6Server() - invokes full fetch from config backend
      
      src/bin/dhcp6/tests
          config_backend_unittest.cc - new file/tests for config backend testing
          config_parser_unittest.cc - updated
          get_config_unittest.cc - rebuild tests
          kea_controller_unittest.cc - added CB control/timer tests
      
      src/lib/dhcpsrv/
          dhcpsrv_messages.mes - added log message
      	cb_ctl_dhcp6.* - new files that provide v6 impl of config backend controller
      
      doc/examples/kea6/all-keys-current.json - added config-fetch-wait-time
      f5fe96c6
  11. 15 Mar, 2019 2 commits
  12. 18 Jan, 2019 2 commits
  13. 10 Dec, 2018 1 commit
  14. 20 Nov, 2018 3 commits
    • Thomas Markwalder's avatar
      [#260, !120] PacketQueueMgr4/6 are no longer singletons · 0741a035
      Thomas Markwalder authored
          dhcp::IfaceMgr simply owns instances of the packet queue
          managers, rather than them being singletons.
      0741a035
    • Thomas Markwalder's avatar
      [#260,!120] Added dhcp-queue-control parser defaults · c276bb45
      Thomas Markwalder authored
          Added dhcp-queue-control defaults to SimpleParser<4/6>
          Revamped server config unit tests
      c276bb45
    • Thomas Markwalder's avatar
      [#260,!20] Packet queueing is now optional · bbb822b1
      Thomas Markwalder authored
      src/bin/dhcp<4/6>/ctrl_dhcp<4/6>_srv.cc
          ControlledDhcpv<4/6>Srv::processConfig() - now calls
              IfaceMgr::configureDHCPPacketQueue
      
      src/bin/dhcp<4/6>/dhcp<4/6>_parser.yy
          dhpc-queue-control parsing updated to enforce
          enable-queue/queue-type rules
      
      src/bin/dhcp<4/6>/tests/config_parser_unittest.cc
          TEST_F(Dhcp<4/6>ParserTest, dhcpQueueControl)
          TEST_F(Dhcp<4/6>ParserTest, dhcpQueueControlInvalid)
      
      src/lib/dhcp/iface_mgr.*
          IfaceMgr
          - closeSockets()  - now calls stopDHCPReceiver
      
          - openSockets<4/6>() -  now calls startDHCPReceiver
      
          - receive<4/6>Indirect() - new function which monitors receiver
          thread watch sockets, reads DHCP packets from queue
      
          - receive<4/6>Direct() - new function which monitors and reads DHCP
          packets from interface sockets directly
      
          - receive<4/6>() - rewritten to call receive<4/6>Indirect
          if receiver thread is running, otherwise it calls receive<4/6>Direct
      
          - configureDHCPPacketQueue() - new function which either enables queuing
          by creating a new packet queue, or disables it by destroying the
          existing queue
      
      src/lib/dhcp/packet_queue_mgr.h
          PacketQueue::destroyPacketQueue() - new function
      
      src/lib/dhcp/packet_queue_mgr<4/6>.cc
          PacketQueueMgr<4/6>::PacketQueueMgr<4/6>() - no longer creates a
          default packet queue
      
      src/lib/dhcpsrv/cfg_iface.cc
          CfgIface::closeSockets() - removed call to stopDHCPReceiver
          CfgIface::openSockets() - removed call to startDHCPReceiver
      
      src/lib/dhcpsrv/parsers/dhcp_queue_control_parser.*
          DHCPQueueControlParser
          - removed unused family_ member
          - parse() - added support for enable-queue
      
      src/lib/dhcpsrv/tests/dhcp_queue_control_parser_unittest.cc
          - new file
      bbb822b1
  15. 19 Nov, 2018 1 commit
  16. 12 Nov, 2018 2 commits
    • Thomas Markwalder's avatar
      [#260,!120] Added dhcp-queue-control parser defaults · 58e23d61
      Thomas Markwalder authored
          Added dhcp-queue-control defaults to SimpleParser<4/6>
          Revamped server config unit tests
      58e23d61
    • Thomas Markwalder's avatar
      [#260,!120] Packet queueing is now optional · eb244004
      Thomas Markwalder authored
      src/bin/dhcp<4/6>/ctrl_dhcp<4/6>_srv.cc
          ControlledDhcpv<4/6>Srv::processConfig() - now calls
              IfaceMgr::configureDHCPPacketQueue
      
      src/bin/dhcp<4/6>/dhcp<4/6>_parser.yy
          dhpc-queue-control parsing updated to enforce
          enable-queue/queue-type rules
      
      src/bin/dhcp<4/6>/tests/config_parser_unittest.cc
          TEST_F(Dhcp<4/6>ParserTest, dhcpQueueControl)
          TEST_F(Dhcp<4/6>ParserTest, dhcpQueueControlInvalid)
      
      src/lib/dhcp/iface_mgr.*
          IfaceMgr
          - closeSockets()  - now calls stopDHCPReceiver
      
          - openSockets<4/6>() -  now calls startDHCPReceiver
      
          - receive<4/6>Indirect() - new function which monitors receiver
          thread watch sockets, reads DHCP packets from queue
      
          - receive<4/6>Direct() - new function which monitors and reads DHCP
          packets from interface sockets directly
      
          - receive<4/6>() - rewritten to call receive<4/6>Indirect
          if receiver thread is running, otherwise it calls receive<4/6>Direct
      
          - configureDHCPPacketQueue() - new function which either enables queuing
          by creating a new packet queue, or disables it by destroying the
          existing queue
      
      src/lib/dhcp/packet_queue_mgr.h
          PacketQueue::destroyPacketQueue() - new function
      
      src/lib/dhcp/packet_queue_mgr<4/6>.cc
          PacketQueueMgr<4/6>::PacketQueueMgr<4/6>() - no longer creates a
          default packet queue
      
      src/lib/dhcpsrv/cfg_iface.cc
          CfgIface::closeSockets() - removed call to stopDHCPReceiver
          CfgIface::openSockets() - removed call to startDHCPReceiver
      
      src/lib/dhcpsrv/parsers/dhcp_queue_control_parser.*
          DHCPQueueControlParser
          - removed unused family_ member
          - parse() - added support for enable-queue
      
      src/lib/dhcpsrv/tests/dhcp_queue_control_parser_unittest.cc
          - new file
      eb244004
  17. 10 Nov, 2018 1 commit
    • Thomas Markwalder's avatar
      [#260,!20] Packet queueing is now optional · bcd5b1f6
      Thomas Markwalder authored
      src/bin/dhcp<4/6>/ctrl_dhcp<4/6>_srv.cc
          ControlledDhcpv<4/6>Srv::processConfig() - now calls
              IfaceMgr::configureDHCPPacketQueue
      
      src/bin/dhcp<4/6>/dhcp<4/6>_parser.yy
          dhpc-queue-control parsing updated to enforce
          enable-queue/queue-type rules
      
      src/bin/dhcp<4/6>/tests/config_parser_unittest.cc
          TEST_F(Dhcp<4/6>ParserTest, dhcpQueueControl)
          TEST_F(Dhcp<4/6>ParserTest, dhcpQueueControlInvalid)
      
      src/lib/dhcp/iface_mgr.*
          IfaceMgr
          - closeSockets()  - now calls stopDHCPReceiver
      
          - openSockets<4/6>() -  now calls startDHCPReceiver
      
          - receive<4/6>Indirect() - new function which monitors receiver
          thread watch sockets, reads DHCP packets from queue
      
          - receive<4/6>Direct() - new function which monitors and reads DHCP
          packets from interface sockets directly
      
          - receive<4/6>() - rewritten to call receive<4/6>Indirect
          if receiver thread is running, otherwise it calls receive<4/6>Direct
      
          - configureDHCPPacketQueue() - new function which either enables queuing
          by creating a new packet queue, or disables it by destroying the
          existing queue
      
      src/lib/dhcp/packet_queue_mgr.h
          PacketQueue::destroyPacketQueue() - new function
      
      src/lib/dhcp/packet_queue_mgr<4/6>.cc
          PacketQueueMgr<4/6>::PacketQueueMgr<4/6>() - no longer creates a
          default packet queue
      
      src/lib/dhcpsrv/cfg_iface.cc
          CfgIface::closeSockets() - removed call to stopDHCPReceiver
          CfgIface::openSockets() - removed call to startDHCPReceiver
      
      src/lib/dhcpsrv/parsers/dhcp_queue_control_parser.*
          DHCPQueueControlParser
          - removed unused family_ member
          - parse() - added support for enable-queue
      
      src/lib/dhcpsrv/tests/dhcp_queue_control_parser_unittest.cc
          - new file
      bcd5b1f6
  18. 07 Nov, 2018 1 commit
  19. 06 Nov, 2018 1 commit
    • Thomas Markwalder's avatar
      [#42] kea-dhcp6 can now parse and use queue-control · 32d8549e
      Thomas Markwalder authored
      src/bin/dhcp6/ctrl_dhcp6_srv.cc
          ControlledDhcpv6Srv::processConfig() - adde packet queue config logic
      
      src/bin/dhcp6/dhcp6_lexer.ll
          Added parsing of queue-control
      
      src/bin/dhcp6/dhcp6_messages.mes
          Added DHCP6_CONFIG_PACKET_QUEUE message
      
      src/bin/dhcp6/dhcp6_parser.yy
      
      src/bin/dhcp6/json_config_parser.cc
          configureDhcp6Server() - now parses "queue-control"
      
      src/bin/dhcp6/parser_context.*
          Added QUEUE_CONTROL
      
      src/bin/dhcp6/tests/config_parser_unittest.cc
          TEST_F(Dhcp6ParserTest, queueControl)
          TEST_F(Dhcp6ParserTest, queueControlInvalid) - new tests
      
      src/lib/dhcpsrv/parsers/queue_control_parser.*
          Revamped to construct an ElementPtr rather than QueueControl
      32d8549e
  20. 07 Sep, 2018 1 commit
  21. 03 Sep, 2018 1 commit
  22. 30 Apr, 2018 1 commit
  23. 12 Apr, 2018 2 commits
  24. 23 Mar, 2018 1 commit
  25. 11 Mar, 2018 1 commit
  26. 07 Mar, 2018 1 commit
    • Thomas Markwalder's avatar
      [5477] Addressed review comments · 8f5ce706
      Thomas Markwalder authored
      src/bin/dhcp4/ctrl_dhcp4_srv.*
      src/bin/dhcp6/ctrl_dhcp6_srv.*
          Changed dbReconnect() to accept ReconnectCtlPtr
          Added commentary for dbReconnect and dbLostCallback
      
      src/lib/dhcpsrv/database_connection.h
          Removed extraneous typedef
      
      many files:
          Changed DatabaseConnection::Callback to ::DbLostCallback
      
      src/lib/dhcpsrv/tests/database_connection_unittest.cc
          Added commentary to text fixture and tests
      8f5ce706
  27. 01 Mar, 2018 1 commit
    • Thomas Markwalder's avatar
      [5477] kea-dhcp6 now supports db reconnect · 78b8edb6
      Thomas Markwalder authored
          kea-dhcp6
              added support for max-reconnect-tries and reconnect-wait-time
              to lease and host db parsers
      
              Added a callback for when DB backends detect loss of connectivity
      
              Added a self-rescheduling method to attempt to reconnect to the
              backends if retries are enabled
      
          dhcpsrv
              PgSqlConnection::checkStatementError() - Modified "fatal" logic
              to throw after invoking db_lost_callback.
      
          Misc. cleanup
      78b8edb6
  28. 08 Feb, 2018 1 commit