From nobody Tue Sep 29 01:29:38 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4hv0w73GxWz6t9MJ for ; Tue, 29 Sep 2026 01:29:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hv0w72WXpz4h8v for ; Tue, 29 Sep 2026 01:29:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1790645383; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bAQhy+L2id88eEqJba9nKcbLghsXWodn/8RIVeQ2NMQ=; b=mvFeSWVqG5WCJuKSA3CWvcUNM9nNeM4+Ssg8RRLhNoH1y1cnf2hS5/59tYFNI80hvbHEu6 jEQo6TWA6xQMOXPCE9Idt3fYII0qWZzH/QAdsUwaAOtGHV4aw+RrlQOJVUji5kczyTQEI1 cHPKxmDw+yPRHIQGAmZ6x5wSGrWtL4PaOdsUmKD7w1gUX6bAzKyux3ul0dCA+J/J8NAti3 bK2Nhvw2wHrxb1zxEA5jbhONzcProtZAZKowJFjF7inwy8h46AXhnxqrz1GQnbukPf3/uz N8oCPkBxE3CaZDuviQxJL6wd521nqydOu1hsts3jNM9jmAiF4ya2R/lJPwqg6A== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1790645383; b=DmqwVEiaebK6U0VxSXLVpWIVNxRGLfn/mYrls+3NXGQFPJ4GoX6WHtpNItAKLI2n2EKa+q IKKRprDwKcP7UJ03bqjtGnHgmnOkOFh/vJLjyfAK8X09Yd1vdoarCzFNvxDXLZs5Z07iI0 fzMjhxHgJxmePNttrC44Lv0mt7ZVVJxOo5bKY6gnxmD1Tc+ozE2QomMehF2cCxeSkLFBAf 3N5l4WjQrNOGDpa5t8vXZB45FtVHFvxvldaF6ZR6TtGr4QK1YvJQE7dSNvujyBlt+u0wrb wcx9C8EYfJtysJreICPR1O/JEQ/vRNC7aRmbOgMKRGMVRrpuVhoOcsPBOEXfog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1790645383; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bAQhy+L2id88eEqJba9nKcbLghsXWodn/8RIVeQ2NMQ=; b=Mze+g/0MkfQY+ThU5XpjXQaXwznvac5QJZWgfY+xIh1ZEPxMBMKgAjL+8GDdet6+WPZE+G C9Axb75Km9rOirvJynFLa8hej+WquWDMvGW8YmdlKmX1Qio1q4NkieLYoy4BiFNt5UDLi0 FTO69FADIy4WsTV97H06w57JuS7ul+WO6zvQoF45cyragYXWxDlDi6io1r6aFX/Hv4U72y H5o3QJvJRxyd+kAj7W6tFB/7KHkM8Y378CVQOurxVbF6XdAnSe7FFkS/O/icB2OacqE4cm 9EL+2YpWssk0Q7uIHAVdrITRZ5+ybcC1pm93BLVFsxfT4zLa8PiSCBE2RMNSvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hv0w71Xkgzspq for ; Tue, 29 Sep 2026 01:29:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 19bda by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 29 Sep 2026 01:29:38 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: a76e986470f8 - main - sysctl: Return ECAPMODE when trying to access sysctls in capability mode List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a76e986470f86731dd3a5f9eeae1ba28b8b160fb Auto-Submitted: auto-generated Date: Tue, 29 Sep 2026 01:29:38 +0000 Message-Id: <6abb1482.19bda.5761152e@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=a76e986470f86731dd3a5f9eeae1ba28b8b160fb commit a76e986470f86731dd3a5f9eeae1ba28b8b160fb Author: Mark Johnston AuthorDate: 2026-09-28 21:59:40 +0000 Commit: Mark Johnston CommitDate: 2026-09-29 01:29:22 +0000 sysctl: Return ECAPMODE when trying to access sysctls in capability mode We have always returned EPERM in this case, but it's incorrect, we should return ECAPMODE for capability mode violations. Fix the errno value. Reviewed by: emaste MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D59887 --- lib/libc/gen/sysctl.3 | 3 +++ sys/kern/kern_sysctl.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/libc/gen/sysctl.3 b/lib/libc/gen/sysctl.3 index 75fd6307bd30..4278888948fa 100644 --- a/lib/libc/gen/sysctl.3 +++ b/lib/libc/gen/sysctl.3 @@ -957,6 +957,9 @@ array specifies a value that is unknown. An attempt is made to set a read-only value. .It Bq Er EPERM A process without appropriate privilege attempts to set a value. +.It Bq Er ECAPMODE +The process is in capability mode and the variable is not accessible +in capability mode. .El .Sh SEE ALSO .Xr confstr 3 , diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c index 423d792cb4ec..ad2d4ae22a77 100644 --- a/sys/kern/kern_sysctl.c +++ b/sys/kern/kern_sysctl.c @@ -2370,7 +2370,7 @@ sysctl_root(SYSCTL_HANDLER_ARGS) if (IN_CAPABILITY_MODE(req->td)) { if ((req->oldptr && !(oid->oid_kind & CTLFLAG_CAPRD)) || (req->newptr && !(oid->oid_kind & CTLFLAG_CAPWR))) { - error = EPERM; + error = ECAPMODE; goto out; } }