Kea issueshttps://gitlab.isc.org/isc-projects/kea/-/issues2020-11-26T08:41:24Zhttps://gitlab.isc.org/isc-projects/kea/-/issues/1565Sanity checks for Kea 1.9.2 rc12020-11-26T08:41:24ZjenkinsSanity checks for Kea 1.9.2 rc1```We are now at step SANITY CHECKS of Kea 1.9.2 rc1.
Please verify the packages and files according to
https://wiki.isc.org/bin/view/QA/KeaReleaseProcess, "4. Sanity Checks" chapter
and your imagination.
Before starting any checks. ple...```We are now at step SANITY CHECKS of Kea 1.9.2 rc1.
Please verify the packages and files according to
https://wiki.isc.org/bin/view/QA/KeaReleaseProcess, "4. Sanity Checks" chapter
and your imagination.
Before starting any checks. please, state in Sanity Checks issue in GitLab
what check you are doing in a thread/discussion (not as comment).
When you finish given check state in the same thread/discussion what is the result.
This way we know what is covered upfront and we can avoid repeating ourselves.
Release content is located on:
1) [tarballs] repo.isc.org in the following folders:
/data/shared/sweng/kea/releases/1.9.2-rc1
/data/shared/sweng/kea/releases/premium-1.9.2-rc1
/data/shared/sweng/kea/releases/subscription-1.9.2-rc1
SHA256 (kea-1.9.2.tar.gz) = da2585007783ed6cc904cd04a6817b040aedf7c5ecff66e3188db793a7939151
SHA256 (kea-premium-1.9.2.tar.gz) = 16f82cad89257cdf0914e6d2bfa8a502be776583e76d05684a6b581b5a754f3a
SHA256 (kea-subscription-1.9.2.tar.gz) = 14d90827cc08689df2f60526a3ef1cbf6045ab4adb41e3d28d33121598b59e23
2) [rpm/deb packages] on packages.isc.org, exact packages versions are stored here:
https://jenkins.isc.org/job/kea-dev/job/pkg/127/
Release version is 1.9.2-isc0009720201123144834 (please verify if it is this version while installing).
Install instruction is here: https://wiki.isc.org/bin/view/QA/KeaReleaseProcess, chapter 4. Sanity Checks, point 9.
```kea1.9.2https://gitlab.isc.org/isc-projects/kea/-/issues/1558EVP_MD_CTX_create issues2020-11-20T15:47:57ZFrancis DupontEVP_MD_CTX_create issuesAt least on Jenkins a virtual machine has a problem with EVP_MD_CTX_create:
```
[2020-11-18T19:14:11.131Z] [ RUN ] NSEC3HashTest.calculate
[2020-11-18T19:14:11.131Z] ld-elf.so.1: /usr/home/jenkins/workspace/kea-dev/ut-thread/src/lib...At least on Jenkins a virtual machine has a problem with EVP_MD_CTX_create:
```
[2020-11-18T19:14:11.131Z] [ RUN ] NSEC3HashTest.calculate
[2020-11-18T19:14:11.131Z] ld-elf.so.1: /usr/home/jenkins/workspace/kea-dev/ut-thread/src/lib/cryptolink/.libs/libkea-cryptolink.so.5: Undefined symbol "EVP_MD_CTX_create"
```
This shows a problem with the OpenSSL library which should have been detected in configure. As it can happen too in production I propose to address this. The first step should be to identify the virtual machine and its system.kea1.9.2Francis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/1555bump up libs and hooks versions for 1.9.2 release2020-11-23T11:06:45ZAndrei Pavelandrei@isc.orgbump up libs and hooks versions for 1.9.2 releasekea1.9.2Razvan BecheriuRazvan Becheriuhttps://gitlab.isc.org/isc-projects/kea/-/issues/15541.9.2 release changes2020-12-11T17:08:31ZAndrei Pavelandrei@isc.org1.9.2 release changeskea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1550dhcpv6 server assigns reservations from the pools even if out of pool flag is...2020-11-19T18:18:43ZRazvan Becheriudhcpv6 server assigns reservations from the pools even if out of pool flag is setthis was discovered while implementing #1405 and seeing the different behavior from v4 in previous written UT:
TEST_F(DORATest, reservationModeOutOfPool)
TEST_F(DORATest, reservationIgnoredInOutOfPoolMode)
in v4, before dynamic alloc...this was discovered while implementing #1405 and seeing the different behavior from v4 in previous written UT:
TEST_F(DORATest, reservationModeOutOfPool)
TEST_F(DORATest, reservationIgnoredInOutOfPoolMode)
in v4, before dynamic allocation (from pool), all reservations from the pools are removed.
in v6, because the retrieval of the reservations is done once for all IANAs, there is no filtering, and this must be done later, just before the dynamic allocation from the pools. at this stage, the lease type is also available, so proper filtering from the pool is optimal.kea1.9.2Razvan BecheriuRazvan Becheriuhttps://gitlab.isc.org/isc-projects/kea/-/issues/1542π `lease4-update` command has no effect and falsely reports success on multit...2020-11-27T06:32:47ZAndrei Pavelandrei@isc.orgπ `lease4-update` command has no effect and falsely reports success on multithreaded v4.Reported on [support ticket 16333](https://support.isc.org/Ticket/Display.html?id=16333), originally as a HA bug π, turned out to be a `lease_cmds` bug π.
__Current behavior__
A `kea-dhcp4` server configured with multi-threading enable...Reported on [support ticket 16333](https://support.isc.org/Ticket/Display.html?id=16333), originally as a HA bug π, turned out to be a `lease_cmds` bug π.
__Current behavior__
A `kea-dhcp4` server configured with multi-threading enabled that handles a `lease4-update` will report `IPv4 lease updated.` every time without actually adding or updating a lease.
__Expected behavior__
It reports `IPv4 lease added.` if the lease is not existing i.e. the first time. In any case, it proceeds to effectively add or update the lease.
__Git patches for 1.8.0 and 1.8.1__
[1.8.0-lease4-update-fix.patch](/uploads/d48ca5a600623183d90a6ec6dff75c09/1.8.0-lease4-update-fix.patch)
[1.8.1-lease4-update-fix.patch](/uploads/59dbc80755d1269f298969d052cebd97/1.8.1-lease4-update-fix.patch)kea1.9.2Razvan BecheriuRazvan Becheriuhttps://gitlab.isc.org/isc-projects/kea/-/issues/1539Text corrections in the Kea ARM2020-11-20T10:36:01ZSuzanne GoldlustText corrections in the Kea ARMFixing various typos throughout the ARMFixing various typos throughout the ARMkea1.9.2Tomek MrugalskiTomek Mrugalskihttps://gitlab.isc.org/isc-projects/kea/-/issues/1536Diverse textual corrections to the ARM2020-11-20T11:09:22ZPeter DaviesDiverse textual corrections to the ARMThere are a couple of spelling mistakes in the KEA 1.8.0 arm:
8.4.1 Local and Relayed Traffic in Shared Networks
conifguration -> configuration
9.4.1 Local and Relayed Traffic in Shared Networks
conifguration -> config...There are a couple of spelling mistakes in the KEA 1.8.0 arm:
8.4.1 Local and Relayed Traffic in Shared Networks
conifguration -> configuration
9.4.1 Local and Relayed Traffic in Shared Networks
conifguration -> configuration
see[ RT 17284](https://support.isc.org/Ticket/Display.html?id=17284).
also:
3.4.3 Configure Before the Build
"neces sary" -> "necessary"
3.4.3 Configure Before the Build
"OpenSSL the cryptographic library" -> "OpenSSL cryptographic library".
3.4. Installation from Source 13
"pack ages -> packages"
"in specified directory" -> "in the specified directory"
"sys tems" -> "systems"
"Debian introduced separate directory" -> "Debian introduced a separate directory"
"specifies path" -> "specifies a path"
"requires subscription-only" -> "requires the subscription-only"
"That file contains list" -> "That file contains a list"
"requires subscription-only" -> "requires the subscription-only".kea1.9.2Peter DaviesPeter Davieshttps://gitlab.isc.org/isc-projects/kea/-/issues/1516Fix doxygen2020-11-18T12:49:14ZFrancis DupontFix doxygenA few doxygen trivial errors introduced recently should be fixed.A few doxygen trivial errors introduced recently should be fixed.kea1.9.2Francis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/1496π missing/spurious spaces in exception/error messages2020-10-30T14:45:18ZAndrei Pavelandrei@isc.orgπ missing/spurious spaces in exception/error messagesMissing spaces like: `array of strings is nota valid option definition.`
Spurious spaces like: `max-reconnect-tries cannot be less than zero: (-1)`Missing spaces like: `array of strings is nota valid option definition.`
Spurious spaces like: `max-reconnect-tries cannot be less than zero: (-1)`kea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1495π 8-bit integers show as characters instead of integers when passed through a...2020-11-10T09:37:42ZAndrei Pavelandrei@isc.orgπ 8-bit integers show as characters instead of integers when passed through a stringstreamFound as part of work for #1298 in `option_definition.cc`, but can be found in other files as well. Can't detect all instances of it easily, but we can detect places where `numeric_limits<T>` is used. It's `max()` and `min()` calls resul...Found as part of work for #1298 in `option_definition.cc`, but can be found in other files as well. Can't detect all instances of it easily, but we can detect places where `numeric_limits<T>` is used. It's `max()` and `min()` calls result in `T` type. If `T` is an 8-bit integer, usually `int8_t` or `uint8_t`, it is interpreted in it's ASCII-coded format.kea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1492more explicit messages for log4cplus & boost missing dependencies2020-11-16T11:27:42ZAndrei Pavelandrei@isc.orgmore explicit messages for log4cplus & boost missing dependenciesIf you are missing log4cplus or boost headers on your machine, you are only met with the message `Missing required header files` omitting which headers are actually missing. Let's specify explicitly what is missing, as is the case with o...If you are missing log4cplus or boost headers on your machine, you are only met with the message `Missing required header files` omitting which headers are actually missing. Let's specify explicitly what is missing, as is the case with other dependencies.
Minor change required. Two lines in `configure.ac` & `m4macros/ax_boost_for_kea.m4`.kea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1476Review, improve usability of our KB on accessing Cloudsmith repo2020-11-05T18:37:38ZVicky Riskvicky@isc.orgReview, improve usability of our KB on accessing Cloudsmith repoI am not confident that our kb on using Cloudsmith (https://kb.isc.org/docs/en/isc-kea-packages) is fully adequate.
I think it would hep to add a few cli commands that show how to list what is in the repo, and perhaps some explanation ...I am not confident that our kb on using Cloudsmith (https://kb.isc.org/docs/en/isc-kea-packages) is fully adequate.
I think it would hep to add a few cli commands that show how to list what is in the repo, and perhaps some explanation of how to find the correct repo in Cloudsmith.
I have only seen Cloudsmith via the web GUI, and that is not how our users are accessing it. It would help if someone would try to find the appropriate package and version and install from it and see what we can add in terms of instructions about navigation to the KB.
I am not concerned that Cloudsmith is not *working* - this is just a ticket about the usability, particularly of navigation.kea1.9.2Vicky Riskvicky@isc.orgVicky Riskvicky@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1474Update references to RFC 89252020-11-02T10:31:43ZFrancis DupontUpdate references to RFC 8925kea1.9.2Francis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/1467Jumbled up errors when generating parsers with multiple make jobs2020-10-30T14:57:40ZAndrei Pavelandrei@isc.orgJumbled up errors when generating parsers with multiple make jobsErrors don't make much sense if you would attempt to solve them individually:
```
dhcp4_parser.h:2642: error: unterminated #else
2642 | #if 201103L <= YY_CPLUSPLUS
|
In file included from ../../../src/bin/dhcp4/parser_context.h:1...Errors don't make much sense if you would attempt to solve them individually:
```
dhcp4_parser.h:2642: error: unterminated #else
2642 | #if 201103L <= YY_CPLUSPLUS
|
In file included from ../../../src/bin/dhcp4/parser_context.h:12,
from parser_context.cc:9:
../../../src/bin/dhcp4/dhcp4_parser.h:45: error: unterminated #ifndef
45 | #ifndef YY_PARSER4_DHCP4_PARSER_H_INCLUDED
|
In file included from parser_context.cc:9:
../../../src/bin/dhcp4/parser_context.h:22:1: error: expected unqualified-id before βnamespaceβ
22 | namespace isc {
```
and it goes on further.
What happens is that while generating the parsers, the Kea source files are also compiled. Kea source files depend on parser generated files. Bison doesn't write the entire file at once, it gradually fills it with content. So the parser generated files are fed into the compiler before they are complete. Even if the write to file was atomic, it would still mean that the parser files are potentially too old which would still be incorrect and maybe even pass compilation and result in underterministic behavior.
This is a lack of ordering issue between the parser generated files and the Kea source files.kea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1457Pools in example configurations conflict2020-11-16T08:18:24ZAndrei Pavelandrei@isc.orgPools in example configurations conflictI know pools are the first thing an administrator changes in a real environment, but then there are developers who try to come up with a fast local setup and take inspiration from example configurations. And then they stumble upon
`
DHC...I know pools are the first thing an administrator changes in a real environment, but then there are developers who try to come up with a fast local setup and take inspiration from example configurations. And then they stumble upon
`
DHCP6_INIT_FAIL [..] subnet configuration failed: a pool of type IA_PD, with the following address range: 2001:db8::-2001:db8:ff:ffff:ffff:ffff:ffff:ffff overlaps with an existing pool in the subnet: 2001:db8::/32 to which it is being added
`
This is the case for `kea6/all-keys.json`, but there might be others. Pools can be easily changed to not come into conflict, so let's do that.kea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1453Some .cc files are missing config.h include2020-11-09T12:14:37ZAndrei Pavelandrei@isc.orgSome .cc files are missing config.h includePer the coding guidelines
> top level config.h generated by autoconf should also be included before other generic header files
This doesn't imply that all of them should have it, but there doesn't seem to be a reason why a number of 32...Per the coding guidelines
> top level config.h generated by autoconf should also be included before other generic header files
This doesn't imply that all of them should have it, but there doesn't seem to be a reason why a number of 32 non-generated `.cc` files are missing the `config.h` include. This is dangerous because you could be missing a defined macro in some code and not realize it.kea1.9.2Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1442investigate result of GTEST_SHUFFLE2020-11-18T12:42:03ZWlodzimierz Wencelinvestigate result of GTEST_SHUFFLEFix failing tests using seeds generated in the run:
https://jenkins.isc.org/job/kea-dev/job/ut-basic/52
* seed on fedora: 92727
* seed on debian: 24338
* seed on ubuntu: 11764
* seed on centos: 91424
to run tests with those seeds it's...Fix failing tests using seeds generated in the run:
https://jenkins.isc.org/job/kea-dev/job/ut-basic/52
* seed on fedora: 92727
* seed on debian: 24338
* seed on ubuntu: 11764
* seed on centos: 91424
to run tests with those seeds it's needed to have env variables `GTEST_SHUFFLE=1` and `GTEST_SHUFFLE_SEED` with SEED replaced by int.
This exercise is aimed to check if fixing those tests will resolve in fixing kea core code or just tests, if it will be just test code we will not enable GTEST_SHUFFLE in buildfarm.kea1.9.2Francis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/1424Escape character code in keactrl (missed)2021-09-30T18:01:44ZFrancis DupontEscape character code in keactrl (missed)#1200 fixed some but not all \e vs \033 issues.
https://gitlab.isc.org/isc-projects/kea/-/merge_requests/757#note_164489#1200 fixed some but not all \e vs \033 issues.
https://gitlab.isc.org/isc-projects/kea/-/merge_requests/757#note_164489kea1.9.2https://gitlab.isc.org/isc-projects/kea/-/issues/1421Add authentication hook point2020-11-20T11:14:22ZTomek MrugalskiAdd authentication hook pointAs part of the #1304, @fdupont and I discussed the evolution of the basic http auth evolution. The code introduced in #1304 adds a basic credentials storage in the Kea config file. However, there are better alternatives envisaged in the ...As part of the #1304, @fdupont and I discussed the evolution of the basic http auth evolution. The code introduced in #1304 adds a basic credentials storage in the Kea config file. However, there are better alternatives envisaged in the future (keep them in a file, in a DB, perhaps in external system, like PAM, LDAP, RADIUS, etc.). Those could be implemented as hooks.
For this reason, we need a hook point that will:
- expose the credentials provided in a request to be authenticated
- let the hook decide whether the request should be authenticated or notkea1.9.2Tomek MrugalskiTomek Mrugalski