From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jakub Kicinski Subject: Re: [PATCH 0/17] crypto: api - Change completion callback argument to void star Date: Mon, 6 Feb 2023 23:10:08 -0800 Message-ID: <20230206231008.64c822c1@kernel.org> References: Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43888 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231335AbjBGHKO (ORCPT ); Tue, 7 Feb 2023 02:10:14 -0500 In-Reply-To: List-ID: Content-Type: text/plain; charset="us-ascii" To: Herbert Xu Cc: Linux Crypto Mailing List , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, "David S. Miller" , Eric Dumazet , Paolo Abeni , netdev@vger.kernel.org, Tyler Hicks , ecryptfs@vger.kernel.org, Marcel Holtmann , Johan Hedberg , Luiz Augusto von Dentz , linux-bluetooth@vger.kernel.org, Steffen Klassert , Jon Maloy , Ying Xue , Boris Pismenny , John Fastabend , David Howells , Jarkko Sakkinen On Mon, 6 Feb 2023 18:21:06 +0800 Herbert Xu wrote: > The crypto completion function currently takes a pointer to a > struct crypto_async_request object. However, in reality the API > does not allow the use of any part of the object apart from the > data field. For example, ahash/shash will create a fake object > on the stack to pass along a different data field. "different data field" == copy the value to a different structure? A bit hard to parse TBH. > This leads to potential bugs where the user may try to dereference > or otherwise use the crypto_async_request object. > > This series changes the completion function to take a void * > argument instead of crypto_async_request. > > This series touches code in a number of different subsystems. > Most of them are trivial except for tls which was actually buggy > as it did exactly what was described above. Buggy means bug could be hit in real light or buggy == did not use the API right? > I'd like to pull all the changes through the crypto tree. But > feel free to object if you'd like the relevant patches to go > through your trees instead and I'll split this up.