]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
crypto: compress - remove crt_u.compress (struct compress_tfm)
authorEric Biggers <ebiggers@google.com>
Mon, 2 Dec 2019 21:42:29 +0000 (13:42 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 11 Dec 2019 08:37:01 +0000 (16:37 +0800)
crt_u.compress (struct compress_tfm) is pointless because its two
fields, ->cot_compress() and ->cot_decompress(), always point to
crypto_compress() and crypto_decompress().

Remove this pointless indirection, and just make crypto_comp_compress()
and crypto_comp_decompress() be direct calls to what used to be
crypto_compress() and crypto_decompress().

Also remove the unused function crypto_comp_cast().

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/api.c
crypto/compress.c
crypto/internal.h
include/linux/crypto.h

index 4d3d13872facfcd4618c197a49b87a483d446c3f..268129979bc2e792b03576a5c9de58e72afcf949 100644 (file)
@@ -301,7 +301,7 @@ static int crypto_init_ops(struct crypto_tfm *tfm, u32 type, u32 mask)
                return crypto_init_cipher_ops(tfm);
 
        case CRYPTO_ALG_TYPE_COMPRESS:
-               return crypto_init_compress_ops(tfm);
+               return 0;
 
        default:
                break;
index e9edf852478798ce8d2ca37586b238ec015ce38b..9048fe390c463069e454c117fb04f74a6835d3af 100644 (file)
@@ -6,34 +6,27 @@
  *
  * Copyright (c) 2002 James Morris <jmorris@intercode.com.au>
  */
-#include <linux/types.h>
 #include <linux/crypto.h>
-#include <linux/errno.h>
-#include <linux/string.h>
 #include "internal.h"
 
-static int crypto_compress(struct crypto_tfm *tfm,
-                            const u8 *src, unsigned int slen,
-                            u8 *dst, unsigned int *dlen)
+int crypto_comp_compress(struct crypto_comp *comp,
+                        const u8 *src, unsigned int slen,
+                        u8 *dst, unsigned int *dlen)
 {
+       struct crypto_tfm *tfm = crypto_comp_tfm(comp);
+
        return tfm->__crt_alg->cra_compress.coa_compress(tfm, src, slen, dst,
                                                         dlen);
 }
+EXPORT_SYMBOL_GPL(crypto_comp_compress);
 
-static int crypto_decompress(struct crypto_tfm *tfm,
-                             const u8 *src, unsigned int slen,
-                             u8 *dst, unsigned int *dlen)
+int crypto_comp_decompress(struct crypto_comp *comp,
+                          const u8 *src, unsigned int slen,
+                          u8 *dst, unsigned int *dlen)
 {
+       struct crypto_tfm *tfm = crypto_comp_tfm(comp);
+
        return tfm->__crt_alg->cra_compress.coa_decompress(tfm, src, slen, dst,
                                                           dlen);
 }
-
-int crypto_init_compress_ops(struct crypto_tfm *tfm)
-{
-       struct compress_tfm *ops = &tfm->crt_compress;
-
-       ops->cot_compress = crypto_compress;
-       ops->cot_decompress = crypto_decompress;
-
-       return 0;
-}
+EXPORT_SYMBOL_GPL(crypto_comp_decompress);
index 93df7bec844a7ce3cec2bcc604cc1ffbeb620761..a58a2af4b669638c0d881757af323511ff3df253 100644 (file)
@@ -59,7 +59,6 @@ struct crypto_alg *crypto_mod_get(struct crypto_alg *alg);
 struct crypto_alg *crypto_alg_mod_lookup(const char *name, u32 type, u32 mask);
 
 int crypto_init_cipher_ops(struct crypto_tfm *tfm);
-int crypto_init_compress_ops(struct crypto_tfm *tfm);
 
 struct crypto_larval *crypto_larval_alloc(const char *name, u32 type, u32 mask);
 void crypto_larval_kill(struct crypto_alg *alg);
index 23365a9d062e3fa0daaba31d17e192281a58fbad..8f708564b98b1184580fe444ac1a8372aa4ca247 100644 (file)
@@ -606,17 +606,7 @@ struct cipher_tfm {
        void (*cit_decrypt_one)(struct crypto_tfm *tfm, u8 *dst, const u8 *src);
 };
 
-struct compress_tfm {
-       int (*cot_compress)(struct crypto_tfm *tfm,
-                           const u8 *src, unsigned int slen,
-                           u8 *dst, unsigned int *dlen);
-       int (*cot_decompress)(struct crypto_tfm *tfm,
-                             const u8 *src, unsigned int slen,
-                             u8 *dst, unsigned int *dlen);
-};
-
 #define crt_cipher     crt_u.cipher
-#define crt_compress   crt_u.compress
 
 struct crypto_tfm {
 
@@ -624,7 +614,6 @@ struct crypto_tfm {
        
        union {
                struct cipher_tfm cipher;
-               struct compress_tfm compress;
        } crt_u;
 
        void (*exit)(struct crypto_tfm *tfm);
@@ -928,13 +917,6 @@ static inline struct crypto_comp *__crypto_comp_cast(struct crypto_tfm *tfm)
        return (struct crypto_comp *)tfm;
 }
 
-static inline struct crypto_comp *crypto_comp_cast(struct crypto_tfm *tfm)
-{
-       BUG_ON((crypto_tfm_alg_type(tfm) ^ CRYPTO_ALG_TYPE_COMPRESS) &
-              CRYPTO_ALG_TYPE_MASK);
-       return __crypto_comp_cast(tfm);
-}
-
 static inline struct crypto_comp *crypto_alloc_comp(const char *alg_name,
                                                    u32 type, u32 mask)
 {
@@ -969,26 +951,13 @@ static inline const char *crypto_comp_name(struct crypto_comp *tfm)
        return crypto_tfm_alg_name(crypto_comp_tfm(tfm));
 }
 
-static inline struct compress_tfm *crypto_comp_crt(struct crypto_comp *tfm)
-{
-       return &crypto_comp_tfm(tfm)->crt_compress;
-}
-
-static inline int crypto_comp_compress(struct crypto_comp *tfm,
-                                       const u8 *src, unsigned int slen,
-                                       u8 *dst, unsigned int *dlen)
-{
-       return crypto_comp_crt(tfm)->cot_compress(crypto_comp_tfm(tfm),
-                                                 src, slen, dst, dlen);
-}
+int crypto_comp_compress(struct crypto_comp *tfm,
+                        const u8 *src, unsigned int slen,
+                        u8 *dst, unsigned int *dlen);
 
-static inline int crypto_comp_decompress(struct crypto_comp *tfm,
-                                         const u8 *src, unsigned int slen,
-                                         u8 *dst, unsigned int *dlen)
-{
-       return crypto_comp_crt(tfm)->cot_decompress(crypto_comp_tfm(tfm),
-                                                   src, slen, dst, dlen);
-}
+int crypto_comp_decompress(struct crypto_comp *tfm,
+                          const u8 *src, unsigned int slen,
+                          u8 *dst, unsigned int *dlen);
 
 #endif /* _LINUX_CRYPTO_H */