From nobody Fri Jun 20 13:52:22 2025 X-Original-To: dev-commits-src-branches@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 4bNzS86nXHz5y3yD; Fri, 20 Jun 2025 13:52:24 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bNzS62vpcz3XkZ; Fri, 20 Jun 2025 13:52:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1750427542; 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=tssK62qtU5xxv4JT38pGmT4XNPOhVYSoW8MM2iXrSnw=; b=QMJjCke0vxyeZSABHPtS0oDsTjVrPORmKPYMgINYczoGAvdyjfdW8lGTfl06uESJXN2Inc GqkeN3dkR+VwroSE8Q7Ys1uvHlJ4dLRbIg7B2cubwWX7v0SQA0WwFfjS1cu9q/L/vJVQNL MVxpuHV0vBQ0QgcASmys1bADrDzqEyhbiWVgy644cJq/u+4fFcF/aRS2W+aBnQ6CvONTTK THbkXNBfG2TSoJZUfsWKGkralzq4Vuq28YwW/SXCQt7wHD4hH0DWy276YxhagW8fO5MBb/ Uqi0KKQ5euUazWK+83/jIY3CQabuWgwVL7zECast4LoZjABY7d+vD3aO4VKf3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1750427542; 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=tssK62qtU5xxv4JT38pGmT4XNPOhVYSoW8MM2iXrSnw=; b=rfmHxYsHfwxhFkVVp/2IuymTt1JeCyc2ogULL2N3Vd713Wr9EW+6dVipAiZQppZXqkaCEn RdyowEPhQPdtCxvrUeERrOUjnJyRIPLoue90/V/FAVSFmn0eJARKPaeKqHCFE5hiJsi7S8 /gAr6t4tv3UqtGyuc15RQ/S1mQg966prc/yEd8qFhrada4mpA0rwW433vE+h5DkP1CaCcd T2315IXR0xiO8/UbQ+T/4Itn82DdPO99fMG2g2oqX4fid3GBgjnZsgTI9tKc7wieWpZUVD XDHlhsa+b5TcpQjADzbqVoS+LYyTEn4Yg4yT1Cfa++SJyOoDrR2xceNXyftkEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1750427542; a=rsa-sha256; cv=none; b=XJrHWTljIxqsP3lBR65NhuLKcDbii5U/BHkDkkkQ6fLqAv+grxopixCcdRfIUoK2QK5EmS sYsgLE5eVQi8JBjrpk87N0rVCU528ZYf2GuSH+w+RIZdFkafRg1s554Eld2PM/RDpwPkMy BLqzipjpUZuHoCrG+Gep3TMRB8AvQSNq4hUOaroSYfkj6WLTaDFUWTkeMLkUx8Pq8h1kHU zqGjvJ/vT4oXNULMstary4wMbdSXPbXgTvaqF+F4WiLj62JxpY4rS2JznopengwJeHN/eZ iIHVY5BJ5YogpYkjdynb47/Y67gmycbaS+DILgGVhufpvsWF8g1ezazmuZWYfQ== 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 4bNzS62CDvznCs; Fri, 20 Jun 2025 13:52:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 55KDqMbT058016; Fri, 20 Jun 2025 13:52:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 55KDqMOV058013; Fri, 20 Jun 2025 13:52:22 GMT (envelope-from git) Date: Fri, 20 Jun 2025 13:52:22 GMT Message-Id: <202506201352.55KDqMOV058013@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: d22903d79b48 - stable/14 - namei: Fix cn_flags width in various places List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org 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/stable/14 X-Git-Reftype: branch X-Git-Commit: d22903d79b48b119388ebe5fd8c246da2237155b Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d22903d79b48b119388ebe5fd8c246da2237155b commit d22903d79b48b119388ebe5fd8c246da2237155b Author: Mark Johnston AuthorDate: 2025-05-27 13:29:14 +0000 Commit: Mark Johnston CommitDate: 2025-06-20 12:46:09 +0000 namei: Fix cn_flags width in various places This truncation is mostly harmless today, but fix it anyway to avoid pain later down the road. Reviewed by: olce, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D50417 (cherry picked from commit 0d224af399a66f00a5b33e5512fc018062cabf1d) --- sys/fs/cd9660/cd9660_lookup.c | 2 +- sys/fs/fuse/fuse_vnops.c | 9 ++++----- sys/fs/smbfs/smbfs_vnops.c | 2 +- sys/fs/unionfs/union_vnops.c | 2 +- sys/kern/uipc_mqueue.c | 3 ++- sys/kern/vfs_cache.c | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/sys/fs/cd9660/cd9660_lookup.c b/sys/fs/cd9660/cd9660_lookup.c index 02e9c6bb5aa6..ec177036acb1 100644 --- a/sys/fs/cd9660/cd9660_lookup.c +++ b/sys/fs/cd9660/cd9660_lookup.c @@ -129,7 +129,7 @@ cd9660_lookup(struct vop_cachedlookup_args *ap) char *name; struct vnode **vpp = ap->a_vpp; struct componentname *cnp = ap->a_cnp; - int flags = cnp->cn_flags; + uint64_t flags = cnp->cn_flags; int nameiop = cnp->cn_nameiop; ep2 = ep = NULL; diff --git a/sys/fs/fuse/fuse_vnops.c b/sys/fs/fuse/fuse_vnops.c index 87e44051d9a9..423ce05a595f 100644 --- a/sys/fs/fuse/fuse_vnops.c +++ b/sys/fs/fuse/fuse_vnops.c @@ -1432,8 +1432,8 @@ fuse_vnop_lookup(struct vop_lookup_args *ap) struct timespec now; int nameiop = cnp->cn_nameiop; - int flags = cnp->cn_flags; - int islastcn = flags & ISLASTCN; + bool isdotdot = cnp->cn_flags & ISDOTDOT; + bool islastcn = cnp->cn_flags & ISLASTCN; struct mount *mp = vnode_mount(dvp); struct fuse_data *data = fuse_get_mpdata(mp); int default_permissions = data->dataflags & FSESS_DEFAULT_PERMISSIONS; @@ -1466,8 +1466,7 @@ fuse_vnop_lookup(struct vop_lookup_args *ap) return err; is_dot = cnp->cn_namelen == 1 && *(cnp->cn_nameptr) == '.'; - if ((flags & ISDOTDOT) && !(data->dataflags & FSESS_EXPORT_SUPPORT)) - { + if (isdotdot && !(data->dataflags & FSESS_EXPORT_SUPPORT)) { if (!(VTOFUD(dvp)->flag & FN_PARENT_NID)) { /* * Since the file system doesn't support ".." lookups, @@ -1581,7 +1580,7 @@ fuse_vnop_lookup(struct vop_lookup_args *ap) } } else { /* Entry was found */ - if (flags & ISDOTDOT) { + if (isdotdot) { struct fuse_lookup_alloc_arg flaa; flaa.nid = nid; diff --git a/sys/fs/smbfs/smbfs_vnops.c b/sys/fs/smbfs/smbfs_vnops.c index 1e7dcafb1121..c30995508c00 100644 --- a/sys/fs/smbfs/smbfs_vnops.c +++ b/sys/fs/smbfs/smbfs_vnops.c @@ -1051,7 +1051,7 @@ smbfs_lookup(struct vop_lookup_args *ap) struct smbfattr fattr, *fap; struct smb_cred *scred; char *name = cnp->cn_nameptr; - int flags = cnp->cn_flags; + uint64_t flags = cnp->cn_flags; int nameiop = cnp->cn_nameiop; int nmlen = cnp->cn_namelen; int error, islastcn, isdot; diff --git a/sys/fs/unionfs/union_vnops.c b/sys/fs/unionfs/union_vnops.c index eff437fbcad3..7618e2575819 100644 --- a/sys/fs/unionfs/union_vnops.c +++ b/sys/fs/unionfs/union_vnops.c @@ -86,8 +86,8 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) struct vattr va; struct componentname *cnp; struct thread *td; + uint64_t cnflags, cnflagsbk; u_long nameiop; - u_long cnflags, cnflagsbk; int iswhiteout; int lockflag; int error , uerror, lerror; diff --git a/sys/kern/uipc_mqueue.c b/sys/kern/uipc_mqueue.c index 75daf94b9849..7f539ac94cf6 100644 --- a/sys/kern/uipc_mqueue.c +++ b/sys/kern/uipc_mqueue.c @@ -847,7 +847,8 @@ mqfs_lookupx(struct vop_cachedlookup_args *ap) struct mqfs_node *pd; struct mqfs_node *pn; struct mqfs_info *mqfs; - int nameiop, flags, error, namelen; + uint64_t flags; + int nameiop, error, namelen; char *pname; struct thread *td; diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index a61a684e396e..e25efe2986b2 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -4087,7 +4087,7 @@ SYSCTL_PROC(_vfs_cache_param, OID_AUTO, fast_lookup, CTLTYPE_INT|CTLFLAG_RW|CTLF */ struct nameidata_outer { size_t ni_pathlen; - int cn_flags; + uint64_t cn_flags; }; struct nameidata_saved {