git: 78e749651307 - main - net/dhcpcd: update to 10.3.1

From: Dries Michiels <driesm_at_FreeBSD.org>
Date: Mon, 16 Mar 2026 19:49:14 UTC
The branch main has been updated by driesm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=78e749651307d9fcb263dfa7a1501bda0ac37a74

commit 78e749651307d9fcb263dfa7a1501bda0ac37a74
Author:     Dries Michiels <driesm@FreeBSD.org>
AuthorDate: 2026-03-16 19:45:21 +0000
Commit:     Dries Michiels <driesm@FreeBSD.org>
CommitDate: 2026-03-16 19:48:29 +0000

    net/dhcpcd: update to 10.3.1
    
    Changes:        https://github.com/NetworkConfiguration/dhcpcd/releases/tag/v10.3.1
---
 net/dhcpcd/Makefile                       |  3 +-
 net/dhcpcd/distinfo                       |  6 +--
 net/dhcpcd/files/patch-src_privsep-root.c | 84 -------------------------------
 3 files changed, 4 insertions(+), 89 deletions(-)

diff --git a/net/dhcpcd/Makefile b/net/dhcpcd/Makefile
index acf4c397cef2..eee3a628394f 100644
--- a/net/dhcpcd/Makefile
+++ b/net/dhcpcd/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	dhcpcd
-DISTVERSION=	10.3.0
-PORTREVISION=	1
+DISTVERSION=	10.3.1
 CATEGORIES=	net
 MASTER_SITES=	https://github.com/NetworkConfiguration/${PORTNAME}/releases/download/v${DISTVERSION}/
 
diff --git a/net/dhcpcd/distinfo b/net/dhcpcd/distinfo
index f4c96d61e86f..1e5bbc458d38 100644
--- a/net/dhcpcd/distinfo
+++ b/net/dhcpcd/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1763136225
-SHA256 (dhcpcd-10.3.0.tar.xz) = 06e4c1aaf958523f3fd1c57258c613c6c7ae56b8f1d678fa7943495d5ea6aeb5
-SIZE (dhcpcd-10.3.0.tar.xz) = 279100
+TIMESTAMP = 1773690314
+SHA256 (dhcpcd-10.3.1.tar.xz) = 1aed450dfd22f280a64f7e5feee148d29727c292a3d1819287cf4f98b12d4a68
+SIZE (dhcpcd-10.3.1.tar.xz) = 279320
diff --git a/net/dhcpcd/files/patch-src_privsep-root.c b/net/dhcpcd/files/patch-src_privsep-root.c
deleted file mode 100644
index c57d5422622d..000000000000
--- a/net/dhcpcd/files/patch-src_privsep-root.c
+++ /dev/null
@@ -1,84 +0,0 @@
---- src/privsep-root.c.orig	2025-11-14 15:38:04 UTC
-+++ src/privsep-root.c
-@@ -86,6 +86,7 @@ ps_root_readerrorcb(struct psr_ctx *psr_ctx)
- 		{ .iov_base = psr_error, .iov_len = sizeof(*psr_error) },
- 		{ .iov_base = NULL, .iov_len = 0 },
- 	};
-+	struct msghdr msg = { .msg_iov = iov, .msg_iovlen = __arraycount(iov) };
- 	ssize_t len;
- 
- #define PSR_ERROR(e)				\
-@@ -98,37 +99,58 @@ ps_root_readerrorcb(struct psr_ctx *psr_ctx)
- 	if (eloop_waitfd(fd) == -1)
- 		PSR_ERROR(errno);
- 
--	len = recv(fd, psr_error, sizeof(*psr_error), MSG_PEEK);
-+	/* We peek at the psr_error structure to tell us how much of a buffer
-+	 * we need to read the whole packet. */
-+	len = recvmsg(fd, &msg, MSG_PEEK | MSG_WAITALL);
- 	if (len == -1)
- 		PSR_ERROR(errno);
--	else if ((size_t)len < sizeof(*psr_error))
--		PSR_ERROR(EINVAL);
- 
--	if (psr_error->psr_datalen > SSIZE_MAX)
--		PSR_ERROR(ENOBUFS);
-+	/* After this point, we MUST do another recvmsg even on a failure
-+	 * to remove the message after peeking. */
-+	if ((size_t)len < sizeof(*psr_error))
-+		goto recv;
-+
- 	if (psr_ctx->psr_usemdata &&
- 	    psr_error->psr_datalen > psr_ctx->psr_mdatalen)
- 	{
- 		void *d = realloc(psr_ctx->psr_mdata, psr_error->psr_datalen);
--		if (d == NULL)
--			PSR_ERROR(errno);
--		psr_ctx->psr_mdata = d;
--		psr_ctx->psr_mdatalen = psr_error->psr_datalen;
-+
-+		/* If we failed to malloc then psr_mdatalen will be smaller
-+		 * than psr_datalen.
-+		 * The following recvmsg will get MSG_TRUNC so the malloc error
-+		 * will be reported there but more importantly the
-+		 * message will be correctly discarded from the queue. */
-+		if (d != NULL) {
-+			psr_ctx->psr_mdata = d;
-+			psr_ctx->psr_mdatalen = psr_error->psr_datalen;
-+		}
- 	}
- 	if (psr_error->psr_datalen != 0) {
--		if (psr_ctx->psr_usemdata)
-+		if (psr_ctx->psr_usemdata) {
- 			iov[1].iov_base = psr_ctx->psr_mdata;
--		else {
--			if (psr_error->psr_datalen > psr_ctx->psr_datalen)
--				PSR_ERROR(ENOBUFS);
-+			/* psr_mdatalen could be smaller then psr_datalen
-+			 * if the above malloc failed. */
-+			iov[1].iov_len =
-+			    MIN(psr_ctx->psr_mdatalen, psr_error->psr_datalen);
-+		} else {
- 			iov[1].iov_base = psr_ctx->psr_data;
-+			/* This should never be the case */
-+			iov[1].iov_len =
-+			    MIN(psr_ctx->psr_datalen, psr_error->psr_datalen);
- 		}
--		iov[1].iov_len = psr_error->psr_datalen;
- 	}
- 
--	len = readv(fd, iov, __arraycount(iov));
-+recv:
-+	/* fd is SOCK_SEQPACKET and we mark the boundary with MSG_EOR
-+	 * so this can never stall if the receive buffers are bigger
-+	 * than the actual message. */
-+	len = recvmsg(fd, &msg, MSG_WAITALL);
- 	if (len == -1)
- 		PSR_ERROR(errno);
-+	else if ((size_t)len < sizeof(*psr_error))
-+		PSR_ERROR(EINVAL);
-+	else if (msg.msg_flags & MSG_TRUNC)
-+		PSR_ERROR(ENOBUFS);
- 	else if ((size_t)len != sizeof(*psr_error) + psr_error->psr_datalen)
- 		PSR_ERROR(EINVAL);
- 	return len;