Kea issueshttps://gitlab.isc.org/isc-projects/kea/-/issues2023-07-17T13:58:21Zhttps://gitlab.isc.org/isc-projects/kea/-/issues/2817IfaceMgr::getIface types2023-07-17T13:58:21ZSeth ArnoldIfaceMgr::getIface typesHello, `IfaceMgr::getIface` may have some incorrect types. This may be related to issues #1825 and #2027.
I'm giving Kea a very quick check as part of the Ubuntu Main Inclusion Review process, and part of that is a Coverity scan. Coveri...Hello, `IfaceMgr::getIface` may have some incorrect types. This may be related to issues #1825 and #2027.
I'm giving Kea a very quick check as part of the Ubuntu Main Inclusion Review process, and part of that is a Coverity scan. Coverity has identified this comparison as not depending upon the inputs:
`(ifindex > std::numeric_limits<int32_t>::max())`
```
IfacePtr
IfaceMgr::getIface(int ifindex) {
if ((ifindex < 0) || (ifindex > std::numeric_limits<int32_t>::max())) {
return (IfacePtr()); // out of range
}
return (ifaces_.getIface(ifindex));
}
```
https://gitlab.isc.org/isc-projects/kea/-/blob/master/src/lib/dhcp/iface_mgr.cc#L903
If the bounds really are "non-negative integers", then it's probably fine. But it seemed plausible to me that the types were intended to be different, so, this report.
Thankskea2.3.8Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/2636Package for Version 2.3 not installable on Debian Bullseye2022-12-15T14:33:04ZRoman HaefeliPackage for Version 2.3 not installable on Debian Bullseye---
name: Version 2.3 not installable on Debian Bullseye
about: The internal dependencies cannot be resolved
---
**To Reproduce**
1. Follow the instructions to add the 2.3 repo for Debian Bullseye
2. Install the package `isc-kea-dhcp4...---
name: Version 2.3 not installable on Debian Bullseye
about: The internal dependencies cannot be resolved
---
**To Reproduce**
1. Follow the instructions to add the 2.3 repo for Debian Bullseye
2. Install the package `isc-kea-dhcp4-server` by executing the command `apt install isc-kea-dhcp4-server`
There is an error:
```
# apt install isc-kea-dhcp4-server
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
isc-kea-dhcp4-server : Depends: isc-kea-common (= 2.3.0-isc20220829143617) but 2.3.2-isc20221026061952 is to be installed
E: Unable to correct problems, you have held broken packages.
```
The dependency in the package isc-kea-dhcp4-server on isc-kea-common (= 2.3.0-isc20220829143617) conflicts with what is actually available in the repo: isc-kea-common (2.3.2-isc20221026061952)
**Expected behavior**
There should be no internal dependency conflict and the package `isc-kea-dhcp4-server` should be installable.
**Environment:**
- Kea version: 2.3 from repo
- OS: Debian Bullseye (11.5)kea2.3.4https://gitlab.isc.org/isc-projects/kea/-/issues/2503Fix Alpine 3.16 package builds and unit tests2023-07-17T13:58:25ZDan TheisenFix Alpine 3.16 package builds and unit testsWork around packaging issues in alpine 3.16 while changes are backported upstream.
Modify the Alpine MariaDB config to allow networking to be enabled.Work around packaging issues in alpine 3.16 while changes are backported upstream.
Modify the Alpine MariaDB config to allow networking to be enabled.kea2.3.0Dan TheisenDan Theisenhttps://gitlab.isc.org/isc-projects/kea/-/issues/2491Build packages for alpine 3.162022-07-20T11:32:37ZDan TheisenBuild packages for alpine 3.16We need to build Kea packages for Alpine 3.16 in CI and HammerWe need to build Kea packages for Alpine 3.16 in CI and Hammerkea2.2.0 - a new stable branchhttps://gitlab.isc.org/isc-projects/kea/-/issues/2100systemd dependency problem means isc-kea-ctrl-agent does not autostart at bootup2023-06-16T08:35:18ZBrian Candlersystemd dependency problem means isc-kea-ctrl-agent does not autostart at bootupI have the following packages installed under Ubuntu 18.04 from `deb https://dl.cloudsmith.io/public/isc/kea-1-6/deb/ubuntu bionic main`:
```
ii isc-kea-common 1.6.3-isc0044120200730112858 amd64 Common li...I have the following packages installed under Ubuntu 18.04 from `deb https://dl.cloudsmith.io/public/isc/kea-1-6/deb/ubuntu bionic main`:
```
ii isc-kea-common 1.6.3-isc0044120200730112858 amd64 Common libraries for the ISC Kea DHCP server
ii isc-kea-ctrl-agent 1.6.3-isc0044120200730112858 amd64 ISC Kea DHCP server REST API service
ii isc-kea-dhcp4-server 1.6.3-isc0044120200730112858 amd64 ISC Kea IPv4 DHCP server
ii isc-kea-dhcp6-server 1.6.3-isc0044120200730112858 amd64 ISC Kea IPv6 DHCP server
```
PROBLEM: isc-kea-ctrl-agent is not automatically started by systemd when the machine reboots (but it does start if you manually run `systemctl start isc-kea-ctrl-agent`)
CAUSE: `/lib/systemd/system/isc-kea-ctrl-agent.service` contains:
```
[Install]
WantedBy=kea-dhcp4-server.service
WantedBy=kea-dhcp6-server.service
```
This should instead say:
```
[Install]
WantedBy=isc-kea-dhcp4-server.service
WantedBy=isc-kea-dhcp6-server.service
```
WORKAROUND:
* `systemctl edit isc-kea-ctrl-agent.service`
* enter the `[Install]` section exactly as above, and save.
* `systemctl reenable isc-kea-ctrl-agent.service`kea2.1.0Wlodzimierz WencelWlodzimierz Wencelhttps://gitlab.isc.org/isc-projects/kea/-/issues/2052./configure without parameters fails on CentOS 7 if openssl11-devel is installed2021-10-04T08:34:16ZAndrei Pavelandrei@isc.org./configure without parameters fails on CentOS 7 if openssl11-devel is installed1. Install openssl11-devel
2. ./configure
3. `Missing required boost ssl header file`
Because Kea needs to link with Boost 1.69 from `boost169-devel` and it can't find it on its own.
Workaround is to install `boost169-devel` and also p...1. Install openssl11-devel
2. ./configure
3. `Missing required boost ssl header file`
Because Kea needs to link with Boost 1.69 from `boost169-devel` and it can't find it on its own.
Workaround is to install `boost169-devel` and also provide these: `--with-boost-include=/usr/include/boost169 --with-boost-lib-dir=/usr/lib64/boost169`.kea2.1.0https://gitlab.isc.org/isc-projects/kea/-/issues/2012MacOS does not use @prefix@ for python scripts2021-08-25T14:55:40ZRazvan BecheriuMacOS does not use @prefix@ for python scriptsfound during sanity checks for 1.9.10
#2010
fix is simple (thx @andrei):
```
diff --git a/src/bin/shell/Makefile.am b/src/bin/shell/Makefile.am
index 786d4f676a..430116988a 100644
--- a/src/bin/shell/Makefile.am
+++ b/src/bin/shell/Ma...found during sanity checks for 1.9.10
#2010
fix is simple (thx @andrei):
```
diff --git a/src/bin/shell/Makefile.am b/src/bin/shell/Makefile.am
index 786d4f676a..430116988a 100644
--- a/src/bin/shell/Makefile.am
+++ b/src/bin/shell/Makefile.am
@@ -1,5 +1,8 @@
SUBDIRS = . tests
+PYTHON_PREFIX=@prefix@
+PYTHON_EXEC_PREFIX=@prefix@
+
pkgpython_PYTHON = kea_conn.py kea_connector2.py kea_connector3.py
sbin_SCRIPTS = kea-shell
```
not sure if this interferes with:
--with-site-packageskea1.9.11Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/1451Allow linking with libgtest.so2024-01-22T08:32:18ZAndrei Pavelandrei@isc.orgAllow linking with libgtest.soCurrently Kea reports that googletest is missing even though `libgtest.so` is available. It only looks for `libgtest.a`. On Fedora 32 and maybe other distributions, only `libgtest.so` is provided with the out-of-the-box installed package...Currently Kea reports that googletest is missing even though `libgtest.so` is available. It only looks for `libgtest.a`. On Fedora 32 and maybe other distributions, only `libgtest.so` is provided with the out-of-the-box installed package and it would be nice to link with it rather than having to build googletest from sources.kea1.9.1Andrei Pavelandrei@isc.orgAndrei Pavelandrei@isc.orghttps://gitlab.isc.org/isc-projects/kea/-/issues/589Ubuntu 19.04 warnings2019-05-22T07:52:46ZFrancis DupontUbuntu 19.04 warningsTrying to compile Kea on Ubuntu 19.04 with g++ 8.3 with MySQL support it fails with 2 warnings:
- a static cast with a const type (illegal because type qualifiers are not allowed): fix is to remove the const which BTW is useless
- an u...Trying to compile Kea on Ubuntu 19.04 with g++ 8.3 with MySQL support it fails with 2 warnings:
- a static cast with a const type (illegal because type qualifiers are not allowed): fix is to remove the const which BTW is useless
- an unused parameter in a lambda: fix is to remove the parameter name.Kea1.6Francis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/568Handle Debian/Ubuntu multiple architecture support2023-01-12T15:28:56ZFrancis DupontHandle Debian/Ubuntu multiple architecture supportCurrently in configure we look for libraries in .../lib and .../lib64 directories. It is not enough on Debian/Ubuntu which uses an architecture triplet so e.g we have to add .../lib/x86_64-linux-gnu to the directory list.
Two notes:
- ...Currently in configure we look for libraries in .../lib and .../lib64 directories. It is not enough on Debian/Ubuntu which uses an architecture triplet so e.g we have to add .../lib/x86_64-linux-gnu to the directory list.
Two notes:
- freeradius client library already uses this with the ARCH_TRIPLET variable (set to ```/x86_64-linux-gnu``` with a leading /.
- the triplet is returned by ```g++ -dumpmachine``` with only one -.
As the path can be given I am not sure there is no round around today but now the issue is identified there is no need to wait to be caught by it.backloghttps://gitlab.isc.org/isc-projects/kea/-/issues/294Linux packet filter send() emits valgrind error2018-11-28T16:53:54ZThomas MarkwalderLinux packet filter send() emits valgrind errorOn the first packet send, the linux packet filter emits the following valgrind error:
```
2018-11-28 10:57:04.527 DEBUG [kea-dhcp4.packets/12342] DHCP4_RESPONSE_DATA [hwtype=1 08:00:27:25:d3:f4], cid=[32:32:32:32], tid=0x91bfb7: respond...On the first packet send, the linux packet filter emits the following valgrind error:
```
2018-11-28 10:57:04.527 DEBUG [kea-dhcp4.packets/12342] DHCP4_RESPONSE_DATA [hwtype=1 08:00:27:25:d3:f4], cid=[32:32:32:32], tid=0x91bfb7: responding with packet DHCPOFFER (type 2), packet details: local_address=178.16.1.30:67, remote_address=178.16.1.78:68, msg_type=DHCPOFFER (2), transid=0x91bfb7,
options:
type=001, len=004: 4294967040 (uint32)
type=051, len=004: 7200 (uint32)
type=053, len=001: 2 (uint8)
type=054, len=004: 178.16.1.30
type=061, len=004: 32:32:32:32
==12342== Syscall param socketcall.sendto(to.sa_data) points to uninitialised byte(s)
==12342== at 0x80FADC3: ??? (syscall-template.S:81)
==12342== by 0x64E2C21: isc::dhcp::PktFilterLPF::send(isc::dhcp::Iface const&, unsigned short, boost::shared_ptr<isc::dhcp::Pkt4> const&) (in /labspace/var/kea/radius-150-b2/lib/libkea-dhcp++.so.9.0.0)
==12342== by 0x64478CB: isc::dhcp::IfaceMgr::send(boost::shared_ptr<isc::dhcp::Pkt4> const&) (in /labspace/var/kea/radius-150-b2/lib/libkea-dhcp++.so.9.0.0)
==12342== by 0x4AC873: isc::dhcp::Dhcpv4Srv::sendPacket(boost::shared_ptr<isc::dhcp::Pkt4> const&) (in /labspace/var/kea/radius-150-b2/sbin/kea-dhcp4)
==12342== by 0x4B0167: isc::dhcp::Dhcpv4Srv::processPacketBufferSend(boost::shared_ptr<isc::hooks::CalloutHandle>&, boost::shared_ptr<isc::dhcp::Pkt4>&) (in /labspace/var/kea/radius-150-b2/sbin/kea-dhcp4)
==12342== by 0x4ACD98: isc::dhcp::Dhcpv4Srv::run_one() (in /labspace/var/kea/radius-150-b2/sbin/kea-dhcp4)
==12342== by 0x4AC890: isc::dhcp::Dhcpv4Srv::run() (in /labspace/var/kea/radius-150-b2/sbin/kea-dhcp4)
==12342== by 0x4833F5: main (in /labspace/var/kea/radius-150-b2/sbin/kea-dhcp4)
==12342== Address 0x1ffefffa58 is on thread 1's stack
==12342== in frame #1, created by isc::dhcp::PktFilterLPF::send(isc::dhcp::Iface const&, unsigned short, boost::shared_ptr<isc::dhcp::Pkt4> const&) (???:)
==12342==
```
It may not be harmful but it is distraction and something any user doing testing would point out. The fix is a one liner:
```
diff --git a/src/lib/dhcp/pkt_filter_lpf.cc b/src/lib/dhcp/pkt_filter_lpf.cc
index ba64b00..158754d 100644
--- a/src/lib/dhcp/pkt_filter_lpf.cc
+++ b/src/lib/dhcp/pkt_filter_lpf.cc
@@ -305,6 +305,7 @@ PktFilterLPF::send(const Iface& iface, uint16_t sockfd, const Pkt4Ptr& pkt) {
buf.writeData(pkt->getBuffer().getData(), pkt->getBuffer().getLength());
sockaddr_ll sa;
+ memset(&sa, 0x0, sizeof(sa));
sa.sll_family = AF_PACKET;
sa.sll_ifindex = iface.getIndex();
sa.sll_protocol = htons(ETH_P_IP);
```Kea1.5-beta2Thomas MarkwalderThomas Markwalder