]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#2290] release changes Kea-2.1.2
authorAndrei Pavel <andrei@isc.org>
Tue, 25 Jan 2022 18:18:43 +0000 (20:18 +0200)
committerAndrei Pavel <andrei@isc.org>
Tue, 25 Jan 2022 18:18:43 +0000 (20:18 +0200)
16 files changed:
ChangeLog
platforms.rst
src/bin/dhcp4/dhcp4_srv.cc
src/bin/dhcp4/tests/vendor_opts_unittest.cc
src/hooks/dhcp/pgsql_cb/pgsql_cb_dhcp4.cc
src/hooks/dhcp/pgsql_cb/pgsql_cb_impl.cc
src/lib/d2srv/d2srv.dox
src/lib/database/db_messages.cc
src/lib/database/db_messages.mes
src/lib/dhcpsrv/libdhcpsrv.dox
src/lib/dhcpsrv/tests/cfg_shared_networks4_unittest.cc
src/lib/dhcpsrv/tests/cfg_shared_networks6_unittest.cc
src/lib/pgsql/pgsql_connection.h
src/lib/pgsql/tests/pgsql_connection_unittest.cc
src/share/database/scripts/pgsql/dhcpdb_create.pgsql
src/share/database/scripts/utils/are-scripts-in-sync.py

index 734c1095216cd59bea9ebf2f6e47ad5b808e1d43..7b57a3ed851687a1d368b7ef2ef848f1ac4dc381 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -92,7 +92,7 @@ Kea 2.1.2 (development) released on Jan 26, 2022
        were made to the PostgreSQL database schema.  In addition, the
        upgrade scripts were renamed to ensure proper file name ordering.
        Note that PostgreSQL CB is not yet functional.
-       (Gitlab #2244)
+       (Gitlab #2183, #2244, #2245)
 
 1974.  [func]          fdupont
        The global parameter lookup has been refactored to provide better
index e4d1f681523f1837a50e5fb6f580e3bfc5950455..85387c96cbe96849c29a9fa42dde1f830a0c7c5d 100644 (file)
@@ -22,9 +22,9 @@ and FreeBSD systems. Kea-|release| builds have been tested on:
 
 * Alpine - 3.12, 3.13
 * CentOS — 7, 8
-* Debian — 9, 10
-* Fedora — 33, 34
-* FreeBSD — 12.1, 13.0
+* Debian — 9, 10, 11
+* Fedora — 34
+* FreeBSD — 12, 13
 * Ubuntu — 18.04, 20.04, 21.04
 
 There are currently no plans to port Kea to Windows systems.
@@ -38,7 +38,7 @@ do so quickly due to lack of hardware, less familiarity on the part of
 engineering staff, and other constraints.
 
 * Alpine — 3.11
-* FreeBSD - 11.4
+* FreeBSD - 11
 * macOS — 10.13, 10.14
 
 Community-Maintained
index 5132a443ea31a332aeaa49078cc50057f7bcd9ab..7df4010255d9b111e1cb72debe75bb72e610f1bf 100644 (file)
@@ -2105,7 +2105,7 @@ Dhcpv4Srv::processHostnameOption(Dhcpv4Exchange& ex) {
     // i.e. DDNS configuration.  If we have a reserved hostname we should
     // use it and send it back.
     if (ctx->currentHost() && !ctx->currentHost()->getHostname().empty()) {
-        // Qualify if there is an a suffix configured.
+        // Qualify if there is a suffix configured.
         std::string hostname = d2_mgr.qualifyName(ctx->currentHost()->getHostname(),
                                                   *(ex.getContext()->getDdnsParams()), false);
         // Convert it to lower case.
index c1106ca5cff53850220e39338956c28ee24b514f..08f446d565b42bf7a336374a3afd8b88ae58f0ec 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2019-2021 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2019-2022 Internet Systems Consortium, Inc. ("ISC")
 //
 // This Source Code Form is subject to the terms of the Mozilla Public
 // License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -1465,7 +1465,7 @@ TEST_F(VendorOptsTest, clientOption43RawClass) {
     EXPECT_TRUE(client.getContext().response_);
 }
 
-// Verifies that an a client query with a truncated length in
+// Verifies that a client query with a truncated length in
 // vendor option (125) will still be processed by the server.
 TEST_F(Dhcpv4SrvTest, truncatedVIVSOOption) {
     NakedDhcpv4Srv srv(0);
index f00324e88783c62582a55d55f00dc493f8f281f9..515e7e19e2cb6426979114d7fe96e5b209afbe3c 100644 (file)
@@ -847,7 +847,7 @@ public:
                            ServerSelector::ALL(), "deleting all servers",
                            false);
 
-        // No argumens, hence empty input bindings.
+        // No arguments, hence empty input bindings.
         PsqlBindArray in_bindings;
 
         // Attempt to delete the servers.
index 01efe41e368311ae38536c27ff7c581939fb15b4..1fdbb9fd80e948813c4a52d41d04b88496cf7780 100644 (file)
@@ -567,7 +567,7 @@ PgSqlConfigBackendImpl::createUpdateServer(const int& create_audit_revision,
         // Attempt to update the server.
         if (!updateDeleteQuery(update_index, in_bindings)) {
             // Possible only if someone deleted it since we tried to insert it,
-            // the query is broken, or the bindings are nonesense.
+            // the query is broken, or the bindings are nonsense.
             isc_throw(Unexpected, "Update server failed to find server tag: " << tag);
         }
     }
@@ -615,7 +615,7 @@ PgSqlConfigBackendImpl::attachElementToServers(const int index,
         std::string server_tag = tag.get();
         server_bindings.add(server_tag);
 
-        // Insert the server assocation.
+        // Insert the server association.
         insertQuery(index, server_bindings);
 
         // Remove the prior server tag.
index b2e338d1ce5a637e55ea090b32aa2a8a2d9e8dcc..71d88d5c705e30ac97730ae5e9afe5c1a532992f 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2021 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2020-2022 Internet Systems Consortium, Inc. ("ISC")
 //
 // This Source Code Form is subject to the terms of the Mozilla Public
 // License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -11,7 +11,7 @@ This library contains most of the DNS classes used by the Kea D2 server
 (kea-dhcp-ddns) but is organized as an independent library so that it
 can be reused as needed by other components.
 
-For a more detaliled documentation about the design and class separation
+For a more detailed documentation about the design and class separation
 see @ref src/bin/d2/d2.dox.
 
 @section d2srvMTConsiderations Multi-Threading Consideration for D2 Server Library
index 9780ffde201c6841dda9a4be2060d9e604524ecc..b2cf7b08cdfd0e005f7b955cb7c29866ba747320 100644 (file)
@@ -41,7 +41,7 @@ const char* values[] = {
     "DATABASE_MYSQL_ROLLBACK", "rolling back MySQL database",
     "DATABASE_MYSQL_START_TRANSACTION", "starting new MySQL transaction",
     "DATABASE_PGSQL_COMMIT", "committing to PostgreSQL database",
-    "DATABASE_PGSQL_CREATE_SAVEPOINT", "creating a new PostgreSQL savepoinat: %1",
+    "DATABASE_PGSQL_CREATE_SAVEPOINT", "creating a new PostgreSQL savepoint: %1",
     "DATABASE_PGSQL_DEALLOC_ERROR", "An error occurred deallocating SQL statements while closing the PostgreSQL lease database: %1",
     "DATABASE_PGSQL_FATAL_ERROR", "Unrecoverable PostgreSQL error occurred: Statement: <%1>, reason: %2 (error code: %3).",
     "DATABASE_PGSQL_ROLLBACK", "rolling back PostgreSQL database",
index 777e6fd6c9fb30f3ecdc2ca0e9ac0c008f4ba49d..58f0d934b53fbb5d4877ef588380e60f9fc2fd34 100644 (file)
@@ -58,9 +58,9 @@ The code has issued a commit call.  All outstanding transactions will be
 committed to the database.  Note that depending on the PostgreSQL settings,
 the committal may not include a write to disk.
 
-% DATABASE_PGSQL_CREATE_SAVEPOINT creating a new PostgreSQL savepoinat: %1
+% DATABASE_PGSQL_CREATE_SAVEPOINT creating a new PostgreSQL savepoint: %1
 The code is issuing a call to create a savepoint within the current
-transaction.  Database modications made up to this point will be preserved
+transaction.  Database modifications made up to this point will be preserved
 should a subsequent call to rollback to this savepoint occurs prior to the
 transaction being committed.
 
@@ -84,7 +84,7 @@ be rolled back and not committed to the database.
 
 % DATABASE_PGSQL_ROLLBACK_SAVEPOINT rolling back PostgreSQL database to savepoint: $1
 The code is issuing a call to rollback to the given savepoint.  Any database
-modications that were made after the savepoint was created will be rolled back
+modifications that were made after the savepoint was created will be rolled back
 and not committed to the database.
 
 % DATABASE_PGSQL_START_TRANSACTION starting a new PostgreSQL transaction
index edaa15c1ca37ed4e2ae6f2584a190e3675318eee..e2ec0a863ce979b7486eb0527a06f346944b71d3 100644 (file)
@@ -32,7 +32,7 @@ This library contains several crucial elements for the operation of the DHCP ser
 
 @section cfgglobals Global Parameters
 
-The global paramaters handle direct (vs using a search in a name to
+The global parameters handle direct (vs using a search in a name to
 value table) access to global scalar (i.e. not list or map) parameter values.
 
 This is related to the procedure to add a new global scalar parameter to
index a920d2b7cc75deb2fa1c08558489b980e81834dc..d81be1e2e541fbbbccd924d2fdf0d9b85ecff170 100644 (file)
@@ -356,7 +356,7 @@ TEST(CfgSharedNetworks4Test, mergeNetworks) {
     // Should still have 3 networks.
 
     // Network1 should have doubled its valid lifetime but still only have
-    // the orignal two subnets.  Merge should discard assocations on CB
+    // the orignal two subnets.  Merge should discard associations on CB
     // subnets and preserve the associations from existing config.
     ASSERT_EQ(3, cfg_to.getAll()->size());
     ASSERT_NO_FATAL_FAILURE(checkMergedNetwork(cfg_to, "network1", Triplet<uint32_t>(200),
index 65b25efa6d30245e471aa6af1ef719b17ef41634..a9a45d9a91f56577b43dde920cb90470849b13e7 100644 (file)
@@ -365,7 +365,7 @@ TEST(CfgSharedNetworks6Test, mergeNetworks) {
     // Should still have 3 networks.
 
     // Network1 should have doubled its valid lifetime but still only have
-    // the orignal two subnets.  Merge should discard assocations on CB
+    // the orignal two subnets.  Merge should discard associations on CB
     // subnets and preserve the associations from existing config.
     ASSERT_EQ(3, cfg_to.getAll()->size());
     ASSERT_NO_FATAL_FAILURE(checkMergedNetwork(cfg_to, "network1", Triplet<uint32_t>(200),
index 5422613fd3dbe551fbdc1583f020d7efa805fbb0..4c58eb76bbae3d8a16a96160108aacba406aeaab 100644 (file)
@@ -344,17 +344,17 @@ public:
     /// @throw DbOperationError if the rollback failed.
     void rollbackToSavepoint(const std::string& name);
 
-    /// @brief Excutes the an SQL statement.
+    /// @brief Executes the an SQL statement.
     ///
     /// It executes the given SQL text after first checking the
-    /// connectition for usability. After the statement is excuted
+    /// connection for usability. After the statement is executed
     /// @c checkStatementError() is invoked to ensure we detect
     /// connectivity issues properly.
     /// It is intended to be used to execute utility statements such
     /// as commit, rollback et al, which have no parameters, return no
     /// results, and are not pre-compiled.
     ///
-    /// @param sql SQL statment to execute.
+    /// @param sql SQL statement to execute.
     void executeSQL(const std::string& sql);
 
     /// @brief Checks a result set's SQL state against an error state.
@@ -406,14 +406,14 @@ public:
         }
     }
 
-    /// @brief Excutes a prepared SQL statement.
+    /// @brief Executes a prepared SQL statement.
     ///
     /// It executes the given prepared SQL statement, after checking
     /// for usability and input parameter sanity.  After the statement
-    /// is excuted @c checkStatementError() is invoked to ensure we detect
+    /// is executed @c checkStatementError() is invoked to ensure we detect
     /// connectivity issues properly. Upon successful execution, the
     /// the result set is returned.  It may be used for any form of
-    /// prepared SQL statement (e.g query, insert, udpate, delete...),
+    /// prepared SQL statement (e.g query, insert, update, delete...),
     /// with or without input parameters.
     ///
     /// @param statement PgSqlTaggedStatement describing the prepared
index a57678d33c24affba09cd06a899d44574c0d499c..b3b23e2fc0caffde524f96fdf6e0167fcd5ff00a 100644 (file)
@@ -179,7 +179,7 @@ public:
     /// an inclusive range.
     ///
     /// @param expected_rows Collection of rows of data that we expect to be
-    /// fetched. Note the rows should be in the order you expedct them to be
+    /// fetched. Note the rows should be in the order you expect them to be
     /// returned from the database.
     /// @param begin_int beginning of the range to include.
     /// @param end_int end fo the range to include.
@@ -193,7 +193,7 @@ public:
         TestRowSet fetched_rows;
 
         // Run the select.  The row consumption lambda should populate
-        // fethched_rows based on the the result set returned by the select.
+        // fetched_rows based on the the result set returned by the select.
         conn_->selectQuery(tagged_statements[GET_BY_INT_RANGE], in_bindings,
                            [&](PgSqlResult& r, int row) {
             TestRow fetched_row;
@@ -230,7 +230,7 @@ public:
     /// @brief Tests updating data using PgSqlConnection::updateDeleteQuery()
     ///
     /// In this test, the input data is a set of rows that describe
-    /// which rows in the database to udpate and how. For each row
+    /// which rows in the database to update and how. For each row
     /// in the set we find the record in the database with matching
     /// int_col value and replace its text_col value with the the
     /// text value from the input the row.
@@ -284,7 +284,7 @@ public:
 /// verify actual data CRUD results.
 TEST_F(PgSqlConnectionTest, executePreparedStatement) {
 
-    // Executing with no paramters when they are required should throw.
+    // Executing with no parameters when they are required should throw.
     // First we'll omit the bindings (defaults to empty).
     PgSqlResultPtr r;
     ASSERT_THROW_MSG(r = conn_->executePreparedStatement(tagged_statements[INSERT_VALUE]),
@@ -451,7 +451,7 @@ TEST_F(PgSqlConnectionTest, transactions) {
     conn_->commit();
     ASSERT_TRUE(conn_->isTransactionStarted());
 
-    // Rollback should end the transaction without commiting changes.
+    // Rollback should end the transaction without committing changes.
     conn_->rollback();
     ASSERT_FALSE(conn_->isTransactionStarted());
 
@@ -491,7 +491,7 @@ TEST_F(PgSqlConnectionTest, transactions) {
     EXPECT_THROW(conn_->rollback(), isc::Unexpected);
 }
 
-// Verifies that savepointes operate correctly.
+// Verifies that savepoints operate correctly.
 TEST_F(PgSqlConnectionTest, savepoints) {
     // We want to trigger DuplicateEntry errors so let's
     // add a unique constraint to the table.
@@ -524,7 +524,7 @@ TEST_F(PgSqlConnectionTest, savepoints) {
     // Rollback to the savepoint.
     ASSERT_NO_THROW_LOG(conn_->rollbackToSavepoint("sp_one"));
 
-    // Commit the transcation.
+    // Commit the transaction.
     conn_->commit();
 
     // We should not be in a transaction but we should
@@ -553,7 +553,7 @@ TEST_F(PgSqlConnectionTest, savepoints) {
     TestRowSet third_row = {{3, "three"}};
     ASSERT_NO_THROW_LOG(testInsert(third_row));
 
-    // Commit the transcation.
+    // Commit the transaction.
     conn_->commit();
 
     // We should not be in a transaction and we should
index c0f307120754a1e71009aa8fa53272f9d1eac465..4862a23aa491df5cf993f7df6a7d7544ea4fa789 100644 (file)
@@ -3846,6 +3846,8 @@ INSERT INTO dhcp_option_scope (scope_id, scope_name)
 INSERT INTO dhcp_option_scope (scope_id, scope_name)
     VALUES(6, 'pd-pool');
 
+-- Drop the existing function, createOptionAuditDHCP6 so we can replace it
+-- with one that has slightly different arguments.
 DROP FUNCTION IF EXISTS createOptionAuditDHCP6(modification_type VARCHAR(32),
                                                scope_id SMALLINT, option_id INT, subnet_id BIGINT,
                                                host_id INT, network_name VARCHAR(128),
index 848e6c9eefbe64b2df50763e5c1c6c6df65c111f..c188836b2aed5fca18f9124904ab36d326c890b3 100755 (executable)
@@ -40,7 +40,7 @@ def filter_the_noise(text, is_upgrade_script):
     :param text: the script content to be analyzed
     :type text: str
 
-    :param is_upgrade_script: determines if it is a an upgrade script or a
+    :param is_upgrade_script: determines if it is an upgrade script or a
         dhcpdb_create script. Different delimiters are used for each.
     :type is_upgrade_script: bool