From nobody Tue Sep 29 01:29:38 2026 X-Original-To: dev-commits-src-main@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 4hv0w22yHqz6t9cR for ; Tue, 29 Sep 2026 01:29:38 +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 4hv0w22WJ2z4gdh for ; Tue, 29 Sep 2026 01:29:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1790645378; 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=psPUSCfyGpU3dGsnXySlGBU2Z27nosRPS+X93X98S9WmgPs3rDbjE33wZKicmndGQQNOaI r85oMT4Z1iIfa9MWWzIzMYHlNh7Fje79jvYZy5LQWe+UakinjP5JNnqytxQyn6J2WINqZr v2+j345DubSYGBs4ioAMTXGTJIbAaNPH/gRQMnwnHdjZFUDiyVWMOcG//A+jLT2qoglOkj e5n8PcDsEqwBXNk/VKtmbrwJje1SH3QOaNcQCS3nzdIbJWH/R/WkiWe1xT1XJYYmpeYe/T chZyyKhvOL/IF7Bn4dvHPyn9bHEU6dk21C5wqFC2NZ5xO8HpFP9xQxwmRgtmKw== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1790645378; b=VRTBVCRVt9M10sNSRKE4PCSbxxp1WRenZnqkWE+/m/IFZ/tiYK7PabiByPu23xebAXLO77 QSoXWLHxTSDTDFavdDSPrbk9zGlRc8cBgz0LJJojhd2AvWhQ4/8WjONm4Ty9x3cfzbI0+K fYXEpdvjXzRoEL6l1TTqi0faV4zb9IeNsNo+VgI4I7SidvyeheNstegf8tZZNwQIxEPBmE ZKog34G7AGTR35nk0VvEeLC9rh4rE/mQYoxWr7mhsePLk38MHKwn9dx+pjFSb3DUY5gPFY M71PpgVZpbZ3EmfQD3aX9+WILiN9d+vArc539/XI2RugxCMUL8h4YNXx42izLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1790645378; 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=V21aTWravarageVlXMNkyzT/aJnl4D5VNhrqbMaZNAnv6TiweruJ/u0uOTXtgKDFPCY7+i R8LkQSljGewwPGbEYXLLlg13/G+B6UJtsoNCVSyq8GfwbUF1OW7ciF1xq2nYXaKuMAvWMw B7n4XG4F0XPvof5bMV9KVjUt8yffD6YPeh2Ic8Rqd3iv0O9Vd3uTMCkNPnmfzWQRfhw84a sjCOkodNxsbFaZ8FOM8yuo6JAyjCatHcolYdhFgIUDxwqqJImsP0c1TndNaLZ+irvAPVSw 9zU2SxVZ9MoXf4jPOAmv3wXMv0mzFtgCVJhcqfbZDjKvfPfYIkD8nCaZMgtg6g== 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 4hv0w21ZbVzspn for ; Tue, 29 Sep 2026 01:29:38 +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 the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@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; } }