commit 5a68553700f453b80cab80fbb034652864fdc16efed93fcbaa757f4d0b8801ec Author: Adrian Schröter Date: Tue Sep 3 13:38:14 2024 +0200 Sync from SUSE:SLFO:Main kea revision 0c5a1171fc03132d03fa7a2e2845fd93 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/kea-2.6.0.tar.gz b/kea-2.6.0.tar.gz new file mode 100644 index 0000000..db46fbb --- /dev/null +++ b/kea-2.6.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:207ceae33eb3b81ec4e6ac5605249a85b93779333b62aadf39e489f11dbcdc8d +size 10459190 diff --git a/kea-2.6.0.tar.gz.asc b/kea-2.6.0.tar.gz.asc new file mode 100644 index 0000000..27b5f49 --- /dev/null +++ b/kea-2.6.0.tar.gz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEE2mo1COZypJ3Tgq/ZW49NkbiO2QkFAmZWE44ACgkQW49NkbiO +2QlxBxAAo7m1blURE5IwTvtYPsq8nG5rmTAgR4fN1apo8atk5k7q0wbvorgGbfJB +KCunGL6VF5FyuqtQkr3IRVKk5jRoWtkCDZIFF3Wv4dwQZZ9h3CsdCdxs5uExvlMU +obSd0VAAXt8cmBbFIB5F6YmoKX5ek0Yo7h6QeyFS7OOQW+tk7h336L7hFJwQjAYz +Dj9mJTknyqr0IJsxmrdbQ2DBw6qFpLjK+44Vfc2HEgaTqkuhAwlVxw4ApQK41W6l +a55UkOJZQPVdH6ATMDMxntRjirF+nDJddqRSJKg+yedhvGiRnyHGRe09uho6S4TC +zDV5Fn64UoGiDI0VwXYv4AyKBMji0nqWLUFK59Q7sOPnuAzRoDJRwXVv/nlu4N+4 +IwQ55ffyQqcRFJ8nbwRNwL62/iSt8RTQoFOJELwOVEyHQrTyRfWEKvvMZPwMqTHF +/Cah8CtWYlFxb10KRaQs9W1d4bH6CD23+oQs3MP4p501cgXpEbO4rjrvhepyFR2C +ZA2wjBJ2wuVL9FTkNnP5V5A5/32QXzZPUXVMPGw6976OqdXbP3DuZGIfGrvT5RKx +KnXPV8GuB4Obl+BJcsgxQpykCZEja6y6Q2zQs4V0LcFQs3lJI/8aH8PBcpg44Tdr +jB10wjod+WJXBBR3N1Io7Ys91Vr1pnimz0nPA94TCrPbLZVqK2U= +=+IiR +-----END PGP SIGNATURE----- diff --git a/kea.changes b/kea.changes new file mode 100644 index 0000000..b7e263c --- /dev/null +++ b/kea.changes @@ -0,0 +1,278 @@ +------------------------------------------------------------------- +Tue Jun 18 09:37:04 UTC 2024 - Jan Engelhardt + +- Update to release 2.6.0 + * New features: + * Hub-and-spoke model in High Availability (HA) + * Ping Check hook, RADIUS hook, Performance Monitoring hook + * Database connection retry on startup + * Classless static route option + * Discovery of Network-designated Resolvers (DNR) options + * Stash Agent options: ISC DHCP provided a + `stash-agent-options` mechanism that, when enabled, caused + the server to remember options inserted by a relay agent + during the initial exchange with a client. + * Removals/Changes: + * Removed autogeneration of subnet-ids + * `output_options` was renamed to `output-options` + +------------------------------------------------------------------- +Sat Feb 3 12:40:17 UTC 2024 - Jan Engelhardt + +- Generate "keadhcp" user with sysusers mechanism + +------------------------------------------------------------------- +Mon Jan 8 22:21:39 UTC 2024 - Richard Rahl + +- Update to release 2.4.1 + * fix a race condition in FLQ in which kea could crash + * fix a regression where redetection of interfaces stopped working + +------------------------------------------------------------------- +Wed Jul 6 13:57:08 UTC 2023 - Jorik Cronenberg + +- Add RuntimeDirectory to kea.service +- Update to release 2.4.0 + Breaking Changes: + * Both MySQL and PostgreSQL database schemas were updated to + accommodate DHCPv6 Bulk Leasequery support. + * The values accepted by `operation-target` used in + `reservation-*` commands have been renamed: primary -> + memory, alternate -> database. + * Kea DHCPv4 server can now handle multiple `vivco-suboptions` + options with different enterprise IDs and multiple vendor + options. + * The Discovery of Network-designated Resolvers (DNR) options + have been implemented for both DHCPv4 and DHCPv6. The options + allow configuration. + * Template classes mechanism, similar to spawning classes in + ISC DHCP, has been implemented. + * Kea now keeps leases for a period of time after they are + released. + * An address reserved in a global reservation must now lie + within the range of the subnet or shared-network selected by + Kea. + * It is now possible to add an "empty" host reservation without + any attribute. + * kea-dhcp4 now supports the `offer-lifetime` parameter to + allow the temporary allocation of leases during DHCPOFFER. + * Added support for Secure Zero Touch Provisioning options, per + RFC8572. + * The kea-dhcp6 `prefix-len` and `pd-pools` list now checks the + prefix lengths correctly. + * The preferred lifetime is now calculated as 0.625 * + `valid-lifetime` unless explicitly specified. + * The link selection suboption is now optional. + * See /usr/share/doc/kea/ChangeLog in the kea-doc package for + details. + +------------------------------------------------------------------- +Wed Dec 14 14:51:33 UTC 2022 - Jorik Cronenberg + +- Separate documentation into kea-doc package +- Remove following packages from BuildRequires + * docbook-xsl-stylesheets + * elinks + * libxslt-tools + +------------------------------------------------------------------- +Thu Aug 18 12:53:21 UTC 2022 - Jan Engelhardt + +- Update to release 2.2.0 + * Kea now features full native support for TLS in HA + * PostgreSQL configuration backend + * A new hook is dedicated to RBAC. + * A new hook limits the rate and number of leases. + * A new DDNS Tuning library adds custom behaviors related to + Dynamic DNS updates on a per-client basis. + * The subnet_cmds hook has been expanded with several new + commands: `subnet4-delta-add`, `subnet4-delta-del`, + `subnet6-delta-add`, and `subnet6-delta-del`. + +------------------------------------------------------------------- +Mon Oct 4 23:33:08 UTC 2021 - Jan Engelhardt + +- Update to release 2.0.0 + * In Kea 2.0, the HA component has undergone a substantial + architectural change. When HA+MT is enabled, the DHCPv4 and + DHCPv6 daemons are now able to open HTTP sockets on their own + and connect directly to each other, bypassing the Control Agent + (CA). This eliminates the bottlenecks of sequential UNIX socket + connection and the need to translate between HTTP and UNIX + socket connections. + * A new parameter on-fail gives the operator more control over + what to do on database connection loss. + * The length of the "parking lot queue" is now configurable; a + default value of 256 is used. + * A new statistic, `packet-queue-size`, has been added that + reports packet-queue utilization. + +------------------------------------------------------------------- +Thu Jun 3 23:21:35 UTC 2021 - Jan Engelhardt + +- Update to release 1.9.8 + * Kea now recognizes requests sent from vendors that include + their information in DHCPv6 Vendor Class option (code 16). + * Fixed the server ignoring the Subnet Selection option + supplied by a client if its query contained a Relay Agent + Information (RAI) option without a Link Selection option. + +------------------------------------------------------------------- +Sat May 15 11:09:40 UTC 2021 - Jan Engelhardt + +- Update to release 1.9.7 + * The Control Agent now supports TLS/HTTPS. + * kea-shell supports TLS/HTTPS. + * kea-admin now accepts the -P, --port parameter + * kea-dhcp4 now supports specifying valid-lifetime in + client classes. + +------------------------------------------------------------------- +Mon Apr 5 10:02:22 UTC 2021 - Samu Voutilainen + +- Own directory /var/lib/kea, as that is used as default for + memfile lease store. + +------------------------------------------------------------------- +Tue Nov 10 08:04:38 UTC 2020 - Jan Engelhardt + +- Update to release 1.9.1 + * New parameters: ddns-use-conflict-resolution, + ip-reservations-unique, ddns-update-on-renew, + cache-threshold, cache-max-age. + * Support for new IPv6-only-preferred option for DHCPv4. + * Added support of basic HTTP authentication in HTTP library, + control agent. + +------------------------------------------------------------------- +Sat Sep 5 22:02:39 UTC 2020 - Jan Engelhardt + +- Update to release 1.8.0 + * User-defined option definitions were not committed, which was + fixed. + * kea-dhcp4 now rejects inbound client messages that have + neither a hardware address nor a client identifier. + * Rather than within the 'dhcp-ddns' section, DDNS behavioral + parameters may now be specified at global, shared-network, + and subnet scopes. + * Added support of BOOTP leases with infinite valid lifetime. + * Added the -N command line switch that enables experimental + multi-threading support. + +------------------------------------------------------------------- +Wed Apr 22 04:03:08 UTC 2020 - Steve Kowalik + +- Switch to Python 3 Sphinx due to Python 2 removal. + +------------------------------------------------------------------- +Mon Sep 9 17:18:55 UTC 2019 - Jan Engelhardt + +- Update to release 1.6.0 + * Corrected multiple occurrences of out of bounds vector reads. + * Corrected a bug in the Kea MySQL Configuration Backend which + caused the Kea DHCPv6 server to incorrectly require the + server tag to be provided with the remote-subnet6-option-set + command. + * Corrected a bug in the Kea MySQL Configuration Backend which + prevented the DHCP servers from discovering and fetching the + changes applied with the new commands. + * Prevent the DHCP servers from asserting when malformed + hostname or FQDN options are received. + +------------------------------------------------------------------- +Tue Aug 27 14:36:52 UTC 2019 - Adam Majer + +- Update keyring file +- Temporarily hardcode version in upstream URLs + +------------------------------------------------------------------- +Wed Aug 21 15:08:38 UTC 2019 - Adam Majer + +- Update to version 1.6.0~beta2 + * Default file locations for lease file, server-duid, log files and lock + files have changed. Files previously stored in `/var/kea` are now stored + in `/var/run/kea`. Server hooks previously installed in `/usr/lib/hooks` + are now installed in `/usr/lib/kea/hooks`. The log files are now stored + in `/var/log/kea`. + * The kea-admin commands (lease-init, lease-version, lease-upgrade) were + renamed to better reflect the fact that the database can store much more + than just leases. They're now called db-init, db-version, db-upgrade. + * The Logging entry in the configuration file has moved to specific + daemon sections. This require a simple configuration file modification. + You need to move Logging entry from its global scope into the Dhcp4, + Dhcp6, DhcpDdns, Control-agent or Netconf scope. + +Please see 1.6 migration wiki +https://gitlab.isc.org/isc-projects/kea/wikis/migrating-to-kea-1.6 + +For release notes, see +https://ftp.isc.org/isc/kea/1.6.0-beta2/Kea160beta2ReleaseNotes.txt + +- Fix building of perfdhcp +- Enable building of kea-shell +- Update sonames of all affected libraries and ship only libraries, + allowing `ldconfig` to actually make the symlinks +- Rework spec file to abstract soversions + +------------------------------------------------------------------- +Fri Dec 28 23:05:17 UTC 2018 - mardnh@gmx.de + +- Update to version 1.5.0 + * Support for YANG/NETCONF, the ability to store major + configuration elements in a YANG model and manipulate it + using NETCONF. + * Support for global host reservations (previously each host + reservation had to be associated with a specific subnet) + * Class commands – a new hook that allows dynamic changes + to be made to client classes without restarting. + * Performance and resiliency improvements to the High + Availability hook. + * A new congestion control feature to mitigate the effects of + heavy DHCP traffic conditions. + * Improvements to the High Availability feature, including paged + updates between HA pairs to alleviate timeouts. +- Run spec-cleaner + +------------------------------------------------------------------- +Tue Jun 19 22:45:35 UTC 2018 - jengelh@inai.de + +- Remove unnecessary ldconfig call for kea-hooks: files are + outside standard search dirs. +- Drop --disable-dependency-tracking, this is already part of + %configure. + +------------------------------------------------------------------- +Mon Jun 18 10:00:52 UTC 2018 - adam.majer@suse.de + +- update to new upstream release 1.4.0 +- fix licence - Mozilla Public License v2.0 +- package default hook libraries +- regenerate parser and documentation +- add ISC keyring (2017 & 2018) + +------------------------------------------------------------------- +Fri Jun 30 19:55:50 UTC 2017 - jengelh@inai.de + +- Stop on errors from useradd/groupadd + +------------------------------------------------------------------- +Thu Jun 30 10:02:50 UTC 2017 - obs@botter.cc + +- compile in support for MySQL and PostgresQL +- add symlink to rckea +- add environment variable for PID_FILE_DIR to service file + +------------------------------------------------------------------- +Sat May 27 13:06:10 UTC 2017 - obs@botter.cc + +- Update to new upstream release 1.2.0 + +------------------------------------------------------------------- +Fri Jan 22 11:00:02 UTC 2016 - jengelh@inai.de + +- Update to new upstream release 1.0.0 + +------------------------------------------------------------------- +Mon Dec 8 08:38:54 UTC 2014 - jengelh@inai.de + +- Initial package (version 0.9.g20262) for build.opensuse.org diff --git a/kea.keyring b/kea.keyring new file mode 100644 index 0000000..8c6dc9a --- /dev/null +++ b/kea.keyring @@ -0,0 +1,175 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=NX7P +-----END PGP PUBLIC KEY BLOCK----- diff --git a/kea.spec b/kea.spec new file mode 100644 index 0000000..95720d1 --- /dev/null +++ b/kea.spec @@ -0,0 +1,539 @@ +# +# spec file for package kea +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define asiodns_sover 48 +%define asiolink_sover 71 +%define cc_sover 68 +%define cfgclient_sover 65 +%define cryptolink_sover 50 +%define d2srv_sover 46 +%define database_sover 61 +%define dhcppp_sover 89 +%define dhcp_ddns_sover 56 +%define dhcpsrv_sover 108 +%define dnspp_sover 56 +%define eval_sover 69 +%define exceptions_sover 33 +%define hooks_sover 97 +%define http_sover 71 +%define log_sover 61 +%define mysql_sover 69 +%define pgsql_sover 69 +%define process_sover 72 +%define stats_sover 41 +%define tcp_sover 18 +%define util_io_sover 0 +%define util_sover 84 +%if 0%{?suse_version} >= 1500 +%bcond_without regen_files +%else +%bcond_with regen_files +%endif +Name: kea +Version: 2.6.0 +Release: 0 +Summary: Dynamic Host Configuration Protocol daemon +License: MPL-2.0 +Group: Productivity/Networking/Boot/Servers +URL: https://kea.isc.org/ +#Git-Clone: https://gitlab.isc.org/isc-projects/kea +#Github is out of date / abandoned(?) +Source: https://ftp.isc.org/isc/kea/%version/kea-%version.tar.gz +Source2: https://ftp.isc.org/isc/kea/%version/kea-%version.tar.gz.asc +# https://www.isc.org/pgpkey/ +Source3: kea.keyring +BuildRequires: autoconf >= 2.59 +BuildRequires: automake +BuildRequires: bison >= 3.3 +BuildRequires: freeradius-server-devel +BuildRequires: gcc-c++ +BuildRequires: libmysqlclient-devel +BuildRequires: libtool >= 2 +BuildRequires: log4cplus-devel +BuildRequires: pkg-config >= 0.23 +BuildRequires: postgresql-server-devel +BuildRequires: python-rpm-macros +BuildRequires: python3 +BuildRequires: python3-Sphinx +BuildRequires: sysuser-tools +BuildRequires: xz +BuildRequires: pkgconfig(libcrypto) +%sysusers_requires +Suggests: %name-hooks = %version +%if 0%{with regen_files} +BuildRequires: flex +%endif +%if 0%{?suse_version} >= 1500 +BuildRequires: libboost_system-devel +%else +BuildRequires: boost-devel +%endif +BuildRequires: systemd-rpm-macros + +%description +Kea is a new DHCPv4/DHCPv6 server being developed by ISC in C++, a +continuation of the DHCP server in the (ended) BIND10 project. The +objective of this project is to provide a very high-performance, +extensible DHCP server engine for use by enterprises and service +providers, either as-is or with extensions and modifications. + +%package doc +Summary: Documentation for Kea +Group: Documentation/HTML +BuildArch: noarch + +%description doc +This package contains the documentation for Kea. + +%package hooks +Summary: Standard Kea DHCP hooks/plugins +Group: System/Libraries + +%description hooks +A standard set of external libraries used to provide additional +functionality for Kea DHCP server + +%package -n libkea-asiodns%asiodns_sover +Summary: Kea DHCP server asiolink abstraction layer library +Group: System/Libraries + +%description -n libkea-asiodns%asiodns_sover +The asiodns library provides an abstraction layer between BIND10/Kea +modules and the asiolink library. + +%package -n libkea-asiolink%asiolink_sover +Summary: Kea DHCP server socket I/O abstraction layer library +Group: System/Libraries + +%description -n libkea-asiolink%asiolink_sover +The asiolink library provides an abstraction layer between BIND10/Kea +modules and the socket I/O subsystem Kea is using (currently, +boost::asio). + +%package -n libkea-cc%cc_sover +Summary: Kea DHCP server command channel library +Group: System/Libraries + +%description -n libkea-cc%cc_sover +libkea-cc is used for the control channel protocol between keactrl +and the server. + +%package -n libkea-cfgclient%cfgclient_sover +Summary: Kea DHCP server configuration client library +Group: System/Libraries + +%description -n libkea-cfgclient%cfgclient_sover +The Kea DHCP server can be managed at runtime via the Control +Channel. The CC allows an external entity (e.g. a tool run by a +sysadmin or a script) to issue commands to the server which can +influence its behavior or retreive information from it. Examples +envisioned are: reconfiguration, statistics retrieval and +manipulation, and shutdown. + +Communication over the Control Channel is conducted using JSON +structures. + +%package -n libkea-cryptolink%cryptolink_sover +Summary: Kea DHCP server crypto abstraction layer library +Group: System/Libraries + +%description -n libkea-cryptolink%cryptolink_sover +The Kea cryptolink library is an abstraction layer for crypto +library backends (such as Botan, OpenSSL). + +%package -n libkea-d2srv%d2srv_sover +Summary: Kea DHCP-DDNS service library +Group: System/Libraries + +%description -n libkea-d2srv%d2srv_sover +This library provides DHCP-DDNS specific event loop and business logic. + +%package -n libkea-database%database_sover +Summary: Kea database abstraction library +Group: System/Libraries + +%description -n libkea-database%database_sover +Kea's database abstraction library. + +%package -n libkea-dhcp++%dhcppp_sover +Summary: Kea DHCP library +Group: System/Libraries + +%description -n libkea-dhcp++%dhcppp_sover +libdhcp++ is an all-purpose DHCP-manipulation library, written in +C++. It offers packet parsing and assembly, DHCPv4 and DHCPv6 options +parsing and assembly, interface detection, and socket operations It +can be used by server, client, relay, performance tools and other +DHCP-related tools. For a server-specific library, see +libkea-dhcpsrv. + +%package -n libkea-dhcp_ddns%dhcp_ddns_sover +Summary: Kea DHCP Dynamic DNS library +Group: System/Libraries + +%description -n libkea-dhcp_ddns%dhcp_ddns_sover +This is a library of classes for sending and receiving requests used +by ISC's DHCP-DDNS (aka D2) service to carry out DHCP-driven DNS +updates. + +%package -n libkea-dhcpsrv%dhcpsrv_sover +Summary: Kea DHCP server component library +Group: System/Libraries + +%description -n libkea-dhcpsrv%dhcpsrv_sover +This library contains code used for the DHCPv4 and DHCPv6 servers' +operations, including the "Lease Manager" that manages information +about leases and the "Configuration Manager" that stores the servers' +configuration etc. + +%package -n libkea-dns++%dnspp_sover +Summary: Kea DHCP server component library +Group: System/Libraries + +%description -n libkea-dns++%dnspp_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n libkea-eval%eval_sover +Summary: Kea DHCP expression evaluation library +Group: System/Libraries + +%description -n libkea-eval%eval_sover +The core of the libeval library is a parser that is able to parse an +expression (e.g. option[123].text == 'APC'). This is currently used +for client classification. + +%package -n libkea-exceptions%exceptions_sover +Summary: Kea DHCP server component library +Group: System/Libraries + +%description -n libkea-exceptions%exceptions_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n libkea-hooks%hooks_sover +Summary: Kea DHCP server hook library +Group: System/Libraries + +%description -n libkea-hooks%hooks_sover +The hooks framework is a Kea system that simplifies the way that +users can write code to modify the behavior of Kea. Instead of +altering the Kea source code, they write functions that are compiled +and linked into one or more dynamic shared objects. The library is +specified in the Kea configuration and, at runtime, Kea dynamically +loads the library into its address space. At various points in the +processing, the component "calls out" to functions in the library, +passing to them the data is it currently working on. They can examine +and modify the data as required. + +%package -n libkea-http%http_sover +Summary: Kea DHCP http communication library +Group: System/Libraries + +%description -n libkea-http%http_sover +This library is used by Control Agent to establish HTTP connections, +receive messages and send responses over HTTP. This library uses +boost ASIO for creating TCP connections and asynchronously receive +and send the data over the sockets. + +%package -n libkea-log%log_sover +Summary: Kea DHCP logging system library +Group: System/Libraries + +%description -n libkea-log%log_sover +This library contains the Kea logging system, which is based on the +log4J logging system common in Java development, and includes the +following ideas: a set of severity levels; a hierarchy of logging +sources; separation of message use from message text. + +%package -n libkea-mysql%mysql_sover +Summary: Kea MySQL database library +Group: System/Libraries + +%description -n libkea-mysql%mysql_sover +Kea's database library for MySQL. + +%package -n libkea-pgsql%pgsql_sover +Summary: Kea PostgreSQL database library +Group: System/Libraries + +%description -n libkea-pgsql%pgsql_sover +Kea's database library for PostgreSQL. + +%package -n libkea-process%process_sover +Summary: Kea DHCP process abstraction library +Group: System/Libraries + +%description -n libkea-process%process_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n libkea-stats%stats_sover +Summary: Kea DHCP Statistics Manager library +Group: System/Libraries + +%description -n libkea-stats%stats_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n libkea-tcp%tcp_sover +Summary: Kea TCP library +Group: System/Libraries + +%description -n libkea-tcp%tcp_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n libkea-util-io%util_io_sover +Summary: Kea I/O utility function library +Group: System/Libraries + +%description -n libkea-util-io%util_io_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n libkea-util%util_sover +Summary: Kea utility function library +Group: System/Libraries + +%description -n libkea-util%util_sover +One of the many libraries the Kea DHCP server is composed of. + +%package -n python3-kea +Summary: Python interface to Kea DHCP server +Group: Development/Libraries/Python + +%description -n python3-kea +Python3 interface to ISC Kea DHCP server. + +%package devel +Summary: Development files for the Kea DHCP server +Group: Development/Libraries/C and C++ +Requires: libkea-asiodns%asiodns_sover = %version +Requires: libkea-asiolink%asiolink_sover = %version +Requires: libkea-cc%cc_sover = %version +Requires: libkea-cfgclient%cfgclient_sover = %version +Requires: libkea-cryptolink%cryptolink_sover = %version +Requires: libkea-d2srv%d2srv_sover = %version +Requires: libkea-database%database_sover = %version +Requires: libkea-dhcp++%dhcppp_sover = %version +Requires: libkea-dhcp_ddns%dhcp_ddns_sover = %version +Requires: libkea-dhcpsrv%dhcpsrv_sover = %version +Requires: libkea-dns++%dnspp_sover = %version +Requires: libkea-eval%eval_sover = %version +Requires: libkea-exceptions%exceptions_sover = %version +Requires: libkea-hooks%hooks_sover = %version +Requires: libkea-http%http_sover = %version +Requires: libkea-log%log_sover = %version +Requires: libkea-mysql%mysql_sover = %version +Requires: libkea-pgsql%pgsql_sover = %version +Requires: libkea-process%process_sover = %version +Requires: libkea-stats%stats_sover = %version +Requires: libkea-tcp%tcp_sover = %version +Requires: libkea-util%util_sover = %version +Requires: libkea-util-io%util_io_sover = %version +# Bundy DHCP and Kea share the same origin, so conflict +Conflicts: otheproviders(pkgconfig(dns++)) + +%description devel +Development files for the Kea DHCP server + +%prep +%autosetup -p1 -n kea-%version + +%build +export FREERADIUS_INCLUDE="%_includedir/freeradius" +export FREERADIUS_LIB="" +export FREERADIUS_DICTIONARY="" +autoreconf -fi +%configure \ + --disable-rpath --disable-static \ +%if 0%{with regen_files} + --enable-generate-docs --enable-generate-parser \ +%endif + --enable-logger-checks \ + --with-dhcp-mysql --with-dhcp-pgsql \ + --enable-perfdhcp --enable-shell +make %{?_smp_mflags} + +%install +b=%buildroot +%make_install +find %buildroot -type f -name "*.la" -delete -print +mkdir -p "$b/%_unitdir" "$b/%_tmpfilesdir" "$b/%_sysusersdir" +cat <<-EOF >"$b/%_unitdir/kea.service" + [Unit] + Description=ISC Kea DHCP server + Before=multi-user.target + After=remote-fs.target network.target nss-lookup.target time-sync.target ldap.service ndsd.service + [Service] + Type=forking + Environment=KEA_PIDFILE_DIR=%_rundir/%name + RuntimeDirectory=kea + ExecStart=%_sbindir/keactrl start + ExecReload=%_sbindir/keactrl reload + ExecStop=%_sbindir/keactrl stop + [Install] + WantedBy=multi-user.target + Alias=dhcp-server.service +EOF +cat <<-EOF >"$b/%_tmpfilesdir/kea.conf" + d /run/kea 0775 keadhcp keadhcp - +EOF +echo 'u keadhcp - "Kea DHCP server" /var/lib/kea' >system-user-keadhcp.conf +cp -a system-user-keadhcp.conf "$b/%_sysusersdir/" +%sysusers_generate_pre system-user-keadhcp.conf random system-user-keadhcp.conf + +perl -i -pe 's{%_localstatedir/log/kea-}{%_localstatedir/log/kea/}' \ + "$b/%_sysconfdir/kea"/*.conf + +mkdir -p "$b%_localstatedir/log/kea" + +# Remove unnecessary files +find "%buildroot/%_libdir" -name "*.so.*" -type l -delete +rm -Rf "%buildroot/%python3_sitelib/kea/__pycache__" + +%pre -f random.pre +systemd-tmpfiles --create kea.conf || : +%service_add_pre kea.service + +%post +%service_add_post kea.service + +%preun +%service_del_preun kea.service + +%postun +%service_del_postun kea.service + +%ldconfig_scriptlets -n libkea-asiodns%asiodns_sover +%ldconfig_scriptlets -n libkea-asiolink%asiolink_sover +%ldconfig_scriptlets -n libkea-cc%cc_sover +%ldconfig_scriptlets -n libkea-cfgclient%cfgclient_sover +%ldconfig_scriptlets -n libkea-cryptolink%cryptolink_sover +%ldconfig_scriptlets -n libkea-d2srv%d2srv_sover +%ldconfig_scriptlets -n libkea-database%database_sover +%ldconfig_scriptlets -n libkea-dhcp++%dhcppp_sover +%ldconfig_scriptlets -n libkea-dhcp_ddns%dhcp_ddns_sover +%ldconfig_scriptlets -n libkea-dhcpsrv%dhcpsrv_sover +%ldconfig_scriptlets -n libkea-dns++%dnspp_sover +%ldconfig_scriptlets -n libkea-eval%eval_sover +%ldconfig_scriptlets -n libkea-exceptions%exceptions_sover +%ldconfig_scriptlets -n libkea-hooks%hooks_sover +%ldconfig_scriptlets -n libkea-http%http_sover +%ldconfig_scriptlets -n libkea-log%log_sover +%ldconfig_scriptlets -n libkea-mysql%mysql_sover +%ldconfig_scriptlets -n libkea-pgsql%pgsql_sover +%ldconfig_scriptlets -n libkea-process%process_sover +%ldconfig_scriptlets -n libkea-stats%stats_sover +%ldconfig_scriptlets -n libkea-tcp%tcp_sover +%ldconfig_scriptlets -n libkea-util-io%util_io_sover +%ldconfig_scriptlets -n libkea-util%util_sover + +%files +%dir %_sysconfdir/kea +%config(noreplace) %_sysconfdir/kea/*.conf +%_mandir/man8/*.8%{?ext_man} +%_sbindir/kea* +%_sbindir/perfdhcp +%_datadir/kea/ +%_unitdir/*.service +%dir %_localstatedir/lib/kea +%_tmpfilesdir/ +%_sysusersdir/ +%attr(0775,keadhcp,keadhcp) %_localstatedir/log/kea/ + +%files doc +%doc %_datadir/doc/kea/ +%exclude %_datadir/doc/kea/html/.buildinfo + +%files hooks +%dir %_libdir/kea +%_libdir/kea/hooks/ + +%files -n libkea-asiodns%asiodns_sover +%_libdir/libkea-asiodns.so.%asiodns_sover.* + +%files -n libkea-asiolink%asiolink_sover +%_libdir/libkea-asiolink.so.%asiolink_sover.* + +%files -n libkea-cc%cc_sover +%_libdir/libkea-cc.so.%cc_sover.* + +%files -n libkea-cfgclient%cfgclient_sover +%_libdir/libkea-cfgclient.so.%cfgclient_sover.* + +%files -n libkea-cryptolink%cryptolink_sover +%_libdir/libkea-cryptolink.so.%cryptolink_sover.* + +%files -n libkea-d2srv%d2srv_sover +%_libdir/libkea-d2srv.so.%d2srv_sover.* + +%files -n libkea-database%database_sover +%_libdir/libkea-database.so.%database_sover.* + +%files -n libkea-dhcp++%dhcppp_sover +%_libdir/libkea-dhcp++.so.%dhcppp_sover.* + +%files -n libkea-dhcp_ddns%dhcp_ddns_sover +%_libdir/libkea-dhcp_ddns.so.%dhcp_ddns_sover.* + +%files -n libkea-dhcpsrv%dhcpsrv_sover +%_libdir/libkea-dhcpsrv.so.%dhcpsrv_sover.* + +%files -n libkea-dns++%dnspp_sover +%_libdir/libkea-dns++.so.%dnspp_sover.* + +%files -n libkea-eval%eval_sover +%_libdir/libkea-eval.so.%eval_sover.* + +%files -n libkea-exceptions%exceptions_sover +%_libdir/libkea-exceptions.so.%exceptions_sover.* + +%files -n libkea-hooks%hooks_sover +%_libdir/libkea-hooks.so.%hooks_sover.* + +%files -n libkea-http%http_sover +%_libdir/libkea-http.so.%http_sover.* + +%files -n libkea-log%log_sover +%_libdir/libkea-log.so.%log_sover.* + +%files -n libkea-mysql%mysql_sover +%_libdir/libkea-mysql.so.%mysql_sover.* + +%files -n libkea-pgsql%pgsql_sover +%_libdir/libkea-pgsql.so.%pgsql_sover.* + +%files -n libkea-process%process_sover +%_libdir/libkea-process.so.%process_sover.* + +%files -n libkea-stats%stats_sover +%_libdir/libkea-stats.so.%stats_sover.* + +%files -n libkea-tcp%tcp_sover +%_libdir/libkea-tcp.so.%tcp_sover.* + +%files -n libkea-util-io%util_io_sover +%_libdir/libkea-util-io.so.%util_io_sover.* + +%files -n libkea-util%util_sover +%_libdir/libkea-util.so.%util_sover.* + +%files -n python3-kea +%python3_sitelib/kea/ + +%files devel +%_includedir/kea/ +%_libdir/libkea*.so + +%changelog