[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1116127: trixie-pu: package dhcpcd/1:10.1.0-11+deb13u1



Package: release.debian.org
Severity: normal
Tags: trixie
X-Debbugs-Cc: dhcpcd@packages.debian.org, martin-eric.racine@iki.fi
Control: affects -1 + src:dhcpcd
User: release.debian.org@packages.debian.org
Usertags: pu

[ Reasons ]
1) Prevent a segfault.
2) Ensure a succesful start even if a specific Recommends is not installed.

[ Impact ]
See above and below.

[ Tests ]
Bug reporters have confirmed that these two changes solved the issues for them. Additionally, the 2 changes have been in Forky a while already.

[ Risks ]
Minimal. Three-line change to the source code and removal of one item in the systemd unit's path.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]
This Trixe proposed update includes two fixes:

1) Upstream Git cherry-pick to prevent segfaults in specific circumstances. See #1114964.

2) Change to Debian-specific systemd service unit to ensure a succesfull launch if a specific Recommends is not installed. See #1111467.
diff -Nru dhcpcd-10.1.0/debian/changelog dhcpcd-10.1.0/debian/changelog
--- dhcpcd-10.1.0/debian/changelog	2025-05-08 21:47:28.000000000 +0300
+++ dhcpcd-10.1.0/debian/changelog	2025-09-24 07:36:32.000000000 +0300
@@ -1,3 +1,14 @@
+dhcpcd (1:10.1.0-11+deb13u1) trixie; urgency=medium
+
+  * [patches]
+    + DHCP: Fix crash when someone deletes our address (Closes: #1114964).
+      Cherry-pick from upstream Git (included in Forky since 10.2.0).
+  * [service]
+    - Remove /etc/wpa_supplicant from ReadWritePaths (Closes: #1111467).
+      Otherwise dhcpcd fails to launch if wpasupplicant is not installed.
+
+ -- Martin-Éric Racine <martin-eric.racine@iki.fi>  Wed, 24 Sep 2025 07:36:32 +0300
+
 dhcpcd (1:10.1.0-11) unstable; urgency=medium
 
   * [patches]
diff -Nru dhcpcd-10.1.0/debian/dhcpcd.dhcpcd.service dhcpcd-10.1.0/debian/dhcpcd.dhcpcd.service
--- dhcpcd-10.1.0/debian/dhcpcd.dhcpcd.service	2025-05-04 22:16:36.000000000 +0300
+++ dhcpcd-10.1.0/debian/dhcpcd.dhcpcd.service	2025-09-24 07:28:25.000000000 +0300
@@ -15,7 +15,7 @@
 # sandboxing
 #
 ProtectSystem=strict
-ReadWritePaths=/var/lib/dhcpcd /run/dhcpcd /etc/wpa_supplicant /etc/dhcpcd.conf /etc/resolv.conf
+ReadWritePaths=/var/lib/dhcpcd /run/dhcpcd /etc/dhcpcd.conf /etc/resolv.conf
 ProtectHome=true
 #PrivateTmp=true
 PrivateDevices=true
diff -Nru dhcpcd-10.1.0/debian/dhcpcd.dirs dhcpcd-10.1.0/debian/dhcpcd.dirs
--- dhcpcd-10.1.0/debian/dhcpcd.dirs	2025-04-07 23:10:22.000000000 +0300
+++ dhcpcd-10.1.0/debian/dhcpcd.dirs	1970-01-01 02:00:00.000000000 +0200
@@ -1 +0,0 @@
-/etc/wpa_supplicant/
diff -Nru dhcpcd-10.1.0/debian/patches/eac7152ec04f5a330f01ab9504514a03f873b35c.patch dhcpcd-10.1.0/debian/patches/eac7152ec04f5a330f01ab9504514a03f873b35c.patch
--- dhcpcd-10.1.0/debian/patches/eac7152ec04f5a330f01ab9504514a03f873b35c.patch	1970-01-01 02:00:00.000000000 +0200
+++ dhcpcd-10.1.0/debian/patches/eac7152ec04f5a330f01ab9504514a03f873b35c.patch	2025-09-24 07:28:25.000000000 +0300
@@ -0,0 +1,33 @@
+From eac7152ec04f5a330f01ab9504514a03f873b35c Mon Sep 17 00:00:00 2001
+From: Roy Marples <roy@marples.name>
+Date: Wed, 5 Feb 2025 18:06:01 +0000
+Subject: [PATCH] DHCP: Fix crash when someone deletes our address
+
+Fixes #455
+---
+ src/ipv4.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/ipv4.c b/src/ipv4.c
+index a5fe4900..ce67bfec 100644
+--- a/src/ipv4.c
++++ b/src/ipv4.c
+@@ -524,6 +524,7 @@ ipv4_deladdr(struct ipv4_addr *addr, int keeparp)
+ 	struct ipv4_state *state;
+ 	struct ipv4_addr *ap;
+ 
++	assert(addr != NULL);
+ 	logdebugx("%s: deleting IP address %s",
+ 	    addr->iface->name, addr->saddr);
+ 
+@@ -760,7 +761,9 @@ ipv4_applyaddr(void *arg)
+ 		    (DHCPCD_EXITING | DHCPCD_PERSISTENT))
+ 		{
+ 			if (state->added) {
+-				ipv4_deladdr(state->addr, 0);
++				/* Someone might have deleted our address */
++				if (state->addr != NULL)
++					ipv4_deladdr(state->addr, 0);
+ 				rt_build(ifp->ctx, AF_INET);
+ 			}
+ 			script_runreason(ifp, state->reason);
diff -Nru dhcpcd-10.1.0/debian/patches/series dhcpcd-10.1.0/debian/patches/series
--- dhcpcd-10.1.0/debian/patches/series	2025-05-08 21:47:28.000000000 +0300
+++ dhcpcd-10.1.0/debian/patches/series	2025-09-24 07:28:25.000000000 +0300
@@ -6,3 +6,4 @@
 79c195b92f892c6f22fa07332c10fd9c2a8b679a.patch
 6acf895a66b143c42308777e085c1511cdebe5e0.patch
 5db90127b1c3128480a52559a9cdbd4949a0fed4.patch
+eac7152ec04f5a330f01ab9504514a03f873b35c.patch

Reply to: