1. 25 Apr, 2016 1 commit
    • Thomas Markwalder's avatar
      [4239] Addressed review comments · f1162218
      Thomas Markwalder authored
      src/lib/dhcpsrv/pgsql_lease_mgr.cc
          Amended commentary for getColumnValue() variants
          Added decription of Uiaid union
          Changed std::system to ::system
      
      src/lib/dhcpsrv/testutils/mysql_schema.cc
          Changed std::system to ::system
      
      src/lib/dhcpsrv/testutils/mysql_schema.h
          Fixed typo
      
      src/lib/dhcpsrv/testutils/pgsql_schema.cc
          Removed extraneous include
          Changed std::system to ::system
      f1162218
  2. 12 Apr, 2016 1 commit
  3. 11 Apr, 2016 2 commits
    • Thomas Markwalder's avatar
      [4239] Added drop scripts for both MySQL and Postgresql · 5b978dab
      Thomas Markwalder authored
      Rather than use hard-coded lists or query logic for dropping the
      database all MySQL and Posgresql tests use new drop scripts
      added to src/bind/admin/scripts.
      
      src/bin/admin/scripts/mysql/dhcpdb_drop.mysql
          - New SQL script to drop a MySQL database
      
      src/bin/admin/scripts/pgsql/dhcpdb_drop.pgsql
          - New SQL script to drop a Postgresql database
      
      src/bin/admin/tests/mysql_tests.sh.in
          - mysql_wipe() - modified to use new drop script
      
      src/bin/admin/tests/pgsql_tests.sh.in
          - pgsql_wipe() modified to use new drop script
      
      src/lib/dhcpsrv/tests/mysql_lease_mgr_unittest.cc
          - TEST(MySqlOpenTest, OpenDatabase) - added show_err=true
          to destroyMySQLSchema() calls
      
      src/lib/dhcpsrv/tests/pgsql_lease_mgr_unittest.cc
          - TEST(PgSqlOpenTest, OpenDatabase) - added show_err=true
          to destroyMySQLSchema() calls
      
      src/lib/dhcpsrv/testutils/mysql_schema.cc
          - destroyMySQLSchema(bool show_err) - modified to use the new
          drop script and accept show_err parameter
      
      src/lib/dhcpsrv/testutils/pgsql_schema.cc
          - destroyPgSQLSchema(bool show_err) - modified to use the new
          drop script and accept show_err parameter
      5b978dab
    • Thomas Markwalder's avatar
      [4239] MySQL and Postgresql unit tests use production schema create scripts · b45da895
      Thomas Markwalder authored
      src/lib/dhcpsrv/testutils/schema.h
      src/lib/dhcpsrv/testutils/schema.cc
          New files that contain constants and functions common to RDBMS
          testing
      
      src/lib/dhcpsrv/testutils/pgsql_schema.h
      src/lib/dhcpsrv/testutils/pgsql_schema.cc
          New files that contain constants and functions needed for
          Posgresql testing
      
      src/lib/dhcpsrv/testutils/mysql_schema.cc
      src/lib/dhcpsrv/testutils/mysql_schema.h
          Removed common constants and functions
          Added MYSQL_VALID_TYPE
          runMySQLScript() - new function to submit a script to MySQL
      
      src/lib/dhcpsrv/pgsql_lease_mgr.cc
          PgSqlLease6Exchange - replaced uint32_t iaid member with Uiaid union
          instance.  This permits the value to be safely stored in the database
          as an INT (signed 4-byte value)
          getColumnValue()- added int32_t variant of this method
      
      src/lib/dhcpsrv/tests/Makefile.am
          Removed schema_pgsql_copy.h
      
      src/lib/dhcpsrv/tests/mysql_host_data_source_unittest.cc
      src/lib/dhcpsrv/tests/mysql_lease_mgr_unittest.cc
          Altered tests to use MYSQL_VALID_TYPE
      
      src/lib/dhcpsrv/tests/pgsql_lease_mgr_unittest.cc
          Moved constants and functions testutils/pgsl_schema.h & cc
      b45da895
  4. 08 Apr, 2016 2 commits
    • Thomas Markwalder's avatar
      [4239] Fix constraint-based unit test failure · 395104bb
      Thomas Markwalder authored
      src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.cc
         - GenericLeaseMgrTest::testLease6HWTypeAndSource() - now uses valid values
           for hardware address source
      395104bb
    • Thomas Markwalder's avatar
      [4239] MySQL unit tests in dhcpsrv now use production db create script · 9c26b5fa
      Thomas Markwalder authored
      src/lib/dhcpsrv/tests/mysql_lease_mgr_unittest.cc
          TEST(MySqlOpenTest, OpenDatabase) - pass in show_err=true for call
          to createMySQLSchema()
      
      src/lib/dhcpsrv/testutils/Makefile.am
          - Added definition of TEST_ADMIN_SCRIPTS_DIR
          - removed schema_mysql_copy.h
      
      src/lib/dhcpsrv/testutils/mysql_schema.cc
          - Removed include of schema_mysql_copy.h
          - destroyMySQLSchema() - now contains destroy_statment[] formerly
          defined in schema_mysql_copy.h
          - createMySQLSchema() - Creates the database through command line
          invocation of MySQL cli, mysql, passing it the production database
          creation script
      9c26b5fa
  5. 07 Apr, 2016 3 commits
  6. 06 Apr, 2016 13 commits
  7. 05 Apr, 2016 10 commits
  8. 04 Apr, 2016 8 commits
    • Thomas Markwalder's avatar
      [4243] Distcheck failure correction · b71852dc
      Thomas Markwalder authored
          Distcheck sporadically fails to clean up test_leases.csv.2
          can be left behind by dhcp4 and dhcp6 testing.
      
      src/bin/dhcp4/tests/Makefile.am
      src/bin/dhcp6/tests/Makefile.am
          - Added test_leases.csv.* to CLEANFILES
      b71852dc
    • Thomas Markwalder's avatar
      [4243] Addressed review comments · 869c33a5
      Thomas Markwalder authored
      src/lib/asiolink/Makefile.am
          added asio_wrapper.h to list of sources
      
      src/lib/asiolink/asio_wrapper.h
          updated commentary to include GNU/Boost bugs and
          added prominent warning comment
      869c33a5
    • Shawn Routhier's avatar
      7e468146
    • Thomas Markwalder's avatar
      [4259] Updated admin guide and spec files · fe77538d
      Thomas Markwalder authored
          Revamped discussion of FQDN name generation and use of the
          replace-client-name parameter in the v4 and v6 guides.
      fe77538d
    • Thomas Markwalder's avatar
      [4259] kea-dhcp6 now supports replace-client-name modes · b3f483e5
      Thomas Markwalder authored
          src/bin/dhcp6/dhcp6_messages.mes
              - Added new log message, DHCP6_DDNS_SUPPLY_FQDN
      
          src/bin/dhcp6/dhcp6_srv.cc
              - Dhcpv6Srv::processClientFqdn() - modified to support the name
              replacement modes
      
          src/bin/dhcp6/tests/fqdn_unittest.cc
              - FqdnDhcpv6SrvTest::testReplaceClientNameMode() new method which tests
              a server's handling of a single client packet for a given
              replace-client-name mode.
      
              - TEST_F(FqdnDhcpv6SrvTest, replaceClientNameModeTest) - new test which
              exercises the permutations of client packets and replace-client-name
              modes.
      b3f483e5
    • Thomas Markwalder's avatar
      [4259] kea-dhcp4 now supports replace-client-name modes · bc8768e9
      Thomas Markwalder authored
          src/bin/dhcp4/dhcp4_messages.mes
              - Added new log message DHCP4_SUPPLY_HOSTNAME
      
          src/bin/dhcp4/dhcp4_srv.cc
              - Dhcpv4Srv::processClientName() - pushed lack of host option in the
              client request down into processHostoption()
      
              - Dhcpv4Srv::processHostnameOption() - modified to support the new name
              replacement modes
      
          src/bin/dhcp4/tests/fqdn_unittest.cc
              - NameDhcpv4SrvTest:: testReplaceClientNameMode() - new method which
              tests a server's handling of a single client packet for a given
              replace-client-name mode.
      
              - TEST_F(NameDhcpv4SrvTest, replaceClientNameModeTest) - new test which
              exercises the permutations of client packets and replace-client-name
              modes.
      bc8768e9
    • Thomas Markwalder's avatar
      [4259] Converted replace-client-name from boolean to enumeration · d80e28d3
      Thomas Markwalder authored
          The D2 client configuration parameter, replace-client-name, was
          changed from a boolean, to an enumerated list of modes:
      
              "NEVER" - do not alter or supply the client name
              "ALWAYS" - always replace the client name, or supply it if
               not sent by the client
              "WHEN_PRESENT" - replace the client name sent by the client,
               do not supply one otherwise
              "WHEN_NOT_PRESENT" - supply the client name only if one was
              not sent by the client
      
          src/lib/dhcpsrv/d2_client_cfg.cc
          src/lib/dhcpsrv/d2_client_cfg.h
              Added the D2ClientConfig::ReplaceClientNameMode enumeration.
      
          src/lib/dhcpsrv/parsers/dhcp_parsers.cc
              - Alter replace-client-name parsing to parse the mode labels.
              - Maps boolean literals true and false to RCM_WHEN_PRESENT and
              RCM_NEVER respectively
      
          src/bin/dhcp4/dhcp6_srv.cc
          src/bin/dhcp4/dhcp4_srv.cc
          src/lib/dhcpsrv/d2_client_mgr.h
              - Adapted to use the enumeration
      
          src/bin/dhcp4/tests/config_parser_unittest.cc
          src/bin/dhcp4/tests/fqdn_unittest.cc
          src/bin/dhcp6/tests/config_parser_unittest.cc
          src/bin/dhcp6/tests/fqdn_unittest.cc
          src/lib/dhcpsrv/tests/cfgmgr_unittest.cc
          src/lib/dhcpsrv/tests/d2_client_unittest.cc
          src/lib/dhcpsrv/tests/d2_udp_unittest.cc
          src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
              - Alter existing tests to use the enumeration. Note false was replaced
              with RCM_NEVER and true with RCM_WHEN_PRESENT
      d80e28d3
    • Thomas Markwalder's avatar
      [4259] Add unit tests to ensure StringParser can parse booleans · 849439da
      Thomas Markwalder authored
          Added checks to ensure that StringParser can handle being given
          a boolean literal (i.e. unquoted true or false)
      849439da