Date: Thursday, August 4, 2022 @ 10:26:09 Author: eworm Revision: 452051
archrelease: copy trunk to testing-x86_64 Added: dhcp/repos/testing-x86_64/ dhcp/repos/testing-x86_64/0001-99-replace-hostname-with-uname-n-o.patch (from rev 452050, dhcp/trunk/0001-99-replace-hostname-with-uname-n-o.patch) dhcp/repos/testing-x86_64/PKGBUILD (from rev 452050, dhcp/trunk/PKGBUILD) dhcp/repos/testing-x86_64/dhclient@.service (from rev 452050, dhcp/trunk/dhclient@.service) dhcp/repos/testing-x86_64/dhcp-sysusers.conf (from rev 452050, dhcp/trunk/dhcp-sysusers.conf) dhcp/repos/testing-x86_64/dhcp-tmpfiles.conf (from rev 452050, dhcp/trunk/dhcp-tmpfiles.conf) dhcp/repos/testing-x86_64/dhcpd4.service (from rev 452050, dhcp/trunk/dhcpd4.service) dhcp/repos/testing-x86_64/dhcpd6.service (from rev 452050, dhcp/trunk/dhcpd6.service) dhcp/repos/testing-x86_64/keys/ -----------------------------------------------+ 0001-99-replace-hostname-with-uname-n-o.patch | 27 ++++++ PKGBUILD | 105 ++++++++++++++++++++++++ dhclient@.service | 13 ++ dhcp-sysusers.conf | 1 dhcp-tmpfiles.conf | 3 dhcpd4.service | 25 +++++ dhcpd6.service | 25 +++++ 7 files changed, 199 insertions(+) Copied: dhcp/repos/testing-x86_64/0001-99-replace-hostname-with-uname-n-o.patch (from rev 452050, dhcp/trunk/0001-99-replace-hostname-with-uname-n-o.patch) =================================================================== --- testing-x86_64/0001-99-replace-hostname-with-uname-n-o.patch (rev 0) +++ testing-x86_64/0001-99-replace-hostname-with-uname-n-o.patch 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1,27 @@ +From 4c859eba57288eb17eb4603d67ef415b87503879 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <m...@eworm.de> +Date: Thu, 4 Aug 2022 12:15:46 +0200 +Subject: [PATCH 1/1] [!99] replace `hostname` with `uname -n`o + +The former belongs to package `inetutils`, which has some security +implications, so let's use the latter. +--- + client/scripts/linux | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/client/scripts/linux b/client/scripts/linux +index c4e51f6d..49eff40a 100755 +--- a/client/scripts/linux ++++ b/client/scripts/linux +@@ -113,7 +113,7 @@ set_hostname() { + local current_hostname + + if [ -n "$new_host_name" ]; then +- current_hostname=$(hostname) ++ current_hostname=$(uname -n) + + # current host name is empty, '(none)' or 'localhost' or differs from new one from DHCP + if [ -z "$current_hostname" ] || +-- +2.37.1 + Copied: dhcp/repos/testing-x86_64/PKGBUILD (from rev 452050, dhcp/trunk/PKGBUILD) =================================================================== --- testing-x86_64/PKGBUILD (rev 0) +++ testing-x86_64/PKGBUILD 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1,105 @@ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Contributor: Daniel Isenmann <daniel @archlinux.org> + +pkgbase=dhcp +pkgname=('dhcp' 'dhclient') + +# separate patch levels with a period to maintain proper versioning. +_realver=4.4.3 +pkgver=${_realver/-/.} +pkgrel=2 +arch=('x86_64') +license=('custom:isc-dhcp') +url='https://www.isc.org/dhcp/' +makedepends=('bash' 'iproute2' 'openldap') +options=('!lto') +validpgpkeys=('7E1C91AC8030A5A59D1EFAB9750F3C87723E4012') # Internet Systems Consortium, Inc. (Signing key, 2021-2022) <codes...@isc.org> +source=("https://downloads.isc.org/isc/${pkgbase}/${_realver}/${pkgbase}-${_realver}.tar.gz"{,.asc} + '0001-99-replace-hostname-with-uname-n-o.patch' + 'dhcp-sysusers.conf' + 'dhcp-tmpfiles.conf' + 'dhcpd4.service' + 'dhcpd6.service' + 'dhclient@.service') +sha256sums=('0e3ec6b4c2a05ec0148874bcd999a66d05518378d77421f607fb0bc9d0135818' + 'SKIP' + '7a3349faac1a2209912b4911ca173f975e3dabf409739250285a25c447b1ca9f' + 'b16083e6bb572ffacaa7cd97e7fde5fcfa1b6dbeb166f162e2ec6e8ec4b928d6' + 'abcd30e9e8428e34d22ab4d3074ef4bd84c2b11f5868597111b47d6f56d204da' + '03fce30efab819b2d928085b0bab962a33ce56fc376acae98ad9b30aa278c9c8' + 'f98a4438f4f69cab7cc5cce6927df4790ee993ebc8f88a169e63043c53d25625' + '86cd0b1e0ea1d47ab096f6ee925eee60545116fb887a155761eda589b30e4f0e') + +prepare() { + cd "${srcdir}/${pkgbase}-${_realver}" + + patch -Np1 < ../0001-99-replace-hostname-with-uname-n-o.patch +} + +build() { + cd "${srcdir}/${pkgbase}-${_realver}" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --sysconfdir=/etc \ + --enable-binary-leases \ + --enable-paranoia \ + --with-ldap \ + --with-ldapcrypto \ + --with-srv-lease-file=/var/lib/dhcp/dhcpd.leases \ + --with-srv6-lease-file=/var/lib/dhcp/dhcpd6.leases \ + --with-cli-lease-file=/var/lib/dhclient/dhclient.leases \ + --with-cli6-lease-file=/var/lib/dhclient/dhclient6.leases + + make -j1 +} + +package_dhcp(){ + pkgdesc="A DHCP server, client, and relay agent" + depends=('glibc' 'libldap') + backup=('etc/dhcpd.conf' 'etc/dhcpd6.conf') + + cd "${srcdir}/${pkgbase}-${_realver}" + + make DESTDIR="${pkgdir}" install + + install -D -m644 "${srcdir}/dhcp-sysusers.conf" "${pkgdir}/usr/lib/sysusers.d/dhcp.conf" + install -D -m644 "${srcdir}/dhcp-tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/dhcp.conf" + install -D -m644 "${srcdir}/dhcpd4.service" "${pkgdir}/usr/lib/systemd/system/dhcpd4.service" + install -D -m644 "${srcdir}/dhcpd6.service" "${pkgdir}/usr/lib/systemd/system/dhcpd6.service" + + # move and install config files in place + mv "${pkgdir}/etc/dhcpd.conf.example" "${pkgdir}/etc/dhcpd.conf" + install -D -m644 doc/examples/dhcpd-dhcpv6.conf "${pkgdir}/etc/dhcpd6.conf" + + # Remove dhclient + make -C client DESTDIR="${pkgdir}" uninstall + + # install license + install -m644 -D LICENSE "${pkgdir}/usr/share/licenses/dhcp/LICENSE" +} + +package_dhclient(){ + pkgdesc="A standalone DHCP client from the dhcp package" + depends=('glibc' 'bash' 'iproute2' 'run-parts') + provides=('dhcp-client') + + cd "${srcdir}/${pkgbase}-${_realver}" + + make -C client DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/dhclient" + mv "${pkgdir}/etc/dhclient.conf.example" "${pkgdir}/usr/share/dhclient/" + + install -d "${pkgdir}/var/lib/dhclient" + + # install dhclient linux script + install -m755 client/scripts/linux "${pkgdir}/usr/bin/dhclient-script" + + # install license + install -m644 -D LICENSE "${pkgdir}/usr/share/licenses/dhclient/LICENSE" + + # install systemd service unit + install -m644 -D "$srcdir/dhclient@.service" "${pkgdir}/usr/lib/systemd/system/dhclient@.service" +} Copied: dhcp/repos/testing-x86_64/dhclient@.service (from rev 452050, dhcp/trunk/dhclient@.service) =================================================================== --- testing-x86_64/dhclient@.service (rev 0) +++ testing-x86_64/dhclient@.service 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1,13 @@ +[Unit] +Description=dhclient on %I +Wants=network.target +Before=network.target + +[Service] +ExecStart=/usr/bin/dhclient -pf /run/dhclient@%i/dhclient.pid -d %I +RuntimeDirectory=dhclient@%i +ProtectSystem=on +ProtectHome=on + +[Install] +WantedBy=multi-user.target Copied: dhcp/repos/testing-x86_64/dhcp-sysusers.conf (from rev 452050, dhcp/trunk/dhcp-sysusers.conf) =================================================================== --- testing-x86_64/dhcp-sysusers.conf (rev 0) +++ testing-x86_64/dhcp-sysusers.conf 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1 @@ +u dhcp - "DHCP daemon" / Copied: dhcp/repos/testing-x86_64/dhcp-tmpfiles.conf (from rev 452050, dhcp/trunk/dhcp-tmpfiles.conf) =================================================================== --- testing-x86_64/dhcp-tmpfiles.conf (rev 0) +++ testing-x86_64/dhcp-tmpfiles.conf 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1,3 @@ +d /var/lib/dhcp 0750 dhcp dhcp - +f /var/lib/dhcp/dhcpd.leases 0640 dhcp dhcp - +f /var/lib/dhcp/dhcpd6.leases 0640 dhcp dhcp - Copied: dhcp/repos/testing-x86_64/dhcpd4.service (from rev 452050, dhcp/trunk/dhcpd4.service) =================================================================== --- testing-x86_64/dhcpd4.service (rev 0) +++ testing-x86_64/dhcpd4.service 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1,25 @@ +[Unit] +Description=IPv4 DHCP server +After=network.target network-online.target +Wants=network-online.target + +[Service] +Type=forking +ExecStart=/usr/bin/dhcpd -4 -q -cf /etc/dhcpd.conf -pf /run/dhcpd4/dhcpd.pid +RuntimeDirectory=dhcpd4 +PIDFile=/run/dhcpd4/dhcpd.pid +User=dhcp +AmbientCapabilities=CAP_NET_BIND_SERVICE CAP_NET_RAW +ProtectSystem=full +ProtectHome=on +KillSignal=SIGINT +# We pull in network-online.target for a configured network connection. +# However this is not guaranteed to be the network connection our +# networks are configured for. So try to restart on failure with a delay +# of two seconds. Rate limiting kicks in after 12 seconds. +RestartSec=2s +Restart=on-failure +StartLimitInterval=12s + +[Install] +WantedBy=multi-user.target Copied: dhcp/repos/testing-x86_64/dhcpd6.service (from rev 452050, dhcp/trunk/dhcpd6.service) =================================================================== --- testing-x86_64/dhcpd6.service (rev 0) +++ testing-x86_64/dhcpd6.service 2022-08-04 10:26:09 UTC (rev 452051) @@ -0,0 +1,25 @@ +[Unit] +Description=IPv6 DHCP server +After=network.target network-online.target +Wants=network-online.target + +[Service] +Type=forking +ExecStart=/usr/bin/dhcpd -6 -q -cf /etc/dhcpd6.conf -pf /run/dhcpd6/dhcpd.pid +RuntimeDirectory=dhcpd6 +PIDFile=/run/dhcpd6/dhcpd.pid +User=dhcp +AmbientCapabilities=CAP_NET_BIND_SERVICE CAP_NET_RAW +ProtectSystem=full +ProtectHome=on +KillSignal=SIGINT +# We pull in network-online.target for a configured network connection. +# However this is not guaranteed to be the network connection our +# networks are configured for. So try to restart on failure with a delay +# of two seconds. Rate limiting kicks in after 12 seconds. +RestartSec=2s +Restart=on-failure +StartLimitInterval=12s + +[Install] +WantedBy=multi-user.target