From nobody Mon Sep 07 19:53:16 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 4hdyRc5pdPz6rxQZ for ; Mon, 07 Sep 2026 19:53:16 +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 4hdyRc2t8gz3J1w for ; Mon, 07 Sep 2026 19:53:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1788810796; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bHdZYv0lV60bq3OnP2O8//u89J9L7rAdzFic7eu7YwY=; b=u1E8RYZZyF5fWEzIkq9r/RIydZqFUHKPRwtUNn4TE5smW/0RGoE4QL7/PMufl4oVAopHQr 6cEiTBwJTVsGnhI7IGgY6y45VffegEGQb2Ort2BlAbRm79BBrEEDf+DTmR5YFsQNZax02N dziRwrnMmp/Xbg0jtvHMPVGwmcWSBHvgC5/aubvlUpdYPLSoym7snajTjj/MOzDtc/MQB4 3UftLrJ4sQcVYbczk/LVi7ApmyZiZWdJ0q+FOBuFoFYNh88H0kRJJlGyvT9rGQTMnZxp4k kWGEolnPw15dOE2zGoBoNCcHeGQ9TnRJZh+AEz91dg4eC+7dkhKHZtWmIqJkQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1788810796; a=rsa-sha256; cv=none; b=yK0YMQkxTEKsutw1o7Ccfl9MB45N/3Lrf9/wHw5xcFZj0RK5UB3LZTV8QdeLfzJKEq47dr nfFi1fQOZ9omc6/roLsjomM6vlbqkBNjxTTwjihtXlJMo8srL7lWIVQgVMxEGlEucLT6/m 4kKxXeuex5Z4Mr8ABhyKientmgLFjWStDX+ISUTDscDQjVu/yLDFoR/ncfnge1auBPa2n7 rTExjzKsuXycP0UFzTJfntei4tEKXxw3vy8rxU5wiHfmWNmlasGPC0OxVwqfPF2L+drG+Y Ro9me+c7TEf3YKzX90suOHQjmV+aopuic1E9HTHPAqHEooi7kzuzuQUwN4ON+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1788810796; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bHdZYv0lV60bq3OnP2O8//u89J9L7rAdzFic7eu7YwY=; b=FcICpTIN3PhyHa39DJG1Kp4k70KNrIiRq6uiSQX6cUkTVmi5A3nr52ynUgnp6Y44QbNDK6 j0nHSmSW3ylN2tE6KAbIi9xO5CS5zhgweCoz+0m7Ge6SdSMjCajFu4+xKxqX6h1PotwuN3 VckAV9G7Bq+Mjh7sc7wCFqrrwxPnJbop9x4Z/U6ee6kNW057r9tqUX7hmkok6pXsTl9xLT kX5uwLlDtYDH4fyvFtBONoGuOga8SaVE3VepYH+UoW5UOqRDZtBFBupCZdJrDbN3g2tOr+ 7X5F+so6zs7aRrsoSOPLGrCAK2fBRl8XlrvTxwgTB5YZEki1D22Cv9f9H+P7OA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hdyRc1QrHzXbT for ; Mon, 07 Sep 2026 19:53:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e273 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 07 Sep 2026 19:53:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Emanuel Helms From: Rick Macklem Subject: git: 1771ab245c23 - main - nfsuserd.c: Fix handling where pw_name/gr_name differ from lookup name 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: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1771ab245c2341033f0cee3bd098c76888cf3515 Auto-Submitted: auto-generated Date: Mon, 07 Sep 2026 19:53:16 +0000 Message-Id: <6a9f162c.3e273.13853334@gitrepo.freebsd.org> The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=1771ab245c2341033f0cee3bd098c76888cf3515 commit 1771ab245c2341033f0cee3bd098c76888cf3515 Author: Emanuel Helms AuthorDate: 2026-09-07 19:50:58 +0000 Commit: Rick Macklem CommitDate: 2026-09-07 19:50:58 +0000 nfsuserd.c: Fix handling where pw_name/gr_name differ from lookup name When an NSS backend returns a canonical pw_name or gr_name that differs from the lookup name supplied by the NFSv4 upcall, nfsuserd stores the successful mapping in the kernel cache under the canonical name instead of the requested name. This causes the retry lookup performed by nfsv4_strtouid() or nfsv4_strtogid() to miss the newly inserted cache entry, resulting in the default UID/GID being returned although the NSS lookup itself succeeded. PR: 296753 Reviewed by: rmacklem Tested by: Emanuel Helms MFC after: 2 weeks --- usr.sbin/nfsuserd/nfsuserd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/usr.sbin/nfsuserd/nfsuserd.c b/usr.sbin/nfsuserd/nfsuserd.c index 9326dd9018e0..e6e215ad2a41 100644 --- a/usr.sbin/nfsuserd/nfsuserd.c +++ b/usr.sbin/nfsuserd/nfsuserd.c @@ -704,7 +704,8 @@ nfsuserdsrv(struct svc_req *rqstp, SVCXPRT *transp) if (pwd != NULL) { nid.nid_usertimeout = defusertimeout; nid.nid_uid = pwd->pw_uid; - nid.nid_name = pwd->pw_name; + /* NSS may canonicalize the name used for the lookup. */ + nid.nid_name = info.name; } else { nid.nid_usertimeout = 5; nid.nid_uid = defaultuid; @@ -737,7 +738,8 @@ nfsuserdsrv(struct svc_req *rqstp, SVCXPRT *transp) if (grp != NULL) { nid.nid_usertimeout = defusertimeout; nid.nid_gid = grp->gr_gid; - nid.nid_name = grp->gr_name; + /* NSS may canonicalize the name used for the lookup. */ + nid.nid_name = info.name; } else { nid.nid_usertimeout = 5; nid.nid_gid = defaultgid;