Message ID | 20240122123845.3822570-8-dhowells@redhat.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D5566C47DD9 for <linux-mm@archiver.kernel.org>; Mon, 22 Jan 2024 12:39:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 671636B0099; Mon, 22 Jan 2024 07:39:17 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5D4496B009A; Mon, 22 Jan 2024 07:39:17 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3B04A6B009B; Mon, 22 Jan 2024 07:39:17 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 227286B0099 for <linux-mm@kvack.org>; Mon, 22 Jan 2024 07:39:17 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id F3CAE401DD for <linux-mm@kvack.org>; Mon, 22 Jan 2024 12:39:16 +0000 (UTC) X-FDA: 81706902312.15.4124BF0 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf18.hostedemail.com (Postfix) with ESMTP id 423301C0019 for <linux-mm@kvack.org>; Mon, 22 Jan 2024 12:39:15 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=H9SPVxQH; spf=pass (imf18.hostedemail.com: domain of dhowells@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhowells@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1705927155; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=AQmuqxaeIGZelSODTss8gWd4P9SrQf4vDlsO0SnTpdE=; b=P6nVjuqP2GEq4CVqpJzwywlSwi+z3P8KvZ9HaYhX059aQ6L0jTfXoeVe3AUM9q0Fh3IuXA tmLXedObSmTCJf57OoMlEmwkH45tZyph8bkT46AXgQ/jT0vkH1BmFyAXv+L+Vlr4x7tF5X JtrNQYZ5b2SRFtl3FMWQ3+TO26LQ25I= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1705927155; a=rsa-sha256; cv=none; b=JaQhIhQXzltTFeJNzXO4KPR0Bcmzxr+JpuKMZr/2pnGHbQQe0A7FW16cPUh4OTtcYP4RUX R3LsD+aVklRzB2sLTYI5bFBUNH1eYF4JkYjcI+RwYN+pCcz6/Gz1pc5zOEj/TCph8BfFi9 UovZTGEvyncFqmN0Vy3MsJI1RM/OkGw= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=H9SPVxQH; spf=pass (imf18.hostedemail.com: domain of dhowells@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhowells@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1705927154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=AQmuqxaeIGZelSODTss8gWd4P9SrQf4vDlsO0SnTpdE=; b=H9SPVxQHF/T8m/Xg+PL+h0/sOVy8oYrsGttidz3Hq+ydhxd/iAAaPizagU+DhHRnlhL7jc SekqssKcun8UCdkE0f49aI+qkRItTxyeFNy5tbZnZAHBA0HLrOxKh5xIWmmUzkAwC2Yv89 S8fLxaRKhTZnvioTzhz1blhnFRME3Us= Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-494-LKHoZoERMie5-61Ndg59yw-1; Mon, 22 Jan 2024 07:39:11 -0500 X-MC-Unique: LKHoZoERMie5-61Ndg59yw-1 Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com [10.11.54.9]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 958913C000A4; Mon, 22 Jan 2024 12:39:10 +0000 (UTC) Received: from warthog.procyon.org.com (unknown [10.42.28.67]) by smtp.corp.redhat.com (Postfix) with ESMTP id A65D8492BC6; Mon, 22 Jan 2024 12:39:08 +0000 (UTC) From: David Howells <dhowells@redhat.com> To: Christian Brauner <christian@brauner.io> Cc: David Howells <dhowells@redhat.com>, Jeff Layton <jlayton@kernel.org>, Matthew Wilcox <willy@infradead.org>, netfs@lists.linux.dev, linux-afs@lists.infradead.org, linux-cifs@vger.kernel.org, linux-nfs@vger.kernel.org, ceph-devel@vger.kernel.org, v9fs@lists.linux.dev, linux-erofs@lists.ozlabs.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Marc Dionne <marc.dionne@auristor.com> Subject: [PATCH 07/10] afs: Hide silly-rename files from userspace Date: Mon, 22 Jan 2024 12:38:40 +0000 Message-ID: <20240122123845.3822570-8-dhowells@redhat.com> In-Reply-To: <20240122123845.3822570-1-dhowells@redhat.com> References: <20240122123845.3822570-1-dhowells@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.9 X-Rspamd-Queue-Id: 423301C0019 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: yaqpj9idpccqnpb6dbwbz8kuy1f5iffo X-HE-Tag: 1705927155-512709 X-HE-Meta: U2FsdGVkX19qGaRyGRcpFqiE582uLqhO3zFaNBeaajwzRkl/98XwY9FKPcdFVDFrNUT+OZhKIEjqfn3g+uXs38afDxuKh5/0SBHWwNdlCXaaCr0z2HbiK9Zroby8YopyNaGtV7oLJbXCbIvj8+yG929m+2WwJqMU7u3jvVbqBayv158yYEYb9QFJOraJSBVRQ+VL94hNDI0M8QeR8oRjcSOVe4f2kjvMf6NmdUAL8iSAroL0scByk1ZYCYBZc1gvupjNpS7aD/DjQv6DD91pwWMWlHJW4Hlsy2i571JfLmGH7w7MKFfV6TruPOCZxxjjVWlIck9uPaJMjAqG2zzsCMYBXadWS57z7/rFvGrE5QqsaS15YkyFW+6JMSDjT7S4jloxukNHF3l1qEXUaWLhVmvjBlp2kmeJlwGcQVJjL9RMjx5MWf7/R9Va0pc9x1U5EZL4k3h+V0yOMDzJh7f6qCkNNDbdPIlKs2ziqC9cZAYLJ1cK7cUNnF2t2bIaDJYvJDEDOaTqs7zV9Wkxti/e8nyySm4qTRL3alLoRwAmmzGc9VTY5dz3bwMTEe3YqiGWaFR70cSGL7AN58UUvr1rjX/gP7B9Jv+i34cvxircc9jGDQkJ7T5e+1ypVDB05ezuIulVToWGhp/crCwN8zZNzSfu9R+5/P5SCk+Wthc8BfpqoMjcTombb5f1PgsvnD8MDixbG36ATQebnerPbpfyxiAOPF1wYBnx2AIpgcc1tj/+hvr2x3gEEK0tliQQqrTt3FESwK8pKBR6GROYwaCIclJaTUZa4LBRQ1XREGxElY138RMUvgdl8swgm8vu5QMbKgDldnB9W/Wovbu2OHtSAl0fSphaZ1d7HPoByvzuL3E3s9IHwXKlw3LG/R6dtGNxHvnszF8HVNuZ0gXSIOvFIk1blzJj4RJaRezbD9BXUk/UDzAh3yyQ0i1sWT7zBcsOpbrRRZ8kGexsIpHqvdP fHdOgYTj /HJZnH2p4wYXzZBfIKsu5CzyW7PXwRAYaJDJs1XHS3iiRFTPmkJHpKxRISPmVNLXjcWYZrIcCpbGRjWQr94oLZBiIpkm6ZRoROyBeKJAGVQwEiqvkkSjcQMCeLWiqSRR00t0WDRQ/ZB1nZqHMFtytDtEnPN4kp4UzreZp1EgzUy/hryhUyWHgzPM55EtF1FanZUAo+Q3Fa9fJcZwqTnQ9aG2uX2OchkmgX+SHvGjnfwo7OwqTd0qNd6KfzcCgLB5lyedT+lWkpI7/6K9FBes71UY9wXs+Afsi3lDbjbpQv9ogO/g= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: <linux-mm.kvack.org> List-Subscribe: <mailto:majordomo@kvack.org> List-Unsubscribe: <mailto:majordomo@kvack.org> |
Series |
netfs, afs, cifs, cachefiles, erofs: Miscellaneous fixes
|
expand
|
diff --git a/fs/afs/dir.c b/fs/afs/dir.c index 3f73d61f7c8a..eface67ccc06 100644 --- a/fs/afs/dir.c +++ b/fs/afs/dir.c @@ -474,6 +474,14 @@ static int afs_dir_iterate_block(struct afs_vnode *dvnode, continue; } + /* Don't expose silly rename entries to userspace. */ + if (nlen > 6 && + dire->u.name[0] == '.' && + ctx->actor != afs_lookup_filldir && + ctx->actor != afs_lookup_one_filldir && + memcmp(dire->u.name, ".__afs", 6) == 0) + continue; + /* found the next entry */ if (!dir_emit(ctx, dire->u.name, nlen, ntohl(dire->u.vnode),
There appears to be a race between silly-rename files being created/removed and various userspace tools iterating over the contents of a directory, leading to such errors as: find: './kernel/.tmp_cpio_dir/include/dt-bindings/reset/.__afs2080': No such file or directory tar: ./include/linux/greybus/.__afs3C95: File removed before we read it when building a kernel. Fix afs_readdir() so that it doesn't return .__afsXXXX silly-rename files to userspace. This doesn't stop them being looked up directly by name as we need to be able to look them up from within the kernel as part of the silly-rename algorithm. Fixes: 79ddbfa500b3 ("afs: Implement sillyrename for unlink and rename") Signed-off-by: David Howells <dhowells@redhat.com> cc: Marc Dionne <marc.dionne@auristor.com> cc: linux-afs@lists.infradead.org --- fs/afs/dir.c | 8 ++++++++ 1 file changed, 8 insertions(+)