Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 06 Aug 2026 15:01:32 +0000
From:      Mark Johnston <markj@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: ffad04235a76 - stable/15 - syslogd: Limit rights on procdescs
Message-ID:  <6a74a1cc.44feb.469a59cf@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch stable/15 has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=ffad04235a767852aaac3f1fce673a9c78c2753b

commit ffad04235a767852aaac3f1fce673a9c78c2753b
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2026-07-10 20:25:54 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2026-08-06 12:52:28 +0000

    syslogd: Limit rights on procdescs
    
    Reviewed by:    jfree, kib
    MFC after:      3 weeks
    Differential Revision:  https://reviews.freebsd.org/D58160
    
    (cherry picked from commit 24816abb8740c387ad4aba4ad2fa4c23b191c351)
---
 usr.sbin/syslogd/syslogd.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 981428dbb8eb..8aed89e5dc36 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -3770,6 +3770,7 @@ validate(struct sockaddr *sa, const char *hname)
 int
 p_open(const char *prog, int *rpd)
 {
+	cap_rights_t rights;
 	struct sigaction act = { };
 	int pfd[2], pd;
 	pid_t pid;
@@ -3821,6 +3822,10 @@ p_open(const char *prog, int *rpd)
 		dprintf("Warning: cannot change pipe to PID %d to non-blocking"
 		    "behaviour.", pid);
 	}
+
+	if (cap_rights_limit(pd,
+	    cap_rights_init(&rights, CAP_PDKILL, CAP_EVENT)) == -1)
+		err(1, "cap_rights_limit");
 	*rpd = pd;
 	return (pfd[1]);
 }


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a74a1cc.44feb.469a59cf>