]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: api - Add reqsize to crypto_alg
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 7 Apr 2025 10:20:59 +0000 (18:20 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 16 Apr 2025 07:16:21 +0000 (15:16 +0800)
Add a reqsize field to crypto_alg with the intention of replacing
the type-specific reqsize field currently used by ahash and acomp.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
include/linux/crypto.h

index 56cf229e25303798a3ace44917eb20b4f5db184a..15476b085ce3eea3171c7a3a9ef18f1607a9aacd 100644 (file)
@@ -276,6 +276,7 @@ struct cipher_alg {
  *                to the alignmask of the algorithm being used, in order to
  *                avoid the API having to realign them.  Note: the alignmask is
  *                not supported for hash algorithms and is always 0 for them.
+ * @cra_reqsize: Size of the request context for this algorithm.
  * @cra_priority: Priority of this transformation implementation. In case
  *               multiple transformations with same @cra_name are available to
  *               the Crypto API, the kernel will use the one with highest
@@ -322,6 +323,7 @@ struct crypto_alg {
        unsigned int cra_blocksize;
        unsigned int cra_ctxsize;
        unsigned int cra_alignmask;
+       unsigned int cra_reqsize;
 
        int cra_priority;
        refcount_t cra_refcnt;
@@ -441,6 +443,11 @@ static inline unsigned int crypto_tfm_alg_alignmask(struct crypto_tfm *tfm)
        return tfm->__crt_alg->cra_alignmask;
 }
 
+static inline unsigned int crypto_tfm_alg_reqsize(struct crypto_tfm *tfm)
+{
+       return tfm->__crt_alg->cra_reqsize;
+}
+
 static inline u32 crypto_tfm_get_flags(struct crypto_tfm *tfm)
 {
        return tfm->crt_flags;