From nobody Mon Jun 24 13:40:56 2024 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 4W78HX6qqHz5NvSM; Mon, 24 Jun 2024 13:40:56 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W78HX68dkz42LB; Mon, 24 Jun 2024 13:40:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1719236456; 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=LelMRpKdBwgdU5eGsbmhv+XXN/UAv+wuYgsR7e47GvQ=; b=w9FV+6ZJqvWAispmOlhcd/zTOBPNtE1TDdzqSOy2r1cDH09AHYbn2aojSy/GbOLvXZOeTR DxKS6hLrm48wVVJxuk5K08bBQ8KFHmdV0n+qZp4aebzEmQsjq70WU6cVVMbQmgTQOnM/3B 9Hp/xcmaFnZ1riURUS8CfiT/V+qUOVMuPqxoGeiBXrgUmdWLvN11vw2NK509HDmcXyq9P8 4ZFIag7DYBVp6WLmUm+qtkWQmjGl7cvMfs0W0R8aQeu5UuUH9z6ZT3p7CvtptgW4LRLFkO /OB6kD7tve2QR3IHfu8K7HRgJnEdxme0FUPjIx9qryl2Mme94Y6CBO6sor3xIQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1719236456; a=rsa-sha256; cv=none; b=MrSBYmFJl17hzOPn54/QQV9Cgd5KBJIy/LcdFHQTz/HHZte+8bnDU+QrqWFdBIO158oDms D4rdmuky9DcR1iIXcFwdI7w5l2I+hg+PJY/xsbuehYs/poa2Umx/WiOnNb+BbvGgoX+dVj Ex90Wb/sia2EjJmGDsrHR0rcckXoulJcPOgn42lSq29o4T4lFdYcHkdpQI5M1FH7upWceU IDOiPaECW6IQ59+e5nI3Zdbp5o4vaTrwleCz8W6f0l2PMD0HCPwxg4hvc+YZuBbSf3mC4x Z/tbIoSJlv5mPXg62mC/4MzpTp+WhuirLT42LbwIt8tm7LT77k2fK8AghZCV2Q== 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=1719236456; 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=LelMRpKdBwgdU5eGsbmhv+XXN/UAv+wuYgsR7e47GvQ=; b=dY2uleovNQBBgRSRLtBWz5Nmm2UYn8TA+3p6akNUd23CK+NhPZzUjaXe2PdUV7BROzMuQl 0NBEHx2lpIzm6xzSg8pCkxGByAiIYVWAgXjEvAenZEdyF1oN+NYTL6FfktNwI1YafOEFCx s0UOvpNpZi1YhpQpHLrLYMB2bTSP9U9z3jl8QauGQ9YAtxAGuvuzwstmZCvjqkoVz2ozXp wZ/7IVMR53fETFmLUj78E1IrB17mcZfVNtDB8h4FF+3MQLgfekbUyApxpwGVL+ij4kAitZ tqC8zCla/APVOjf8hw6TZqmoPQVJxdQCND5LC9FmbCmwYk8ryvG3wzbhVnyTMQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4W78HX5lw1zKb9; Mon, 24 Jun 2024 13:40:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 45ODeuiT081422; Mon, 24 Jun 2024 13:40:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 45ODeuX3081419; Mon, 24 Jun 2024 13:40:56 GMT (envelope-from git) Date: Mon, 24 Jun 2024 13:40:56 GMT Message-Id: <202406241340.45ODeuX3081419@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Rabson Subject: git: 56e4622588ed - main - p9fs: fix lookup of "." for lib9p-based 9P servers 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dfr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 56e4622588ed2eec0197ac47c3059d3db439f5c0 Auto-Submitted: auto-generated The branch main has been updated by dfr: URL: https://cgit.FreeBSD.org/src/commit/?id=56e4622588ed2eec0197ac47c3059d3db439f5c0 commit 56e4622588ed2eec0197ac47c3059d3db439f5c0 Author: Doug Rabson AuthorDate: 2024-06-24 11:22:57 +0000 Commit: Doug Rabson CommitDate: 2024-06-24 13:40:06 +0000 p9fs: fix lookup of "." for lib9p-based 9P servers The lib9p implementation takes a strict interpretation of the Twalk RPC call and returns an error for attempts to lookup ".". The workaround is to fake the lookup locally. Reviewed by: Val Packett MFC after: 3 months --- sys/fs/p9fs/p9fs_vnops.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/fs/p9fs/p9fs_vnops.c b/sys/fs/p9fs/p9fs_vnops.c index d17d7624aef1..77162c0a4aff 100644 --- a/sys/fs/p9fs/p9fs_vnops.c +++ b/sys/fs/p9fs/p9fs_vnops.c @@ -243,6 +243,12 @@ p9fs_lookup(struct vop_lookup_args *ap) if (dnp == NULL) return (ENOENT); + if (cnp->cn_nameptr[0] == '.' && strlen(cnp->cn_nameptr) == 1) { + vref(dvp); + *vpp = dvp; + return (0); + } + vses = dnp->p9fs_ses; mp = vses->p9fs_mount;